爽死你个放荡粗暴婬货_亚洲v?高清中文字幕_玉女福利视频导航_91香蕉视频在线_久久精品无码一区二区三区毛片_三级片自拍视频_在线观看网站人成亚洲小说_国产精品亚洲欧美综合网站_日本a级作爱片口爱_2021国产剧情a在线

課程

課程介紹

        本課程不僅講解高質(zhì)量軟件設(shè)計的理論知識,更關(guān)鍵是將這些知識投放到各個真實的設(shè)計場景中。在這些場景中,可以看到我們要面對的設(shè)計難題,通過對設(shè)計難題的深入剖析,尋找問題的根源,對癥下藥,從而制訂出正確的設(shè)計方案。課程的案例選取了許多在需求變更中不斷變化的設(shè)計過程,從而用慢動作的手法展現(xiàn)了,最初的需求與設(shè)計是怎樣,第一次變更的設(shè)計,第二層變更的設(shè)計,第三次變更的設(shè)計…這樣的過程展示了,如何在需求變更的過程中,通過每一次正確的設(shè)計,不讓軟件退化,來保證高質(zhì)量的軟件設(shè)計。
        首先深入剖析軟件質(zhì)量下降的根源,提出重構(gòu)是軟件變更中保持高質(zhì)量的必然,講解如何運用“兩頂帽子”的方式應(yīng)對變更,拒絕腐化。站在實戰(zhàn)的角度講解高質(zhì)量軟件設(shè)計的“小步快跑”過程。接著,用真實案例講解已經(jīng)代碼腐化的遺留系統(tǒng)是如何通過“軟件重構(gòu)七步曲”,由簡入深、循序漸進(jìn)地重構(gòu)一個大系統(tǒng)。課程的最后,更加深層次地講解軟件重構(gòu)面臨的難題,以及有效地解決之道。

培訓(xùn)對象

初中高級工程師、企業(yè)架構(gòu)師、軟件設(shè)計師;
各類軟件研發(fā)中心的軟件設(shè)計師、架構(gòu)師、項目經(jīng)理、技術(shù)總監(jiān)、質(zhì)量部門經(jīng)理;
對于重構(gòu)技術(shù)懷有疑問和困惑,需要梳理解答的團(tuán)隊和個人;
學(xué)員基礎(chǔ):
目前面臨復(fù)雜遺留系統(tǒng),必須要維護(hù)和重構(gòu);
具有面向?qū)ο蟮幕靖拍?,熟悉基本設(shè)計模式。

課程收益

通過大量的真實案例,詳細(xì)地介紹軟件設(shè)計過程中需要注意的要點以及難點;
課程1/3時間講解核心思想,1/3時間動手重構(gòu)實踐,1/3點評分析總結(jié);
從而切實有效地提高學(xué)員的設(shè)計開發(fā)水平,有效地改善軟件設(shè)計質(zhì)量。

知識概要

-- 什么是高質(zhì)量的軟件設(shè)計;
-- 軟件設(shè)計原則;
-- 適配器模式;
-- 策略模式;
-- 工廠模式;
-- 單例模式; 
-- 原型模式;
-- 模板方法模式;
-- 裝飾者模式;
-- 橋接模式;
-- 享元模式;
-- 其它設(shè)計模式;
-- 剖析軟件質(zhì)量不斷下降的根源;
-- 高質(zhì)量的軟件設(shè)計過程;
-- 何為重構(gòu);
-- 關(guān)于重構(gòu)的討論。

課程大綱

模塊

學(xué)習(xí)內(nèi)容

第一天AM

軟件設(shè)計模式

第一部分 高質(zhì)量軟件設(shè)計

第一章:什么是高質(zhì)量的軟件設(shè)計

情景?。很浖O(shè)計焦慮癥

1)上次的設(shè)計太糟糕了,痛下決心以后要好好設(shè)計

2)再次進(jìn)行軟件設(shè)計時卻不知道該怎樣設(shè)計

探討:如何進(jìn)行高質(zhì)量的軟件設(shè)計

1)軟件的質(zhì)量保證:內(nèi)部質(zhì)量與外部質(zhì)量

2)高質(zhì)量軟件設(shè)計的標(biāo)準(zhǔn):易讀、易于維護(hù)、易于變更

第二章:軟件設(shè)計原則

易于閱讀:

易于維護(hù)與變更

探討軟件設(shè)計模式:

1)設(shè)計模式的由來

2)設(shè)計模式的發(fā)展

3)設(shè)計模式對高質(zhì)量軟件設(shè)計的作用

第二部分 軟件設(shè)計模式

第三章:適配器模式

什么是適配器模式

適配器模式的應(yīng)用

1)適配器模式解決第三方框架帶來的難題

案例:Hibernate適配器的設(shè)計

2)適配器模式解決外部接口的設(shè)計難題

案例:第三方支付接口的設(shè)計

案例:財務(wù)數(shù)據(jù)接口的設(shè)計

第一天PM

第四章:策略模式

什么是策略模式

策略模式的應(yīng)用

案例:工資發(fā)放功能設(shè)計改進(jìn)的過程

案例:數(shù)據(jù)導(dǎo)出功能的設(shè)計實現(xiàn)

案例:財務(wù)憑證生成功能的設(shè)計過程

練習(xí):財務(wù)憑證生成功能的設(shè)計與實現(xiàn)

第五章:工廠模式

探討軟件設(shè)計中遇到的難題

簡單工廠模式

案例:數(shù)據(jù)導(dǎo)出功能的工廠實現(xiàn)

工廠方法模式

案例:SAX框架的工廠類設(shè)計

抽象工廠模式

案例:標(biāo)簽庫的設(shè)計改進(jìn)過程

第六章:單例模式

什么是單例模式

單例模式的應(yīng)用

1)單例模式帶來的設(shè)計變革

2)單例模式改變了很多軟件的設(shè)計

第二天AM

第七章:原型模式

什么是原型模式

1)工廠類在提供產(chǎn)品時遇到的設(shè)計問題

2)原型模式及其概念

原型模式的設(shè)計實現(xiàn)

案例:函數(shù)調(diào)用的無副作用問題

案例:JavsScript中的原型模式

第八章:模板方法模式

什么是模板方法模式

1)煮咖啡給我們的啟示

2)設(shè)計工廠類的新思路

3)模板方法模式及其概念

模板方法模式的作用與技巧

案例:一個工廠模板的設(shè)計與實現(xiàn)

深入理解不要重復(fù)自己原則

第九章:裝飾者模式

什么是裝飾者模式

1)業(yè)務(wù)量增長帶來的多數(shù)據(jù)源問題

2)運用裝飾者模式巧妙解決多數(shù)據(jù)源問題

3)裝飾者模式及其概念

裝飾者模式的應(yīng)用

案例:多數(shù)據(jù)源的設(shè)計實現(xiàn)

案例:商城收銀系統(tǒng)的設(shè)計變更過程

重新理解里氏替換原則

1)透明的功能擴(kuò)展

1)里氏替換原則

練習(xí):商場收銀系統(tǒng)的2種設(shè)計與實現(xiàn)

第二天PM

第十章:橋接模式

什么是橋接模式

1)對象繼承的泛濫

2)橋接模式及其概念

橋接模式的應(yīng)用

案例:員工管理與工資發(fā)放的設(shè)計

案例:查詢支持類的設(shè)計

深入體會單一職責(zé)原則

第十一章:享元模式

什么是享元模式

1)Hibernate是怎樣訪問數(shù)據(jù)的

2)享元模式及其概念

享元模式的應(yīng)用

案例:數(shù)據(jù)緩存的設(shè)計實現(xiàn)

案例:享元模式在大數(shù)據(jù)中的應(yīng)用

第十二章:其它設(shè)計模式

觀察者模式:JobHunter的情景劇

代理模式:老板與秘書的差異

命令模式:像工作流一樣處理業(yè)務(wù)

外觀模式:超級家庭影院的煩惱

構(gòu)建器模式:SQL Builder的設(shè)計

組合模式:如何構(gòu)建一棵樹

中介者模式:QQ在溝通中的作用

迭代器模式:如何順序訪問一個集合

第三天AM

軟件重構(gòu)實戰(zhàn)

第一部分 為什么軟件需要及時重構(gòu)

第一單元:剖析軟件質(zhì)量不斷下降的根源

質(zhì)量不斷下降的表現(xiàn)/以往采取的措施/帶來的問題/分析與反思

案例分析:一個遺留系統(tǒng)的演化過程

軟件質(zhì)量下降的根源

1)軟件總是因變更而變得越來越復(fù)雜

2)軟件結(jié)構(gòu)已經(jīng)不再適應(yīng)復(fù)雜的軟件需求

3)必須要調(diào)整軟件結(jié)構(gòu)以適應(yīng)新的軟件需求

軟件是因需求變更而質(zhì)量下降嗎?

案例分析:推演軟件變更的設(shè)計過程

應(yīng)對軟件變更的最佳方式:兩頂帽子

案例:演示兩頂帽子的設(shè)計過程

案例:財務(wù)憑證生成程序的設(shè)計過程

第二單元:高質(zhì)量的軟件設(shè)計過程

案例講解軟件設(shè)計原則

1)低耦合

案例:購票業(yè)務(wù)類與數(shù)據(jù)訪問類

案例:需求變更與可擴(kuò)展點設(shè)計

案例:Rectangle/Square的問題

案例:查詢參數(shù)傳遞類的問題

2)高內(nèi)聚

案例:財務(wù)憑證變更帶來的問題

案例:超級大函數(shù)與大對象的難題

案例:MySQL讀寫分離的改造過程

以往軟件設(shè)計的過程

1)演示以往軟件設(shè)計的過程

2)剖析以往軟件設(shè)計的問題與風(fēng)險

小步快跑模式的開發(fā)過程

案例:演示小步快跑的開發(fā)過程

案例:數(shù)據(jù)推送程序的設(shè)計過程

第三天PM

第二部分 如何進(jìn)行軟件重構(gòu)

第三單元:何為重構(gòu)

軟件重構(gòu)的概念

1)重構(gòu)是一系列代碼的等量變換

案例:一個Hello World重構(gòu)過程

2)重構(gòu)的保險索:自動化測試

案例:Hello World的自動化測試過程

3)軟件修改的四種動機(jī)——重構(gòu)的價值

4)一個真實的謊言——重構(gòu)的誤區(qū)

5)重構(gòu)的主要方法與技巧

案例分析:重構(gòu)一個大型遺留系統(tǒng)

1)重構(gòu)第一步:分解大函數(shù)

案例:演示大函數(shù)產(chǎn)生的過程

案例:演示抽取方法操作步驟

2)重構(gòu)第二步:拆分大對象

案例:演示超級大對象的產(chǎn)生過程

案例:演示抽取類的操作步驟

案例:演示“分久必合,合久必分”的重構(gòu)過程

3)重構(gòu)第三步:提高復(fù)用率

案例:提高代碼復(fù)用的6個方法

案例:演示新增代碼時的代碼復(fù)用過程

4)重構(gòu)第四步:可擴(kuò)展設(shè)計

案例:講解可擴(kuò)展設(shè)計的4個方法

案例:講解新增代碼的可擴(kuò)展設(shè)計過程

5)重構(gòu)第五步:降低耦合度

案例:講解接口、實現(xiàn)與工廠模式

案例:講解外部接口解耦與適配器模式

6)重構(gòu)第六步:系統(tǒng)分層

反思軟件架構(gòu)需要怎樣的分層結(jié)構(gòu)

遺留系統(tǒng)如何擁抱需求變化

遺留系統(tǒng)如何應(yīng)對技術(shù)變革

7)重構(gòu)第七步:領(lǐng)域驅(qū)動設(shè)計

案例:智能溫控器分析設(shè)計過程(嵌入式+物聯(lián)網(wǎng))

練習(xí):重構(gòu)一個小程序并編寫測試腳本

第四單元:關(guān)于重構(gòu)的討論

什么時候重構(gòu)

測試的困境

重構(gòu)的評價

認(rèn)證過程

無認(rèn)證考試

開班信息

暫無開班信息