理解設(shè)計(jì)模式1

我一開始, 并不是很看重設(shè)計(jì)模式, 認(rèn)為設(shè)計(jì)模式?jīng)]太多作用, 在移動(dòng)開發(fā)的時(shí)候, 用處不大. 直到后來, 開發(fā)的項(xiàng)目變多, 遇到了很多的問題. 才逐步理解了設(shè)計(jì)模式.?

當(dāng)時(shí)也不是特意學(xué)習(xí)的設(shè)計(jì)模式, 而是在面試中被問及到, 工作中使用過哪些, 當(dāng)時(shí)都回答不上來, 事后回顧這些問題, 都用了哪些呢, 慢慢發(fā)現(xiàn), 自己在使用設(shè)計(jì)模式, 但是不知道使用的是設(shè)計(jì)模式.

我理解的設(shè)計(jì)模式, 是為解決問題, 提供的很多思路, 當(dāng)遇到一個(gè)情景時(shí), 應(yīng)該如何著手編寫代碼, 可以更好的擴(kuò)展, 降低代碼間的關(guān)聯(lián)呢. 設(shè)計(jì)模式提供了合適的方案.

我是一名iOS開發(fā)者. 當(dāng)初開發(fā)智能硬件時(shí), 面臨iOS7, iOS8的系統(tǒng)相冊(cè)方法更新, 以及硬件上的圖片資源和手機(jī)沙盒中的圖片, 同時(shí)有4種不同方式的圖片資源, 需要再App內(nèi)使用, 總不能寫A, B, C, D4個(gè)類, 在程序中, 每個(gè)使用圖片的地方, 就判斷一下吧, 那樣的話, 代碼會(huì)有很多if else. 于是, 就用 <適配器模式> 將每個(gè)圖片的使用方式, 封裝成同樣的. 再繼承自同一個(gè)父類. 這樣, 使用多態(tài)和封裝, 就在程序中, 使用最小的改動(dòng), 使得所有地方可以統(tǒng)一的使用圖片資源. 如果以后iOS15, 又變更了圖片庫(kù), 程序內(nèi)也不用太多改變. 只需 "修改" 適配器, 既可以繼續(xù)通用. 在設(shè)計(jì)模式的引導(dǎo)下, "修改" 適配器, 也不一定是去修改適配器的代碼. 可以用 繼承, 組合, 多態(tài)等方式, 去更新迭代.

這就是設(shè)計(jì)模式帶來的便利之處.

裝飾者模式,把A類傳入B類碱妆,B類跟A類實(shí)現(xiàn)同樣的接口(很像)舆驶,但是B比A更豐富. 在B類中, 跟A類同名的方法, 就直接調(diào)用A類

外觀模式柑晒,內(nèi)部創(chuàng)建A数苫,B眷茁,C多個(gè)類筷凤,在某個(gè)方法中耸携,調(diào)用他們中的方法, 進(jìn)行組合棵癣。

橋接模式,跟裝飾者很像夺衍。但不是為了擴(kuò)展狈谊,為了替換

組合模式,自己沟沙,自己2對(duì)象河劝,自己3對(duì)象。全部封裝在自己內(nèi)矛紫。二叉樹的樣子

模板模式赎瞎,重寫抽象類某方法,實(shí)現(xiàn)替換

單例模式, ?全局只有一個(gè), 共享同一個(gè)

原型模式, ?父類提供公共方法, 子類覆寫父類方法. 即多態(tài)

適配器模式, 將不同的類的屬性方法, 通過適配器, 封裝成一樣的.

代理模式, 傳遞某對(duì)象,?通過協(xié)議, 可以使用該對(duì)象的特定方法.

工廠模式, ?在工廠類中使用, ?某超類的子類, 子類自己重寫了父類中會(huì)被使用的方法,?

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末颊咬,一起剝皮案震驚了整個(gè)濱河市务甥,隨后出現(xiàn)的幾起案子牡辽,更是在濱河造成了極大的恐慌,老刑警劉巖敞临,帶你破解...
    沈念sama閱讀 219,427評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件态辛,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡挺尿,警方通過查閱死者的電腦和手機(jī)奏黑,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,551評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來编矾,“玉大人熟史,你說我怎么就攤上這事≌危” “怎么了蹂匹?”我有些...
    開封第一講書人閱讀 165,747評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)裆操。 經(jīng)常有香客問我怒详,道長(zhǎng)炉媒,這世上最難降的妖魔是什么踪区? 我笑而不...
    開封第一講書人閱讀 58,939評(píng)論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮吊骤,結(jié)果婚禮上缎岗,老公的妹妹穿的比我還像新娘。我一直安慰自己白粉,他們只是感情好传泊,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,955評(píng)論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著鸭巴,像睡著了一般眷细。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上鹃祖,一...
    開封第一講書人閱讀 51,737評(píng)論 1 305
  • 那天溪椎,我揣著相機(jī)與錄音,去河邊找鬼恬口。 笑死校读,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的祖能。 我是一名探鬼主播歉秫,決...
    沈念sama閱讀 40,448評(píng)論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼养铸!你這毒婦竟也來了雁芙?” 一聲冷哼從身側(cè)響起轧膘,我...
    開封第一講書人閱讀 39,352評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎却特,沒想到半個(gè)月后扶供,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,834評(píng)論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡裂明,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,992評(píng)論 3 338
  • 正文 我和宋清朗相戀三年椿浓,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片闽晦。...
    茶點(diǎn)故事閱讀 40,133評(píng)論 1 351
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡扳碍,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出仙蛉,到底是詐尸還是另有隱情笋敞,我是刑警寧澤,帶...
    沈念sama閱讀 35,815評(píng)論 5 346
  • 正文 年R本政府宣布荠瘪,位于F島的核電站夯巷,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏哀墓。R本人自食惡果不足惜趁餐,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,477評(píng)論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望篮绰。 院中可真熱鬧后雷,春花似錦、人聲如沸吠各。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,022評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)贾漏。三九已至候学,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間纵散,已是汗流浹背梳码。 一陣腳步聲響...
    開封第一講書人閱讀 33,147評(píng)論 1 272
  • 我被黑心中介騙來泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留困食,地道東北人边翁。 一個(gè)月前我還...
    沈念sama閱讀 48,398評(píng)論 3 373
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像硕盹,于是被迫代替她去往敵國(guó)和親符匾。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,077評(píng)論 2 355

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

  • Swift1> Swift和OC的區(qū)別1.1> Swift沒有地址/指針的概念1.2> 泛型1.3> 類型嚴(yán)謹(jǐn) 對(duì)...
    cosWriter閱讀 11,104評(píng)論 1 32
  • 設(shè)計(jì)模式基本原則 開放-封閉原則(OCP)瘩例,是說軟件實(shí)體(類啊胶、模塊甸各、函數(shù)等等)應(yīng)該可以拓展,但是不可修改焰坪。開-閉原...
    西山薄涼閱讀 3,798評(píng)論 3 14
  • 一:java概述: 1趣倾,JDK:Java Development Kit,java的開發(fā)和運(yùn)行環(huán)境某饰,java的開發(fā)...
    慕容小偉閱讀 1,792評(píng)論 0 10
  • 整理來自互聯(lián)網(wǎng) 1儒恋,JDK:Java Development Kit,java的開發(fā)和運(yùn)行環(huán)境黔漂,java的開發(fā)工具...
    Ncompass閱讀 1,540評(píng)論 0 6
  • 記得那年的夏季 花開得正好 你站在樹下 一個(gè)人微笑 我想 那個(gè)人的微笑真像夏日的陽(yáng)光 那樣恬靜而美好 后來 我常守...
    風(fēng)信子漂泊巴黎閱讀 246評(píng)論 12 2