寫了多年軟件,我在軟件性能上學到的4點教訓

英文原文:https://blog.nelhage.com/post/reflections-on-performance/

在職業生涯中,我至少參加了三個對軟件性能表現有一定要求的項目,它們分別是LivegrepTakticianSorbet。此外,我還對正使用的工具做了許多提升性能的工作。

一、性能是軟件的一個重要特性

我很贊同這樣一個觀點,即軟件性能不是獨立於軟件功能或軟件特性集合的一個屬性。性能(尤其是指能顯著提升速度的性能)本身就是軟件的一項功能,它從根本上改變了一個軟件工具的使用和感知方式。

在推出Sorbet後,我們從Stripe工程師那裏得到大量反饋和讚賞,因爲這個軟件工具的性能非常優越。

與之前緩慢的工具軟件使用體驗相比,開發人員真正體會到用高性能軟件帶來的快感(例如,對Stripe的代碼庫進行類型檢查,Sorbet從冷啓動加載都會比Ruby正常加載要快,更不用說執行其他代碼,在我看來,這是Ruby生態不太好的地方)。

我認爲性能的價值在普遍意義上非常容易理解——許多工程師都知道並經常討論響應時間感知閾值延遲對轉換率的影響——但能真正理解性能內在含義的人實際上很少,大部分只是紙上談兵。最近感覺抱怨軟件運行速度緩慢的人很多,但是也很少有團隊可以爲此做些什麼,以至於工具的性能變得越來越慢。

原文鏈接:【https://www.infoq.cn/article/2xBCHuSjb13UCQAISqOU】。未經作者許可,禁止轉載。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章