软件开发模式与工具历程 7080年代:面向对像程序设计正式出现 Bjame Sgoustrup/从70年代初,以class为核心 1983年,Richard Stallman开启GNU项目,开源软 改造C,1983年,C+正式出现 件(他认为是自由软件)正式登上软件行业的舞 台,影响至今 w. OIN THE GNU Emacs An extensible,customizable, free/libre text editor-and more GCC,the GNU Compiler Collection 面向对象编程语言出现更早,1967年Simula 诞生,首次将Class引入编程语言,启发了 GCC C+、Java等后续面向对象语言 18
70~80年代:面向对象程序设计正式出现 软件开发模式与工具历程 18 Bjame Sgoustrup从70年代初,以class为核心 改造C,1983年,C++正式出现, 面向对象编程语言出现更早,1967年Simula 诞生,首次将Class引入编程语言,启发了 C++、Java等后续面向对象语言 1983年,Richard Stallman开启GNU项目,开源软 件(他认为是自由软件)正式登上软件行业的舞 台,影响至今
软件开发模式与工具历程 70~80年代:面向过程开发的时代 1983年,Apple推出Macintosh计算机,桌 ·1983,Borland公司成立,并推出了Turbo 面软件开发自此从未缺少苹果的身影 C/C++系列产品,成为2000年之前流行的DE: 父辈们学习C语言很多即使用TurboC rile tait Pan Complle ti① Obj-C Tarbo C w Mexsage 有 F1-Heip 5-2mne P6-EAit 3-Pkn F1d-Mlr 1980年代初,Brad Cox和Tom Love在公司 Stepstone?发明Objective-C,成为NeXT公司 工作站的编程语言,并于90年代成为Mac Terbe C.. OS与iOS的编程语言; Version 3.8 Mac工程师与iOS工程师相继产生。 orland Internatiasal.Ine 19
70~80年代:面向过程开发的时代 软件开发模式与工具历程 19 • 1983年,Apple推出Macintosh计算机,桌 面软件开发自此从未缺少苹果的身影 • 1980年代初,Brad Cox和Tom Love在公司 Stepstone发明Objective-C,成为NeXT公司 工作站的编程语言,并于90年代成为Mac OS与iOS的编程语言; • Mac工程师与iOS工程师相继产生。 • 1983 , Borland 公 司 成 立 , 并 推 出 了 Turbo C/C++系列产品,成为2000年之前流行的IDE; • 父辈们学习C语言很多即使用TurboC
软件开发模式与工具历程 90年代:面向对象开发的时代 特征:以企业开发为开发模式,形成江业化 > 代表性事件: √VB流行;C++流行,Java/C#诞生;UML出现,Java流行 软件质量管控体系(COCOMO); 互联网爆发;金山,Sun,Oracle,.Yahoo,!Google等著名企业成立 1991年,Visual Basici诞生,可视化程序设计与事 1995年,SUN公司正式推出Java,从此 件驱动成为VB的标志,降低了编程门槛(就当时 逐步形式了一个横跨企业、个人、嵌入 而言),推动了编程在技术人员中的普及,成为 式、Web、移动等的ava生态,并成为 微软进军编程界的标志,开启了后来以MFC、 互联网时代标志性的开发语言,脚本语 C#、Net等为代表的微软编程生态。 言流行之前使用面最广的语言,影响了 一大批后续产生的语言。 ·可视化软件开发出现并流行 很多面向初高中生的程序设 文件 计课程也采用了VB。 JVM Featuring Microsoft ava VisualBasic Technology
➢ 特征:以企业开发为开发模式,形成工业化 ➢ 代表性事件: ✓ VB流行;C++流行,Java/C#诞生;UML出现; Java流行 ✓ 软件质量管控体系(COCOMO); ✓ 互联网爆发;金山, Sun, Oracle, Yahoo!, Google等著名企业成立 90年代:面向对象开发的时代 软件开发模式与工具历程 20 • 1991年,Visual Basic诞生,可视化程序设计与事 件驱动成为VB的标志,降低了编程门槛(就当时 而言),推动了编程在技术人员中的普及,成为 微软进军编程界的标志,开启了后来以MFC、 C#、.Net等为代表的微软编程生态。 • 可视化软件开发出现并流行; • 很多面向初高中生的程序设 计课程也采用了VB。 • 1995年,SUN公司正式推出Java,从此 逐步形式了一个横跨企业、个人、嵌入 式、Web、移动等的Java生态,并成为 互联网时代标志性的开发语言,脚本语 言流行之前使用面最广的语言,影响了 一大批后续产生的语言
软件开发模式与工具历程 Java Language Java Language Java SE Tomcat java javac javadoc jar javap jdeps Scripting Java EE WebLogic Tools Security Monitoring JConsole VisualVM JMC JFR Tool APIs Java ME JPDA IDL WebSphere JVM TI Java DB Deployment Web Services Troubleshooting Jetty Deployment Java Web Start Applet/Java Plug-in Java Web Wildfly JavaFX JSP JBoss User Interface Toolkits Swing Java 2D AWT Accessibility Servlet Drag and Drop Input Methods Image lO Print Service Sound JavaScript JDK Integration IDL JDBC JNDI RMI RMI-IIOP Scripting JQuery JRE Libranes Serialization Extension Mechanism JVM Beans Security JRE Other Base JDBC JMX XML JAXP Networking Override Mechanism Java SE Libraries API Struct Java Doc N Date and Time InputOutput Internationalization Compact Profiles lang and util Spring Hibernate HTML lang and util Math Collections Regular Expressions Base Libraries Spring Boot XML Logging Management Instrumentation Concurrency Utilities CSs Reflection Versioning Preferences API JAR Zip Spring Cloud JSON ave Virtual Machine Java HotSpot Client and Server VM Eclipse Maven 各类型Java工程师数量逐渐超过c工程师与C+工程师 IntelliJ SVN NetBeans eclipse 飕 maven Apache Tomcat spring 21
软件开发模式与工具历程 21 Java SE Java EE Java ME Java Web JSP Servlet JavaScript JQuery Struct Spring Hibernate Spring Boot Spring Cloud Eclipse IntelliJ NetBeans Tomcat WebLogic WebSphere Jetty Wildfly JBoss JDK JRE JVM JDBC Java Doc HTML XML CSS JSON 各类型Java工程师数量逐渐超过C工程师与C++工程师 Maven SVN