代码改变世界

设计模式和设计原则

2017-01-03 14:12  jhinor  阅读(328)  评论(0)    收藏  举报

摘自研磨设计模式

设计模式和设计原则的关系

面向对象的分析设计有很多原则,这些原则大都从思想层面,指出了面向对象分析设计的正确方向,是进行面向对象分析设计应该尽力遵守的准则
而设计模式已经是针对某个场景下某些问题的某个解决方案;也就是说这些设计原则是思想上的指导,而设计模式是实现上的手段,因此设计模式也是应该遵守这些原则的,换句话说,设计模式就是这些设计原则的一些具体体现

为何不重点学习设计原则

既然设计模式是这些设计原则的具体体现,那也就意味着设计模式的思想上的根就是这些设计原则了

  • 设计原则本身是从思想层面上进行指导,本身是高度概括和原则性的,只是一个设计上的大体方向,其具体实现并不是只有设计模式这一种;理论上来说,可以在相同的原则指导下,做出很多不同的实现来
  • 每一种设计模式并不是单一的体现某一个设计原则,事实上,很多设计模式都是融合了很多个设计原则的思想,并不好特别强调设计模式对某个或者是某些设计原则的体现;而且每个设计模式在应用的时候也会有很多的考量,不同使用场景下,突出体现的设计原则也可能是不一样的
  • 这些设计原则只是一个建议指导,事实上,在实际开发中,很少做到完全遵守,总是在有意无意的违反一些或者是部分设计原则;设计工作本来就是一个不断权衡的工作,有句话说得很好:“设计是一种危险的平衡艺术”,设计原则只是一个指导,有些时候,还要综合考虑业务功能、实现的难度、系统性能、时间与空间等很多方面的问题