版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1.最早的软件(1950年初):从机器代码到语言的出现,最早的软件和硬件是不可分割的。工程师使用机器代码来编程,而机器代码只适应当前的硬件。为了简化编程,使用助记码,但是当输入程序时,助记码必须被翻译成机器代码。利用计算机的自动化能力,助记码通过程序被编译成机器代码。启蒙阶段(1950年末)的软件架构:子程序代表重用,无论是机器代码、助记码还是原始汇编语言,并且在程序编写后需要大量的调试。如何提高生产率是使用子程序。子程序是指已经被编写和调试的程序。软件架构的第一个特征:重用。3.算法语言Fortran(20世纪60年代早期):引入了跨平台特性。计算机的本质是:信息的收集、存储、处理和传输;然
2、而,由于原始存储的限制,很少有人使用计算机来存储它,主要用于计算。Fortran出现可以看作是高级语言的开端,它的主要特点是可以跨硬件平台编写应用程序,并使用不同的编译器来满足不同的硬件需求。软件架构的第二个特征:跨平台,但这是在编译级别。软件大规模生产阶段(60年代):软件的出现代表了封装。软件与硬件分离,经过编译和调试,形成可运行的软件产品,主要出现在一些垂直行业,包括保险、金融等领域。软件体系结构的第三个特征是接口封装,它封装软件功能,隐藏软件内部实现的细节,并通过一些接口适应不同硬件平台的需求。越来越复杂的软件活动带来了软件危机(20世纪60年代末)。软件的大规模应用和规模越来越大,大
3、规模软件开发变得越来越难以控制。这时,软件危机也出现了。软件危机是软件工程发展的驱动力,即把传统的工程方法引入软件行业,以控制软件质量为目标。软件危机也是软件体系结构发展的驱动力:分层开发技术已经被提出。软件架构的第四个特征:分层架构。结构化程序设计的蓬勃发展(20世纪70年代),20世纪70年代是程序设计语言和软件工程快速发展的阶段:程序设计语言是结构化程序设计;瀑布模型在开发过程中很流行,它将建筑规划引入设计阶段,而不是在开发中自由地创建建筑。软件架构的第五个特征:软件架构被分类到设计领域。20世纪80年代,结构化程序变得越来越复杂,面向对象出现了。20世纪80年代,结构化设计变得越来越复
4、杂,在结构化程序中有许多分层软件体系结构模式:VC-M;五-厘米;可变薪酬模式;结构化程序设计中软件体系结构的发展不能满足人们控制软件复杂性的需要。面向对象编程的巨大发展对信息封装架构技术的发展至关重要。软件体系结构的第六个特征:面向对象信息封装,即信息和处理信息的代码由一个程序单元实现。20世纪80年代,软件体系结构的概念被明确提出。20世纪80年代,软件工程理论迅速发展,软件设计工作被纳入软件工程,软件体系结构的概念正式出现。面向对象编程进一步发展为基于组件的软件,这是由于对面向对象程序的精细过滤造成的。软件组件是指将与功能相关的对象封装到公共外部服务中的程序单元。软件架构的第七个特征:基
5、于组件的软件架构。注意:然而,在基于组件的软件架构从未真正成功之后,大量的代码仍然由类组成,而不是组件。在20世纪90年代,软件体系结构的另一个里程碑技术:设计模式,面向对象可以说在形式上极大地改进了应用结构,这更符合人们的思维习惯。然而,面向对象并没有从本质上降低应用程序的复杂性,因为对象没有确定一些常见的问题领域,提供一些成熟的架构解决方案,然后选择一些合适的实现方式。设计模式是与建筑相关的设计经验的总结。20世纪90年代,建筑技术最重要的发展应该是建模语言。20世纪90年代,面向对象编程和面向对象软件工程迅速发展,出现了许多流派的面向对象软件工程学科,如面向用例的方法、面向对象的图方法和
6、面向协作的方法。通过集成各种面向对象的设计方法而形成的统一建模语言RUP和罗斯提供了专门用于(建筑)设计领域的技术、方法和手段。软件架构的第九个特征:统一建模语言、RUP和统一建模语言工具是软件架构。21世纪初,软件体系结构的概念发展迅速,21世纪初发展迅速的软件体系结构技术可能比以前发展得更多,原因如下。1.软件应用的普及程度和规模越来越大,这给软件体系结构带来了新的挑战。2.互联网带来了一种新的B/S应用模式,也带来了一种新的软件架构传播模式,这为软件架构技术的快速发展提供了土壤。软件架构的第十个特点:设计模式只解决局部问题,而软件架构的概念是设计模式、规范和原则的综合应用。在这个统一指导
7、软件设计活动的时期,有代表性的理论是MVC和ORM。Ioc/AOP是两种划时代的架构技术,这两种技术的特点对21世纪的应用架构产生了巨大的影响;第11个软件架构特征:分层代码调用的松散耦合,第12个软件架构特征:代码逻辑和AOP的松散耦合。21世纪初,越来越多的企业正在构建自己的软件框架,第13代软件架构的特点是:将软件架构中的各个环节与特定的平台相结合,提供特定的代码实现,即软件框架。软件框架是软件系统中非业务代码的公开实现。以下是一个J2EE应用框架:1 .结构2,解决了B/S应用的MVC实现。2.春天,解决应用的AOP/IOC。3.Hibernate,它解决了应用程序的映射问题。14.将软件框架升级到开发平台和软件框架,解决非技术问题的复用性问题;但是不要让所有的软件功能都被开发出来,而是选择软件架构中的一些成品,让不同的功能选择最合适的开发模式。软件开发平台的目的是进一步增强软件体系结构的可重用性,将多种软件产品集成并应用到软件体系结构中,如流程引擎、消息引擎、报表引擎、企业服务总线等。软件体系结构的第14个特征:软件开发的基本平台。SO
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 职工医院防汛应急预案
- 航空航天材料性能与测试手册
- 任务1.3-SSH远程登录配置
- 产品需求收集与分类模板
- 2026年幼儿教师职业技能鉴定
- 智慧城市智能交通系统的规划实施
- 农产品质量检测与分析指导手册
- 2026年中石油安全岗面试仿真题及答案
- 2026年禁毒知识大赛活动流程
- 2026年司法鉴定助理面试高频突破
- 2026天津中考复习要点:全科答题模板与津门文化素材汇编(津版)
- 2026年吸油烟机行业分析报告及未来发展趋势报告
- 2026年安全生产月看图找隐患详解
- 技术研发项目成果验收标准与流程
- 2026届深圳二模数学试题+答案
- 雨课堂学堂在线学堂云《人工智能导论(复旦)》单元测试考核答案
- 2024年西藏初中学业水平考试数学卷试题真题(含答案详解)
- SH∕T 3097-2017 石油化工静电接地设计规范
- 2024年中国热带农业科学院热带生物技术研究所招考聘用(高频重点提升专题训练)共500题附带答案详解
- 新疆维吾尔自治区新疆生产建设兵团二中2025届高一数学第二学期期末联考试题含解析
- 污水管道改造工程施工组织设计样本
评论
0/150
提交评论