OSC第54期高手问答——解读元素模式

阿娇OSC 发布于 2014/08/25 15:18
阅读 3K+
收藏 13

OSCHINA 本期高手问答(8月25日-8月31日)我们请来了 @BoGao (高博) @owlman(凌杰)为大家解答关于元素模式方面的问题。

@BoGao   高博:1983年生,毕业于上海交通大学。目前在EMC中国卓越研发集团任首席工程师,在信息科学和工程领域有近15年实践和研究经验。酷爱读书和写作,业余研究兴趣涉猎广泛。译著包括图灵奖作者高德纳的《研究之美》和布鲁克斯的《设计原本》,以及《信息简史》等。近年来,出版翻译作品近百万字。

@owlman  凌杰:自由开发者,自2006年于浙江大学远程教育学院完成计算机本科专业学习之后,一直从事与软件开发相关的研究和写作。曾参与多项软件开发及测试项目,并翻译多部技术类书籍,译作包括《JavaScript面向对象编程指南》、《元素模式》等。

《元素模式》为最新Jolt大奖得主,是彻底颠覆传统GoF设计模式的里程碑著作。本书介绍了一类全新的设计模式,称为元素模式(Elemental DesignPattern),其为软件工程设计模式的研究和应用打下了基础。元素模式深深植根于软件程序设计理论的研究,但其目的却在于实践性和实用性。从程序设计的新手,到资深的开发工程师,都是元素模式的目标受众。它能够带领学生加入软件工业的大军,也能够为研究者打开新的思路。

 为了鼓励踊跃提问,@博文视点  会在问答结束后从提问者中抽取 5 名幸运会员赠予《元素模式》一书。


购买链接:http://item.jd.com/11500855.html

OSChina 高手问答一贯的风格,不欢迎任何与主题无关的讨论和喷子。

下面欢迎大家就元素模式方面问题向@BoGao  @owlman 提问,请直接回帖提问。 

加载中
0
泥瓦匠BYSocket
泥瓦匠BYSocket
@boGao : 彻底颠覆传统GoF设计模式 这需要祭奠 和 团队的研究多久呀。
0
筱龙缘
筱龙缘
@boGao :完全替代?不明觉厉
0
长宁楚王陈涉
长宁楚王陈涉
@owlman 单例模式 工厂模式 观察者模式 与元素模式是这个概念范畴的吗?又应该怎么理解?
0
owlman
owlman

引用来自“ckGG”的评论

@owlman 单例模式 工厂模式 观察者模式 与元素模式是这个概念范畴的吗?又应该怎么理解?

单件模式,工厂模式这些GOF模式对于元素模式来说,属于组合模式,元素模式是用来分解这些模式的工具。就好像在化学中,分子由原子组成,这里的元素模式(EDP)就相当于原子,它们是用来组合分子,并分析其成分的。

对此,本书在第七章中有详细的说明,您可自行参考。

0
坚持不懈丶
坚持不懈丶
原素模式没了解过,但是应该是用到过的。中奖让我扫盲吧。我知道有prototype pattern
0
泥瓦匠BYSocket
泥瓦匠BYSocket
@boGao :  单例模式 工厂模式 观察者模式 与元素模式 其实就是不同角度下的产物是吗
0
机器猫123
机器猫123

@boGao :说到设计模式,很多人都会想到java中的单例模式,工厂模式等等,其实设计模式是分为三大类的,即创建型模式、结构型模式、行为型模式。而单例模式这些是属于其中一类里面。在我看来,这本书说到的元素模式是和三大类模式并排的第四类模式,不知道我这样理解正确吗?

还有一个问题我想问,我看了一下本书的目录,很多的介绍对于开发者来说是陌生的,如何才能更好的理解这本书以及元素模式呢?需要掌握哪些基本要素之后,读这样的书才能更深刻?

0
owlman
owlman

引用来自“泥沙砖瓦浆木匠”的评论

@boGao :  单例模式 工厂模式 观察者模式 与元素模式 其实就是不同角度下的产物是吗
 把“角度”换成“粒度”就更准确了,正如我上面所回答的,元素模式最重要的是其原子性,它是不可再分的模式,通常我们提到单件、工厂这些模式的时候,很容易有意无意的把模式认识成模版,来生搬硬套,但如果我们把这些模式分解成元素模式,就很容易理解到它不过是一些设计套路的组合而已,而这种套路才是“模式”,它们是可以变化的,根据实际情况重新组合的,甚至还是可以作为反例的。它们并不是设计社区所流传的神话,后来者只能把它们供起来,生搬硬套。
泥瓦匠BYSocket
泥瓦匠BYSocket
求这本书
0
owlman
owlman

引用来自“机器猫123”的评论

@boGao :说到设计模式,很多人都会想到java中的单例模式,工厂模式等等,其实设计模式是分为三大类的,即创建型模式、结构型模式、行为型模式。而单例模式这些是属于其中一类里面。在我看来,这本书说到的元素模式是和三大类模式并排的第四类模式,不知道我这样理解正确吗?

还有一个问题我想问,我看了一下本书的目录,很多的介绍对于开发者来说是陌生的,如何才能更好的理解这本书以及元素模式呢?需要掌握哪些基本要素之后,读这样的书才能更深刻?

没什么特别需要做得,只要注意这些模式的原子性,它们是你分析包括GoF模式在内的一系列组合式应用模式的工具,也是你变化并创建出新设计模式的基础    。。。
owlman
owlman
@muffe 您问的就是这本书的内容,您可以去看看。
muffe
muffe
元素模式理解为每种GoF的基本粒子,那么这种基本粒子有几种呢?我如何运用创建我的新模式并符合要求呢?
0
LeoXu
LeoXu
@boGao :你好,看上面的评论,有点模式之模式,或者说模式之构成的感觉,我想了解下,是不是这本书就算向下分解的终点(假设再下面就是一行一行的代码)了呢? 如果不算终点,还能怎么细化,我比较好奇。
博高
博高
是终点,也不是终点。终点在于,作者构建了一个设计空间,这个空间是按照OOP中的最简单概念的不同维度来构造的,所以这个设计空间应该说是没有办法进一步分解了,所以说是终点。但这个设计空间远不止16个格子,作者只拿出来16个格子作为EDP来讲。其他的格子目前来看,意义不明,但未来也许会明确,所以这个设计空间是否已经探索完全,不好说,很可能还不完全,所以这就叫不是终点。
返回顶部
顶部