架構(gòu)的力量

<a ><img src="http://img3.douban.com/lpic/s25663930.jpg" width="120"></a><a ><img src="http://img3.douban.com/lpic/s1218861.jpg" width="80"></a>

最近看了兩本書,這兩本書當然大有不同,一本書專注于分析軟件設(shè)計,尤其是架構(gòu)設(shè)計的書;而另一本則是在分析互聯(lián)網(wǎng)領(lǐng)域的法律與創(chuàng)新的關(guān)系問題。

兩本都是好書,都值得分別為他們寫一篇讀書心得,只是這里想談?wù)劦氖莾杀緯?,相通的部分——「架?gòu)的力量」。

  • 端對端原則

在《思想的未來》中,作者回顧了互聯(lián)網(wǎng)的架構(gòu)設(shè)計思想:
「這一原則是由網(wǎng)絡(luò)設(shè)計者Jerome Saltzer、David Clark、David P.Reed在1981年首次提出的,被稱為端對端(end-to-end argument, e2e),用以指導網(wǎng)絡(luò)設(shè)計者們開發(fā)網(wǎng)絡(luò)協(xié)議及應(yīng)用程序?!?br> 「端對端原則認為,網(wǎng)絡(luò)的智能不應(yīng)當放在網(wǎng)絡(luò)內(nèi),而應(yīng)當位于網(wǎng)絡(luò)的端點,即網(wǎng)絡(luò)內(nèi)的計算機只是履行應(yīng)用程序所需的基本功能,而一些特殊功能應(yīng)由網(wǎng)絡(luò)邊緣的計算機來實現(xiàn)?!?br> 「據(jù)RFC 1958所述,雖然因特網(wǎng)社區(qū)中許多成員會認為因特網(wǎng)不存在架構(gòu),但是,社區(qū)成員普遍相信,因特網(wǎng)的目標是連通性,工具是因特網(wǎng)協(xié)議,智能位于端對端而不是隱藏與網(wǎng)絡(luò)之中。網(wǎng)絡(luò)的任務(wù)是盡可能靈活有效地傳輸數(shù)據(jù)包,而其他的一切都應(yīng)該靠邊站?!?/p>

由這樣的架構(gòu)原則,作者總結(jié)出了三個要點:「應(yīng)用程序在網(wǎng)絡(luò)邊緣的計算機上執(zhí)行,任何種類的應(yīng)用都可以立即被運行;網(wǎng)絡(luò)沒有為任何特定應(yīng)用程序做優(yōu)化設(shè)計,對于任何創(chuàng)新都是開放的;由于網(wǎng)絡(luò)平臺的中立性,網(wǎng)絡(luò)無法做到歧視某種特定的新設(shè)計?!?/p>

在我看來:互聯(lián)網(wǎng)最初的設(shè)計者,因為足夠謙遜,所以對于「平臺將會如何被使用」未做任何假設(shè),他們的架構(gòu)僅僅專注于最為簡單的目標,而這也是互聯(lián)網(wǎng)取得如今這樣巨大成就的根本原因。

  • 不要嘗試預測未來

在《簡潔之美》中,作者極力向讀者闡述:架構(gòu)設(shè)計簡潔的價值,因為隨著時間的不斷增長,軟件的研發(fā)成本的絕大部分,會產(chǎn)生于后期維護的階段。越是簡潔的架構(gòu),就越是能夠為今后的維護,節(jié)約大筆費用。

另外一個值得注意的事實是:「程序員犯的最常見也是最嚴重的錯誤,就是在其實不知道未來的時候,去預測未來?!?/p>

而作者給出的策略是:「最安全的情況是,完全不嘗試預測未來,所有的設(shè)計決策都應(yīng)當根據(jù)當前確切知道的信息來做?!?/p>

在我看來,當年的互聯(lián)網(wǎng)設(shè)計者,就是那種最偉大的程序員/設(shè)計師,他們未做任何假設(shè),僅僅專注于解決信息傳輸?shù)男枨蟆?/strong>

  • 一個可能的誤區(qū)

不去嘗試預測未來,根據(jù)當前確切知道的信息來做。這樣的邏輯,可能會讓人偷懶。

  1. 「啊,我們這就開始干吧!」
  2. 「我們不要做太多的假設(shè)!(不必想那些設(shè)計的事情)」

架構(gòu)是存在的,設(shè)計是需要的,需求要盡可能的去搜集與分析。在做到這三個要點之后,才能談及「不要假設(shè)」,「不要過度設(shè)計」。在此之前,還是不要放松為好。

架構(gòu)是有力量的,簡潔的架構(gòu),往往會產(chǎn)生的驚人的力量。當然,「無架構(gòu)設(shè)計」不在其列。

最后編輯于
?著作權(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)容