六個原則
(solid)
single responsibility principle:單一職責原則--介面職責單一,類的設計盡量只有乙個原因引起變化。
open closed principle:開閉原則--乙個軟體實體如類(抽象)、模組、方法應該對擴充套件開放,對修改關閉。
liskov substitution principle:黎克特制替換原則--父類能出現的地方,子類就可以替換父類。
law of demeter:迪公尺特法則--乙個物件應該對其他物件有最少的了解(合理的公開public方法,盡量最少)。
inte***ce segregation principle:介面隔離原則--建立單一介面,不要建立臃腫龐大的介面(為模組提供單一介面)。
dependence inversion principle:依賴倒置原則--面向介面(抽象類)程式設計。
設計模式
1.單例模式
確保某乙個類只有乙個例項,而且自行例項化並向整個系統提供這個例項。
public final class singleton
public static singleton getinstance()
public static void othermethod()
}
//多執行緒版本public static singleton getinstance()
return instance;
}
//按需載入
public class singleton
private static class singletoncontainer
public static singleton getinstance()
}
note:在併發程式設計中,需要考慮同步處理。
2.工廠方法模式
定義乙個用於建立物件的介面,讓子類決定例項化哪乙個類。
在工廠方法模式中,抽象產品類product負責定義產品的共性,實現對事物最抽象的定義。產品就是物件,就是要建立的物件。
乙個通用的例子
// 抽象產品:物件
public abstract class product
// 抽象方法
public abstract void absmethod();
} // 具體產品
public class concreteproduct extends product
@override
public void absmethod()
} // 抽象工廠
public abstract class factory
// 具體工廠
public class concretefactory extends factory catch (exception e)
return null;
} }public static void main(string args)
在單一場景中,修改為簡單工廠模式
// 簡單工廠
public class ******factory catch (exception e)
return null;
} }
延遲初始化中應用工廠模式
public final class mapfactory else
return p;
}}
設計模式隨筆
設計模式是為了讓程式,具有更好的 重用性 可讀性可擴充套件性 可靠性使程式呈現高內聚低耦合 單一職責原則 介面隔離原則 依賴倒轉原則 黎克特制替換原則 開閉原則 迪公尺特法則 合成復用原則 1.餓漢式 靜態常量 步驟 構造器私有化 防止new 類的內部建立物件 向外暴露乙個靜態的公共方法 實現 pu...
設計模式隨筆 命令模式
封裝呼叫方法,命令模式能夠把方法呼叫封裝到乙個起來。這樣,命令方法就不用在乎方法內部是做什麼的了,只需要關心封裝的過程,是開還是關閉某些東西。它能做記錄日誌,或者撤銷等。現在我們有乙個需求,就是幫家電廠商設計乙個遙控器,這個遙控器有4個鏈結裝置的開關,和乙個撤銷按鈕。如下圖所示 現在我們看看廠商的家...
隨筆 設計模式 工廠模式
工廠模式和抽象工廠模式是在日常開發中使用非常廣泛的設計模式。主要用於實現將物件的例項化部分取出來,進而優化系統架構,增強系統的擴充套件性。用工廠方法來代替 new 操作 工廠模式包括工廠方法模式和工廠抽象模式 抽象工廠模式是工廠方法模式的擴充套件 1 定義乙個介面來建立物件,讓子類來決定哪些類需要被...