模式起源于建筑学,一个Alexander的伟大的建筑师哲学家从哲学的角度审视建筑设计的本质。
“南海之帝为倏,北海之帝为忽,中央之帝为混沌。倏与忽时相与遇于混沌之地,混沌待之甚善。倏与忽谋报混沌之德,曰:人皆有七窍,以视听食息,此独无有,尝试凿之。日凿一窍,七日而混沌死。” ——《庄子,应帝王》
这个寓言故事中的混沌就是Alexander所说的建筑中的本质,只是人们认为的根据不同的分类来描述这个本质,然而一旦描述了他的属性,我们对本质的认识虽然进了一步,但是却使得这不再是本质了。我们描述的越多,我们就越接近本质,但是却无法了解本质本身了,因为我们加以了事先假定的描述范围。
hmmm...哲学跑远了,回正题。我们的目的仍然还是要尽量接近本质的。
设计模式,就是根据不同的应用领域和人为规定的范围描述本质的东西,就好像为了拓展性,灵活性,可插入性,我们进行着各种描述和方法使得我们的代码更加接近一种本质的东西。hmmm...又乱哈喇了。以下是我的一句话概括: 设计模式是在通过软件的本质的各种性质领域来描述和让人更加接近那个本质的。
然后这一章的学习以我跟我的一个朋友的对话结束:
漩涡鸣人 说:
道家认为世界的本质是一个混沌的东西,只是根据人们的认识范围和角度,使得被定义为不同的性质和名称,于是有了模式
漩涡鸣人 说:
比如我们的建筑,里边就有风水之说
漩涡鸣人 说:
建筑从人的角度,可以要求有舒适性,美观性等等的性质
漩涡鸣人 说:
根据结构学来说,有构造性,拓展性
漩涡鸣人 说:
还有其他的分类,都有各自的性质
漩涡鸣人 说:
但是它本身,没有这些定义,是个混沌的状态
孙锦钊 说:
…你现在文笔更有精进啊,下笔成文~
漩涡鸣人 说:
同样,程序设计也是
孙锦钊 说:
这是事实~
漩涡鸣人 说:
要有易读性,要有拓展性,要有好多性质
漩涡鸣人 说:
为了更好的完整这些性质,于是出现了设计模式
漩涡鸣人 说:
也就是说,我们设计程序的时候,不断的在作着一件事情
漩涡鸣人 说:
就是把我们的程序实现,尽量向程序的本质靠拢,
漩涡鸣人 说:
至于方法的笨拙或者聪明,就是看他是否符合我们在各自的性质定义的实现上是否符合要求
漩涡鸣人 说:
这就要靠模式来指导我们
漩涡鸣人 说:
当然,模式是无穷无尽的
漩涡鸣人 说:
这是道家的学说
漩涡鸣人 说:
但是,常用的还是可以被我们掌握的
漩涡鸣人 说:
我们一直在作着一件事情,很让人有成就感,这就是:我们一直在追求程序设计的本质和真理,虽然我们并没有意识到,但是我们的确在作着这样的事情.
漩涡鸣人 说:
嗬嗬,说的有点悬了
孙锦钊 说:
挺好的,不悬~
漩涡鸣人 说:
但是这是从哲学的角度说我们的从事的行业