1、软件工程与面向对象方法第一章 软件工程简介第一节软件工程简介软件工程的历史与发展过程“软件危机”的产生早期的自由软件开发方式使得高质量的软件开发变得越来越困难。不能按时完成任务、产品质量得不到保证、工作效率低下和开发经费严重超支。“软件工程”的出现和发展1968年,在北大西洋公约组织举行的一次学术会议上,首次提出了“软件工程”的概念。现代,软件工程是指应用计算机科学技术、数学和管理学的原理,运用工程学的理论、方法和技术,研究和指导软件开发和演化的一门交叉学科。软件工程简介软件工程的目标使软件开发的成本能够控制在预计的合理范围内。使软件产品的各项功能和性能能够满足用户需求。提高软件产品的质量。提
2、高软件产品的可靠性。使生产出来的软件产品易于移植、维护、升级和使用。使软件产品的开发周期能够控制在预计的合理时间范围内。软件工程简介软件工程的原则用分阶段的生命周期计划进行严格的管理。坚持进行阶段评审。实行严格的产品控制。采用现代程序设计技术。软件工程结果应能清楚地审查。开发小组的人员应该少而精。承认不断改进软件工程实践性的必要性。第二节面向对象方法简介面向对象方法简介什么是面向对象方法面向对象方法的发展历史面向对象方法的基本概念对象、类、抽象、封装、泛化、多态面向对象方法的优势面向对象方法简介面向对象方法:Object-OrientedMethod,缩写为OOM。面向对象方法解决问题的思路就
3、是主张从客观世界固有的事物出发来构造系统,提倡用人类在现实生活中常用的思维方法来认识、理解和描述客观事物,强调最终建立的系统能够映射问题域。面向对象方法是一种运用一系列面向对象的指导软件构造的概念和原则(如类、对象、抽象、封装、继承、多态、消息等)来构造软件系统的开发方法。什么是面向对象方法面向对象方法简介第一门面向对象的编程语言:Simula-67(1967)首先引入了类、对象、继承等概念。使面向对象技术进入实用化的标志:Smalltalk(1972-1981)正式使用了“面向对象”。Smalltalk-80的问世被认为是面向对象语言发展史上最重要的里程碑。提供了比较完整的面向对象技术解决方
4、案,诸如类、对象、封装、抽象、继承、多态等。Smalltalk-80是第一个完善的、能够实际应用的面向对象语言。面向对象方法的发展历史面向对象方法简介万事万物皆对象EverythingIsAnObject。三种对象客观对象:现实中的实体问题对象:抽象客观对象某些属性和方法来研究在某个问题或场景中的性质计算机对象:问题对象通过封装等过程称为计算机中的一个包含有数据和操作的集合体面向对象方法的基本概念对象面向对象方法简介对象的四个特性:自治性封闭性通信性被动性面向对象方法的基本概念对象面向对象方法简介类是拥有共同的结构、行为和语义的一组对象的抽象。对类的四个角度的理解:类是面向对象程序中的构造单位
5、。类是面向对象程序设计语言的基本成分。类是抽象数据类型的具体表现。类刻画了一组相似对象的共同特性。面向对象方法的基本概念类面向对象方法简介抽象就是揭示一个事物区别于其他事物的本质特征,去除从某一个角度看来不重要的细节的行为。抽象取决于使用者的目的,并没有唯一的答案。抽象具有静态与动态的属性。面向对象方法的基本概念抽象面向对象方法简介封装,即对其客户隐藏对象的属性和实现细节,仅对外公开接口,并控制在程序中属性的读和修改的访问级别。封装强调两个概念,即独立和封闭。独立是指对象是一个不可分割的整体,它集成了事物全部的属性和操作,并且它的存在不依赖于外部事物。封闭是指与外部的事物通信时,对象要尽量地隐
6、藏其内部的实现细节,它的内部信息对外界来说是隐蔽的,外界不能直接访问对象的内部信息,而只能通过有限的接口与对象发生联系。面向对象方法的基本概念封装面向对象方法简介泛化是类元的一般描述和具体描述之间的关系。实现泛化关系的机制为继承。一个子类继承一个或多个父类,从而实现了不同的抽象层次,实现两者之间的泛化关系。多态是在同一接口下表现多种行为的能力,是面向对象技术的根本特征。当一个对象接收到进行某项操作的消息时,多态机制将根据对象所属的类,动态地选用该类中定义的操作。面向对象方法的基本概念泛化与多态面向对象方法简介更符合人类的思维习惯稳定性复用性改善软件结构增强扩展性支持迭代式开发面向对象方法的优势谢 谢 聆 听T H A N K S F O R Y O U R A T T E N T I O N