代码优化之感想

 

    总结一下上个月的工做内容,主要的重点是了进行各个模块的代码优化。代码优化的好处多多,可是这并不意味着全部的代码都须要进行优化,有时过分的优化反而拔苗助长——费时、费力、不讨好。 数据库

    在项目开发中,因为各类因素的限制(时间,设计,技术,人员素质等),基本上每一个软件项目都有优化的必要。就像好的文章是改出来的,而好的程序也是同样。可是,是否须要优化,怎么优化由不少因素决定。而优化须要花费的成本,是一个必须考虑的问题。一个正确的、运行稳定、代价适中的程序更容易被接受。所以,在对项目进行优化时,须要进行一系列的讨论。 网络

    首先,明确优化的目标是很是必要的。在优化工做开始的时候,你还还没有明确优化内容和目的,那么你很容易陷入误区。在一开始,你就应该清楚地了解你要达到的效果,以及其余优化相关的各类问题。这些目标须要明确指出(至少精通技术的项目经理能够理解和表达它),接下来,在整个优化过程当中,你须要坚持这些目标。 性能

    在实际的项目开发中,常常会存在各类各样的变数。可能一开始时要优化这一方面,随后你可能会发现须要优化另外一方面。这种状况下,你须要清晰地了解这些变化,并确保团队中的每一个人都明白目标已经发生了变化。 优化

    其次,选择一个正确的指标,这是优化的一个重要组成部分,你须要按照这些指标来测量优化工做的进展状况。若是指标选择不恰当,或者彻底错误,你所作的努力有可能白费了。即便指标正确,也必须有一些辨别。在某些状况下,将最多的努力投入到运行消耗时间最多的那部分代码中,这是实用的策略。须要注意的是,若是你轻易选择了一个很容易达到的指标,这做用不大,由于没有真正解决问题。你有必要选择一个更复杂的、更接近你的目标的指标。 spa

    优化在刀刃上 这是有效优化的关键。找到项目中与你的目标(性能、资源或其余)相背的地方,并将你的努力和时间用在那里。 举一个典型的例子,一个Web项目速度比较慢,开发者在优化时将大部分精力放在了数据库优化上,最终发现真正的问题是网络链接慢。 另外,不要分心于容易实现的问题。这些问题尽管很容易解决,但可能不是必要的,或与你的目标不相符。容易优化并不意味着值得你花费工夫。 设计

    优化不是万金油优化最重要的规则之一是,你没法优化一切,甚至没法同时优化两个问题。好比,优化了速度,可能会增长资源利用;优化了存储的利用率,可能会使其余地方放慢。你须要权衡一下,哪一个更符合你的优化目标。 资源

    还有一个重要的前提是通过优化的代码要保证原有的功能不会出错。如果没法保证,优化的意义也就不存在了。 开发

    以上几点是经过这一个月的优化工做而且参考了文章《代码优化是把双刃剑》获得的感想。 软件

相关文章
相关标签/搜索