Abstract Factory design pattern

更新 發佈閱讀 2 分鐘

續上篇文章Factory design pattern所述,假如未來有更多口味的pizza,我們就會有超多的factory class,抽象工廠就是為了解決這樣的問題而誕生!

簡言之,抽象工廠可以把他想像成一個什麼都生產的工廠,也就是我們會有一個pizza廚房,什麼口味的pizza都能生產!

修改後完整程式碼如下:

raw-image
raw-image
raw-image
raw-image
raw-image
raw-image

假如我今天開了一間店叫VicKitchen,裡面目前只有賣pizza,未來可能會賣其他產品。

因為本質不是披薩店,而是一間會製作披薩的店,因此PizzaStore為interface,VicKitchen裡面本身可以製作其他料理,未來可以自己增加method。

這樣的設計會發現剛剛的Factory class都不見了,apple pizza factory, cheese pizza factory都不再存在,少了很多檔案呢! 未來如果有新口味的pizza,也能夠集中管理。

本筆記參考:
1. https://skyyen999.gitbooks.io/-study-design-pattern-in-java/content/abstractFactory1.html


留言
avatar-img
Vic Lin的沙龍
20會員
161內容數
Vic Lin的沙龍的其他內容
2023/08/13
父元件 傳遞方法使用@ <template>    ...    <Login @modalClose="modalClose"/> ... </template> <script setup>     const _modal = ref();     function m
2023/08/13
父元件 傳遞方法使用@ <template>    ...    <Login @modalClose="modalClose"/> ... </template> <script setup>     const _modal = ref();     function m
2023/03/25
前情提要 由於我的筆電已經用了10年,無法再戰下去了,且有預算考量,加上使用電腦幾乎都是定點,只有偶爾回家的時候會需要攜帶,因此最終選擇了迷你電腦,體積小不占空間,又方便攜帶,剛好符合我的需求。 菜單 由於這台無法裝獨顯,所以CPU的部分選擇 AMD R5 3400G(含Vega 11內
Thumbnail
2023/03/25
前情提要 由於我的筆電已經用了10年,無法再戰下去了,且有預算考量,加上使用電腦幾乎都是定點,只有偶爾回家的時候會需要攜帶,因此最終選擇了迷你電腦,體積小不占空間,又方便攜帶,剛好符合我的需求。 菜單 由於這台無法裝獨顯,所以CPU的部分選擇 AMD R5 3400G(含Vega 11內
Thumbnail
2023/03/10
Nuxt3中可使用useFetch來獲取數據,不須再引用axios,相當方便: 本筆記參考: https://juejin.cn/post/7104071421160063012 https://juejin.cn/post/7086472647575339045
2023/03/10
Nuxt3中可使用useFetch來獲取數據,不須再引用axios,相當方便: 本筆記參考: https://juejin.cn/post/7104071421160063012 https://juejin.cn/post/7086472647575339045
看更多
你可能也想看
Thumbnail
我每週都會為自己設計一趟小旅行,像是給日常的一個深呼吸。準備著簡單的行李,在導航上設定好今天想去的地方,播放一張剛好符合心情的歌單,一場逃離日常的小旅行就此展開。 說走就走的自由很浪漫,但背後的現實是,從加油、路途中補給、到抵達目的地的小花費,每一筆都需要精打細算,才能不讓放鬆變成負擔。好在有玉山
Thumbnail
我每週都會為自己設計一趟小旅行,像是給日常的一個深呼吸。準備著簡單的行李,在導航上設定好今天想去的地方,播放一張剛好符合心情的歌單,一場逃離日常的小旅行就此展開。 說走就走的自由很浪漫,但背後的現實是,從加油、路途中補給、到抵達目的地的小花費,每一筆都需要精打細算,才能不讓放鬆變成負擔。好在有玉山
Thumbnail
本文介紹玉山銀行推出的玉山 Unicard,是一張非常符合「小資族、學生、上班族都好上手」的高回饋信用卡!三種回饋方案自由切換,行動支付、百貨、旅遊、百大指定通路全面涵蓋,新戶最高享 7.5% 回饋。回饋透明、操作簡單,非常推薦學生、小資族與上班族。
Thumbnail
本文介紹玉山銀行推出的玉山 Unicard,是一張非常符合「小資族、學生、上班族都好上手」的高回饋信用卡!三種回饋方案自由切換,行動支付、百貨、旅遊、百大指定通路全面涵蓋,新戶最高享 7.5% 回饋。回饋透明、操作簡單,非常推薦學生、小資族與上班族。
Thumbnail
信用卡如今已是現代人日常消費的必需品。回顧其誕生,竟源於一段用餐忘記帶錢的窘境。本文將帶您瞭解信用卡的故事,並介紹「玉山Unicard」,一張涵蓋百大通路、提供彈性回饋的信用卡,尤其適合追求方便與高回饋的消費者。文章將分享誠品生活、全盈+PAY等實際使用情境,並提供新戶申辦優惠資訊。
Thumbnail
信用卡如今已是現代人日常消費的必需品。回顧其誕生,竟源於一段用餐忘記帶錢的窘境。本文將帶您瞭解信用卡的故事,並介紹「玉山Unicard」,一張涵蓋百大通路、提供彈性回饋的信用卡,尤其適合追求方便與高回饋的消費者。文章將分享誠品生活、全盈+PAY等實際使用情境,並提供新戶申辦優惠資訊。
Thumbnail
玉山銀行新推出的Unicard信用卡你發現了嗎?主打可透過玉山Wallet App,每月自由切換簡單選、任意選及UP選三種方案,讓你依照消費習慣擁有不同的回饋方案。其中我自己很喜歡它百大指定消費中的Line Pay行動支付,能讓我以最簡單的方式獲得最高的回饋!同時文中更分享我實測的眉角,快來看下去!
Thumbnail
玉山銀行新推出的Unicard信用卡你發現了嗎?主打可透過玉山Wallet App,每月自由切換簡單選、任意選及UP選三種方案,讓你依照消費習慣擁有不同的回饋方案。其中我自己很喜歡它百大指定消費中的Line Pay行動支付,能讓我以最簡單的方式獲得最高的回饋!同時文中更分享我實測的眉角,快來看下去!
Thumbnail
代官山「PIZZA SLICE」是我在東京很喜歡的美式披薩店。 是以スライス売り(切片賣)的方式,以日本人想像的時尚紐約披薩店為設計風格。 白色磁磚、木質為內裝為基調,角落擺上綠植、一面牆貼了大片的鏡子。 柱子上貼著美國紙鈔、鏡面和磁磚看得見充滿年輕活力的塗鴉。 店裡的吊燈、壁燈都很
Thumbnail
代官山「PIZZA SLICE」是我在東京很喜歡的美式披薩店。 是以スライス売り(切片賣)的方式,以日本人想像的時尚紐約披薩店為設計風格。 白色磁磚、木質為內裝為基調,角落擺上綠植、一面牆貼了大片的鏡子。 柱子上貼著美國紙鈔、鏡面和磁磚看得見充滿年輕活力的塗鴉。 店裡的吊燈、壁燈都很
Thumbnail
友人訂製的手工窯烤爐已經交貨了,據說這是委託西部的一位竹科工程師訂製的,運用各種數據及精密的分析並省去了煙囪讓內部更容易聚熱原理,當內部溫度達到250度時每9分鐘就可以出一片披薩。
Thumbnail
友人訂製的手工窯烤爐已經交貨了,據說這是委託西部的一位竹科工程師訂製的,運用各種數據及精密的分析並省去了煙囪讓內部更容易聚熱原理,當內部溫度達到250度時每9分鐘就可以出一片披薩。
Thumbnail
到墾丁吹著海風,外帶一份有著滿滿料的pizza回住宿享用,平價美味又有飽足感。起士烤過的香味總是特別的誘人,喜歡起士多一點的朋友還可以加價增量 這一次點的口味是:夏威夷 一個Pizza尺寸為12吋,直徑大約30.5公分,是薄片的,聞著~覺得味道好香阿 份量很適合2-3位一起共食,如果餓一點可以另外搭
Thumbnail
到墾丁吹著海風,外帶一份有著滿滿料的pizza回住宿享用,平價美味又有飽足感。起士烤過的香味總是特別的誘人,喜歡起士多一點的朋友還可以加價增量 這一次點的口味是:夏威夷 一個Pizza尺寸為12吋,直徑大約30.5公分,是薄片的,聞著~覺得味道好香阿 份量很適合2-3位一起共食,如果餓一點可以另外搭
Thumbnail
隱藏在海邊附近住宅的美味義式Pizza,手工新鮮製作餅皮,薄脆酥香就像吃餅乾那樣!滿滿起士下有精心搭配的美味食材,物超所值的用料,吃起來又香又嫩,加Line預定還有九折優惠。 外觀就是一般住宅的樣子,感覺就是在自家騎樓賣的樣子 沒有提供內用,現場也沒有製作好的pizza可以購買,一律都是要預訂才有。
Thumbnail
隱藏在海邊附近住宅的美味義式Pizza,手工新鮮製作餅皮,薄脆酥香就像吃餅乾那樣!滿滿起士下有精心搭配的美味食材,物超所值的用料,吃起來又香又嫩,加Line預定還有九折優惠。 外觀就是一般住宅的樣子,感覺就是在自家騎樓賣的樣子 沒有提供內用,現場也沒有製作好的pizza可以購買,一律都是要預訂才有。
Thumbnail
27 pizza強調遵循傳統拿坡里披薩 麵團的要求使用義大利百年麵粉 酵母 海鹽只用這三樣做出好吃的麵團, 道地的拿坡里披薩麵糰是不添加油的 因為義大利麵粉比較濕潤的關係,所以 延展性很夠,綜合肉披薩每一口都非常的 豐富,因為配料很多 所以相當有層次感
Thumbnail
27 pizza強調遵循傳統拿坡里披薩 麵團的要求使用義大利百年麵粉 酵母 海鹽只用這三樣做出好吃的麵團, 道地的拿坡里披薩麵糰是不添加油的 因為義大利麵粉比較濕潤的關係,所以 延展性很夠,綜合肉披薩每一口都非常的 豐富,因為配料很多 所以相當有層次感
Thumbnail
終於談到點餐了,這篇拖稿已久的文章談到我們對點餐的概念,怎樣才能兼顧多元化的店家與顧客需求,這裡有我們的解答。
Thumbnail
終於談到點餐了,這篇拖稿已久的文章談到我們對點餐的概念,怎樣才能兼顧多元化的店家與顧客需求,這裡有我們的解答。
Thumbnail
項目編號:SCP-TW-1612 披薩利亞 項目等級:Safe 特殊收容措施:...由於項目的異常特性,禁止非D級人員進入SCP-TW-1612的廚房。任何可食用,或具食用潛在性的物品,未經研究主持人許可之前,禁止攜入進廚房。禁止兩人以上,在未攜帶可食用物品的情形下進入廚房。
Thumbnail
項目編號:SCP-TW-1612 披薩利亞 項目等級:Safe 特殊收容措施:...由於項目的異常特性,禁止非D級人員進入SCP-TW-1612的廚房。任何可食用,或具食用潛在性的物品,未經研究主持人許可之前,禁止攜入進廚房。禁止兩人以上,在未攜帶可食用物品的情形下進入廚房。
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News