【发布时间】:2010-09-06 03:36:58
【问题描述】:
The Gang of Four 的 Design Patterns 使用文字处理器作为至少一些模式的示例,尤其是复合和享元。
除了使用 C 或 C++,您真的可以使用这些模式和它们需要的面向对象的开销来编写高性能的全功能文字处理器吗?
我知道 Eclipse 是用 Java 编写的,但我用得不多,所以我不知道它是否像 Visual Studio 那样快,或者像具有基于 C++ 的文本编辑系统的那样优美。
我只使用 C++ 和 Java 作为示例。这个问题更多地与拥有大量内存对象的开销有关,就像在文字处理器甚至游戏等应用程序中那样。
设计模式以牺牲简约为代价促进抽象,尽管它们通常会指出您何时可能会受到某种性能影响。文字处理器,尤其是游戏,可以从尽可能接近金属中获得最大的好处。
我只是想知道是否有人知道不是用 C++ 编写的快速面向对象的文字处理器或文本编辑器,以及他们是否会使用模式构建一个,或者他们会放弃很多抽象的东西?
【问题讨论】:
-
定义“快”,在 3+Ghz 4 核 8 线程上下文芯片作为商品的世界中,我挑战你写一个慢字处理器。
-
@fuzzy:我几乎同意你的看法,但我有一个 8 核 i7 和 12GB 内存,而且写得不好的商业软件仍然会找到运行缓慢的方法。
-
@fuzzy 这是一个愚蠢的挑战,没有指定任何约束。
-
visual studio 2010 在 WPF 中实现了一个基于 C# 的文本编辑器,这是主要的变化之一。
标签: java performance design-patterns ide text-processing