《Android學習筆記(一)》物件導向的六大原則

2021-10-22 21:50:53 字數 928 閱讀 3101

引言

在應用的開發過程中,最難的不是完成開發工作、實現某個功能,而是如何保證應用在後續的公升級、維護中能夠擁抱變化,維持系統的穩定性,保持系統的可擴充套件性、高內聚、低耦合。

而讓應用系統能夠擁抱變化的方法就是遵循物件導向的六大原則。

原則一:單一職責原則

乙個類中應該是一組相關性很高的函式、資料的封裝,兩個完全不一樣或沒有任何相關性的功能就不應該放在同乙個類中。

原則二:開閉原則

軟體中的物件(類、模組、函式等)對於修改是封閉的、對於擴充套件是開放的。

在軟體的公升級維護過程中,通過修改原有**來實現功能,很容易將錯誤引入已經經過測試的舊**,破壞原有系統。因此,當軟體需要變化時,我們應盡可能的通過擴充套件的方式來實現變化,繼承是擴充套件的途徑之一。使用抽象類是很好的方法,抽象出變化的統一部分,而變化的具體內容由子類去實現。當發生變化時,可通過依賴注入的方式注入依賴類。

原則三:黎克特制替換原則

所有引用基類的地方都能透明的使用其子類的物件,反之不成立。核心原理是抽象。

原則四:依賴倒置原則

模組之間的依賴通過抽象發生,實現類之間不發生直接的依賴關係,其依賴關係是通過介面或抽象類產生。

原則五:介面隔離原則

類間的依賴關係應該建立在最小的介面上。客戶端不應該依賴它不需要的介面。

**例:**我們想要封裝乙個關閉檔案流的方法,省得在**中寫上一長串try…catch和若干個花括號。fileoutputstream實現了closeable介面,關閉檔案流的方法我們只需要呼叫close方法,其他的我們無需知道,例如write方法,所以可封裝乙個方法,該方法傳入乙個可關閉物件,如closeable,再呼叫該物件的close方法將其關閉即可。

原則六:迪公尺特原則

也稱為最少知識原則。乙個物件應該對其他物件有最少的了解,並盡可能減少與自己直接發生關係的物件。

(一)物件導向理解

1.物件導向是什麼?物件導向 oo 將問題中的涉及的事物抽象化,描述事物在問題不同階段的狀態和行為。面向過程 po 將問題的解決步驟分析出後,按步驟依次執行直到得出結果。物件導向則是在你思考完步驟後,找出其中涉及的事物,將步驟中的資料,行為歸結到事物中進行分類,封裝。將面向過程的步驟進行分類歸納,得...

設計模式 物件導向一 物件導向

什麼是物件導向程式設計?物件導向程式設計是一種程式設計正規化和程式設計風格。它以類或物件作為組織 的基本單元,並將封裝 抽象 繼承 多型四個特性,作為 設計和實現的基石 什麼是物件導向程式設計語言?物件導向程式設計語言是支援類或物件的語法機制,並有現成的語法機制,能方便的實現物件導向程式設計四大特性...

python物件導向(一) 物件導向基礎

物件導向是python中乙個重點知識,用物件導向的思想程式設計,有利於模組化 方便閱讀和後期的維護。面向過程 注重解決問題的步驟,讓問題根據步驟流程一步一步得到解決 物件導向 萬物皆物件,每個物件都有特徵和功能,物件間又可以相互作用 類 具有相同特徵或行為的事物的統稱 抽象的,不可直接使用 物件 物...