1、 面向对象方法(2-4 大概率)
面向对象分析
利用用例和用例图表示需求,从用例模型中提炼形成领域模型,用例的实现可以用交互图表示,从领域模型和用例图形成类图,用包图和类图形成体系结构图
面向对象分析模型主要由顶层架构图、用例与用例图和领域概念构成,设计模型则包含以包图表示的软件体系机构图、以交互图表示的用例实现图、完整精确的类图、描述复杂对象的状态图和用于描述流程化处理过程的活动图
架构图(包图),用例实现图(交互图),类图(完整,精确),其他(状态图,活动图)
面向对象设计
面向对象设计原则:单一职责原则、开放封闭原则、里式替换原则、依赖倒置原则、接口隔离原则、组合重用原则、迪米特原则(最少知识)
单一职责原则:设计目的单一的类。
开放封闭原则:对扩展开放,对修改封闭。
里式替换原则:子类可以替换父类
依赖倒置原则:要依赖于抽象,不是具体实践。对接口进行编程,不要对实现编程
接口隔离原则:接口隔离原则 使用多个专门的接口比使用单一的总接口好。
组合重用原则:组合重用原则 尽量使用组合不是继承达到重用的目的
迪米特原则:一个对象应当对其他对象有尽可能少的了解。
2、 开发模型(2-4 必考)
开发模型 | 特点 |
---|---|
瀑布模型 | 结构化方法。开发阶段性,需求明确,文档齐全,风险控制弱。 |
原型模型 | 迭代方法。分为原先开发与目标软件开发。需求不明确。 |
螺旋模型 | 迭代方法。瀑布与原型(演化)模型结合体。适用于大型、复杂、风险项目 |
喷泉模型 | 面向对象方法。复用好。开发过程无间隙、节省时间。 |
V模型 | 开发与测试结合 |
变换模型 | 适用于形式化开发 |
智能模型 | 适用于基于规则的专家系统 |
快速应用开发 RAD | 基于构件的开发方法。用户参与、开发或复用构件,模块化要求高, 不适用于新技术 |
RUP/UP | 用例驱动、架构为中心、迭代、增量 |
可重用构建模型 | 基于构件的开发方法。开发或复用构件 |
3、 敏捷开发(1)
以人为本,与用户紧密协作,面对面沟通,尽早发布增量小而自主的开发团队。适用于规模小的项目。
Xp极限编程:高效、低风险、测试先行(先写 测试代码,再编写程序)
Cockburn水晶方法:不同项目,不同策略。
SCRUM并列争求法:迭代。30天为一个迭代周期,按照需求优先级实现。
FDD功用驱动方法:开发人员分类。分为指挥者、类程 序员。
开放式源码:虚拟团队,开发成员分布各地。
ASD自适应方法:预测—协作—学习
4、 UML(3 必考)
统一建模语言或标准建模语言,支持模块化和软件系统开发的图形语言,为软件开发的所有阶段提供模块化和可视化支持
UML四种事务
结构事务:名词、静态部分、物理元素
行为事务:动词、动词部分、行为
分组事务:包
注释事务:注解
UML分类
静态模型:用例图、类图、对象图、构件图、部署图
动态模型:状态图、活动图、顺序图、协作图
用例图:由参与者、用例、边界以及它们之间的关系构成的用于描述系统功能的视图。
用例关系
包含:一个过程包含多个子过程,脱离子程序是不完整的
扩展:一个过程有子过程进行补充(非必须),脱离子程序也是完整的。
泛化:继承的反关系,父类是子类的泛化,一个过程有多种实现方式。
类图:展现了一组对象、接口、协作和它们之间的关系
分类
实体类:对应系统需求中的实体,保存在永久存储中,使用数据表或文件存储
控制类:应用程序执行逻辑
边界类:外部用户与系统之间的交互对象进行抽象,主要包括界面类等
类图中的关系
对象图
展现了某一时刻一组对象以及他们之间的关系,描述了在类图中所建立的实物的实例的静态快照
UML图特点
UML图 | 特点 |
---|---|
用例图 | 由参与者、用例,边界以及他们之间的关系构成的用于描述系统功能的视图。 用例之间的关系有包含,扩展、泛化 |
类图 | 展现了一组对象、接口、协作和他们之间的关系。 类之间的关系有关联、依赖、实现、泛化。 |
对象图 | 描述了一组对象及他们之间的关系。 对象图描述了在类图中所建立的事物实例的静态快照。 |
构件图 | 描述一个封装的类和他的接口、端口,以及由内嵌的构件和连接件构成的内部结构。 |
组合结构图 | 用于画出结构化类的内部内容 |
顺序图 (序列图) | 由一组对象或参与者以及它们之间可能发送的信息构成。 强调消息的时间次序的交互图。 |
通信图 | 强调收发信息的对象或参与者的结构组织,强调对象之间的组织结构。 |
定时图 | 强调消息跨越不同对象或参与者的实际时间,而不仅仅关心消息的相对顺序。 |
状态图 | 用来描述一个特定的对象所有可能的状态,以及由各种事件的发生而引起的 状态之间的转移和变化。 |
活动图 | 将进程或其他计算的结构展示为计算内部一步步的控制流和数据流。 |
部署图 | 软件和硬件之间的组织物理关系以及处理节点的组件分布情况。 |
制品图 | 描述计算机中一个系统的物理结构通常和部署图一起使用。 |
包图 | 描述由模型本身分解而成的的组织单元,以及他们之间的依赖关系。 |
交互概览图 | 是活动图和顺序图的混合物 |
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。