认识UML
UML
软件开发蓝图
软件开发过程
RUP(统一软件开发过程)
- 分析
- 设计
- 编码
- 测试
- 维护
要求一开始就要有一个好的设计
XP(敏捷开发)
素材(编码)
- 结对编程
- 测试驱动开发
通过以上两种方式保证我们素材的质量.
先产生测试用例, 通过测试用例产生我们的素材(编码)
产生过程我们通过小组编程, 由2个人, 一个主力开发, 一个进行代码审查. 交付
- 迭代速度很快
重构
- 在不影响功能的前提下, 重构代码
通过重构实现一个好的设计
图类
- 静态(结构)图
- 动态(行为)图
类图
归属于静态图
可见性标志:
`+ : public`
`# : protected`
`- : private`
关系
关系连线图例: 
继承关系
- 空心三角形和实线连线代表继承关系, 箭头指向父类.
关联关系
- 实线箭头表示类之间的关联关系, 分为单向关联, 双向关联.
在线上还能体现类之间的
关联度- 比如, 类A可能用到类B, 但是类A并不是由类B组成的
- 员工类 和 部门类, 部门里有N个员工, 员工有归属部门, 这是双向关联
- 部门里可能有多个员工, 那么关联度为 0..N
- 员工可能归属于1个部门, 那么关联度为 0..1
聚合关系
空心四边形和实线连线表示聚合关系, 四边形在聚合端(合并的那一端)
- 类A 就是由 类B, 类C, 类D 来组成, 类A不干什么事情, 都是由其他类完成的
- 类A 不存在, 类B, 类C, 类D一样存在, 不受影响.
- 类A _没有_管理其他组成它的类的生命周期
- 电脑, 由硬盘, CPU, 主板组成
- 没有电脑, 但是硬盘, CPU, 主板还依旧存在
组合(复合)关系
实心四边形加实线表示, 四边形在组合端.
- 类A 就是由 类B, 类C, 类D 来局部组成, 类A有自己需要处理的事情
- 类A 不存在, 类B, 类C, 类D 都不存在.
- 类A _管理了_其他组成它的类的生命周期
- 公司, 由各个部门组合成, 公司不在了, 部门也不再了.
依赖关系
- 虚线箭头表示, 箭头指向被使用方
- 司机类, 有个开车方法. 还有个车类. 这两个就是依赖关系
- 司机类依赖车类.
类和类之间的关系_越简单越好_.
尽量避免聚合和组合关系.
项目设计

如有错误,请提出指正!谢谢.
本文由 花心胡萝卜 创作,采用 知识共享署名4.0 国际许可协议进行许可
本站文章除注明转载/出处外,均为本站原创或翻译,转载前请务必署名
最后编辑时间为: 2017-02-19 at 04:06 pm