摩爾定律知道么?
帕金森定律講的又是啥?
作為一名合格的開發人員,除了本身碼力超強外,或多或少要知道幾條“”潛規則”,例如依賴倒置原則、魯棒性原則......
關于開發人員必須要知道的定義、原則以及理論,一位名叫Dave Kerr的小哥哥在Github上專門開了個科普帖子,為廣大程序員介紹必備的定理。
他將這個項目稱為:黑客信條(hacker-laws)。
阿姆達爾定律
一個計算機科學界的經驗法則,因吉恩·阿姆達爾而得名。它代表了處理器并行運算之后效率提升的能力。
并行計算中的加速比是用并行前的執行速度和并行后的執行速度之比來表示的,它表示了在并行化之后的效率提升情況。
可以看出,即使是一個50%可并行的程序,在超過10個處理單元的情況下也幾乎沒有什么提高,而一個95%可并行的程序,在超過1000個處理單元的情況下,仍然可以顯著提高速度。
炒作周期和阿馬拉定律
“人們總是高估一項科技所帶來的短期效益,卻又低估它的長期影響?!?/p>
—— Roy Amara
Hype Cycle(技術成熟度曲線)是制技術興奮度度和發展成熟度的直觀表現,最初由Gartner公司提出,如下圖所示:
簡而言之,這個周期表明,新技術及其潛在影響通常會引發一陣高度關注。技術團隊經常馬不停蹄進入這些技術領域,但往往無功而返。這可能是因為該技術還不夠成熟,或者現實應用還沒有完全實現。經過一段時間后,技術的能力提高,使用它的實際應用機會增加,團隊最終可以取得成功。Roy Amara最簡潔地總結了這一點——“人們總是高估一項科技所帶來的短期效益,卻又低估它的長期影響。”。
霍夫施塔特定律
表面上和帕金森定律截然相反的霍夫施塔特定律表明:“即使將霍夫施塔特定律考慮在內,你在一件事上花費的時間總是要比想象得要多。”
該定律與帕金森定律看起來相互矛盾,但其實兩者可以并行使用?;舴蚴┧囟杀砻鳎诮o一個復雜的項目制定截止期限的時候,人們很容易自信過度。
帕金森定律
帕金森定律(Parkinson's Law)是官僚主義或官僚主義現象的一種別稱,被稱為二十世紀西方文化三大發現之一。也可稱之為“官場病”、“組織麻痹病”或者“大企業病”。
帕金森得出結論:在行政管理中,行政機構會像金字塔一樣不斷增多,行政人員會不斷膨脹,每個人都很忙,但組織效率越來越低下。這條定律又被稱為“金字塔上升”現象。
將帕金森定律與霍夫施塔特定律結合會得出一個更加悲觀的結論:你的工作范圍會不斷擴大,結項日期遙不可及。
The Unix Philosophy
這一理念表明的是:小即是美,程序做好一件事即可;程序員盡可能早地建立原型;可移植性比效率更重要。另外數據應該保存為文本文件,盡可能地榨取軟件的全部價值。使用shell腳本來提高效率和可移植性、避免使用可定制性低下的用戶界面,所有程序都是數據的過濾器。
-
計算機
+關注
關注
19文章
7494瀏覽量
87949 -
處理單元
+關注
關注
0文章
9瀏覽量
6921
原文標題:Github一天標星1k+,程序員需要知道的那些定理和法則
文章出處:【微信號:BigDataDigest,微信公眾號:大數據文摘】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論