架構(gòu)師
傳統(tǒng)金融
制造
其他
推薦課程
average > 0 ? $model->average . '分' : '10.0分' ?>

軟件設(shè)計(jì)模式精解與模式案例分析

劉捷

咨詢(xún)公司 曾任職BEA(中國(guó))資深軟件架構(gòu)師

曾任職BEA(中國(guó))資深軟件架構(gòu)師,十余年的企業(yè)軟件架構(gòu)、開(kāi)發(fā)和管理經(jīng)驗(yàn), 側(cè)重于企業(yè)應(yīng)用軟件架構(gòu)設(shè)計(jì).主要負(fù)責(zé)客戶(hù)大型項(xiàng)目的架構(gòu)設(shè)計(jì)和研發(fā)。
作為技術(shù)專(zhuān)家保證項(xiàng)目的成功實(shí)施,運(yùn)行和維護(hù)。參加過(guò)全國(guó)/全省多個(gè)大型的計(jì)算機(jī)應(yīng)用項(xiàng)目,擅長(zhǎng)的領(lǐng)域包括電信,金融、稅務(wù),大型互聯(lián)網(wǎng)web2.0應(yīng)用等。此前就職于IBM,任軟件架構(gòu)師。 在此之前曾任日本東京一家軟件企業(yè)的資深技術(shù)顧問(wèn)。

曾任職BEA(中國(guó))資深軟件架構(gòu)師,十余年的企業(yè)軟件架構(gòu)、開(kāi)發(fā)和管理經(jīng)驗(yàn), 側(cè)重于企業(yè)應(yīng)用軟件架構(gòu)設(shè)計(jì).主要負(fù)責(zé)客戶(hù)大型項(xiàng)目的架構(gòu)設(shè)計(jì)和研發(fā)。 作為技術(shù)專(zhuān)家保證項(xiàng)目的成功實(shí)施,運(yùn)行和維護(hù)。參加過(guò)全國(guó)/全省多個(gè)大型的計(jì)算機(jī)應(yīng)用項(xiàng)目,擅長(zhǎng)的領(lǐng)域包括電信,金融、稅務(wù),大型互聯(lián)網(wǎng)web2.0應(yīng)用等。此前就職于IBM,任軟件架構(gòu)師。 在此之前曾任日本東京一家軟件企業(yè)的資深技術(shù)顧問(wèn)。

課程費(fèi)用

7800.00 /人

課程時(shí)長(zhǎng)

3

成為教練

課程簡(jiǎn)介

作為為一門(mén)高級(jí)課程,若內(nèi)容缺乏實(shí)務(wù)便易流于抽象與空泛。 本課程除了深入剖析各種典型的設(shè)計(jì)模式之原理與結(jié)構(gòu)外, 同時(shí)會(huì)抽取大量知名程序庫(kù)中的設(shè)計(jì)模式,利用其源碼輔助并加強(qiáng)原理講解。并且結(jié)合講師大量實(shí)際項(xiàng)目案例進(jìn)行分析. 這種方式對(duì)于設(shè)計(jì)模式的學(xué)習(xí)有著極大效果。 與其它的仍然沿用傳統(tǒng)模式目錄方式逐一講述每一模式的意圖,結(jié)構(gòu),適應(yīng)性等的培訓(xùn)和圖書(shū)完全不同.

目標(biāo)收益

課程1/3的時(shí)間介紹設(shè)計(jì)模式思想和原理,1/3時(shí)間案例,并且要求學(xué)員組合成小組進(jìn)行現(xiàn)場(chǎng)設(shè)計(jì). 最后1/3時(shí)間再介紹該案例的設(shè)計(jì)過(guò)程,講師帶領(lǐng)大家一起對(duì)設(shè)計(jì)結(jié)果進(jìn)行分析,指出不”和諧”的地方,通過(guò)逐步運(yùn)用模式,改善設(shè)計(jì)。

培訓(xùn)對(duì)象

該課程適合各類(lèi) IT/軟件企業(yè)和研發(fā)機(jī)構(gòu)的軟件架構(gòu)師、軟件設(shè)計(jì)師、程序員。特別能夠帶著設(shè)計(jì)模式實(shí)踐時(shí)的困惑和問(wèn)題,效果最佳. 到時(shí)可以與講師PK討論,這樣對(duì)你幫助會(huì)更大,收獲也會(huì)更多.本課程不是設(shè)計(jì)模式入門(mén)級(jí)別課程, 不會(huì)目錄式介紹每一模式的詳細(xì)細(xì)節(jié), 因此需要學(xué)員課前做好相關(guān)準(zhǔn)備,最好已經(jīng)具備模式概念和常見(jiàn)模式的基本知識(shí)。最好課前可以簡(jiǎn)單預(yù)習(xí)。

課程大綱

第一篇: 設(shè)計(jì)模式-設(shè)計(jì)原理與面向?qū)ο笤O(shè)計(jì)思維
第1單元 為什么需要設(shè)計(jì)模式
內(nèi)容一:軟件設(shè)計(jì)模式---模式到底是什么?價(jià)值在哪里?
1.什么是模式
2.為什么需要設(shè)計(jì)模式? 難道就為了面試嗎?
3.設(shè)計(jì)模式能夠給我們帶來(lái)什么?
4.設(shè)計(jì)模式學(xué)習(xí)面臨的困難和解決思路
5.從了解模式到正確應(yīng)用模式
1.練習(xí)---某電信業(yè)務(wù)系統(tǒng),在使用模式前解決方案 和 使用模式后的對(duì)比

內(nèi)容二:軟件設(shè)計(jì)模式本質(zhì)—你真的知道模式背后的原理嗎?
1.發(fā)現(xiàn)變化進(jìn)行封裝變化
2.把變化與不變必須分離
3.針對(duì)接口的編程,而不是針對(duì)實(shí)現(xiàn)
4.組合優(yōu)于繼承
1.練習(xí)—某電信認(rèn)證項(xiàng)目設(shè)計(jì)分析,分析模式背后的本質(zhì)

內(nèi)容三:什么是好的設(shè)計(jì)-----難道使用設(shè)計(jì)模式就是好的設(shè)計(jì)嗎?
1.什么是好的設(shè)計(jì)?
2.難道不使用設(shè)計(jì)模式就是壞的設(shè)計(jì)嗎?
3.為什么需求變化總是使你痛苦? 和你的設(shè)計(jì)有關(guān)系嗎?
4.好的系統(tǒng)設(shè)計(jì)應(yīng)該有如下的性質(zhì):可擴(kuò)展性、靈活性、可插入性。
5.設(shè)計(jì)模式可以使你的設(shè)計(jì)更靈活,更易復(fù)用,更具可擴(kuò)展性
練習(xí)—某電信項(xiàng)目4種設(shè)計(jì)方案的對(duì)比, 那種更合適?多種方案的對(duì)比
第2單元 面向?qū)ο笤O(shè)計(jì)思維與原理 內(nèi)容一:面向?qū)ο笏季S是模式基礎(chǔ)
1.面向?qū)ο蠓治雠c設(shè)計(jì)的本質(zhì)
2.面向?qū)ο笤O(shè)計(jì)思維與面向過(guò)程設(shè)計(jì)思維—職責(zé)驅(qū)動(dòng)設(shè)計(jì)
3.抽象本質(zhì)
4.封裝本質(zhì)
5.繼承本質(zhì)
6.多態(tài)本質(zhì)
7.面向?qū)ο蟪R?jiàn)的錯(cuò)誤認(rèn)識(shí)—思考OO帶來(lái)的價(jià)值
8.為什么學(xué)習(xí)設(shè)計(jì)模式需要面向?qū)ο笏季S
9.從面向?qū)ο蟮侥J降皆俚秸嬲拿嫦驅(qū)ο?br/>10.練習(xí)—某ERP項(xiàng)目, 使用面向?qū)ο笤O(shè)計(jì)和過(guò)程化設(shè)計(jì) PK,,難道面向?qū)ο缶鸵欢ㄊ亲顑?yōu)的? 你真正理解面向?qū)ο髥? 面向?qū)ο蟮降渍嬲心男┖锰? 不要人云亦云 !

內(nèi)容二:面向?qū)ο笤O(shè)計(jì)原則(principles)
1.依賴(lài)倒置原則(DIP)
2.開(kāi)放封閉原則(OCP)
3.單一職責(zé)原則(SRP)
4.Liskov 替換原則(LSP)
5.接口隔離原則(ISP)
6.練習(xí)—每組原則,分別通過(guò)案例進(jìn)行分析,為什么需要使用原則進(jìn)行考慮
第二篇: 設(shè)計(jì)模式精講------創(chuàng)建型
第3單元 創(chuàng)建型模式
內(nèi)容一:創(chuàng)建型模式(principles)
1.簡(jiǎn)單創(chuàng)建型工廠
2. Factory Method(工廠方法)
3. Abstract Factory(抽象工廠)
4. Builder(生成器)
5. Prototype(原型)
6. Singleton(單件)
7.創(chuàng)建型模式的討論
第4單元 創(chuàng)建型模式精講 內(nèi)容一:簡(jiǎn)單工廠模式
1.簡(jiǎn)單工廠模式概述
2.簡(jiǎn)單工廠模式結(jié)構(gòu)與實(shí)現(xiàn)
3.簡(jiǎn)單工廠模式結(jié)構(gòu)
4.簡(jiǎn)單工廠模式實(shí)現(xiàn)
5.簡(jiǎn)單工廠模式應(yīng)用實(shí)例
6.關(guān)于創(chuàng)建對(duì)象與使用對(duì)象
7.簡(jiǎn)單工廠模式的簡(jiǎn)化
8.簡(jiǎn)單工廠模式優(yōu)/缺點(diǎn)與適用環(huán)境
9.簡(jiǎn)單工廠模式優(yōu)點(diǎn)

內(nèi)容二:工廠方法模式
1.工廠方法模式概述
2.工廠方法模式結(jié)構(gòu)與實(shí)現(xiàn)
3.工廠方法模式結(jié)構(gòu)
4.工廠方法模式實(shí)現(xiàn)
5.工廠方法模式應(yīng)用實(shí)例
6.工廠方法模式優(yōu)/缺點(diǎn)與適用環(huán)境
7.工廠方法模式優(yōu)點(diǎn)

內(nèi)容三:抽象工廠模式
1.產(chǎn)品等級(jí)結(jié)構(gòu)與產(chǎn)品族
2. 抽象工廠模式概述
3. 抽象工廠模式結(jié)構(gòu)與實(shí)現(xiàn)
4. 抽象工廠模式結(jié)構(gòu)
5. 抽象工廠模式實(shí)現(xiàn)
6. 抽象工廠模式應(yīng)用實(shí)例

內(nèi)容四:?jiǎn)卫J侥J?br/>1.單例模式概述
2. 單例模式結(jié)構(gòu)與實(shí)現(xiàn)
3. 單例模式結(jié)構(gòu)
4. 單例模式實(shí)現(xiàn)
5. 單例模式應(yīng)用實(shí)例
6. 餓漢式單例與懶漢式單例
7. 單例模式優(yōu)/缺點(diǎn)與適用環(huán)境
8. 單例模式優(yōu)點(diǎn)

內(nèi)容五:其他創(chuàng)建型模式
1.Builder(生成器)模式概述
2.Builder(生成器)模式結(jié)構(gòu)與實(shí)現(xiàn)
3.Prototype(原型)模式概述
4.Prototype(原型)式結(jié)構(gòu)與實(shí)現(xiàn)

內(nèi)容六:創(chuàng)建型模式的應(yīng)用案例分析
1.創(chuàng)建型的應(yīng)用案例分析
第三篇: 設(shè)計(jì)模式精講------結(jié)構(gòu)性型
第5單元 結(jié)構(gòu)型模式
內(nèi)容一:結(jié)構(gòu)型模式(principles)
1.Adapter(適配器)—類(lèi)對(duì)象結(jié)構(gòu)型模式
2.Bridge(橋接)—對(duì)象結(jié)構(gòu)型模式
3.Composite(組成)—對(duì)象結(jié)構(gòu)型模式
4.Decorator(裝飾)—對(duì)象結(jié)構(gòu)型模式
5.FACADE(外觀)—對(duì)象結(jié)構(gòu)型模式
6.Flyweight(享元)—對(duì)象結(jié)構(gòu)型模式
7.Proxy(代理)—對(duì)象結(jié)構(gòu)型模式
8.結(jié)構(gòu)型模式的討論
9.Adapter與Bridge對(duì)比與分析
10.Composite、Decorator與Proxy 對(duì)比與分析
第6單元 結(jié)構(gòu)型模式精講 內(nèi)容一:適配器模式
1.適配器模式概述
2.對(duì)象適配器和類(lèi)適配器
3. 適配器模式結(jié)構(gòu)與實(shí)現(xiàn)
4. 適配器模式應(yīng)用實(shí)例
5. 缺省適配器模式
6. 雙向適配器
7. 適配器模式優(yōu)/缺點(diǎn)與適用環(huán)境

內(nèi)容二:組合模式
1.組合模式概述
2.組合模式結(jié)構(gòu)與實(shí)現(xiàn)
3.組合模式應(yīng)用實(shí)例
4.透明組合模式與安全組合模式
5.組合模式優(yōu)/缺點(diǎn)與適用環(huán)境
6.組合模式優(yōu)點(diǎn)
7.組合模式缺點(diǎn)
8.組合模式適用環(huán)境

內(nèi)容三:裝飾器模式
1.裝飾模式概述
2.裝飾模式結(jié)構(gòu)與實(shí)現(xiàn)
3.裝飾模式應(yīng)用實(shí)例
4.透明裝飾模式與半透明裝飾模式
5.裝飾模式優(yōu)/缺點(diǎn)與適用環(huán)境

內(nèi)容四:Facde外觀模式
1.外觀模式概述
2.外觀模式結(jié)構(gòu)與實(shí)現(xiàn)
3.外觀模式應(yīng)用實(shí)例
4.抽象外觀類(lèi)
5.外觀模式優(yōu)/缺點(diǎn)與適用環(huán)境
6.外觀模式適用環(huán)境

內(nèi)容五:結(jié)構(gòu)性模式應(yīng)用案例
1.結(jié)構(gòu)型概述應(yīng)用案例
第四篇: 設(shè)計(jì)模式精講------行為型
第7單元 行為型型模式
內(nèi)容一:行為型模式(principles)
1.CHAIN OF RESPONSIBIL ITY(職責(zé)鏈) —對(duì)象行為型模式
2.COMMAND(命令)—對(duì)象行為型模式
3. INTERPRETER(解釋器)—類(lèi)行為型模式
4. ITERATOR(迭代器)—對(duì)象行為型模式
5. MEDIATOR(中介者)—對(duì)象行為型模式
6.MEMENTO(備忘錄)—對(duì)象行為型模式
7.OBSERVER(觀察者)—對(duì)象行為型模式
8.STATE(狀態(tài))—對(duì)象行為型模式
9.STRATEGY(策略)—對(duì)象行為型模式
10.TEMPLATE METHOD(模板方法)—類(lèi)行為型模式
11. VISITOR(訪問(wèn)者)—對(duì)象行為型 模式
12. 行為模式的討論
第8單元 行為型模式精講 內(nèi)容一:代理模式
1.代理模式概述
2.代理模式結(jié)構(gòu)與實(shí)現(xiàn)
3.代理模式應(yīng)用實(shí)例
4. 遠(yuǎn)程代理
5. 虛擬代理
6. Java動(dòng)態(tài)代理實(shí)現(xiàn)
7. 代理模式優(yōu)/缺點(diǎn)與適用環(huán)境

內(nèi)容二:職責(zé)鏈模式
1.職責(zé)鏈模式概述
2.職責(zé)鏈模式結(jié)構(gòu)與實(shí)現(xiàn)
3.職責(zé)鏈模式應(yīng)用實(shí)例
4.純與不純的職責(zé)鏈模式
5.職責(zé)鏈模式優(yōu)/缺點(diǎn)與適用環(huán)境

內(nèi)容三:命令模式
1.命令模式概述
2.命令模式結(jié)構(gòu)與實(shí)現(xiàn)
3.命令模式結(jié)構(gòu)
4.命令模式實(shí)現(xiàn)
5.命令模式應(yīng)用實(shí)例
6.實(shí)現(xiàn)命令隊(duì)列
7.記錄請(qǐng)求日志
8.實(shí)現(xiàn)撤銷(xiāo)操作
9.宏命令
10.命令模式優(yōu)/缺點(diǎn)與適用環(huán)境

內(nèi)容四:觀察者模式
1.觀察者模式概述
2.觀察者模式結(jié)構(gòu)與實(shí)現(xiàn)
3.觀察者模式應(yīng)用實(shí)例
4.JDK對(duì)觀察者模式的支持
5.觀察者模式與Java事件處理
6.觀察者模式與MVC
7.觀察者模式優(yōu)/缺點(diǎn)與適用環(huán)境

內(nèi)容五:狀態(tài)與策略模式
1.狀態(tài)模式概述
2.狀態(tài)模式結(jié)構(gòu)與實(shí)現(xiàn)
3.狀態(tài)模式應(yīng)用實(shí)例
4. 共享狀態(tài)
5. 使用環(huán)境類(lèi)實(shí)現(xiàn)狀態(tài)轉(zhuǎn)換
6. 狀態(tài)模式優(yōu)/缺點(diǎn)與適用環(huán)境
7.策略模式概述
8.策略模式結(jié)構(gòu)與實(shí)現(xiàn)
9.策略模式應(yīng)用實(shí)例
10.策略模式優(yōu)/缺點(diǎn)與適用環(huán)境

內(nèi)容六:模板方法模式
1.模板方法模式概述
2.模板方法模式結(jié)構(gòu)與實(shí)現(xiàn)
3.模板方法模式應(yīng)用實(shí)例
4.鉤子方法的使用
5.模板方法模式優(yōu)/缺點(diǎn)與適用環(huán)境
第五篇: 設(shè)計(jì)模式對(duì)比
第9單元 設(shè)計(jì)模式對(duì)比
內(nèi)容一:模式大PK, 通過(guò)對(duì)比了解設(shè)計(jì)模式的細(xì)節(jié)
1.創(chuàng)建型模式討論
a)簡(jiǎn)單工場(chǎng) 工廠方法 抽象工場(chǎng)
b)Abstract Factory,builder,Prototype 模式
c)單例模式
2.行為型模式
a)Adapter與Bridge
b)Composite、Decorator與Proxy
c)Fa?ade模式 與 Adapter模式 /Proxy模式
d)Composite 與Iterator模式
3.結(jié)構(gòu)型模式
a)封裝變化-Strategy/State/ Iterator模式
b)封裝結(jié)構(gòu)---Mediator模式與Facade模式
c)對(duì)象作為參數(shù)-- Visitor/Command/Mementor
d)通信應(yīng)該被封裝還是被分布- Mediator和Observer
e)對(duì)發(fā)送者和接收者解耦-Command模式與職責(zé)鏈模式

將實(shí)踐中常容易混淆或常常聯(lián)合使用的幾個(gè)模式放在一組討論,對(duì)比分析,講解思想。如何發(fā)現(xiàn)、應(yīng)用更多模式。通過(guò)對(duì)“相似或相關(guān)的設(shè)計(jì)模式”的對(duì)比分析,加深理解,是避免“模式誤用”的好方法。
第六篇: 設(shè)計(jì)模式應(yīng)用案例
第10單元 設(shè)計(jì)模式應(yīng)用案例
內(nèi)容一:用模式思考系統(tǒng)設(shè)計(jì)
1.基于模式的設(shè)計(jì)系統(tǒng)
2.用模式思考的過(guò)程
3.模式的應(yīng)用層次和組合應(yīng)用模式
4.基于模式的方法和步驟

內(nèi)容二:練習(xí)案例- Log子系統(tǒng)的設(shè)計(jì)
1.介紹項(xiàng)目需求情況,進(jìn)行設(shè)計(jì)
2.通過(guò)重構(gòu)逐步實(shí)現(xiàn)設(shè)計(jì)模式
3.Framework 設(shè)計(jì)思想—好萊塢原則
4.學(xué)習(xí)設(shè)計(jì)模式(Factory Method, Template Method, Composite, Chain of Responsibility )
第11單元 設(shè)計(jì)模式應(yīng)用策略
有時(shí)放棄模式更值得學(xué)習(xí)
內(nèi)容一:重構(gòu)到模式-
1.設(shè)計(jì)壞味道概述
2.重構(gòu)思想
3.理解如何結(jié)合重構(gòu)和模式;
4.用模式導(dǎo)向的重構(gòu)(pattern-directed refactoring)改善既有代碼的設(shè)計(jì);
5.找出需要進(jìn)行模式導(dǎo)向重構(gòu)的代碼段;
6.了解為什么使用模式來(lái)改善既有的設(shè)計(jì)要優(yōu)于在新的設(shè)計(jì)早期使用模式。
7.一組壞味 (也就是問(wèn)題),表示需要進(jìn)行模式導(dǎo)向的重構(gòu);
8.實(shí)現(xiàn)同一模式的不同方式的示例;
9.什么時(shí)候應(yīng)該通過(guò)重構(gòu)實(shí)現(xiàn)模式、趨向模式以及去除模式給出建議。
10.常見(jiàn)設(shè)計(jì)模式的重構(gòu)演化的過(guò)程
7.練習(xí)—通過(guò)一個(gè)大型電信系統(tǒng)案例分析, 解決如何通過(guò)重構(gòu)引入設(shè)計(jì)模式
11.

內(nèi)容二:案例- 遺留系統(tǒng)如何使用設(shè)計(jì)模式
1.拒絕退化—“首先不要傷害”
2.關(guān)注點(diǎn)分離
3.. 通過(guò)案例分析,如何修改遺留代碼,而不破壞現(xiàn)有系統(tǒng)代碼結(jié)構(gòu),引入設(shè)計(jì)模式
8.練習(xí)—通過(guò)一個(gè)系統(tǒng)案例分析, 如何在維護(hù)遺留系統(tǒng)時(shí), 通過(guò)分離制作, 關(guān)注點(diǎn)分離, 實(shí)現(xiàn)對(duì)遺留系統(tǒng)不傷害,從而引入設(shè)計(jì)模式


內(nèi)容三:練習(xí)案例- 重構(gòu)到模式
第七篇: 重構(gòu)到設(shè)計(jì)模式
第12單元
重構(gòu)到模式應(yīng)用案例

通過(guò)重構(gòu)實(shí)現(xiàn)模式改善既有的設(shè)計(jì),往往優(yōu)于在新的設(shè)計(jì)早期使用模式。
內(nèi)容一:重構(gòu)到模式-
1. 設(shè)計(jì)壞味道概述
2. 重構(gòu)思想
3. 理解如何結(jié)合重構(gòu)和模式;
4. 用模式導(dǎo)向的重構(gòu)(pattern-directed refactoring)改善既有代碼的設(shè)計(jì);
5. 找出需要進(jìn)行模式導(dǎo)向重構(gòu)的代碼段;
6. 了解為什么使用模式來(lái)改善既有的設(shè)計(jì)要優(yōu)于在新的設(shè)計(jì)早期使用模式。
7. 一組壞味 (也就是問(wèn)題),表示需要進(jìn)行模式導(dǎo)向的重構(gòu);
8. 實(shí)現(xiàn)同一模式的不同方式的示例;
9. 什么時(shí)候應(yīng)該通過(guò)重構(gòu)實(shí)現(xiàn)模式、趨向模式以及去除模式給出建議。
10. 常見(jiàn)設(shè)計(jì)模式的重構(gòu)演化的過(guò)程
A案例分析—通過(guò)一個(gè)大型電信系統(tǒng)案例分析, 解決如何通過(guò)重構(gòu)引入設(shè)計(jì)模式

內(nèi)容二:案例- 遺留系統(tǒng)如何使用設(shè)計(jì)模式
1. 拒絕退化—“首先不要傷害”
2. 關(guān)注點(diǎn)分離
3. 通過(guò)案例分析,如何修改遺留代碼,而不破壞現(xiàn)有系統(tǒng)代碼結(jié)構(gòu),引入設(shè)計(jì)模式
A案例分析—通過(guò)一個(gè)系統(tǒng)案例分析, 如何在維護(hù)遺留系統(tǒng)時(shí), 通過(guò)分離制作, 關(guān)注點(diǎn)分離, 實(shí)現(xiàn)對(duì)遺留系統(tǒng)不傷害,從而引入設(shè)計(jì)模式


內(nèi)容三:案例- 某電信管理子系統(tǒng)的設(shè)計(jì)
1. 介紹項(xiàng)目需求情況,進(jìn)行設(shè)計(jì)
2. 通過(guò)重構(gòu)逐步實(shí)現(xiàn)設(shè)計(jì)模式
3. Framework 設(shè)計(jì)思想—好萊塢原則
4. 學(xué)習(xí)設(shè)計(jì)模式(Factory Method, Template Method, Composite, Chain of Responsibility )
(“雖然軟件的演化,利用重構(gòu)從而得到模式”是有效應(yīng)用設(shè)計(jì)模式的實(shí)踐準(zhǔn)則。本節(jié)以一些重構(gòu)技巧來(lái)展示如何通過(guò)演化的方式來(lái)步步達(dá)至設(shè)計(jì)模式,從而幫助學(xué)員更好地掌握如何在軟件設(shè)計(jì)中運(yùn)用設(shè)計(jì)模式,發(fā)現(xiàn)更多設(shè)計(jì)模式。)
第13單元
設(shè)計(jì)模式應(yīng)用策略- 綜合應(yīng)用分析
內(nèi)容一:大型系統(tǒng)的設(shè)計(jì)案例分析, 介紹如何預(yù)先應(yīng)用模式,以及如何在第3版本重構(gòu)時(shí)導(dǎo)入模式, 已經(jīng)在后期維護(hù)時(shí)應(yīng)用模式
1.××某省移動(dòng)線路資源維護(hù)系統(tǒng)的背景介紹
2.系統(tǒng)需求分析
3.如何根據(jù)應(yīng)用系統(tǒng)特點(diǎn), 和變化與不變等原因,引入模式
4.根據(jù)應(yīng)用功能,導(dǎo)入設(shè)計(jì)模式
5.第1版本上線時(shí)的系統(tǒng)設(shè)計(jì)分析
6.第1版本,系統(tǒng)設(shè)計(jì)時(shí)遺留的問(wèn)題, 設(shè)計(jì)不足, 缺陷等分析
7.第2版本, 由于增加新功能導(dǎo)致的嚴(yán)重問(wèn)題分析
8.系統(tǒng)出現(xiàn)很多設(shè)計(jì)不足
9.第3版本, 由于增加新功能導(dǎo)致的嚴(yán)重問(wèn)題分析
10.系統(tǒng)開(kāi)始引入重構(gòu),系統(tǒng)的壞味道, 以及重構(gòu),分析在重構(gòu)是如何使用重構(gòu)
11.分析第4版本的系統(tǒng)設(shè)計(jì)
系統(tǒng)在后續(xù)維護(hù)過(guò)程之中的, 設(shè)計(jì)情況。 以及如何在維護(hù)時(shí)期進(jìn)行應(yīng)用模式
第一篇: 設(shè)計(jì)模式-設(shè)計(jì)原理與面向?qū)ο笤O(shè)計(jì)思維
第1單元 為什么需要設(shè)計(jì)模式
內(nèi)容一:軟件設(shè)計(jì)模式---模式到底是什么?價(jià)值在哪里?
1.什么是模式
2.為什么需要設(shè)計(jì)模式? 難道就為了面試嗎?
3.設(shè)計(jì)模式能夠給我們帶來(lái)什么?
4.設(shè)計(jì)模式學(xué)習(xí)面臨的困難和解決思路
5.從了解模式到正確應(yīng)用模式
1.練習(xí)---某電信業(yè)務(wù)系統(tǒng),在使用模式前解決方案 和 使用模式后的對(duì)比

內(nèi)容二:軟件設(shè)計(jì)模式本質(zhì)—你真的知道模式背后的原理嗎?
1.發(fā)現(xiàn)變化進(jìn)行封裝變化
2.把變化與不變必須分離
3.針對(duì)接口的編程,而不是針對(duì)實(shí)現(xiàn)
4.組合優(yōu)于繼承
1.練習(xí)—某電信認(rèn)證項(xiàng)目設(shè)計(jì)分析,分析模式背后的本質(zhì)

內(nèi)容三:什么是好的設(shè)計(jì)-----難道使用設(shè)計(jì)模式就是好的設(shè)計(jì)嗎?
1.什么是好的設(shè)計(jì)?
2.難道不使用設(shè)計(jì)模式就是壞的設(shè)計(jì)嗎?
3.為什么需求變化總是使你痛苦? 和你的設(shè)計(jì)有關(guān)系嗎?
4.好的系統(tǒng)設(shè)計(jì)應(yīng)該有如下的性質(zhì):可擴(kuò)展性、靈活性、可插入性。
5.設(shè)計(jì)模式可以使你的設(shè)計(jì)更靈活,更易復(fù)用,更具可擴(kuò)展性
練習(xí)—某電信項(xiàng)目4種設(shè)計(jì)方案的對(duì)比, 那種更合適?多種方案的對(duì)比
第2單元 面向?qū)ο笤O(shè)計(jì)思維與原理
內(nèi)容一:面向?qū)ο笏季S是模式基礎(chǔ)
1.面向?qū)ο蠓治雠c設(shè)計(jì)的本質(zhì)
2.面向?qū)ο笤O(shè)計(jì)思維與面向過(guò)程設(shè)計(jì)思維—職責(zé)驅(qū)動(dòng)設(shè)計(jì)
3.抽象本質(zhì)
4.封裝本質(zhì)
5.繼承本質(zhì)
6.多態(tài)本質(zhì)
7.面向?qū)ο蟪R?jiàn)的錯(cuò)誤認(rèn)識(shí)—思考OO帶來(lái)的價(jià)值
8.為什么學(xué)習(xí)設(shè)計(jì)模式需要面向?qū)ο笏季S
9.從面向?qū)ο蟮侥J降皆俚秸嬲拿嫦驅(qū)ο?br/>10.練習(xí)—某ERP項(xiàng)目, 使用面向?qū)ο笤O(shè)計(jì)和過(guò)程化設(shè)計(jì) PK,,難道面向?qū)ο缶鸵欢ㄊ亲顑?yōu)的? 你真正理解面向?qū)ο髥? 面向?qū)ο蟮降渍嬲心男┖锰? 不要人云亦云 !

內(nèi)容二:面向?qū)ο笤O(shè)計(jì)原則(principles)
1.依賴(lài)倒置原則(DIP)
2.開(kāi)放封閉原則(OCP)
3.單一職責(zé)原則(SRP)
4.Liskov 替換原則(LSP)
5.接口隔離原則(ISP)
6.練習(xí)—每組原則,分別通過(guò)案例進(jìn)行分析,為什么需要使用原則進(jìn)行考慮
第二篇: 設(shè)計(jì)模式精講------創(chuàng)建型
第3單元 創(chuàng)建型模式
內(nèi)容一:創(chuàng)建型模式(principles)
1.簡(jiǎn)單創(chuàng)建型工廠
2. Factory Method(工廠方法)
3. Abstract Factory(抽象工廠)
4. Builder(生成器)
5. Prototype(原型)
6. Singleton(單件)
7.創(chuàng)建型模式的討論
第4單元 創(chuàng)建型模式精講
內(nèi)容一:簡(jiǎn)單工廠模式
1.簡(jiǎn)單工廠模式概述
2.簡(jiǎn)單工廠模式結(jié)構(gòu)與實(shí)現(xiàn)
3.簡(jiǎn)單工廠模式結(jié)構(gòu)
4.簡(jiǎn)單工廠模式實(shí)現(xiàn)
5.簡(jiǎn)單工廠模式應(yīng)用實(shí)例
6.關(guān)于創(chuàng)建對(duì)象與使用對(duì)象
7.簡(jiǎn)單工廠模式的簡(jiǎn)化
8.簡(jiǎn)單工廠模式優(yōu)/缺點(diǎn)與適用環(huán)境
9.簡(jiǎn)單工廠模式優(yōu)點(diǎn)

內(nèi)容二:工廠方法模式
1.工廠方法模式概述
2.工廠方法模式結(jié)構(gòu)與實(shí)現(xiàn)
3.工廠方法模式結(jié)構(gòu)
4.工廠方法模式實(shí)現(xiàn)
5.工廠方法模式應(yīng)用實(shí)例
6.工廠方法模式優(yōu)/缺點(diǎn)與適用環(huán)境
7.工廠方法模式優(yōu)點(diǎn)

內(nèi)容三:抽象工廠模式
1.產(chǎn)品等級(jí)結(jié)構(gòu)與產(chǎn)品族
2. 抽象工廠模式概述
3. 抽象工廠模式結(jié)構(gòu)與實(shí)現(xiàn)
4. 抽象工廠模式結(jié)構(gòu)
5. 抽象工廠模式實(shí)現(xiàn)
6. 抽象工廠模式應(yīng)用實(shí)例

內(nèi)容四:?jiǎn)卫J侥J?br/>1.單例模式概述
2. 單例模式結(jié)構(gòu)與實(shí)現(xiàn)
3. 單例模式結(jié)構(gòu)
4. 單例模式實(shí)現(xiàn)
5. 單例模式應(yīng)用實(shí)例
6. 餓漢式單例與懶漢式單例
7. 單例模式優(yōu)/缺點(diǎn)與適用環(huán)境
8. 單例模式優(yōu)點(diǎn)

內(nèi)容五:其他創(chuàng)建型模式
1.Builder(生成器)模式概述
2.Builder(生成器)模式結(jié)構(gòu)與實(shí)現(xiàn)
3.Prototype(原型)模式概述
4.Prototype(原型)式結(jié)構(gòu)與實(shí)現(xiàn)

內(nèi)容六:創(chuàng)建型模式的應(yīng)用案例分析
1.創(chuàng)建型的應(yīng)用案例分析
第三篇: 設(shè)計(jì)模式精講------結(jié)構(gòu)性型
第5單元 結(jié)構(gòu)型模式
內(nèi)容一:結(jié)構(gòu)型模式(principles)
1.Adapter(適配器)—類(lèi)對(duì)象結(jié)構(gòu)型模式
2.Bridge(橋接)—對(duì)象結(jié)構(gòu)型模式
3.Composite(組成)—對(duì)象結(jié)構(gòu)型模式
4.Decorator(裝飾)—對(duì)象結(jié)構(gòu)型模式
5.FACADE(外觀)—對(duì)象結(jié)構(gòu)型模式
6.Flyweight(享元)—對(duì)象結(jié)構(gòu)型模式
7.Proxy(代理)—對(duì)象結(jié)構(gòu)型模式
8.結(jié)構(gòu)型模式的討論
9.Adapter與Bridge對(duì)比與分析
10.Composite、Decorator與Proxy 對(duì)比與分析
第6單元 結(jié)構(gòu)型模式精講
內(nèi)容一:適配器模式
1.適配器模式概述
2.對(duì)象適配器和類(lèi)適配器
3. 適配器模式結(jié)構(gòu)與實(shí)現(xiàn)
4. 適配器模式應(yīng)用實(shí)例
5. 缺省適配器模式
6. 雙向適配器
7. 適配器模式優(yōu)/缺點(diǎn)與適用環(huán)境

內(nèi)容二:組合模式
1.組合模式概述
2.組合模式結(jié)構(gòu)與實(shí)現(xiàn)
3.組合模式應(yīng)用實(shí)例
4.透明組合模式與安全組合模式
5.組合模式優(yōu)/缺點(diǎn)與適用環(huán)境
6.組合模式優(yōu)點(diǎn)
7.組合模式缺點(diǎn)
8.組合模式適用環(huán)境

內(nèi)容三:裝飾器模式
1.裝飾模式概述
2.裝飾模式結(jié)構(gòu)與實(shí)現(xiàn)
3.裝飾模式應(yīng)用實(shí)例
4.透明裝飾模式與半透明裝飾模式
5.裝飾模式優(yōu)/缺點(diǎn)與適用環(huán)境

內(nèi)容四:Facde外觀模式
1.外觀模式概述
2.外觀模式結(jié)構(gòu)與實(shí)現(xiàn)
3.外觀模式應(yīng)用實(shí)例
4.抽象外觀類(lèi)
5.外觀模式優(yōu)/缺點(diǎn)與適用環(huán)境
6.外觀模式適用環(huán)境

內(nèi)容五:結(jié)構(gòu)性模式應(yīng)用案例
1.結(jié)構(gòu)型概述應(yīng)用案例
第四篇: 設(shè)計(jì)模式精講------行為型
第7單元 行為型型模式
內(nèi)容一:行為型模式(principles)
1.CHAIN OF RESPONSIBIL ITY(職責(zé)鏈) —對(duì)象行為型模式
2.COMMAND(命令)—對(duì)象行為型模式
3. INTERPRETER(解釋器)—類(lèi)行為型模式
4. ITERATOR(迭代器)—對(duì)象行為型模式
5. MEDIATOR(中介者)—對(duì)象行為型模式
6.MEMENTO(備忘錄)—對(duì)象行為型模式
7.OBSERVER(觀察者)—對(duì)象行為型模式
8.STATE(狀態(tài))—對(duì)象行為型模式
9.STRATEGY(策略)—對(duì)象行為型模式
10.TEMPLATE METHOD(模板方法)—類(lèi)行為型模式
11. VISITOR(訪問(wèn)者)—對(duì)象行為型 模式
12. 行為模式的討論
第8單元 行為型模式精講
內(nèi)容一:代理模式
1.代理模式概述
2.代理模式結(jié)構(gòu)與實(shí)現(xiàn)
3.代理模式應(yīng)用實(shí)例
4. 遠(yuǎn)程代理
5. 虛擬代理
6. Java動(dòng)態(tài)代理實(shí)現(xiàn)
7. 代理模式優(yōu)/缺點(diǎn)與適用環(huán)境

內(nèi)容二:職責(zé)鏈模式
1.職責(zé)鏈模式概述
2.職責(zé)鏈模式結(jié)構(gòu)與實(shí)現(xiàn)
3.職責(zé)鏈模式應(yīng)用實(shí)例
4.純與不純的職責(zé)鏈模式
5.職責(zé)鏈模式優(yōu)/缺點(diǎn)與適用環(huán)境

內(nèi)容三:命令模式
1.命令模式概述
2.命令模式結(jié)構(gòu)與實(shí)現(xiàn)
3.命令模式結(jié)構(gòu)
4.命令模式實(shí)現(xiàn)
5.命令模式應(yīng)用實(shí)例
6.實(shí)現(xiàn)命令隊(duì)列
7.記錄請(qǐng)求日志
8.實(shí)現(xiàn)撤銷(xiāo)操作
9.宏命令
10.命令模式優(yōu)/缺點(diǎn)與適用環(huán)境

內(nèi)容四:觀察者模式
1.觀察者模式概述
2.觀察者模式結(jié)構(gòu)與實(shí)現(xiàn)
3.觀察者模式應(yīng)用實(shí)例
4.JDK對(duì)觀察者模式的支持
5.觀察者模式與Java事件處理
6.觀察者模式與MVC
7.觀察者模式優(yōu)/缺點(diǎn)與適用環(huán)境

內(nèi)容五:狀態(tài)與策略模式
1.狀態(tài)模式概述
2.狀態(tài)模式結(jié)構(gòu)與實(shí)現(xiàn)
3.狀態(tài)模式應(yīng)用實(shí)例
4. 共享狀態(tài)
5. 使用環(huán)境類(lèi)實(shí)現(xiàn)狀態(tài)轉(zhuǎn)換
6. 狀態(tài)模式優(yōu)/缺點(diǎn)與適用環(huán)境
7.策略模式概述
8.策略模式結(jié)構(gòu)與實(shí)現(xiàn)
9.策略模式應(yīng)用實(shí)例
10.策略模式優(yōu)/缺點(diǎn)與適用環(huán)境

內(nèi)容六:模板方法模式
1.模板方法模式概述
2.模板方法模式結(jié)構(gòu)與實(shí)現(xiàn)
3.模板方法模式應(yīng)用實(shí)例
4.鉤子方法的使用
5.模板方法模式優(yōu)/缺點(diǎn)與適用環(huán)境
第五篇: 設(shè)計(jì)模式對(duì)比
第9單元 設(shè)計(jì)模式對(duì)比
內(nèi)容一:模式大PK, 通過(guò)對(duì)比了解設(shè)計(jì)模式的細(xì)節(jié)
1.創(chuàng)建型模式討論
a)簡(jiǎn)單工場(chǎng) 工廠方法 抽象工場(chǎng)
b)Abstract Factory,builder,Prototype 模式
c)單例模式
2.行為型模式
a)Adapter與Bridge
b)Composite、Decorator與Proxy
c)Fa?ade模式 與 Adapter模式 /Proxy模式
d)Composite 與Iterator模式
3.結(jié)構(gòu)型模式
a)封裝變化-Strategy/State/ Iterator模式
b)封裝結(jié)構(gòu)---Mediator模式與Facade模式
c)對(duì)象作為參數(shù)-- Visitor/Command/Mementor
d)通信應(yīng)該被封裝還是被分布- Mediator和Observer
e)對(duì)發(fā)送者和接收者解耦-Command模式與職責(zé)鏈模式

將實(shí)踐中常容易混淆或常常聯(lián)合使用的幾個(gè)模式放在一組討論,對(duì)比分析,講解思想。如何發(fā)現(xiàn)、應(yīng)用更多模式。通過(guò)對(duì)“相似或相關(guān)的設(shè)計(jì)模式”的對(duì)比分析,加深理解,是避免“模式誤用”的好方法。
第六篇: 設(shè)計(jì)模式應(yīng)用案例
第10單元 設(shè)計(jì)模式應(yīng)用案例
內(nèi)容一:用模式思考系統(tǒng)設(shè)計(jì)
1.基于模式的設(shè)計(jì)系統(tǒng)
2.用模式思考的過(guò)程
3.模式的應(yīng)用層次和組合應(yīng)用模式
4.基于模式的方法和步驟

內(nèi)容二:練習(xí)案例- Log子系統(tǒng)的設(shè)計(jì)
1.介紹項(xiàng)目需求情況,進(jìn)行設(shè)計(jì)
2.通過(guò)重構(gòu)逐步實(shí)現(xiàn)設(shè)計(jì)模式
3.Framework 設(shè)計(jì)思想—好萊塢原則
4.學(xué)習(xí)設(shè)計(jì)模式(Factory Method, Template Method, Composite, Chain of Responsibility )
第11單元 設(shè)計(jì)模式應(yīng)用策略
有時(shí)放棄模式更值得學(xué)習(xí)
內(nèi)容一:重構(gòu)到模式-
1.設(shè)計(jì)壞味道概述
2.重構(gòu)思想
3.理解如何結(jié)合重構(gòu)和模式;
4.用模式導(dǎo)向的重構(gòu)(pattern-directed refactoring)改善既有代碼的設(shè)計(jì);
5.找出需要進(jìn)行模式導(dǎo)向重構(gòu)的代碼段;
6.了解為什么使用模式來(lái)改善既有的設(shè)計(jì)要優(yōu)于在新的設(shè)計(jì)早期使用模式。
7.一組壞味 (也就是問(wèn)題),表示需要進(jìn)行模式導(dǎo)向的重構(gòu);
8.實(shí)現(xiàn)同一模式的不同方式的示例;
9.什么時(shí)候應(yīng)該通過(guò)重構(gòu)實(shí)現(xiàn)模式、趨向模式以及去除模式給出建議。
10.常見(jiàn)設(shè)計(jì)模式的重構(gòu)演化的過(guò)程
7.練習(xí)—通過(guò)一個(gè)大型電信系統(tǒng)案例分析, 解決如何通過(guò)重構(gòu)引入設(shè)計(jì)模式
11.

內(nèi)容二:案例- 遺留系統(tǒng)如何使用設(shè)計(jì)模式
1.拒絕退化—“首先不要傷害”
2.關(guān)注點(diǎn)分離
3.. 通過(guò)案例分析,如何修改遺留代碼,而不破壞現(xiàn)有系統(tǒng)代碼結(jié)構(gòu),引入設(shè)計(jì)模式
8.練習(xí)—通過(guò)一個(gè)系統(tǒng)案例分析, 如何在維護(hù)遺留系統(tǒng)時(shí), 通過(guò)分離制作, 關(guān)注點(diǎn)分離, 實(shí)現(xiàn)對(duì)遺留系統(tǒng)不傷害,從而引入設(shè)計(jì)模式


內(nèi)容三:練習(xí)案例- 重構(gòu)到模式
第七篇: 重構(gòu)到設(shè)計(jì)模式
第12單元
重構(gòu)到模式應(yīng)用案例

通過(guò)重構(gòu)實(shí)現(xiàn)模式改善既有的設(shè)計(jì),往往優(yōu)于在新的設(shè)計(jì)早期使用模式。
內(nèi)容一:重構(gòu)到模式-
1. 設(shè)計(jì)壞味道概述
2. 重構(gòu)思想
3. 理解如何結(jié)合重構(gòu)和模式;
4. 用模式導(dǎo)向的重構(gòu)(pattern-directed refactoring)改善既有代碼的設(shè)計(jì);
5. 找出需要進(jìn)行模式導(dǎo)向重構(gòu)的代碼段;
6. 了解為什么使用模式來(lái)改善既有的設(shè)計(jì)要優(yōu)于在新的設(shè)計(jì)早期使用模式。
7. 一組壞味 (也就是問(wèn)題),表示需要進(jìn)行模式導(dǎo)向的重構(gòu);
8. 實(shí)現(xiàn)同一模式的不同方式的示例;
9. 什么時(shí)候應(yīng)該通過(guò)重構(gòu)實(shí)現(xiàn)模式、趨向模式以及去除模式給出建議。
10. 常見(jiàn)設(shè)計(jì)模式的重構(gòu)演化的過(guò)程
A案例分析—通過(guò)一個(gè)大型電信系統(tǒng)案例分析, 解決如何通過(guò)重構(gòu)引入設(shè)計(jì)模式

內(nèi)容二:案例- 遺留系統(tǒng)如何使用設(shè)計(jì)模式
1. 拒絕退化—“首先不要傷害”
2. 關(guān)注點(diǎn)分離
3. 通過(guò)案例分析,如何修改遺留代碼,而不破壞現(xiàn)有系統(tǒng)代碼結(jié)構(gòu),引入設(shè)計(jì)模式
A案例分析—通過(guò)一個(gè)系統(tǒng)案例分析, 如何在維護(hù)遺留系統(tǒng)時(shí), 通過(guò)分離制作, 關(guān)注點(diǎn)分離, 實(shí)現(xiàn)對(duì)遺留系統(tǒng)不傷害,從而引入設(shè)計(jì)模式


內(nèi)容三:案例- 某電信管理子系統(tǒng)的設(shè)計(jì)
1. 介紹項(xiàng)目需求情況,進(jìn)行設(shè)計(jì)
2. 通過(guò)重構(gòu)逐步實(shí)現(xiàn)設(shè)計(jì)模式
3. Framework 設(shè)計(jì)思想—好萊塢原則
4. 學(xué)習(xí)設(shè)計(jì)模式(Factory Method, Template Method, Composite, Chain of Responsibility )
(“雖然軟件的演化,利用重構(gòu)從而得到模式”是有效應(yīng)用設(shè)計(jì)模式的實(shí)踐準(zhǔn)則。本節(jié)以一些重構(gòu)技巧來(lái)展示如何通過(guò)演化的方式來(lái)步步達(dá)至設(shè)計(jì)模式,從而幫助學(xué)員更好地掌握如何在軟件設(shè)計(jì)中運(yùn)用設(shè)計(jì)模式,發(fā)現(xiàn)更多設(shè)計(jì)模式。)
第13單元
設(shè)計(jì)模式應(yīng)用策略- 綜合應(yīng)用分析
內(nèi)容一:大型系統(tǒng)的設(shè)計(jì)案例分析, 介紹如何預(yù)先應(yīng)用模式,以及如何在第3版本重構(gòu)時(shí)導(dǎo)入模式, 已經(jīng)在后期維護(hù)時(shí)應(yīng)用模式
1.××某省移動(dòng)線路資源維護(hù)系統(tǒng)的背景介紹
2.系統(tǒng)需求分析
3.如何根據(jù)應(yīng)用系統(tǒng)特點(diǎn), 和變化與不變等原因,引入模式
4.根據(jù)應(yīng)用功能,導(dǎo)入設(shè)計(jì)模式
5.第1版本上線時(shí)的系統(tǒng)設(shè)計(jì)分析
6.第1版本,系統(tǒng)設(shè)計(jì)時(shí)遺留的問(wèn)題, 設(shè)計(jì)不足, 缺陷等分析
7.第2版本, 由于增加新功能導(dǎo)致的嚴(yán)重問(wèn)題分析
8.系統(tǒng)出現(xiàn)很多設(shè)計(jì)不足
9.第3版本, 由于增加新功能導(dǎo)致的嚴(yán)重問(wèn)題分析
10.系統(tǒng)開(kāi)始引入重構(gòu),系統(tǒng)的壞味道, 以及重構(gòu),分析在重構(gòu)是如何使用重構(gòu)
11.分析第4版本的系統(tǒng)設(shè)計(jì)
系統(tǒng)在后續(xù)維護(hù)過(guò)程之中的, 設(shè)計(jì)情況。 以及如何在維護(hù)時(shí)期進(jìn)行應(yīng)用模式

活動(dòng)詳情

提交需求