后悔沒早看這個!早知道就不會禿頭了。。。

我的新書《Android App開發(fā)入門與實戰(zhàn)》已于2020年8月由人民郵電出版社出版,歡迎購買。點擊進入詳情

GitHub嚴(yán)選:每天推薦一個GitHub優(yōu)質(zhì)開源項目

過去屬于死神,未來屬于你自己。

大家好,我是嚴(yán)選哥。

今天給大家?guī)淼捻椖渴牵?strong>hacker-laws

這個項目搜集了一些對開發(fā)人員有用的定律、理論、原則和模式。坐擁16.8k的star。

大家一定不會覺得很奇怪?開發(fā)人員不是應(yīng)該學(xué)習(xí)代碼、語法么?為什么還要看這些理論性的帶有哲學(xué)味的文章呢?

其實理論萬物皆通,不管是在軟件開發(fā)領(lǐng)域,還是在其它的領(lǐng)域,理論和法則都是一樣的,這些理論和法則只是在這些不同領(lǐng)域的展現(xiàn)而已。

就拿阿姆達爾定律 (Amdahl's Law)來說:
阿姆達爾定律是一個公式,它顯示了可以通過增加系統(tǒng)資源來實現(xiàn)的計算任務(wù)的潛在加速。通常用于并行計算,它可以預(yù)測增加處理器數(shù)量的實際好處,這受程序的可并行性限制。
什么意思呢?如果程序由兩部分組成,A部分必須由單個處理器執(zhí)行,B部分可以并行運行。那么向執(zhí)行程序的系統(tǒng)添加多個處理器只能獲得有限的好處。它可以極大地提升部分 B 的運行速度,但部分 A 的運行速度將保持不變。

我們看這個圖:


在這里插入圖片描述

我們看到,如果系統(tǒng)中有95%的可并行任務(wù),那么增加的處理器越多,效果越明顯;但是如果系統(tǒng)中只有50%甚至更少的可并行任務(wù),那么同樣你增加更多的處理器,但是取得的效果并不明顯。

大家是不是可以感受到,這些定律和法則對于我們設(shè)計系統(tǒng)方案和解決實際問題的時候是有一定的幫助的。

這個項目有很多內(nèi)容:


在這里插入圖片描述

這個項目同樣也有中文版本:
https://github.com/nusr/hacker-laws-zh

項目地址:
https://github.com/dwmkerr/hacker-laws

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容