溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

簡單工廠模式和抽象工廠模式

發(fā)布時間:2020-08-10 17:59:27 來源:ITPUB博客 閱讀:126 作者:山有木xi 欄目:編程語言

簡單工廠模式,顧名思義,就是比較簡單的一個模式,并且使用在業(yè)務比較簡單的情況下,且具體產(chǎn)品不需要擴張

它由三種角色組成

  • 工廠類,是這個模式的核心,含有一定的邏輯和判斷,根據(jù)邏輯不同,產(chǎn)生具體的工廠產(chǎn)品

  • 抽象產(chǎn)品:具體產(chǎn)品的父類

  • 具體產(chǎn)品:工具抽象產(chǎn)品類創(chuàng)建的具體產(chǎn)品類,具體實現(xiàn)某些產(chǎn)品的功能

例如:先創(chuàng)建一個工廠類:飲料類,然后創(chuàng)建抽象產(chǎn)品類,分為康師傅類和統(tǒng)一類,再建立各自具體產(chǎn)品類,飲料各繼承康師傅和統(tǒng)一,最后在工廠類中調(diào)動各個產(chǎn)品的生產(chǎn)

在具體工廠中,各個具體產(chǎn)品類和其父類非常簡單明了

抽象工廠模式,是簡單工廠的進階版,當你的產(chǎn)品需要多個產(chǎn)品線時,使用抽象工廠是更好的選擇

它有四種角色組成

  • 抽象工廠類,聲明了創(chuàng)建不同產(chǎn)品的方法

  • 具體工廠類,實現(xiàn)抽象工廠中定義的創(chuàng)建方法

  • 抽象產(chǎn)品類,為每種產(chǎn)品聲明業(yè)務方法

  • 具體產(chǎn)品類,定義具體工廠生產(chǎn)的具體產(chǎn)品,并且實現(xiàn)抽象產(chǎn)品中定義的業(yè)務方法

在上面介紹的簡單工廠模式中,我們發(fā)現(xiàn),工廠是用來生產(chǎn)具體產(chǎn)品的,而在抽象工廠模式中,分為了抽象工廠和具體工廠

簡單的來說,在抽象產(chǎn)品類中定義了所需要的生產(chǎn)線,然后在具體產(chǎn)品中實現(xiàn)所需要的生產(chǎn)線,定義了方法來實現(xiàn)生產(chǎn)線,在具體工廠中實現(xiàn)具體產(chǎn)品

抽象工廠模式相比于簡單工廠模式,隔離了具體類的生成,使得客戶并不需要知道什么被創(chuàng)建。由于這種隔離,更換一個具體工廠就變得相對容易。所有的具體工廠都實現(xiàn)了抽象工廠中定義的那些公共接口,因此只需改變具體工廠的實例,就可以在某種程度上改變整個軟件系統(tǒng)的行為。另外,應用抽象工廠模式可以實現(xiàn)高內(nèi)聚低耦合的設計目的,因此抽象工廠模式得到了廣泛的應用。


向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。

AI