程式設計設計必備的幾種常用設計模式,單例、工廠、建造者模式都在這裡

設計模式是被程式設計者總結出來的一套被反覆使用的、多數人知曉的、經過分類編目的程式碼設計經驗。掌

握幾種常用的設計模式,對於Java應聘者來說十分重要,

比如單例模式、工廠模式、建造者模式等等,接下來就來簡單介紹一下這幾種常見的設計模式和它們的應用場景。

(1)考察目標

考官主要是對一些常用設計模式和程式碼抽取最佳化能力的考核,問題可能涉及6大設計原則及23種設計模式。

(2)題目分析

比較熟悉的有:

單例模式:

保證一個類僅有一個例項,並提供一個全域性訪問點,比如一些配置檔案或者管理類可以設計為單例,我們常用的執行緒池也是單例的。

模板方法:

在定義好的演算法骨架下,允許子類為一個或多個步驟提供實現,一次性實現演算法的不變部分,將可變部分留給子類實現,當子類實現程式碼邏輯雷同時,可以使用此設計模式。

工廠模式:

建立物件需要大量的重複程式碼時,透過子類實現方法來建立物件。如Spring中透過工廠模式將建立物件的任務交給容器管理。

建造者模式:

講複雜物件的構建和表示分離,適用於流程固定,但是順序不一定固定的場景。如需要給一個物件多次給不同的屬性賦值,可以使用鏈式呼叫傳參,最後生成物件。另外,如策略模式,觀察者模式,模板方法模式,foreach中的迭代器模式,spring 中ASM的訪問者模式,動態代理等都有一些瞭解。

(3)應用場景

JavaEE應用中,Spring用於建立IOC容器的監聽器就是基於觀察者模式的。Spring中獲取FileSystemResource和ClassPathResource等功能雷同的類時使用模板方法。

單例模式:

包含懶漢餓漢式以及不同的變種,工廠類設計模式一般也設計為單例。專案中的一些配置,或者引入外部的sdk需要建立管理類,或者封裝自己的框架時,需要用到單例。

工廠方法:

在編碼時不能預見需要建立哪種類的例項。

(4)總結

· 常用設計模式· 程式碼抽取最佳化能力

程式設計設計必備的幾種常用設計模式,單例、工廠、建造者模式都在這裡

TAG: 設計模式模式單例子類程式碼