优化具有科学和艺术两重含义。从科学角度看,优化意指具体的优化技术;而从艺术角度看,优化指的是确定在什么地方、什么时候需要优化。由此,优化可定义为“通过选择和设计数据结构、算法以及指令序列,来提高程序效率(更小、更快)的过程”。
有关优化的一个普遍存在的误解是,认为只是在应用程序开发周期的最后阶段才进行优化。而实际上,为了创建真正优化的应用程序,就必须在开发时实行优化。一般来说,优化的过程为:仔细选择算法,并在速度、大小等诸多限制因素间进行权衡,初步估计应用程序各个部分的速度和大小,再在以后的开发过程中检验上述假设。
优化的第一步是确定优化目标。优化可以从以下几个方面进行:
真实速度(应用程序实际计算或操作的速度)。
显示速度(应用程序屏幕显示的速度)。