面向对象方法与软件开发本质探索 - 王立福软件工程解析

需积分: 23 15 下载量 83 浏览量 更新于2024-08-15 收藏 3.53MB PPT 举报
"面向对象方法术语/符号-2011 王立福 软件工程自考" 在软件工程中,面向对象方法是一种重要的软件开发技术,它基于对象的世界观,认为世界是由对象组成的,每个对象都有其特定的属性和行为,而对象间的交互则构成了复杂的系统。王立福在2009年的讲座中强调了理解和掌握软件开发的本质和手段的重要性,这包括了软件过程、需求、开发方法学等多个方面。 面向对象方法提供了两种主要的术语类别:一是表达结构化事物的术语,二是表达关系的术语。结构化事物的术语用于描述对象的属性和行为,比如类、对象、属性、方法等。这些术语帮助开发者构建模型,将现实世界的实体转化为代码中的对象。关系的术语则涉及对象之间的联系,如继承、封装、多态等,它们描述了对象如何相互作用和影响。 包是面向对象方法中用于组织复杂性的工具,可以将一组相关对象封装在一起,形成可管理的单元,类似于建筑中的“预制块”。这样做有助于提高代码的模块化和可维护性,使得大型项目更易于理解和管理。 注解是另一个重要的概念,它是用来为模型提供辅助性说明的工具,可以增强模型的可读性,帮助开发者和团队成员更好地理解模型的意图和功能。 软件开发方法学包括了多种方法,如结构化方法、面向对象方法、面向数据结构方法和维也纳开发方法等。其中,面向对象方法因其强大的抽象能力和对现实世界的直观映射而被广泛采用。这种方法强调数据抽象和过程抽象,通过将问题空间的概念映射到解空间的模型中,实现从现实问题到计算逻辑的转化。 例如,在计算学生成绩的场景中,数据抽象是将学生“张山”的信息抽象为一个对象,而过程抽象则是将计算学生成绩的逻辑转化为可执行的代码。需求分析是这个过程中关键的一环,它通过使用面向对象方法和结构化方法来理解和规约需求,最终形成可构造的计算逻辑。 软件工程不仅仅是编写代码,还包括了软件生存周期的各个阶段,如需求分析、设计、实现、测试和维护。CMM(软件能力成熟度模型)提供了一套框架,以确保软件开发过程的质量和效率,确保能够产出正确的产品或系统。 面向对象方法提供了强大的工具集,帮助开发者以更加贴近现实世界的方式理解和构建软件系统,同时通过包和注解等机制降低了软件的复杂性和维护难度。对于软件工程师来说,理解和熟练运用这些术语和概念是至关重要的,它们构成了软件工程的基础知识结构,影响着软件开发的效率和质量。