四虎精品视频-四虎精品成人免费网站-四虎黄色网-四虎国产视频-国产免费91-国产蜜臀97一区二区三区

設(shè)計模式系列—創(chuàng)建者模式

  一、上篇回顧

  上篇我們主要講述了抽象工廠模式和工廠模式。并且分析了該模式的應(yīng)用場景和一些優(yōu)缺點,并且給出了一些實現(xiàn)的思路和方案,我們現(xiàn)在來回顧一下:

  抽象工廠模式:一個工廠負責所有類型對象的創(chuàng)建,支持無縫的新增新的類型對象的創(chuàng)建。這種情況是通過配置文件來實現(xiàn)的,通過字典映射的方式來實現(xiàn),不過可能效率上有點低下,可以通過優(yōu)化的方式來做,上篇中我們也給出了委托的工廠實現(xiàn)形式,相比之前的簡單工廠模式和工廠模式有了更好的靈活性,并且對具有依賴關(guān)系或者組合關(guān)系的對象的創(chuàng)建尤為適合。

  上篇中,有不少的朋友提出了一些意見和建議,首先很感謝大伙的支持和鼓勵,有朋友提出來,我畫的圖不夠?qū)I(yè),專業(yè)人士應(yīng)該用UML建模圖來搞,我怎么說呢?我也同意這樣的說法,但是我發(fā)現(xiàn)我通過另外的直觀的圖形,大家一看就能更明白,結(jié)合代碼,當然好的UML圖,已經(jīng)能表述清楚設(shè)計的思路和大體實現(xiàn)了,不過說實話,我看著就有點類,特別是UML圖復雜的時候。所以我還是暫時先用這種一般的圖形來表述我理解的設(shè)計模式的思想,看看大伙是什么看法和意見,如果說都說說UML圖的話,那么后面的相關(guān)模式,我會主要以UML專業(yè)圖來繪制。

  我這里總結(jié)下我們以后項目中的可能會用到設(shè)計模式 之處或者系統(tǒng)架構(gòu)的時候,一般情況下有這樣的幾類方案,我們可以在考慮系統(tǒng)的低耦合性的時候的設(shè)計:

image  基本上來說能掌握上面的幾類情況,基本上設(shè)計出來的系統(tǒng)至少是可用的,不知道大家有沒有更多意見和建議。有的請?zhí)岢鰜恚視渥⒃谖恼轮小?/p>

  二、摘要

  本文主要是針對創(chuàng)建型模式中的創(chuàng)建者模式進行講述,創(chuàng)建者模式是創(chuàng)建型模式中最負責的一個設(shè)計模式了,創(chuàng)建者負責構(gòu)建一個對象的各個部分,并且完成組裝的過程,我們可以這么理解創(chuàng)建者模式,創(chuàng)建者模式類似與一個步驟基本固定,但是每個步驟中的具體形式卻又可以變化的這類對象的創(chuàng)建。也許這樣說還是太抽象了,我們這么來理解吧,我感覺讓人最容易理解的形式還是圖形化的形式,不但接受起來容易,并且讓人映象深刻,不知道大家是不是和我有同感呢?下面我們給出一個簡單的例子,通過圖形化的流程來說明吧:我們這里以我們大伙平時最常見的做飯為例吧:

image  可能我這里給出的流程只是我個人理解的或者看到的過程,不代表全部,呵呵,這里只是事例性的說明。

  三、本文大綱

  a、上篇回顧。

  b、摘要。

  c、本文大綱。

  d、創(chuàng)建者模式的特點及使用場景。

  e、創(chuàng)建者模式的實現(xiàn)方案。

  f、創(chuàng)建者模式使用總結(jié)。

  g、系列進度。

  h、下篇預告。

  四、創(chuàng)建者模式的特點及使用場景

  創(chuàng)建者模式主要是用于創(chuàng)建復雜的一些對象,這些對象的創(chuàng)建步驟基本固定,但是可能具體的對象的組成部分卻又可以自由的變化,現(xiàn)實中的例子很多,但是可能大伙都比較容易理解的就是,我們的自己花錢配置的臺式機或者筆記本,可以 這樣理解,這些硬件設(shè)備的各個零件,不管是CPU是Intel的還是AMD的,顯卡是華碩的還是小影霸的,不管硬盤是西部數(shù)據(jù)的還是希捷的,其實想表述的意思就是對象的具體的組成部分可以是變化的,但是可能我們發(fā)現(xiàn)對象的這些組成部分的組織起來的過程是相對固定的,那么我們就可以用創(chuàng)建者模式來做,并且我們引入一個引導者(Director)來引導這個對象的組裝過程。可以簡單用圖形化的過程來描述如下:

image  我們上面說明了一個服裝的大概生產(chǎn)過程,這里生產(chǎn)的順序可能會發(fā)生變化,或者生產(chǎn)的帽子,上衣等都會發(fā)生變化,但是服裝的組裝過程基本上變化不大,都是需要帽子,上衣,褲子的,這時候我們可以通過引導著負責組裝這樣的過程,然后我們在具體的每個部分可以是抽象接口,根據(jù)不同的實現(xiàn)創(chuàng)建不同的帽子來完成變化。

  五、創(chuàng)建者模式的實現(xiàn)方案

  5.1、經(jīng)典的創(chuàng)建者模式實現(xiàn)

  • 我們先給出經(jīng)典創(chuàng)建者模式的一個實現(xiàn)形式,然后針對這個經(jīng)典模式后面提出幾個改進方案,我們這里以上面講述的服裝的過程作為例子來說明下創(chuàng)建者模式的原理和思想,希望大家也能靈活的運用到實際的項目中去。達到學以致用的目的。

  我們來看看具體的代碼實現(xiàn):

/// <summary> 
/// 創(chuàng)建對象組織的所有構(gòu)造步驟接口
/// </summary>
public interface IBuider
{
void BuilderPart1();
void BuilderPart2();
void BuilderPart3();
}

it知識庫設(shè)計模式系列—創(chuàng)建者模式,轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 创业史全文阅读| 罗中立的《父亲》详案| 建设工程监理规范最新版50319-2019| 2023中国十大廉洁人物事迹| 我的一级兄弟 电影 | 卷珠帘歌词| 电影偿还| 公司辞退员工的合法流程及赔偿| 日本电影小小的家| 乔什·哈切森| 奇妙的植物世界阅读短文答案| 爆操大胸美女| 罗东| 袁冰妍个人资料| 哈利学前班| 湿身美女| 在线看色戒| 河南卫视直播| ()目()身的词语| 病毒感染血常规有什么异常 | 山楂树简谱| 苍兰| 韩国成人网| 山楂树之恋35集免费观看电视剧| 电影壮志凌云| 一野| 张倩仪演过什么电视剧| 当代大学德语2答案| angela white| 电影名字《女孩闺房》| 五年级语文下册| 周星驰原名| 她和他和他和他| 少年包青天3演员表| 黄视频免费| 日本电影小小的家| 韩世雅电影在线观看国语版| 香蜜沉沉烬如霜吻戏| 血芙蓉电影| 成龙电影大全免费功夫片| 让雷诺阿|