程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> 【重構學習】01 重構與性能,重構學習01性能

【重構學習】01 重構與性能,重構學習01性能

編輯:C#入門知識

【重構學習】01 重構與性能,重構學習01性能


  重構並不意味著性能更好,但是重構可以讓性能優化更容易!!!

   關於寫出高性能代碼

  寫出高性能代碼的前提:首先你得有個可以調整的程序。

  就像別人問你如何和女朋友更好相處一樣,首先你得有個女朋友。

  寫出高性能代碼的方法:

  1、時間預算法

   給每個組件分配一定的資源——包括時間和執行軌跡,每個組件不能超過自己的預算。

   通常用於要求極高的實時系統。

  2、持續關注法

   這種方法要求任何程序員在任何時間做任何事情時,都要保證系統的高性能。

   這種方式很常見,感覺很有吸引力,但通常不會起太大作用。(《重構》作者原話)

   任何修改如果是為了提高性能,通常會使程序難以維護,繼而減緩開發速度。

   而且性能改善一旦被分散到程序各角落,每次改善都只不過從對程序行為的一個狹隘的角度出發而已。

   一個程序通常大半的事件都耗費在一小半代碼上,如果你一視同仁優化所有代碼,90%的優化都是白費勁,因為你優化的代碼很少執行。

  你花時間是為了讓程序運行更快,如果缺乏對程序的清楚認識而花費時間,那些時間就被浪費掉了。

  3、熱點提升法(本人的命名)

   采用這種方法,編寫代碼的時候不需要對性能投以特別的關注,直至進入性能優化階段——通常在開發後期。

   在性能優化階段:

   首先用某種度量工具監控程序的運行,找到消耗大量時間和空間的的代碼,也就是"熱點"了。

   然後去優化這些熱點,就可以花費較少的時間取得較好的優化效果

  關於重構對性能優化的幫助

  首先,一個構造良好的代碼讓你有足夠的時間進行性能調整,因為它你可以更快速地添加功能,也就有更多時間用在性能問題上(准確的度量則保證你把這些時間用在恰當的地點)。

  其次,面對構造良好的程序,你在進行性能分析時便有較細的粒度,於是度量工具把你代入范圍較小的程序段落中,而性能的調整也比較容易些。由於代碼更加清晰,因此你能更好地理解自己的選擇,更清楚哪種調整起關鍵作用。

 

  

                                                      

 

  

  

  

  

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved