後端開發的三大原則 huaxiawudi

2021-08-21 14:46:33 字數 534 閱讀 4908

一、desingn for failure

後端相當比例的**不是為了一般情況下正確而存在,而是為了保證特殊或者極端情況下系統可接受的響應而存在的這裡有非常多的折衷要做:漸進漸改還是超前設計?水平擴充套件、業務優化、前台還是後台處理?大量的折衷都是根據不斷變化的環境和需求去權衡的,所以很容易犯錯。

二、architecture is about abstract

為什麼要抽象?因為抽象的概念有更好的適應性,更容易復用,更能靈活適應變化。但是抽象是很難的,不恰當的抽象更是貽害無窮,要命的是,這些並沒有很好的方**,多數是依靠一組基本的原理,憑經驗作出的。而web後端開發在很長時間裡並沒有很重視這些,所以補丁疊補丁的結構就順理成章的成為了主流。

三、architecture is product

為架構本身即產品,乙個軟體產品包含了不同的視角,其中最重要的包括使用者看到的視角、以及軟體骨架的視角。但產品就是產品,所有這些視角都是必須統一和一致的,這就要求架構必須理解產品的靈魂,而產品要理解架構的困難所在,否則很容易出現想做的事情做不到或者以巨大的架構代價實現乙個邊角功能這類悲劇。

軟體開發7大原則

5.依賴倒置原則 dip dependence inversion principle 依賴關係應該是盡量依賴介面 或抽象類 而不是依賴於具體類 高層不依賴低層,都依賴於抽象 針對介面程式設計,不要針對實現程式設計 我的理解是,對於不同層次的程式設計,高層次暴露給低層次的應當只是介面,而不是它的具體...

計算機三大原則

現在的計算機看起來好像是種高度複雜的機器,可是其基本的構造卻簡單得令人驚訝。從大約50年前的第一代計算機到現在,計算機並沒有發生什麼改變。在認識計算機時,需要把握的最基礎的要點只有三個,我們就將這三個要點稱為 計算機的三大原則 吧。無論是多麼高深 多麼難懂的最新技術,都可以對照著這三大原則來解釋說明...

計算機的三大原則

問題 硬體和軟體的區別是什麼?硬體是看得見摸得著的裝置,比如計算機主機 顯示器 鍵盤等。而軟體是計算機所執行的程式,即指令和資料。這取決於眼睛能否看得到,或者實際上能否用手摸到。儲存字串 中國 需要幾個位元組?儲存漢字時,字元編碼不用,漢字所占用的位元組數也就不同。在gbk字元編碼下,乙個漢字佔2個...