我拿起了两本第一本书,OOAD和。当我开始阅读“设计模式”时,我感到非常困惑。以下是我的基本怀疑:
在阅读了前4或5种模式之后,如果某个人是一个优秀的OO设计师,他就会自动使用这些模式进行设计。
我真的很困惑
发布于 2012-08-12 20:51:19
模式作为问题的可重用解决方案,可以在许多领域中找到。使用模式语言来交流这些解决方案的想法起源于体系结构领域(参见模式语言),但后来成功地应用于软件工程。即使在软件工程领域,模式也存在于不同的层次上,例如实施模式和企业应用程序的体系结构模式。
推广软件设计模式( 设计模式.可重用面向对象软件的元素 )概念的开创性书籍的标题确实表明,所描述的模式只适用于面向对象的设计(我认为这不是作者的意图)。有些创建模式专门处理对象,但几乎所有其他模式都可以用任何非面向对象的语言实现。有关C中的示例,请参见状态模式、战略模式和观测器模式。
发布于 2012-08-12 18:34:26
设计模式是问题的可重用解决方案--原始设计模式手册本身非常清楚地表明,它们并不是特定于任何一种语言或范式的。
例如,甚至还有用于SQL的设计模式书,这是一种声明性语言,完全超出了OOP的范围。
设计模式往往比一个类更高层次的设计--它们往往是一些相关的类,这些类一起实现了特定的设计目标。因此(以及作为可重用的解决方案),它们绝对是一个很好的工具--从它们获得的价值不在于用它们来创建设计(模式应该从代码中产生,而不是编码到),而是有它们的名称--它们便于交流。如果你在和一个人谈论一个人或一个门面,如果他们熟悉设计模式,他们会很好地知道你在说什么,设计和它的目标。
https://stackoverflow.com/questions/11924700
复制相似问题