Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/design-patterns/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Design patterns ';模式链&x27;设计模式及其应用&x27;s势_Design Patterns_Metrics_Software Design - Fatal编程技术网

Design patterns ';模式链&x27;设计模式及其应用&x27;s势

Design patterns ';模式链&x27;设计模式及其应用&x27;s势,design-patterns,metrics,software-design,Design Patterns,Metrics,Software Design,我在学术期刊和会议上搜索设计模式及其相关主题和论文,同时我发现了关于“设计模式链”的内容,在阅读论文前后,我都没有听到任何关于这个主题的信息,这对我来说毫无意义,可能是因为这对我来说是一个全新的想法 有谁能给我一些关于这个主题的提示,这真的是一个“基准”主题吗?是不是选择了一个合适的模式,或者在这种情况下,是模式链,与问题的上下文相耦合 本文只是解释了一些用于连接(因此称为“链”)以实现特定代码段的设计模式可能有利于良好的代码属性,如模块性或可学习性 我理解设计模式的吸引力,它是1994年由四人

我在学术期刊和会议上搜索设计模式及其相关主题和论文,同时我发现了关于“设计模式链”的内容,在阅读论文前后,我都没有听到任何关于这个主题的信息,这对我来说毫无意义,可能是因为这对我来说是一个全新的想法


有谁能给我一些关于这个主题的提示,这真的是一个“基准”主题吗?是不是选择了一个合适的模式,或者在这种情况下,是模式链,与问题的上下文相耦合

本文只是解释了一些用于连接(因此称为“链”)以实现特定代码段的设计模式可能有利于良好的代码属性,如模块性或可学习性

我理解设计模式的吸引力,它是1994年由四人帮(Gof)首次引入的。DP被如此广泛地学习和采用,对社区来说是一件好事。然而,不要想当然地认为所有关于DP的事情,包括这篇学术论文

例如,Singleton DP总是导致设计拙劣且不稳定的代码,社区早就将其取缔(而对于初学者来说,Singleton听起来非常优雅,因为它更容易掌握)。顺便说一句,本文将单例称为高度可伸缩性,而单例显然扼杀了可伸缩性


只有经验(尤其是失败)才能让你直觉地知道何时使用和不使用DPs。

谢谢你的回答,我对DPs有点熟悉,但比较不同的DPs链(使用不同的用例)似乎有点胡说八道(如果我弄错了,请纠正我)。例如,将一个链(如
iterator->visitor
)与另一个链(如
iterator->memento
)进行比较,虽然每个链都有不同的用例,但似乎有点奇怪,如果它们不能相互替换,那么比较它们有什么意义呢?我同意你的看法,我想问题的关键是某个地方有人不得不写一篇学术论文,DPs听起来像是一个时髦的话题。这个问题似乎偏离了主题,因为它的联系现在已经消失了。不幸的是,现在还没有足够的背景来了解这个问题是关于什么的。