1. 程式人生 > >設計模式-設計思想和原則

設計模式-設計思想和原則

文章目錄

設計思想

  • 天天加班程式設計,程式設計到底都做的是什麼?
    擼程式碼,加班擼程式碼,寫介面、寫類、寫方法

  • 用設計模式或做設計的作用是什麼?
    指導、規定如何擼程式碼,如何來寫介面、寫類、寫方法

  • 為什麼要做設計、用設計模式?
    程式碼會變,為應對變化,為了以後方便擴充套件
    做到以不變應萬變,做一個會偷懶的程式設計師

軟體界永恆的真理:不變的是變化!

設計模式思想中最重要的一點:區分變和不變!

然後搞清楚會如何變,我們需要如何固定不變的,並隔絕變的。不同的變化方式對應不同的設計模式。

OOP回顧:

  • 類:模擬現實,封裝資料與程式碼
  • 介面:隔離變化,定義功能使用者和功能提供者的介面,兩者通過介面相聯絡
  • 抽象類:包容不變與變的
  • 封裝、繼承、多型:一種實現變化的方式
  • 類與類的關係:繼承(類2繼承類1)、組合(類2持有類1的例項,類2使用類1)

設計原則

  • 找出變化,分開變化和不變的
    隔離、封裝變化的部分,讓其他部分不受它的影響

  • 面向介面(抽象)程式設計
    隔離變化的方式。使用者使用介面,提供者實現介面。介面可以是超類!

  • 依賴倒置原則
    隔離變化的方式。依賴抽象,不依賴具體類!

  • 對修改閉合,對擴充套件開放


    隔離變化的方式。

  • 多用組合,少用繼承
    靈活變化的方式。“有一個”可能比“是一個”更好。

  • 單一職責原則
    方法設計原則。對方法來說,每個方法只負責一個事情!