iOS 工廠模式

一. 什么是工廠模式?

工廠就是用來生產(chǎn)產(chǎn)品的,然而一個工廠不會僅僅生產(chǎn)一種產(chǎn)品,這樣工廠的作用就很明顯,進(jìn)去的是原材料,出來的是成品,至于怎么去生產(chǎn),加工流程是什么,不需要知道,只要輸送原材料,它便會身材出產(chǎn)品

圖示.png

二.為什么使用工廠模式?

在程序開發(fā)中,有時候我們不得不根據(jù)不同的場景,去創(chuàng)建不同的實體類,利用此種模式,我們可以充分的規(guī)劃我們的代碼,使得項目的層級結(jié)構(gòu)更加清晰,在什么樣的場景下,使用什么樣的實體

注意事項:作為一種創(chuàng)建類模式帕翻,在任何需要生成復(fù)雜對象的地方耕姊,都可以使用工廠方法模式妇垢。有一點需要注意的地方就是復(fù)雜對象適合使用工廠模式溶诞,而簡單對象鸟妙,特別是只需要通過 new 就可以完成創(chuàng)建的對象,無需使用工廠模式赋朦。如果使用工廠模式辉川,就需要引入一個工廠類,會增加系統(tǒng)的復(fù)雜度寒锚。(簡單來說:不要刻意的為了使用工廠模式,而去使用工廠模式開發(fā),使用工廠模式,僅僅是為了讓代碼邏輯根據(jù)清晰,如果完全可以 alloc 的事情,偏偏寫了幾個類來實現(xiàn),那么這樣做是得不償失的)

三.怎么使用工廠模式?

就拿電話簿里面添加新的聯(lián)系人這個頁面吧

電話簿.PNG

這個頁面大概使用了兩種cell,(只依這個圖片上顯示的部分為例,當(dāng)然如果各位大神,有什么新的思路去做這個頁面也可以,我在此只是用這個頁面舉例)

電話簿.PNG

可能大家會問頂部的姓氏,名字,公司,為什么不也用cell,因為我感覺使用headerView會好點(個人理解),當(dāng)然也要看需求

如下:

目錄.png

分別創(chuàng)建繼承BaseTBCell的兩個子類,TBCellStyleOne,TBCellStyleTwo,各自實現(xiàn)各自的布局樣式

樣式一.png
樣式二.png

工廠類中,實現(xiàn)兩種cell的創(chuàng)建方法

工廠類.png
工廠類.png

在tableView中根據(jù)具體的需求,創(chuàng)建不同的cell,并展示數(shù)據(jù)

實現(xiàn).png

最終效果:

效果.png

相關(guān)參考:

百度:https://baike.baidu.com/item/工廠模式/9852061?fr=aladdin

菜鳥教程:http://www.runoob.com/design-pattern/factory-pattern.html

博客園:http://www.cnblogs.com/xiaofeixiang/p/5104547.html

其他:http://blog.chinaunix.net/uid-25958655-id-4243289.html

簡書:http://www.reibang.com/p/03519d5e47b6

其他設(shè)計模式入口:

享元模式:http://www.reibang.com/p/f9c53b9825e4
責(zé)任鏈模式:http://www.reibang.com/p/30475126694a
觀察者模式:http://www.reibang.com/p/a6a6e5a8e8bd

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末劫映,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子刹前,更是在濱河造成了極大的恐慌泳赋,老刑警劉巖,帶你破解...
    沈念sama閱讀 210,914評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件喇喉,死亡現(xiàn)場離奇詭異祖今,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)拣技,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,935評論 2 383
  • 文/潘曉璐 我一進(jìn)店門千诬,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人膏斤,你說我怎么就攤上這事徐绑。” “怎么了掸绞?”我有些...
    開封第一講書人閱讀 156,531評論 0 345
  • 文/不壞的土叔 我叫張陵泵三,是天一觀的道長。 經(jīng)常有香客問我衔掸,道長烫幕,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,309評論 1 282
  • 正文 為了忘掉前任敞映,我火速辦了婚禮较曼,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘振愿。我一直安慰自己捷犹,他們只是感情好弛饭,可當(dāng)我...
    茶點故事閱讀 65,381評論 5 384
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著萍歉,像睡著了一般侣颂。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上枪孩,一...
    開封第一講書人閱讀 49,730評論 1 289
  • 那天憔晒,我揣著相機(jī)與錄音,去河邊找鬼蔑舞。 笑死拒担,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的攻询。 我是一名探鬼主播从撼,決...
    沈念sama閱讀 38,882評論 3 404
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼钧栖!你這毒婦竟也來了低零?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,643評論 0 266
  • 序言:老撾萬榮一對情侶失蹤桐经,失蹤者是張志新(化名)和其女友劉穎毁兆,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體阴挣,經(jīng)...
    沈念sama閱讀 44,095評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡气堕,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,448評論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了畔咧。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片茎芭。...
    茶點故事閱讀 38,566評論 1 339
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖誓沸,靈堂內(nèi)的尸體忽然破棺而出梅桩,到底是詐尸還是另有隱情,我是刑警寧澤拜隧,帶...
    沈念sama閱讀 34,253評論 4 328
  • 正文 年R本政府宣布宿百,位于F島的核電站,受9級特大地震影響洪添,放射性物質(zhì)發(fā)生泄漏垦页。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,829評論 3 312
  • 文/蒙蒙 一干奢、第九天 我趴在偏房一處隱蔽的房頂上張望痊焊。 院中可真熱鬧,春花似錦、人聲如沸薄啥。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,715評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽垄惧。三九已至刁愿,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間赘艳,已是汗流浹背酌毡。 一陣腳步聲響...
    開封第一講書人閱讀 31,945評論 1 264
  • 我被黑心中介騙來泰國打工克握, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留蕾管,地道東北人。 一個月前我還...
    沈念sama閱讀 46,248評論 2 360
  • 正文 我出身青樓菩暗,卻偏偏與公主長得像掰曾,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子停团,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,440評論 2 348

推薦閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 171,730評論 25 707
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理旷坦,服務(wù)發(fā)現(xiàn),斷路器佑稠,智...
    卡卡羅2017閱讀 134,626評論 18 139
  • 前言:在面向?qū)ο缶幊讨? 最通常的方法是一個New 或者 alloc 創(chuàng)建要給對象實例,但是在一些情況下, new...
    LikeSomeBody閱讀 554評論 1 2
  • 姓名:邢喜全 公司:寧波大發(fā)化纖有限公司 組別:第235期 感謝一組 【日精進(jìn)打卡第 74天】 【知~學(xué)習(xí)】 讀...
    天上人間_3c17閱讀 193評論 0 0
  • 萬丈紅塵千杯酒履恩,千秋萬代一壺茶锰茉。 茶說,這一生就是在相逢切心,相逢在這一天飒筑,你恰好來,我恰好在;你坐在我面前绽昏,從茫茫人...
    臨江軒禪意茶館閱讀 308評論 0 0