亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

什么時候優化還為時過早?

什么時候優化還為時過早?

什么時候優化還為時過早?就像Knuth說的,我們應該忘記小效率,說大約97%的時候:過早的優化是所有邪惡的根源。這是Stack溢出問題中經常出現的問題,例如“哪種是最有效的循環機制”、“SQL優化技術?”(諸若此類)。這些優化技巧問題的標準答案是分析代碼,看看它是否首先是一個問題,如果不是,那么您的新技術就不需要了。我的問題是,如果某個特定的技術是不同的,但不是特別模糊或模糊,那么這真的能被認為是一種過早的優化嗎?這是蘭德爾海德的一篇相關文章過早優化的謬誤.
查看完整描述

3 回答

?
臨摹微笑

TA貢獻1982條經驗 獲得超2個贊

IMHO,90%的優化應該發生在設計階段,基于當前,更重要的是,未來的需求。如果您必須取出一個分析器,因為您的應用程序沒有擴展到所需的負載,那么您離開它的時間太晚了,而IMO將浪費大量的時間和精力來糾正這個問題。

通常,唯一值得進行的優化是那些在速度方面給您帶來了數量級性能改進的優化,或者在存儲或帶寬方面獲得一個倍增器的優化。這些類型的優化通常與算法選擇和存儲策略有關,并且很難反轉到現有代碼中。它們可能會影響您實現系統所用的語言的決定。

因此,我的建議,盡早優化,根據您的需求,而不是您的代碼,并期待您的應用程序的可能延長壽命。


查看完整回答
反對 回復 2019-06-14
?
心有法竹

TA貢獻1866條經驗 獲得超5個贊

我的問題是,如果某個特定的技術是不同的,但不是特別模糊或模糊,那么這真的能被認為是一種過早的優化嗎?

呃.。因此,您手頭有兩種技術,成本相同(使用、閱讀、修改的工作量相同),其中一種更有效。不,在這種情況下,使用效率更高的辦法是不成熟的。

打斷您的代碼編寫以尋找公共編程構造/庫例程的替代方案,可能會有一個更有效的版本出現在某個地方,盡管您知道您正在編寫的代碼的相對速度實際上并不重要.那是太早了。


查看完整回答
反對 回復 2019-06-14
  • 3 回答
  • 0 關注
  • 531 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號