開發(fā)經(jīng)理
其他
軟件設(shè)計(jì)
推薦課程
average > 0 ? $model->average . '分' : '10.0分' ?>

高級(jí)軟件設(shè)計(jì)訓(xùn)練營

劉老師

高級(jí)系統(tǒng)架構(gòu)師,敏捷技術(shù)教練

技術(shù)咨詢師,擁有10多年大型軟件系統(tǒng)研發(fā)與架構(gòu)經(jīng)驗(yàn)。曾服務(wù)于阿里巴巴-菜鳥網(wǎng)絡(luò),擔(dān)任軟件架構(gòu)師。

目前,供職于中興通訊技術(shù)規(guī)劃部,任高級(jí)系統(tǒng)架構(gòu)師,負(fù)責(zé)AI(人工智能)平臺(tái)的架構(gòu)與設(shè)計(jì),關(guān)注深度學(xué)習(xí)領(lǐng)域的相關(guān)算法研究,及其系統(tǒng)架構(gòu)與優(yōu)化相關(guān)工作。

擅長遺留軟件系統(tǒng)的重構(gòu)與優(yōu)化,對(duì)XP(極限編程),OO(面向?qū)ο笤O(shè)計(jì)),F(xiàn)P(函數(shù)式設(shè)計(jì)),DDD(領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)),DSL(領(lǐng)域描述語言)等相關(guān)技術(shù)具有濃厚的興趣。

? 簡書:http://www.jianshu.com/u/49d1f3b7049e
? Github:https://github.com/horance-liu

技術(shù)咨詢師,擁有10多年大型軟件系統(tǒng)研發(fā)與架構(gòu)經(jīng)驗(yàn)。曾服務(wù)于阿里巴巴-菜鳥網(wǎng)絡(luò),擔(dān)任軟件架構(gòu)師。 目前,供職于中興通訊技術(shù)規(guī)劃部,任高級(jí)系統(tǒng)架構(gòu)師,負(fù)責(zé)AI(人工智能)平臺(tái)的架構(gòu)與設(shè)計(jì),關(guān)注深度學(xué)習(xí)領(lǐng)域的相關(guān)算法研究,及其系統(tǒng)架構(gòu)與優(yōu)化相關(guān)工作。 擅長遺留軟件系統(tǒng)的重構(gòu)與優(yōu)化,對(duì)XP(極限編程),OO(面向?qū)ο笤O(shè)計(jì)),F(xiàn)P(函數(shù)式設(shè)計(jì)),DDD(領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)),DSL(領(lǐng)域描述語言)等相關(guān)技術(shù)具有濃厚的興趣。 ? 簡書:http://www.jianshu.com/u/49d1f3b7049e ? Github:https://github.com/horance-liu

課程費(fèi)用

5800.00 /人

課程時(shí)長

2

成為教練

課程簡介

「高級(jí)軟件設(shè)計(jì)訓(xùn)練營」是一個(gè)理論與實(shí)踐相結(jié)合的課程,闡述軟件設(shè)計(jì)的基本原則、模式與實(shí)踐的基本理論與實(shí)踐應(yīng)用,重點(diǎn)關(guān)注演進(jìn)式設(shè)計(jì)的基本過程。

目標(biāo)收益

a) 「高級(jí)軟件設(shè)計(jì)訓(xùn)練營」倡導(dǎo)整潔代碼的基本實(shí)踐,重點(diǎn)關(guān)注程序設(shè)計(jì)語言的最佳實(shí)踐、習(xí)慣用法及其實(shí)現(xiàn)模式的實(shí)踐與應(yīng)用;
b) 「高級(jí)軟件設(shè)計(jì)訓(xùn)練營」不僅包含面向?qū)ο蟮脑O(shè)計(jì)思維,也倡導(dǎo)函數(shù)式的設(shè)計(jì)思維;重點(diǎn)關(guān)注抽象,組合等通用的軟件設(shè)計(jì)技術(shù)。

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

a) 具有1年及以上工作經(jīng)驗(yàn),并期望掌握面向?qū)ο?,函?shù)式,極限編程,DSL(領(lǐng)域描述語言),DDD(領(lǐng)域驅(qū)動(dòng)設(shè)計(jì))相關(guān)技術(shù)的的研發(fā)工程師,系統(tǒng)工程師,架構(gòu)師。

課程大綱

第一單元:
軟件設(shè)計(jì)綜述
一、 理論部分
1. 闡述軟件設(shè)計(jì)的基本目標(biāo)、過程;
2. 闡述敏捷軟件開發(fā)的基本理念和價(jià)值觀;
3. 闡述極限編程的基本方法論;
4. 闡述演進(jìn)式設(shè)計(jì)的基本理論與實(shí)踐應(yīng)用。

二、 實(shí)踐部分
1. 探討研發(fā)過程存在的痛點(diǎn);
2. 探討研發(fā)過程的改進(jìn)方案。
第二單元
面向?qū)ο蠹夹g(shù)
一、 封裝
1. 封裝的意圖;
2. 數(shù)據(jù)VS算法
3. Tell, Don’t Ask
4. 封裝對(duì)設(shè)計(jì)的改善(示例)
- Option

二、 繼承與Mixin
1. 繼承的種類
2. 單繼承與多繼承
3. 私有繼承
4. Mixin機(jī)制

三、 多態(tài)
1. 多態(tài)的形態(tài)
2. 重載
3. 繼承多態(tài)
4. 類型多態(tài)

四、 設(shè)計(jì)模式
1. 構(gòu)造型
2. 結(jié)構(gòu)型
3. 行為型
4. 反模式
5. 重構(gòu)與模式

五、 實(shí)踐面向?qū)ο?(FizzBuzzWhizz為例)
1. 實(shí)踐需求挖掘的基本方法與技術(shù);
2. 實(shí)踐故事拆分的基本方法與技術(shù);
3. 掌握TDD的基本能力;
4. 培養(yǎng)設(shè)計(jì)壞味道的基本嗅覺能力,及其重構(gòu)的基本技術(shù);
5. 培養(yǎng)設(shè)計(jì)整潔代碼的習(xí)慣;
6. 培養(yǎng)簡單設(shè)計(jì)的基本思維模式;
第三單元:
整潔代碼
一、 整潔代碼的藝術(shù)
1. 整潔代碼的思想流派
2. 童子軍規(guī)

二、 命名
1. 名副其實(shí)
2. 常見命名模式
3. 反例

三、 函數(shù)
1. 單一職責(zé):只做一件事,并將其做好
2. 同一抽象層次
3. 無副作用
4. DRY:不要重復(fù)自己

四、 注釋
1. 糟糕的注釋
2. 必要的注釋

五、 格式
1. 縮進(jìn)與排版
2. 風(fēng)格
3. 模板

六、 對(duì)象
1. 信息隱藏
2. 迪米特法則

七、 異常
1. 異常VS錯(cuò)誤碼
2. 資源釋放

八、 邊界
1. 隔離和控制依賴
2. 適配器
3. 倒置依賴

九、 測試
1. 整潔的測試
2. TDD三定律

十、 類
1. SOLID
2. 上帝類
第四單元:
軟件設(shè)計(jì)原則
一、 SOLID設(shè)計(jì)原則
1. SRP:單一職責(zé)
2. OCP:開放封閉
3. LSP:里氏替換
4. ISP:接口隔離
5. DIP:倒置依賴

二、 正交設(shè)計(jì)原則
1. 消除重復(fù)
2. 分離變化的原因
3. 縮小依賴范圍
4. 向穩(wěn)定的方向依賴

三、 簡單設(shè)計(jì)原則
1. 通過測試
2. 沒有重復(fù)
3. 揭示意圖
4. 沒有冗余

四、 總括
1. 局部性原則
2. 高內(nèi)聚、低耦合

五、實(shí)戰(zhàn)正交設(shè)計(jì)(以Hamcrest為例)
第一單元:
軟件設(shè)計(jì)綜述

一、 理論部分
1. 闡述軟件設(shè)計(jì)的基本目標(biāo)、過程;
2. 闡述敏捷軟件開發(fā)的基本理念和價(jià)值觀;
3. 闡述極限編程的基本方法論;
4. 闡述演進(jìn)式設(shè)計(jì)的基本理論與實(shí)踐應(yīng)用。

二、 實(shí)踐部分
1. 探討研發(fā)過程存在的痛點(diǎn);
2. 探討研發(fā)過程的改進(jìn)方案。
第二單元
面向?qū)ο蠹夹g(shù)

一、 封裝
1. 封裝的意圖;
2. 數(shù)據(jù)VS算法
3. Tell, Don’t Ask
4. 封裝對(duì)設(shè)計(jì)的改善(示例)
- Option

二、 繼承與Mixin
1. 繼承的種類
2. 單繼承與多繼承
3. 私有繼承
4. Mixin機(jī)制

三、 多態(tài)
1. 多態(tài)的形態(tài)
2. 重載
3. 繼承多態(tài)
4. 類型多態(tài)

四、 設(shè)計(jì)模式
1. 構(gòu)造型
2. 結(jié)構(gòu)型
3. 行為型
4. 反模式
5. 重構(gòu)與模式

五、 實(shí)踐面向?qū)ο?(FizzBuzzWhizz為例)
1. 實(shí)踐需求挖掘的基本方法與技術(shù);
2. 實(shí)踐故事拆分的基本方法與技術(shù);
3. 掌握TDD的基本能力;
4. 培養(yǎng)設(shè)計(jì)壞味道的基本嗅覺能力,及其重構(gòu)的基本技術(shù);
5. 培養(yǎng)設(shè)計(jì)整潔代碼的習(xí)慣;
6. 培養(yǎng)簡單設(shè)計(jì)的基本思維模式;
第三單元:
整潔代碼

一、 整潔代碼的藝術(shù)
1. 整潔代碼的思想流派
2. 童子軍規(guī)

二、 命名
1. 名副其實(shí)
2. 常見命名模式
3. 反例

三、 函數(shù)
1. 單一職責(zé):只做一件事,并將其做好
2. 同一抽象層次
3. 無副作用
4. DRY:不要重復(fù)自己

四、 注釋
1. 糟糕的注釋
2. 必要的注釋

五、 格式
1. 縮進(jìn)與排版
2. 風(fēng)格
3. 模板

六、 對(duì)象
1. 信息隱藏
2. 迪米特法則

七、 異常
1. 異常VS錯(cuò)誤碼
2. 資源釋放

八、 邊界
1. 隔離和控制依賴
2. 適配器
3. 倒置依賴

九、 測試
1. 整潔的測試
2. TDD三定律

十、 類
1. SOLID
2. 上帝類
第四單元:
軟件設(shè)計(jì)原則

一、 SOLID設(shè)計(jì)原則
1. SRP:單一職責(zé)
2. OCP:開放封閉
3. LSP:里氏替換
4. ISP:接口隔離
5. DIP:倒置依賴

二、 正交設(shè)計(jì)原則
1. 消除重復(fù)
2. 分離變化的原因
3. 縮小依賴范圍
4. 向穩(wěn)定的方向依賴

三、 簡單設(shè)計(jì)原則
1. 通過測試
2. 沒有重復(fù)
3. 揭示意圖
4. 沒有冗余

四、 總括
1. 局部性原則
2. 高內(nèi)聚、低耦合

五、實(shí)戰(zhàn)正交設(shè)計(jì)(以Hamcrest為例)

課程費(fèi)用

5800.00 /人

課程時(shí)長

2

預(yù)約體驗(yàn)票 我要分享

近期公開課推薦

近期公開課推薦

活動(dòng)詳情

提交需求