设计模式主要与什么有关?

时间:2009-05-18 15:56:40

标签: design-patterns

大多数人都认为设计模式只与软件工程有关。

模式使我们专注于重用现有模块或使我们摆脱未来变化所带来的繁重工作。

模式是否使程序运行更高效?

9 个答案:

答案 0 :(得分:7)

I think wiki says it the best.

  

架构和计算机科学中的设计模式是记录特定专业领域中设计问题解决方案的正式方式。

它可以使程序运行更高效,它可以使内存占用更少的空间,它可以使扩展更容易。等等。

关于你所谈论的模式以及你正在应用它的软件问题。

答案 1 :(得分:3)

不要重新发明轮子。

这是主要目标。 设计模式旨在解决重复问题。

因此,它们可以帮助您获得更清晰的代码,可用(并且可以重复使用)(只要它们正确使用)

答案 2 :(得分:1)

设计模式通常用于帮助促进不同组件的松散耦合,以便对象本身可以在不同的应用程序中一次又一次地重复使用,而无需进行大的修改。代码的可重用性是开发中的一个主要因素。

另一件需要考虑的事情是,通过使代码松散耦合,通过使用设计模式实现更改所需的时间要少得多,因为一个领域的重大变化并不意味着全面的大规模变化方便。这意味着如果您想要不断更新和功能升级,您可能只需要修改代码中的小部分和独立部分,而不必担心整个项目会在您周围的大火焰中落下。

答案 3 :(得分:0)

那里有数百种设计模式。其中一些是为了便于维护,其中一些是为了正确的对象访问,我相信其中一些甚至可以被认为是“性能”增强模式。

关键是他们已经被证明是解决问题的方法,从本质上来说,他们可能会提高绩效或许多其他方面。

答案 4 :(得分:0)

简单来说,我可以说设计模式实际上是一种解决问题的方法。 如果您知道存在问题和设计模式,那么设计模式将以最佳方式解决您的问题。

答案 5 :(得分:0)

这些模式使您的程序更易于维护,因此您的编程可能更有效。这不一定会影响运行时效率(由于运行时多态性,程序可能会更慢)。

答案 6 :(得分:0)

“模式是否使程序运行更高效?”

只有你找到了一些好的效率模式。

映射的设计模式是一种消除搜索的方法。你会发现进行搜索所花费的时间会少一些(一种效率),但它可能会占用更多内存(另一种效率)。

树图设计模式(Python人称之为有序字典)是此设计模式的一种变体。

Hash Map 设计模式(Python人称之为词典)是此设计模式的另一种变体。

它们更节省时间,但空间效率更低。

答案 7 :(得分:0)

设计模式是定义明确的问题的解决方案。该解决方案由彼此相关的不同部分组成。该解决方案属于特定的环境,具有优点/缺点,取决于所使用的工具,以及强调问题的哪个方面。设计模式也是沟通设计的好方法。

这不仅仅是一个软件问题,相反,这个想法是从名为Christopher Alexander的架构师那里借来的。

答案 8 :(得分:0)

设计模式是对象,因为算法是程序编程。设计模式告诉您如何创建一个或多个对象以执行一些有用的任务。就像一个算法告诉你如何组合语句来执行一些有用的任务。