设计模式的学习1

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

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

  关键有以下几点原则:

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

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

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

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

 

阅读更多
个人分类: 软件设计
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

不良信息举报

设计模式的学习1

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭