设计模式的学习1

来源:互联网 发布:手机怎么开淘宝店 编辑:程序博客网 时间:2024/04/26 07:40

  看了设计模式,到现在也该是处出货时候了。

    首先必须明确设计模式的位置,它是在需求分析(use case)后,系统分析结束之后,设计时进行的。往往设计模式会带来一个问题:过度设计。因为设计模式要求增加类。同时我们看到他也不是万灵药,他受前期需求以及系统分析的影响。

  关键有以下几点原则:

  1。一个类最好只有一个职责。前两天看到网上一个人员考勤设计,企图把职员作类,包含职员信息和考勤信息,然后大诉其苦:他的考勤信息是文件,不是数据库,这样系统以起来,即使他不需要考勤信息,也必须读取文件,由于文件很大,系统因此很慢。后来有人出主意:分成两个类:考勤是考勤,职员是职员,还有个考勤list容器类。这样就比较好的解决了问题。

2.多用组合,少用继承。所谓采用继承关系,把变化反映在子类上,而组合则是采用模块方式。很明显:如果采用继承,父类发生变化,最易受影响的是子类。由此可见采用组合比采用继承父类与子类间耦合性更强。

3.把变化封装在一个类里面。这是我个人看法。所谓把变化封装在类里面,就是如前面所说,每个类最好只有一个职责,那么对于需求可能变化部分,我们最好用某个类封装起来。由此可见,需求会影响模式的建立,可以说会影响整个系统模型。当然这也是所谓的减少系统耦合性,加强系统内聚性的一种体现。

这是所有设计模式遵守的基本原则。

 

原创粉丝点击