日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

简单工厂模式、工厂方法模式、抽象工厂模式 之间的对比

發布時間:2025/6/17 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 简单工厂模式、工厂方法模式、抽象工厂模式 之间的对比 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

先看各自的結構


簡單工廠模式(SimpleFactory Mode)

? ? 簡單工廠模式的思路是,首先我們把一些共性的東西(算法)拿出來,進行抽象,比如加減乘除。然后我們在定義一個類作為工廠類,工廠類的作用就是根據傳過來的字符串或者其他Key值給返回一個相對應的算法的實體。


優點

? ? 方便擴展算法,比如增加一個開根號的功能,我們只要繼續繼承運算類就行了,同時客戶端也就是使用者不知道具體的實現細節,只要給出相關標示符,工廠函數就馬上給他創建一個他想要的實體就行了。減少了使用者和功能開發者之間的耦合度。

缺點

? ? 比較明顯,在進行擴展的時候,我們要更改工廠函數里面的那個分支語句Switch,這樣便破壞了OCP,而且當有多級結構繼承的時候,簡單工廠就會因為只能對應平行一層記得繼承,不得不使得好多類繼承同一個接口,然后得到A*B這么多的工廠實體可能,工廠函數很難維護。


工廠方法模式(Factory Method

? ? 定義一個用于創建對象的接口,讓子類決定實例化哪一個類。工廠方法使一個類的實例化延遲到其子類。


優點

? ? 算法實體的創建被延遲到了工廠子類里,我們不在工廠里直接創建對象,而是直接封裝一個一個的小工廠,每個工廠負責創建自己的子類,這樣就不存在switch的情況,也就不存在擴展不滿足OCP的這個問題。

?

缺點

? ? 如果算法種類很多,那么繼承抽象工廠的子類也就會很多,不是很好維護,同時不支持產品切換,比如我們要開發PC,分為多個系統,那么我們可以把所有的系統都抽象出來(類似上面的加減乘除),然后我們在抽象出來工廠,但是如果這個時候我們有兩個硬件呢,PCPhone,雖然我們可以保證只有這兩個硬件了,但是如果用基本的抽象工廠去實現的話還是很別扭。


抽象工廠模式Abstract Factory):

? ? 提供一個創建一系列相關或者相互依賴對象的接口,而無需指定它們具體的類。


優點

? ? 首先是滿足OCP的,而且可以滿足產品切換,能實現的前提是比如AB兩個產品,它們有12兩個方法接口(類),現在我們在增加新的產品C(假設也是只有12兩個方法接口),我們要做的只是增加一個產品類再增加一個工廠類就行了,如果是簡單工廠或者是工廠方法的的話通常都是增加兩個算法類C.1,C.2,簡單工廠需要修改switch增加兩個語句,工廠方法是在增加兩個工廠類。可見抽象工廠的優點。

?

缺點

? ? 顯而易見,太重了。


對比

? ? 簡單工廠實現簡單,擴展也很容易,但是不滿足OCP,不滿足OCP的代價就是難維護,在維護的時候容易引發新的BUG,相比之下,工廠方法則是把對象的實例化延遲到了繼承的子類里面,這樣可以量或的擴展工廠。擴展的是時候滿足OCP,但是不支持產品切換,也就是只能滿足一層的產品(算法)抽象,而抽象工廠則是繼續把產品進行再次抽象,最后得到一個可以支持產品切換的結構,但問題是太重了,過于復雜,不過還好,很多支持反射的語言,我們可以直接通過反射技術來優化這個“過重”的缺點。當然,也可以用反射來優化前面兩個工廠結構(但是抽象工廠和工廠方法相比,兩者也都只是支持一個地方的可擴展而已,不要誤解為抽象工廠可以擴展兩個地方)。

?

進化

????????????優化滿足OCP ???????; ???????優化滿足產品切換

簡單工廠 ---------------------------> ?工廠方法 ?--------------------------------> 抽象工廠


退化

? ? 增加了和客戶端之間的耦合度(客戶端需要知道各種工廠);變得太重了 ???????????????????????????????????

簡單工廠 ---------------------------> ?工廠方法 ?--------------------------------> 抽象工廠

?





總結

以上是生活随笔為你收集整理的简单工厂模式、工厂方法模式、抽象工厂模式 之间的对比的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 蜜桃视频在线播放 | jizz网站 | 欧美视频在线观看一区二区三区 | 免费黄色一级视频 | 91秘密入口 | 噼里啪啦国语电影 | 天天射天天搞 | 片黄在线观看 | 国产在线一区二区三区 | 精品欧美一区二区精品少妇 | 超碰99热| 亚洲精品黄色片 | 亚洲品质自拍视频网站 | 日韩国产专区 | 国产伦精品一区二区三区免.费 | 亚洲综合色小说 | 黄色a视频 | 国产真实夫妇交换视频 | 日韩视频在线免费观看 | 狠色综合7777夜色撩人 | 欧美日韩亚洲视频 | av官网| 精品亚洲一区二区 | 国产粉嫩一区二区三区 | 在线观看污污视频 | 99热自拍偷拍 | 超碰成人福利 | 91偷拍一区二区三区精品 | 传媒一区二区 | 国产精品伦理一区二区 | 国产免费专区 | 97看片吧 | 国模私拍一区二区 | 青青国产在线观看 | 欧美精品自拍偷拍 | 日本韩国欧美在线 | 在线观看第一页 | 国产色婷婷一区二区三区竹菊影视 | 成人短视频在线免费观看 | 国产综合在线观看视频 | 香蕉视频黄色片 | 亚洲第一中文字幕 | 成人免费一区二区 | 极品尤物在线观看 | 国产成人一区二区三区免费看 | 中文字幕成人在线视频 | 欧美又大粗又爽又黄大片视频 | 麻豆传媒网页 | 日本大尺度床戏揉捏胸 | 寡妇av | 中文在线观看免费 | 香蕉视频久久久 | 麻豆理论片 | 久久丫精品久久丫 | 亚洲精品鲁一鲁一区二区三区 | 国产毛片一区二区 | 在线视频亚洲 | 亚洲国产第一 | 欧美你懂的 | 国产精品xxx视频 | 亚洲一级网站 | 伊人网国产 | 国产精品无码999 | 开心激情深爱 | 激情五月在线观看 | 亚洲欧美综合色 | www.久久精品.com| 葵司有码中文字幕二三区 | www,av在线 | 99成人国产精品视频 | 国产精久久 | 日本一级吃奶淫片免费 | 成人免费看片 | 无码人妻精品一区二区三区夜夜嗨 | 日韩一区二区a片免费观看 伊人网综合在线 | 人体内射精一区二区三区 | 欧美精品自拍偷拍 | 992在线观看 | 国产精品一区二区自拍 | 男人操女人动态图 | 日干夜操 | 欧美一区二区三区免费 | 成人午夜精品福利 | 国产在线播放一区二区 | 国产a级一级片 | 亚洲视频网站在线观看 | jiizzyou性欧美老片 | 亚洲精品视频在线观看免费 | 国产情侣在线视频 | 新天堂网 | 黑人操中国女人视频 | 成人免费看黄 | 欧美日韩啪啪 | 日韩小视频在线观看 | 日本黄色一区二区 | 美女涩涩视频 | 天天激情| 91av一区二区三区 | 欧美有码在线观看 |