在考虑性能的情况下,将软件的组件或架构设计归零是否可取?我的意思是,设计/架构应该准备好在性能密集型环境中使用吗?
在设计组件时,我们是否应该遵循良好的 OO 原则并确保组件是“可扩展的”。这样,当我们遇到性能问题时,我们会在这里和那里稍微调整设计。尽管这样,我们经常会遇到性能问题,稍微调整软件可能无济于事。
或者,我们是否应该提出一个设计,虽然很复杂,但性能问题却轻而易举。我们仍然需要调整软件,但调整通常非常简单,因为设计是面向性能的。
注意:在上面列出的任何一种情况下,我都没有尝试在遇到性能问题之前调整软件的性能。重新表述这个问题,软件的设计是否应该以性能为导向?
请不要回答我说这完全取决于软件预期运行的环境。原因是任何工业级软件的客户似乎总是想要越来越多。您可能不会计划您的软件在性能密集型环境中持续运行,但如果必须这样做呢?当我们感觉到这一点时,我们是否应该重新设计软件?
这个问题一直困扰着我一个星期,我还没有答案。你对此有什么看法?