如何学习设计模式?
1.为什么要使用设计模式?
系统的设计,是为了解决实际问题。针对同一个问题,我们可以提出好多方案,当然了,好方案和差方案都能解决问题。但我们为什么要设计软件,我认为不仅仅是为了解决问题,而是为了更好地解决问题。所以,我们需要一个尽可能好的方案(因为我无法论证我的方案是最好的,我只能保证尽可能地好)。所以,我们需要一种更优雅的方式来设计系统的组织结构。而设计模式,就是为了帮助我们更优雅地设计系统而提供的一种参考方案。如果你只是想设计一个系统,我认为没有设计模式,照样可以完成,但是,如果你想设计一个好的系统,设计模式是必须的!
2.到底什么是设计模式?
设计模式就是在特定场景下,解决特定问题的一种比较好的方案。为什么可以称为“模式”?是因为这些解决方案,是经过大量的实践论证后,被认为是的确可行的。所以,设计模式不是一个人的自吹自擂,而是被实践检验过的优秀方案。
3.设计模式的核心?
设计模式的核心,我认为是六大设计原则,23种模式,只是在具体的23种场景下,以六大原则为核心理念,而提出的解决方案。
- 单一职责
- 里氏替换
- 依赖倒置
- 接口隔离
- 迪米特法则
- 开闭原则
4.我们该怎么学习设计模式?
- 了解设计模式的应用场景
- 编写示例代码+进一步理解应用场景
- 分析每个模式到底如何体现六大设计原则?
关键:理解应用场景+体会六大原则
5.误区
看任何一本关于设计模式的书籍,重在理解模式的应用场景,对于示例代码,只可以在学习时为了加深理解具体场景而使用,切不可照搬。模式提供给我们的是解决问题的思路,而不是具体的方案。更不要把示例代码就当作模式的唯一表达方式,即:模式提供给我们解决问题的接口,而示例代码,只是一种实现,切忌生搬硬套!
posted on 2014-11-06 09:51 zhangwenhao2 阅读(150) 评论(0) 收藏 举报
浙公网安备 33010602011771号