面向對象概念

類 - 類 繼承:"is-a" -- 正方形 extend 長方形 依賴:偶然性 臨時性 很是弱 -- 我吃東西(食物 x) x in {肉,蔬菜,水果,薯片...} 今天吃什麼有隨機想 關聯:長期性,平等的、關聯能夠是單向、雙向的 -- 強依賴關係 程序員類,所掌握的語言就是他的一個屬性 聚合:代碼表現同"關聯" 總體與部分之間能夠分離,各自生命中期分開 組合:a擁有b,a沒了b也就沒了,實心。 你和你的心臟程序員

低耦合 - 高內聚 內聚性: 又稱塊內聯繫。指模塊的功能強度的度量,即一個模塊內部各個元素彼此結合的緊密程度的度量。若一個模塊內各元素(語名之間、程序段之間)聯繫的越緊密,則它的內聚性就越高。 所謂高內聚是指一個軟件模塊是由相關性很強的代碼組成,只負責一項任務,也就是常說的單一責任原則。對象

耦合性: 也稱塊間聯繫。指軟件系統結構中各模塊間相互聯繫緊密程度的一種度量。模塊之間聯繫越緊密,其耦合性就越強,模塊的獨立性則越差。模塊間耦合高低取決於模塊間接口的複雜性、調用的方式及傳遞的信息。繼承

內容耦合:一個模塊直接訪問另外一模塊的內容,則稱這兩個模塊爲內容耦合。 若在程序中出現下列狀況之一,則說明兩個模塊之間發生了內容耦合:接口

  1. 一個模塊直接訪問另外一個模塊的內部數據。
  2. 一個模塊不經過正常入口而直接轉入到另外一個模塊的內部。
  3. 兩個模塊有一部分代碼重疊(該部分代碼具備必定的獨立功能)。
  4. 一個模塊有多個入口。

SOLID原則 s單一職責:對象應該僅具備單一的功能 o開閉:軟件體應該對擴展是開放的,但對修改封閉的 l里氏替換:程序中的對象應該是能夠在不改變程序正確性的前提下被它的子類對象所替換的 i接口隔離:多個特定客戶端接口要好於一個寬泛用途的接口 d依賴反轉:高層次的模塊不該該依賴於低層次的模塊,二者都應該依賴於抽象接口; 抽象接口不該該依賴於具體實現,而具體實現則應該依賴於抽象接口。擴展

相關文章
相關標籤/搜索