1.概念
工廠設(shè)計(jì)模式呵曹,是一種常用的對(duì)象創(chuàng)建型設(shè)計(jì)模式,此模式的核心精神是封裝類(lèi)中不變的部分稠通,提取其中個(gè)性化善變的部分為獨(dú)立類(lèi)赠幕,通過(guò)依賴(lài)注入以達(dá)到解耦辐宾、復(fù)用和方便后期維護(hù)拓展的目的狱从。通俗一點(diǎn),就是專(zhuān)門(mén)定義一個(gè)類(lèi)來(lái)負(fù)責(zé)創(chuàng)建其他類(lèi)的實(shí)例叠纹,被創(chuàng)建的實(shí)例常常具有共同的父類(lèi)季研。
2.角色結(jié)構(gòu)
- 抽象工廠(Creator)角色:是工廠方法模式的核心,與應(yīng)用程序無(wú)關(guān)誉察。任何在模式中創(chuàng)建的對(duì)象的工廠類(lèi)必須實(shí)現(xiàn)這個(gè)接口与涡。
- 具體工廠(Concrete Creator)角色:這是實(shí)現(xiàn)抽象工廠接口的具體工廠類(lèi),包含與應(yīng)用程序密切相關(guān)的邏輯,并且受到應(yīng)用程序調(diào)用以創(chuàng)建產(chǎn)品對(duì)象驼卖。
- 抽象產(chǎn)品(Product)角色:工廠方法模式所創(chuàng)建的對(duì)象的超類(lèi)型氨肌,也就是產(chǎn)品對(duì)象的共同父類(lèi)或共同擁有的接口。
- 具體產(chǎn)品(Concrete Product)角色:這個(gè)角色實(shí)現(xiàn)了抽象產(chǎn)品角色所定義的接口酌畜。某具體產(chǎn)品有專(zhuān)門(mén)的具體工廠創(chuàng)建怎囚,它們之間往往一一對(duì)應(yīng)。