各有關(guān)單位:
中國科學(xué)院計(jì)算技術(shù)研究所是國家專門的計(jì)算技術(shù)研究機(jī)構(gòu),同時(shí)也是中國信息化建設(shè)的重要支撐單位,中科院計(jì)算所培訓(xùn)中心是致力于高端IT類人才培養(yǎng)及企業(yè)內(nèi)訓(xùn)的專業(yè)培訓(xùn)機(jī)構(gòu)。中心憑借科學(xué)院的強(qiáng)大師資力量,在總結(jié)多年大型軟件開發(fā)和組織經(jīng)驗(yàn)的基礎(chǔ)上,自主研發(fā)出一整套課程體系,其目的是希望能夠切實(shí)幫助中國軟件企業(yè)培養(yǎng)高級(jí)軟件技術(shù)人才,提升整體研發(fā)能力,迄今為止已先后為國家培養(yǎng)了數(shù)萬名計(jì)算機(jī)專業(yè)人員,并先后為數(shù)千家大型國內(nèi)外企業(yè)進(jìn)行過專門的定制培訓(xùn)服務(wù)。
軟件重構(gòu)是指在不改變軟件功能和外部可見性的情況下,為了改善軟件的結(jié)構(gòu),提高清晰性、可擴(kuò)展性和可重用性而對(duì)軟件進(jìn)行的改造。簡(jiǎn)而言之,重構(gòu)就是改進(jìn)已經(jīng)寫好的軟件的設(shè)計(jì)。在敏捷開發(fā)方法學(xué)中,重構(gòu)常常是軟件開發(fā)循環(huán)的一部分,開發(fā)者通過增加新的測(cè)試和功能,或者重構(gòu)代碼來改善內(nèi)部的一致性和清晰性。重構(gòu)也是代碼維護(hù)中的一部分,既不修正錯(cuò)誤,又不增加新的功能性,而是用于提高代碼的可讀性或者改變代碼的結(jié)構(gòu)和設(shè)計(jì),使其在將來更容易被維護(hù)。特別是,在現(xiàn)有的程序的結(jié)構(gòu)下,給一個(gè)程序增加一個(gè)新的行為會(huì)非常困難,因此開發(fā)人員可能先重構(gòu)這部分代碼,使加入新的行為變得容易。
本課程的目標(biāo)是:了解實(shí)效編程、掌握面向?qū)ο蟮木幊淘瓌t、掌握UML在設(shè)計(jì)中的應(yīng)用、掌握職責(zé)分配模式的應(yīng)用、掌握設(shè)計(jì)模式的應(yīng)用、掌握測(cè)試驅(qū)動(dòng)開發(fā)方法、掌握重構(gòu)的手法以及了解如何選擇和使用框架。具體事宜通知如下:
一、培訓(xùn)對(duì)象
注重實(shí)效的開發(fā)人員、開發(fā)工程師、開發(fā)團(tuán)隊(duì)負(fù)責(zé)人等。
二、學(xué)員基礎(chǔ)
具有項(xiàng)目設(shè)計(jì)、開發(fā)工作經(jīng)驗(yàn)。
三、師資
由業(yè)界知名人士親自授課:
姜老師:培訓(xùn)中心高級(jí)講師,國家“863項(xiàng)目”專家,首席架構(gòu)師,敏捷開發(fā)資深實(shí)踐者,具有多年在第一線成功管理大型軟件項(xiàng)目的經(jīng)驗(yàn),對(duì)軟件項(xiàng)目組織具有深刻見解和實(shí)踐知識(shí)。
四、培訓(xùn)目標(biāo)
了解實(shí)效編程
掌握面向?qū)ο蟮木幊淘瓌t
掌握UML在設(shè)計(jì)中的應(yīng)用
掌握職責(zé)分配模式的應(yīng)用
掌握設(shè)計(jì)模式的應(yīng)用
掌握測(cè)試驅(qū)動(dòng)開發(fā)方法
掌握重構(gòu)的手法
了解如何選擇和使用框架
五、培訓(xùn)內(nèi)容
本課程內(nèi)容理論性與實(shí)踐性都較強(qiáng),采取講課、討論、實(shí)踐三者結(jié)合的方式,形成一整套解決問題的方法。
第一部 好的設(shè)計(jì):“球不是這么踢的”
讓目標(biāo)指導(dǎo)行動(dòng)
設(shè)計(jì)已死?
足夠好的軟件
化整為零,個(gè)個(gè)擊破
先實(shí)現(xiàn)后設(shè)計(jì)
目標(biāo):理解重構(gòu)的基本思想,掌握關(guān)鍵的重構(gòu)技巧。
第二部分 用例驅(qū)動(dòng)設(shè)計(jì):用例與功能
用例場(chǎng)景
健壯性分析圖
時(shí)序圖
協(xié)作圖
類圖
包圖
邏輯框架和層
模型-視圖分離原則
目標(biāo):理解用例驅(qū)動(dòng)設(shè)計(jì)的基本方法,掌握關(guān)鍵UML應(yīng)用技巧。
第三部分 領(lǐng)域驅(qū)動(dòng)設(shè)計(jì):何為“領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)”
通用語言
模型驅(qū)動(dòng)設(shè)計(jì)
面向深層理解的重構(gòu)
保持模型一致性
目標(biāo):理解領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)的基本方法,掌握關(guān)鍵重構(gòu)技巧。
第四部分 職責(zé)驅(qū)動(dòng)設(shè)計(jì):GRASP是什么?
創(chuàng)建者
信息專家
低耦合
控制器
高內(nèi)聚
多態(tài)
純虛構(gòu)
間接性
防止變異
目標(biāo):理解職責(zé)驅(qū)動(dòng)涉及的基本方法,掌握關(guān)鍵的重構(gòu)技巧。
第五部分 測(cè)試驅(qū)動(dòng)開發(fā):TDD
紅色
綠色
重構(gòu)
模式
目標(biāo):理解測(cè)試驅(qū)動(dòng)開發(fā)的基本思想,掌握關(guān)鍵的開發(fā)技巧。
第六部分 設(shè)計(jì)模式與變遷
行為型模式
創(chuàng)建型模式
結(jié)構(gòu)型模式
目標(biāo):理解設(shè)計(jì)模式的基本內(nèi)容,掌握關(guān)鍵的重構(gòu)技巧。
第七部分 設(shè)計(jì)原則:“重構(gòu)怎么能沒有原則”?
開閉原則
里氏科夫替換原則
單一職責(zé)原則
接口隔離原則
依賴倒置原則
不要重復(fù)你自己原則
你不需要它原則
KISS原則行為型模式
目標(biāo):理解基本面向?qū)ο蟮脑O(shè)計(jì)原則,掌握結(jié)構(gòu)優(yōu)化的重構(gòu)技巧。
以上大綱僅用于羅列課程中的知識(shí)點(diǎn),在實(shí)際授課時(shí)將會(huì)穿插在實(shí)際案例里,并非完全按時(shí)間順序講解。
六、培訓(xùn)時(shí)間、地點(diǎn)
時(shí)間:2013年3月6日--3月8日 地點(diǎn):北京
七、證 書
培訓(xùn)結(jié)束,頒發(fā)由中科院計(jì)算所職業(yè)培訓(xùn)中心“軟件設(shè)計(jì)師”結(jié)業(yè)證書。
八、費(fèi) 用
培訓(xùn)費(fèi):4900元/人(含教材、證書、午餐、等)食宿統(tǒng)一安排,費(fèi)用自理。 |