安全原理就是注意安全性,採用相對安全的方法來對具有不確定性的、模糊的部分進行設計和編碼。
說的具體一點,就是在編寫**的時可以將不可能的條件考慮進去。比如即便某個if語句一定成立,我們也要考慮else語句的情況;即便某個case語句一定成立,我們也要考慮default語句的情況;即便某個變數不可能為空,也要檢查該變數是否為null。
硬體提供的服務必須保證安全,軟體也一樣。
設計軟體時要考慮各種情況,保證軟體在各種情況下都能安全執行。這一做法在持續運營服務和防止資料損壞等方面有著積極的意義。
選擇相對安全的方法對具有不確定性的部分進行設計。列出所有可能的運**況,確保軟體在每種情況下都能安全執行。理解需求和功能,將各種情況正確分解到**中,這樣能有效提高軟體安全執行的概率。
為此,我們也要將不可能的條件視為考察物件,對其進行設計和程式設計。不過,為了統一標準,我們編寫**前最好規定哪些條件需要寫,哪些條件不需要寫。
對**的實現來說,需求和功能的說明書只能算必要條件。
比如說明書裡寫了需要新增某項資料。然而,當新增資料的操作使資料庫發生錯誤時,說明書並沒有明確告訴我們具體的應對措施,比如繼續處理然後重試、中止處理並生成日誌、讓軟體停止執行等。
安全性是滿足充分條件必不可少的要素。我們要讓**在滿足必要條件的同時準確涵蓋各種功能的情況,在與使用者保持溝通的過程中,讓每個例項都堅實可靠。
七個設計原理
七個設計原理是我們在設計 結構時應考慮的核心觀點,目的是避免 中存在故障隱患。這些設計原理源於對實際軟體開發現場的分析,是提高 質量的經驗結晶。人們從 怎樣做才能在開發時避免 中存在的故障隱患 的角度出發,分析乙個個故障案例的根本原因,從而總結出了這些原理。七個設計原理是 審查的標準判斷。這七個設計...
七個設計原理 同構原理
同構原理就是力求規範。同等對待相同的東西,堅持不搞特殊。同等對待,舉例來說就是同乙個模組管理的數值全部採用同一單位 公有函式的引數個數統一等。相同的東西用相同的形式表現能夠使不同的東西更加突出。不同的東西往往容易產生bug。遵循同構原理能讓我們更容易嗅出 的異樣,從而找出問題所在。圖表和工業製品在設...
七個設計原理 線性原理
線性原理就是讓處理流程盡量走直線。乙個功能如果可以通過多個功能的線性結合來實現,那它的結構就會非常簡單。反過來,用條件分支控制 毫無章法地增加狀態數等行為會讓 變得難以理解。我們要避免做出這種行為,提高 的可讀性。透明 一次可以用來形容 有較高的可讀性,所以線性原理又稱為 透明原理 複雜的流程是故障...