課程簡介
【課程形式】
本課程將會采用全程Code Kata的學習方式。每 2 名成員會自發(fā)形成一個作戰(zhàn)單元,每個作戰(zhàn)單元都會有自己指定的“作戰(zhàn)區(qū)域”和“武器裝備”。我們將共同穿越那些危險重重的“編程陷阱”和“開發(fā)沼澤”,這包括“場景再現(xiàn)”、“Code Kata”、“復盤總結(jié)”三個部分:
“場景再現(xiàn)”環(huán)節(jié)。由 教練扮演“駕駛員”和“領(lǐng)航員”角色,模擬演練在實際開發(fā)場景中的編程實踐。
每2位開發(fā)者,共同組建結(jié)對伙伴(其間2位教練會作為開發(fā)者參與隨機分配),完成一個“番茄鐘”的“Code Kata”練習。
“復盤總結(jié)”,繪制知識體系雷達圖。
讓那些真正來自一線的編程實踐(ATDD + TDD + TOOLS + PAIR PROGRAMMING + REFACTOR + DESIGN PATTERNS)融入我們的血液,成為我們身體中的一部分。
我們來自開發(fā)實戰(zhàn)一線,我們是“ Programming Samurai”。
【培訓對象】
注重實效的開發(fā)人員、開發(fā)工程師、開發(fā)團隊負責人等。
【培訓內(nèi)容】
時間 |
場景再現(xiàn) |
Workshop/Code Kata |
第一天 |
面向?qū)ο缶幊膛c實戰(zhàn)方法 |
|
面向?qū)ο蟮闹R地圖 |
面向?qū)ο蟮脑瓌t ① ISOLD原則(Single Responsibility原則,Open Closed原則,Liskov Substitution原則,Interface Segregation原則,Dependency Inversion原則) ② DRY原則 ③ … 面向?qū)ο蟮哪J脚c方法 ④ 模式(架構(gòu)模式、分析模式、設(shè)計模式、實現(xiàn)模式) ⑤ 方法:TDD、UDD、DDD、FDD、BDD… 面向?qū)ο蟮膶嵺`與工具 ⑥ 實踐(Pair Programming、Unit Test、Refactor…) ⑦ 工具(XUnit、Mock、Git、Maven、Jenkins…) |
|
三個基本元素 |
角色、職責、協(xié)作 |
|
用例驅(qū)動開發(fā) |
面向?qū)ο蟮能浖_發(fā) 角色、職責、協(xié)作 UML與OOAD 設(shè)計畫布 四色建模法 健壯性分析圖法 CRC卡片法 |
Workshop:E-learning 繪制用例圖 用戶故事 粒度與層次 場景 設(shè)計畫布 角色、職責、協(xié)作 |
驗收測試驅(qū)動開發(fā) |
實例化需求 場景驅(qū)動設(shè)計 行為驅(qū)動開發(fā) 使用Cucumber 確定角色、職責、協(xié)作 |
Kata_01:Order Payment 從故事開始 基于文本的自動化 基于Gherkin語法 Given、When、Then、And、But 富有表現(xiàn)力的場景 組織代碼 角色、職責、協(xié)作 |
測試驅(qū)動開發(fā) |
基本匠藝實踐 紅色 綠色 藍色 TDD三項法則 F.R.I.S.T |
Kata_02:Currency 尋找結(jié)對伙伴 選取用戶故事 編寫測試用例 紅色->綠色->藍色 偽實現(xiàn) 顯明實現(xiàn) 三角法 |
第二天 |
重構(gòu)與設(shè)計模式 |
|
三個基本手法 |
抽象、封裝、多態(tài) |
|
重構(gòu)工具箱 |
腐爛的代碼 識別壞味道 應(yīng)用重構(gòu)技法 小步前進 Clean Code |
Kata_03:Trainning 實現(xiàn)功能的代碼 識別代碼壞味道 重構(gòu)手法運用 重構(gòu)導向模式 繪制重構(gòu)地圖 |
重構(gòu)導向模式 |
可讀性好的代碼 由異味導向的重構(gòu) 由原則導向的重構(gòu) 應(yīng)用設(shè)計模式 抽象變化點 封裝職責 利用多態(tài)進行解耦 |
Kata_04:iCourse 重構(gòu)到策略模式 重構(gòu)到工廠模式 重構(gòu)到命令模式 重構(gòu)到模板模式 重構(gòu)到職責鏈模式 重構(gòu)到適配器模式 重構(gòu)到MVC框架 |
解構(gòu)設(shè)計模式 |
識別變化點 關(guān)注點分離 職責的抽離 封裝變化點 三種封裝手法 依賴解耦 組合還是多態(tài) |
|
設(shè)計的原本 |
|
【培訓師】
由業(yè)界知名的架構(gòu)師、自稱“小程序員”的姜老師親自授課:
姜老師 線下交流組織“設(shè)計匠藝”核心小組成員、線上“產(chǎn)品經(jīng)理俱樂部”組織者,開源項目AgileUML的提交者,曾拿過IBM兩個獎項,于05、09年先后在863國家數(shù)字油田的項目中任“架構(gòu)師”。目前正在抓緊完成在線Code Kata網(wǎng)站iDojo的編碼。喜歡線下技術(shù)活動的各種交流和分享,熱衷于實用主義和敏捷開發(fā)技術(shù)。
【培訓時間、地點】
地點:北京
【證書】
培訓結(jié)束,頒發(fā)中科院計算所職業(yè)培訓中心“測試驅(qū)動開發(fā)與軟件重構(gòu)”結(jié)業(yè)證書。
【費用】
培訓費:5500元/人,住宿協(xié)助安排,費用自理。
開設(shè)班級
班級 | 開班時間 | 上課地點 | 學費 | 試聽/報名 |
---|---|---|---|---|
中關(guān)村校區(qū)/ 面授 | 滾動開班 | 北京海淀中關(guān)村958樓中科天博大廈 | 咨詢 | 報名 |
“數(shù)據(jù)倉庫與數(shù)據(jù)挖掘”培訓課程
數(shù)據(jù)倉庫管理人員、建模人員,分析人員和開發(fā)人員、系統(tǒng)管理人員、數(shù)據(jù)庫管理人員以及對數(shù)據(jù)倉庫感興趣的其他人員。GJB5000A-2008軍用軟件研制 能力成熟度模型培訓班
科研院所、部隊、參與軍用軟件開發(fā)的各機構(gòu)質(zhì)量部門負責人、產(chǎn)品研發(fā)與項目負責人以及主要技術(shù)人員。