課程介紹:隨著軟件開(kāi)發(fā)技術(shù)的不斷向前發(fā)展,我們需要在應(yīng)用程序中使用到很多已經(jīng)成型的架構(gòu)設(shè)計(jì)。本課程以一個(gè)百萬(wàn)級(jí)代碼的大型應(yīng)用程序(SharpDeveloper)為背景,剖析整個(gè)應(yīng)用程序的架構(gòu),使學(xué)員掌握大型應(yīng)用程序開(kāi)發(fā)設(shè)計(jì)中的主要框架,并能在以后的開(kāi)發(fā)中把這些框架應(yīng)用于新的項(xiàng)目。
適合人群:1、 有一定的軟件開(kāi)發(fā)基礎(chǔ)
2、 有一定的軟件設(shè)計(jì)經(jīng)驗(yàn)
3、 全面理解面向?qū)ο缶幊碳夹g(shù)
4、 了解UML語(yǔ)言
5、 對(duì)GOF代碼設(shè)計(jì)模式有一定了解
6、具有在Visual Studio2005/2008下的編程,測(cè)試經(jīng)驗(yàn)
培訓(xùn)目標(biāo):1、 掌握主流的應(yīng)用程序框架
2、 能夠完成一個(gè)大型應(yīng)用程序的架構(gòu)設(shè)計(jì)
3、 能夠?qū)崿F(xiàn)軟件的高擴(kuò)展性、高維護(hù)性、高重用性、高可靠性的軟件設(shè)計(jì)
4、 在新的項(xiàng)目應(yīng)用中可采用該結(jié)構(gòu)
課程大綱:一、軟件架構(gòu)設(shè)計(jì)概述
1、 軟件架構(gòu)設(shè)計(jì)的方法論和設(shè)計(jì)原則
2、 應(yīng)用系統(tǒng)中的多層架構(gòu)
3、 軟件設(shè)計(jì)中的可靠性、可擴(kuò)展性、可重用性、可維護(hù)性
二、剖析SharpDeveloper整體結(jié)構(gòu)
1、 SharpDeveloper項(xiàng)目背景
2、 SharpDeveloper主體框架結(jié)構(gòu)
三、實(shí)現(xiàn)UI的自定義與可擴(kuò)展,UI Framework機(jī)制
1、 實(shí)現(xiàn)強(qiáng)大的UI 平臺(tái),為基于該UI平臺(tái)的模塊提供完整易用的UI定義與展現(xiàn)能力
2、 UI Framework的設(shè)計(jì)思想
3、 UI Framework在開(kāi)發(fā)中的應(yīng)用
4、 如何實(shí)現(xiàn)可擴(kuò)展的UI框架,實(shí)現(xiàn)UI元素的動(dòng)態(tài)加載與定義
5、 如何構(gòu)建UI Framework
6、 剖析SharpDeveloper的UI架構(gòu)
7、 如何在以后的開(kāi)發(fā)中重用并構(gòu)建UI Framework
實(shí)驗(yàn):實(shí)現(xiàn)UI Framework 機(jī)制,并可在以后開(kāi)發(fā)中重用該機(jī)制核心代碼,實(shí)現(xiàn)具有完整易用的UI Platform為應(yīng)用的開(kāi)發(fā)打下完善的UI平臺(tái)
四、實(shí)現(xiàn)軟件可擴(kuò)展性、 AddIn、 Commands機(jī)制
1、 軟件框架結(jié)構(gòu)設(shè)計(jì)中的可擴(kuò)展性,解決業(yè)務(wù)邏輯的擴(kuò)展與更改問(wèn)題避免軟件的重構(gòu)
2、 實(shí)現(xiàn)具有強(qiáng)大擴(kuò)展能力的應(yīng)用程序設(shè)計(jì)思想
3、 AddIn, Commands機(jī)制的設(shè)計(jì)思想
4、 如何構(gòu)建AddIn, Commands機(jī)制,實(shí)現(xiàn)具有強(qiáng)大擴(kuò)展能力的應(yīng)用程序
5、 剖析SharpDeveloper的AddIn, Commands架構(gòu)
6、 如何在以后的開(kāi)發(fā)中重用并構(gòu)建AddIn, Commands
實(shí)驗(yàn):實(shí)現(xiàn)AddIn, Commands 機(jī)制,并可在以后開(kāi)發(fā)中重用該機(jī)制核心代碼,實(shí)現(xiàn)具有強(qiáng)大擴(kuò)展能力的應(yīng)用程序
五、Event Centralize機(jī)制,實(shí)現(xiàn)低藕合的應(yīng)用程序框架,提高應(yīng)用程序的可維護(hù)性,可靠性
1、 組件間設(shè)計(jì)原則,如何降低組件間關(guān)聯(lián)性
2、 實(shí)現(xiàn)低藕合的應(yīng)用程序框架的設(shè)計(jì)思想
3、 Event Centralize機(jī)制的設(shè)計(jì)思想
4、 如何構(gòu)建Event Centralize機(jī)制,實(shí)現(xiàn)低藕合的應(yīng)用程序框架
5、 如何在以后的開(kāi)發(fā)中重用并構(gòu)建Event Centralize機(jī)制
實(shí)驗(yàn):實(shí)現(xiàn)Event Centralize機(jī)制,并可在以后開(kāi)發(fā)中重用該機(jī)制核心代碼,實(shí)現(xiàn)低藕合的應(yīng)用程序框架
六、持久數(shù)據(jù)層的構(gòu)建
1、 構(gòu)建統(tǒng)一的數(shù)據(jù)層模塊,屏蔽對(duì)低層數(shù)據(jù)源的直接訪問(wèn),避免對(duì)復(fù)雜數(shù)據(jù)源訪問(wèn),提高開(kāi)發(fā)團(tuán)隊(duì)的開(kāi)發(fā)效率
2、 數(shù)據(jù)層設(shè)計(jì)的主要設(shè)計(jì)模式
3、 數(shù)據(jù)層設(shè)計(jì)的設(shè)計(jì)思想
4、 如何構(gòu)建持久數(shù)據(jù)層
5、 如何在以后的開(kāi)發(fā)中重用并構(gòu)建持久數(shù)據(jù)層
實(shí)驗(yàn):實(shí)現(xiàn)并構(gòu)建持久數(shù)據(jù)層,并可在以后開(kāi)發(fā)中重用該機(jī)制核心代碼