zoukankan      html  css  js  c++  java
  • 【重构学习】01 重构与性能

      重构并不意味着性能更好,但是重构可以让性能优化更容易!!!

       关于写出高性能代码

      写出高性能代码的前提:首先你得有个可以调整的程序。

      就像别人问你如何和女朋友更好相处一样,首先你得有个女朋友。

      写出高性能代码的方法:

      1、时间预算法

       给每个组件分配一定的资源——包括时间和执行轨迹,每个组件不能超过自己的预算。

       通常用于要求极高的实时系统。

      2、持续关注法

       这种方法要求任何程序员在任何时间做任何事情时,都要保证系统的高性能。

       这种方式很常见,感觉很有吸引力,但通常不会起太大作用。(《重构》作者原话)

       任何修改如果是为了提高性能,通常会使程序难以维护,继而减缓开发速度。

       而且性能改善一旦被分散到程序各角落,每次改善都只不过从对程序行为的一个狭隘的角度出发而已。

       一个程序通常大半的事件都耗费在一小半代码上,如果你一视同仁优化所有代码,90%的优化都是白费劲,因为你优化的代码很少执行。

      你花时间是为了让程序运行更快,如果缺乏对程序的清楚认识而花费时间,那些时间就被浪费掉了。

      3、热点提升法(本人的命名)

       采用这种方法,编写代码的时候不需要对性能投以特别的关注,直至进入性能优化阶段——通常在开发后期。

       在性能优化阶段:

       首先用某种度量工具监控程序的运行,找到消耗大量时间和空间的的代码,也就是"热点"了。

       然后去优化这些热点,就可以花费较少的时间取得较好的优化效果

      关于重构对性能优化的帮助

      首先,一个构造良好的代码让你有足够的时间进行性能调整,因为它你可以更快速地添加功能,也就有更多时间用在性能问题上(准确的度量则保证你把这些时间用在恰当的地点)。

      其次,面对构造良好的程序,你在进行性能分析时便有较细的粒度,于是度量工具把你代入范围较小的程序段落中,而性能的调整也比较容易些。由于代码更加清晰,因此你能更好地理解自己的选择,更清楚哪种调整起关键作用。

      

                                                          

     

      

      

      

      

  • 相关阅读:
    dw2018修改为中文
    C# 响应一个html页面
    layui 时间控件 单击 年直接赋值
    js 正则 测试
    python之读取和写入csv文件
    python安装与配置
    hive支持sql大全
    HiveQL与SQL区别
    Hadoop插件安装
    简单算法学习之快速排序详解
  • 原文地址:https://www.cnblogs.com/vvjiang/p/5081144.html
Copyright © 2011-2022 走看看