大多关于性能优化的资料都建议将优化放到系统完成后进行,因为过早的优化缺少前瞻性。认为此处所指的优化应为代码优化(代码细节上的调整),而事实上,系统架构、关键数据结构等高层次设计上对系统性能的影响可能远大于细节的代码(编码严重失误的情况除外)。试想,对某个操作的代码有什么优化能够达到将这个操作去掉带来的效率提升呢?而冗余操作的去除正是系统架构、关键数据结构和数据流向的合理规划才能达到的。对于一些对性能要求很高而瓶颈又可以预见的系统来说,设计架构、核心数据结构和数据流时就应该将性能问题纳入考虑。而最后所做的代码调整仅仅是起到锦上添花的作用,或是对编码失误造成的性能问题做出纠正。