系列索引
前言
设计模式已经是一个被写烂了的话题,相关的文章和示例数不胜数,按道理来说这一系列的文章可以说是石沉大海了。但我还是要写,总归还是有自己的理由。
文章风格
不同的文章可以有相同的话题,却可以有不同的论述风格。或许真的会有相应风格的读者能从这里得到启发呢?
掌握程度
了解:知道有这么个知识,当在别的地方提到它时,知道它的大概意思,不至于一头雾水。
初步应用:能看懂这个知识点,当遇到相关问题时,能够想到用这个知识点解决,但是需要查阅相关的资料。
熟练应用:能自我总结这个知识点,用到这个知识点时,无需查阅相关资料。遇到的相关问题随意变形,隐藏。一样可以解决
精通:能将这个知识点透彻地讲解给一个新人,并且可以自由的发散,引申出更多的东西。
这个层次区分也是我写这个系列文章的主要原因,我希望能够用自己的语言来记录学习历程,并能够向别人表述清楚这些知识。
学习步骤
我们通常学到一个新的知识点,通常要经过以下步骤:
1.遇到问题,分析问题
2.根据分析寻找一种或多种解决方案,并比较出最佳的解决方案
3.定义最佳的解决方案,形成一种规范。
4.将规范应用到各个相关场景中
我看了很多相关的文章,大多是从步骤三开始讲解的。以设计模式为例,直接就讲述定义和实现,然后说一下应用场景。对于简单一些的设计模式来讲,这样并没有太大问题。但还是会存在一些不妥:
对于一些复杂的设计模式,需要层层递进的来解析一番,否则难以读懂。
对于一些相似的设计模式,需要放在一起加以比较区分,否则容易混淆。
对于一些复杂的场景,需要从场景的场景去引入,否则没有相关的经验的人难以想象。