为什么我们需要像Factory,Abstract Factory和Singleton这样的设计模式?
答案 0 :(得分:15)
设计模式提供易于识别和使用OOP解决方案来解决常见问题。它们本身很容易维护,因为很多人都熟悉它们。这与谷歌的工作方式非常相似。每个人都知道如何谷歌,所以当你得到一个像“设计模式的目的是什么”这样的查询时,你可以很快地使用这个通用界面来解决问题。
设计模式还解决了有关可用性和可维护性的特定编程挑战。拿起Gang of Four book并查看它。
答案 1 :(得分:7)
如果问题一再发生,则有效地使用了该问题的解决方案。该解决方案被描述为模式。
答案 2 :(得分:5)
在某些情况下,为了实用性。当您看到一个常见的反复出现的问题时,您会找到一个通用的通用解决方案来解决它。它发生在架构,机制,可用性和人类行为中,编程也不例外。
在其他一些案例中,这种模式也是处理语言“效率低下”的一种方式,其中“效率低下”的含义非常广泛,而且并不总是在一个坏词中。例如,在函数是第一类对象的语言中,java中通常使用的某些模式不太重要。一些设计模式仅在某些语言中有意义,而在其他语言中则不可能:Crockford描述了Javascript模式,这种模式对于这种语言来说是独特的,以处理语言的潜在雷区性质(我必须指出,这是真的很酷的语言,一旦你明白了。)