面向对象分析与设计学习笔记

1.软件开发过程:需求->用例->UML表示的类图->实现。分析与设计主要难点在把用例等映射到类图部分,而从类图到实现,只是简单的填空工作,可不需要讨论。有了类图,就可以写单元测试用例了,以单元测试用例此作为验收标准。软件是经常变化的,但变化应该从需求文档开始修改,重复整个过程,而不要期望软件修改只在程序上修改,这是比较规范的开发方式。

       2.软件编码设计时,多考虑将变化和不变的部分分开,即使它们是属于同一个对象,也可以考虑试着把经常变化的属性和不变的属性分开。在一个类中,若有某个方法可能因其它类的改变而面临着改变时,把变化部分提出来,写成函数对象比较好!

       3.UML中的关联(单向"->"箭头)与聚合(单向"◇"箭头)。共同点是二者都需要在类1中持有类2的引用,但区别是:关联是两个相互独立的类,并具有相互之间的组成与包含关系,更多用来表现业务关系(比如在系统中,声音识别器持有一个门的引用,用来控制门的开关,这二者没有组成关系,只有业务关系),而聚合更多表现的是实体之间的关系,是部分组成整体的意思,其中实心的聚合表示该部分不可或缺(比如Person类有Name类的引用,二者是不可或缺的聚合关系)。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值