首先,小博老師跟你們介紹下什麼是設計模式。好的設計模式就像是給代碼造了一個很好的骨架,在這個骨架裏,你能夠知道心在哪裏,肺在哪裏,由於大多數人都認識這樣的骨架,就有了很好的傳播性。這是從易讀和易傳播來感知設計模式的好處。固然設計模式自己更重要的是設計原則的一種實現,好比開閉原則,依賴倒置原則,這些是在代碼的修改和擴展上說事。說到底就是人類和代碼發生關係的四種場合:閱讀,修改,增長,刪除。讓每一種場合都比較舒服的話,就須要用設計模式。設計模式
接下來咱們一塊兒來看看,在Spring中都用到了哪些典型的設計模式。設計
1. 簡單工廠code
又叫作靜態工廠方法(StaticFactory Method)模式,但不屬於23種GOF設計模式之一。簡單工廠模式的實質是由一個工廠類根據傳入的參數,動態決定應該建立哪個產品類。對象
Spring中的BeanFactory就是簡單工廠模式的體現,根據傳入一個惟一的標識來得到Bean對象,可是否是在傳入參數後建立仍是傳入參數前建立這個要根據具體狀況來定。blog
2. 工廠方法(Factory Method)接口
定義一個用於建立對象的接口,讓子類決定實例化哪個類。Factory Method使一個類的實例化延遲到其子類。圖片
Spring中的FactoryBean就是典型的工廠方法模式。以下圖:get