公元1991年,软件界有四位大侠,总结了前人的一些设计模式,并进行分门别类,一共得出23种设计模式供软件开发者进行参考复用,在经过几代人的开发实践后,设计模式在各个项目中大放光彩,这四位大侠是Gamma, Helm, Johnson Vlissides, Addison-Wesley, 全地球程序员为了表示对设计模式的敬仰与崇拜,因此设计模式又称为GOF23。
设计模式主要有三大类,23小类,就像少林七十二绝技,各种招式技法都有,但是想练成并不是那么容易的,在项目中应用时,需要有敏锐的代码思维,可以快速的提炼业务需求与逻辑。
GOF23, 基本架构图如下:
设计模式可以用各种语言来实现,java,C++,python, C#等 。
本专栏将用C++来实现设计模式,不会讲太多的专业术语,都是一些大白话。
设计模式也不是什么高深莫测的东西,艺术来源于生活,又高于生活,程序员需要把生活中需求转化为程序设计语言,再运用语言的特性进行总结提炼,本来没有模式,总结多了就有了,这23种是众多模式的归类,总结,是架构大纲,就像独孤九剑,没有招式,都是见招拆招,所谓的模式,就需要把各种杂乱的需求进行分析提炼,行程一种解决问题的套路,独孤九剑可以破各种招式,GOF23也可以解决各种需求。
书籍推荐
该书用C++实现了GOF23式,感兴趣的可以读一读。