軟體開發的原則

2021-09-01 09:04:15 字數 899 閱讀 5364

1.單一職責(srp)

乙個類或者乙個方法,只有乙個引起它變化的原因。應該只有乙個職責。每乙個職責都是變化的乙個軸線,如果乙個類有乙個以上的職責,這些職責就耦合在了一起。這會導致脆弱的設計。

2. 開閉原則(ocp)

開閉原則指的是乙個軟體實體應對對擴充套件開發,對修改關閉。

3. 依賴倒置原則(dip,ioc)

依賴倒置(dependence inversion principle)原則講的是:要依賴於抽象,不要依賴於具體。

抽象不應當依賴於細節;細節應當依賴於抽象;

要針對介面程式設計,不針對實現程式設計。

4. 組合/聚合復用原則

在乙個新的物件裡面使用一些已有的物件,使之成為新物件的一部分:新的物件通過向這些物件的委派達到復用已有功能的目的。

5. 黎克特制替換原則(lsp)

所有引用基類的地方必須能透明地使用其子類的物件。

即:所以使用基類**的地方,用派生類**替換後,能夠正確的執行動作處理。

換句話說,如果派生類替換了基類後,不能夠正確執行動作,那麼他們的繼承關係就應該廢除。

6.迪公尺特法則(law of demeter)

如果兩個類不必彼此直接通訊,那麼這兩個類就不應當發生直接的相互作用。如果其中的乙個類需要呼叫另外乙個類的某乙個方法,可以通過第三者**這個呼叫。

將迪公尺特法則運用到系統的設計中時,應注意的幾點:

① 在類的劃分上,應該建立有弱耦合的類;

② 在類的結構設計上,每乙個類都應當盡量降低成員的訪問許可權;

③ 在類的設計上,只要有可能,乙個類應當設計成不變類;

④ 在對其他類的引用上,乙個物件對其它物件的引用應當降到最低;

⑤ 盡量降低類的訪問許可權;

⑥ 謹慎使用序列化功能;

⑦ 不要暴露類成員,而應該提供相應的訪問器(屬性)。

軟體開發(原則)

隨著軟體版本的更新迭代,為了使軟體能夠更好的維護,擴充套件。在兼顧他的 的可復用性以及他的靈活性的基礎上,我們對於軟體的設計應盡量根據7條原則來進行開發。含義 就乙個類而言,應該僅有乙個引起他變化的原因 含義 是說軟體實體 類,模組,函式等等 應該可以擴充套件,但是不可以修改。理解 就是軟體對程式的...

軟體開發原則Software Principles

1 避免重複原則 dry don t repeat yourself url 2 簡單原則 kiss keep it stupid url 3 適可而止原則 yagni you aren t gonna need it url 4 solid原則 url s 單一責任原則single respons...

敏捷軟體開發 敏捷開發原則

編寫單元測試是一種驗證行為,更是一種設計行為。測試時乙個無價的文件。如果你想知道如何呼叫乙個函式或者建立乙個物件,會有乙個測試展示給你看。什麼是設計?不應該認為設計就是一組和 分離的uml圖。一組uml圖也許描繪了設計的一些部分,但是它不是設計。還是要 化 僵化性是指難以對軟體進行改動,即使是簡單的...