我们观察这个世界也许可以有非常多种的方式,但不管这些方式多么繁杂,归纳起来无非就是两个角度:其一是从“宏观”的角度看世界,其二是从“微观”的角度看世界。我们可以将宏观与微观看成是一对矛盾统一体,它们相互依存又相互观待,对一者的研究可以加深对另一者的了解。写到这里,感觉自己在写哲学,俨然有哲学家的风范。开个玩笑啦,哈哈。哲学可以说是一切方法论、一切研究学的鼻祖学科,这本书本身也确实具有哲学的气息,所以我为何就不能有一个哲学一点的开场白呢。
设计模式自从被GOF四人组提出之后,就成了编程领域的圣经。它其实是编程过程中不同良好实践的一个集合,是编程方法论的一个总结,或者应该说它就是一部用代码演绎的哲学著作。有人会说,既然你将设计模式划入哲学范畴,那它理应该能解决某些实际存在的问题吧?答案是肯定的!GOF四人组对于在软件开发过程中特定场景下反复出现的特定问题,进行了抽丝剥茧的分析与总结,并对它们进行反复验证后,前无古人地提出23种解决方案。真正掌握其精髓后,可以灵活应用,自由演化,让小菜们“妙笔生花”,写出漂亮的代码。所以设计模式自问世以来,引无数代码英雄竟折腰!
科学告诉我们,如果我们从微观的角度来观察的话,我们可以不断发现更小的组成元素,从分子到原子到中子到夸克,由大而小逐级细化。在程序的世界中,高阶的模式——系统架构模式,糅合了各种设计模式而成,可以说不同的设计模式都是系统架构模式的元素。那么GOF四人组的设计模式是不是就是最基本的元素,在它们之下还有更小的元素吗?有的!Jason McC. Smith博士在完成SPQR的过程中革命性地提出了新的模式,并将此模式命名为“元素模式”。何谓元素模式?元素模式的英文全称是:Elemental Design Patterns,简写成EDP。它是一组基础的程序设计思想,核心要义是一组面向对象的基本概念。它是从根源上去剖析GOF四人组的设计模式,以庖丁解牛的方式让大家一窥设计模式的全貌,其角度之独特让人深为叹服!
元素模式有两个与众不同的特征:(一)它们以设计模式的文献风格写成,每项EDP都代表一个独立概念,有一个专用名字,有了这些名字,我们就可以针对元素模式进行各种讨论和琢磨,直到彻底理解它们;(二)设计模式描述的是在考察现有软件系统时发现的共通问题的解决方案。EDP同样也是共通问题的解决方案,一旦了解了自己所寻找的问题,就会发现它个无处不在。EDP可以被视为某种构件,它们能像原子一样既可靠又直接地描述其它设计模式。
作者引领读者逐步向精细化推演,从设计模式三大类别:解决方案、问题、语境,到四种项目:对象、方法、字段、类型,再到去粗取精后的四个象限:递归、集聚、委托、重定向,最后得到四个核心EDP:创建对象、检索、继承、抽象接口。整个分析讲解的过程,有理有据,层次分明,匠心独具。这真是一部非常好的方法论,充满了哲学的气息,难道此书会成为JOLT的获奖图书!
分享到:
相关推荐
中国哲学与设计模式不谋而合,本书讲述的内容结合中国人的民族思想,解析设计模式的应用方式。并且配合西游记中的故事,使得理解更加深入
中国哲学与设计模式不谋而合,本书讲述的内容结合中国人的民族思想,解析设计模式的应用方式。并且配合西游记中的故事,使得理解更加深入
中国哲学与设计模式不谋而合,本书讲述的内容结合中国人的民族思想,解析设计模式的应用方式。并且配合西游记中的故事,使得理解更加深入
从哲学角度学习设计模式
中国哲学与设计模式不谋而合,本书讲述的内容结合中国人的民族思想,解析设计模式的应用方式。并且配合西游记中的故事,使得理解更加深入
中国哲学与设计模式不谋而合,本书讲述的内容结合中国人的民族思想,解析设计模式的应用方式。并且配合西游记中的故事,使得理解更加深入
中国哲学与设计模式不谋而合,本书讲述的内容结合中国人的民族思想,解析设计模式的应用方式。并且配合西游记中的故事,使得理解更加深入
中国哲学与设计模式不谋而合,本书讲述的内容结合中国人的民族思想,解析设计模式的应用方式。并且配合西游记中的故事,使得理解更加深入
中国哲学与设计模式不谋而合,本书讲述的内容结合中国人的民族思想,解析设计模式的应用方式。并且配合西游记中的故事,使得理解更加深入
云计算环境下我国哲学图书贸易模式和数据分析.pdf
Unix 哲学 Unix 哲学 Unix 哲学 Unix 哲学 Unix 哲学 Unix 哲学 Unix 哲学
日本管理哲学模式探析doc17.doc
哲学家就餐问题可以这样表述,假设有五位哲学家围坐在一张圆形餐桌旁,做以下两件事情之一:吃饭,或者思考。吃东西的时候,他们就停止思考,思考的时候也停止吃东西。餐桌中间有一大碗意大利面,每两个哲学家之间有...
中国传统哲学学习这门课程的感受与心得,对中国古代哲学的总体认识, 对当代中国哲学发展的思考
中国哲学史知识点-中国哲学史笔记.pdf
高二政治生活与哲学主观题速成答题模式
论证在哲学研究中的重要作用,首先是将分散的东西编织为一个整体,这是哲学和科学的共通之处。论证的质量是区分好、坏哲学的关键所在。在哲学研究工作中,要秉承一个开放的哲学观,拒绝标签投递,尊重论证形式的多样性。...
北京大学赵敦华教授《西方哲学简史》 西方哲学导论 古希腊—中世纪赵敦华主讲 第一讲 前言 西方哲学史将讲授历史上的主要哲学体系,哲学思辩与论证的方法、训练思维的逻辑与规范、用语言进行较确切的逻辑与语意。...
用c++实现哲学家进餐问题 哲学家i思考中 1 输入饥饿哲学家 2 停止就餐 3 显示个哲学家的状态 "饥饿哲学家的数目 各饥饿哲学家的编号 输入释放筷子的哲学家编号