哪些设计模式可以提高性能?

发布于 2024-10-17 21:29:25 字数 1431 浏览 1 评论 0原文

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

一城柳絮吹成雪 2024-10-24 21:29:25

更严重的是,设计模式可能会降低性能。根据我的经验,设计模式的使用可以提供更清晰、更易于维护的代码。如果您需要优化任何内容,您可能需要对代码进行反设计模式。

通常,代码的性能取决于相对较小的部分(数据结构、函数,甚至单个循环),因此它无论如何都不属于设计模式的范围。将 C 中的直接函数更改为汇编中的超级优化版本可能不会改变整个类的行为方式。

On a more serious note, design patterns will probably reduce performance. From my experience, the usage of design patterns gives cleaner, more maintainable code. Should you need to optimize anything, you would probably need to de-design pattern the code.

Often performance of code is dependent on a relatively small piece (a data structure, a function, or even a single loop), so it doesn't go into the scope of design patterns any way. Changing a straight forward function in C to a super optimized version in assembly probably won't change the way the entire class behaves.

你列表最软的妹 2024-10-24 21:29:25

Flyweight 减少了内存消耗。

代理模式可用于速度优化。

桥接模式可以动态改变抽象的实现——总是选择
最有效率的一个。

Flyweight reduces memory consumption.

The Proxy pattern can be used for speed optimization.

The Bridge pattern can change the implementation of an abstraction on the fly - always picking
the most efficient one.

玩套路吗 2024-10-24 21:29:25

对象池模式

对象池模式是一种软件创建设计模式,
使用一组随时可用的初始化对象 – 一个“池” –
而不是按需分配和销毁它们。

对象池主要用于性能:在某些情况下
在这种情况下,对象池可以显着提高性能。

Object Pool Pattern

The object pool pattern is a software creational design pattern that
uses a set of initialized objects kept ready to use – a "pool" –
rather than allocating and destroying them on demand.

Object pools are primarily used for performance: in some
circumstances, object pools significantly improve performance.

五里雾 2024-10-24 21:29:25

没有什么比这更好的了。设计模式用于使您的开发维护更容易。

大多数设计模式用于

design pattern is a general reusable solution to a commonly occurring problem in software design

There is nothing like that.Design patterns are used to make your development and maintance easier.

mostly design patterns are used for

design pattern is a general reusable solution to a commonly occurring problem in software design
聽兲甴掵 2024-10-24 21:29:25

可能是“不要做傻事”的模式。如果遵循 T 恤,您会发现它击败了:

  • Factory
  • Singleton
  • MVC
  • 面向方面编程
  • 极限编程和极限程序员(无情)
  • DotNetNuke(两次)
  • Drupal(一次)

放手

Probably the "don't-do-stupid-tings" pattern. If followed to the tee, you'll find it beats:

  • Factory
  • Singleton
  • MVC
  • Aspect Oriented Programming
  • Extreme Programming and Extreme Programmers (mercilessly)
  • DotNetNuke (twice)
  • Drupal (once)

Hands down

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文