结构化方法
1.结构化方法:面向过程的方法
结构化分析(SA, Structured Analysis)
结构化设计(SD, Structured Design)
结构化编程(SP, Structured Programming)
2.模块的独立性:模块是高内聚,低耦合的
高内聚指的是一个函数最好实现一个功能
低耦合指的是模块间的接口的参数不能太多
3.使用goto语句不是结构化的程序
4.把大象放进冰箱
用结构化方法解决
分三步:
第一步:打开冰箱
第二步:放进大象
第三步:关闭冰箱
每一步就是一个功能模块,用函数实现
使用时,依次调用这三个模块就可以解决这个问题
5.结构化方法特点:
1)程序运行效率高
2)不适合需求经常变化的系统,适合需求稳定的系统设计,比如操作系统
3)容易设计,便于理解
面向对象方法
1.面向对象方法术语
面向对象的分析(OOA , Object Oriented Analysis)
面向对象的设计(OOD , Object Oriented Design)
面向对象编程(OOP , Object Oriented Progrmming)
面向对象的测试(OOT ,Object Oriented Test)
面向对象的软件维护(OOSM ,Object Oriented Software Maintance)
2.同学对象公共特征形成同学类:
静态特征(属性):学号,姓名,性别等
动态特征(行为,操作):学习,跑,跳,玩游戏等
具体同学对象称为同学类的实例
张三同学对象:
19111,张三,男
学习,跑,跳,玩游戏
3.抽象
提取公共特征,忽略非本质的,无关的细节
4.类之间的层次关系,子类继承父类的特征
5.类的封装性
同学类:
属性:学号,姓名,性别等 一般设为私有private
操作:学习,跑,跳,玩游戏,set/get方法等一般设为共有可见public
6.把大象放进冰箱:用面向对象方法设计
1)考虑这个问题中的事物有哪些:冰箱,大象
冰箱类的行为: 门打开,门关闭
大象的行为: 走进冰箱
2)使用这些类对象解决问题:向这些类对象发送消息
向冰箱发送消息:打开门,冰箱对象收到消息后调用自己方法“门打开”
向大象发送消息:进冰箱,大象对象收到消息后调用自己方法“走进冰箱”
向冰箱发送消息:关闭门,冰箱对象收到消息后调用自己方法“门关闭”
7.面向对象方法特点:
1)程序运行效率低
2)易于维护,易于拓展
3)若设计大型系统时,若前期分析,设计不好,可能造成类非常多,关系也复杂,不便理解
8.OOA分析得到的模型:
对象模型: 对象及其联系构成的模型,一般类图(对象图)描述,描述系统的静态结构
动态模型: 描述对象间如何交互信息的,反应的是系统的动态行为,一般用顺序图描述
功能模型: 反应的是系统应该具备的功能,用用例图描述