課程描述INTRODUCTION
北京軟件開發(fā)培訓(xùn)
· 項(xiàng)目經(jīng)理· 技術(shù)總監(jiān)· 軟件工程師
日程安排SCHEDULE
課程大綱Syllabus
課程背景
本課程分析了代碼腐化的原因,并為代碼腐化開出藥方:優(yōu)先改變代碼的實(shí)現(xiàn)者“人”,再輔以質(zhì)量保證活動和自動化檢查工具。從改變“人”的思想和提升“人”的開發(fā)能力兩方面,傳授了眾多技巧。講解了幾種軟件質(zhì)量“自動化檢查工具”的使用方法。推介了幾種“質(zhì)量保證實(shí)踐活動”。
【課程收益】
讓程序員獲得主動優(yōu)化代碼的內(nèi)心動力,并學(xué)會開發(fā)優(yōu)質(zhì)代碼的各種能力。
讓軟件架構(gòu)師、設(shè)計(jì)人員具備模塊化程序設(shè)計(jì)能力。
讓測試人員了解先進(jìn)的自動化測試工具,降低大量回歸測試的人力和時(shí)間成本。
讓項(xiàng)目經(jīng)理了解“敏捷開發(fā)”中推崇的質(zhì)量保證實(shí)踐活動。
【課程大綱】
一、引子
主題一:代碼變爛的原因和代價(jià)
1、代碼腐化的4個(gè)原因
2、技術(shù)債務(wù)
3、被技術(shù)債務(wù)拖垮的巨頭公司
主題二:重新認(rèn)識代碼質(zhì)量管理
1、重新認(rèn)知軟件成本
2、重新認(rèn)知軟件質(zhì)量
3、代碼腐化的根本原因—“代碼內(nèi)部質(zhì)量”管理缺失管理
(1)優(yōu)先改變“人”
(2)其次使用“流程和工具”
二、提升開發(fā)人員的技能
主題三:改變開發(fā)人員的思想
1、從中興的案例說起
2、來自*程序員的反例
3、重建代碼價(jià)值觀
4、童子軍軍規(guī)―讓營地比你來時(shí)更干凈
主題四:框架設(shè)計(jì)能力—模塊化程序設(shè)計(jì)
1、 什么是模塊?
2、 什么是好模塊?
3、 模塊接口設(shè)計(jì)
4、 “C語言”模塊怎么組包
5、模塊第1大殺手—全局變量
6、模塊第2大殺手—循環(huán)依賴
主題五:腐化代碼的感知能力—嗅出代碼的壞味道
1、重復(fù)的代碼
2、含糊不清的命名
3、過長的函數(shù)
4、過長的參數(shù)列表
5、過度復(fù)雜的條件邏輯
6、散彈式修改
7、發(fā)散式變化
8、過多的注釋
9、夸夸其談未來性
主題六:納米級架構(gòu)設(shè)計(jì)能力—函數(shù)封裝
1、創(chuàng)建函數(shù)的理由
2、高質(zhì)量函數(shù)的三原則
3、多創(chuàng)建助手函數(shù)
主題七:語句編寫能力—函數(shù)內(nèi)部優(yōu)化
1、馴服深層嵌套
2、消除魔鬼數(shù)字
3、優(yōu)化循環(huán)
4、優(yōu)化變量
5、簡化表達(dá)式
6、縮短參數(shù)列表
主題八:規(guī)避Bug的能力—規(guī)避C語言陷阱
1、頭文件陷阱與規(guī)避辦法
2、指針陷阱與規(guī)避辦法
3、宏定義陷阱與規(guī)避辦法
4、運(yùn)算符陷阱與規(guī)避辦法
5、語句陷阱與規(guī)避辦法
6、內(nèi)存陷阱與規(guī)避辦法
主題九:可讀性代碼編寫能力—提高代碼可讀性
1、排版
2、命名—自注釋
3、精煉的注釋
三、自動化質(zhì)量檢測工具與
軟件質(zhì)量保證活動
主題十:自動化質(zhì)量檢測工具
1、代碼內(nèi)部質(zhì)量評判工具―SourceMonitor
2、靜態(tài)語法檢測工具―PC-Lint
3、持續(xù)集成工具―自動化檢測與測試
(1)CrusieControl
(2)Sonar
主題十一:軟件質(zhì)量保證活動
1、質(zhì)量保證的基礎(chǔ):“持續(xù)集成”構(gòu)建成功
2、代碼走查
3、結(jié)對編程
4、自動化測試
5、測試用例評審
【講師介紹】
張老師,具有多年嵌入式軟件開發(fā)、設(shè)計(jì)和管理經(jīng)驗(yàn),曾在華為和科陸公司擔(dān)任高級軟件工程師、系統(tǒng)工程師、敏捷教練、CMMI設(shè)計(jì)組組長等職務(wù)。主要擅長敏捷實(shí)踐在各領(lǐng)域的應(yīng)用,包括代碼持續(xù)優(yōu)化與重構(gòu)、嵌入式C語言架構(gòu)設(shè)計(jì)與自動化測試、C#軟件架構(gòu)設(shè)計(jì)與自動化測試。精通面向?qū)ο笤O(shè)計(jì)技術(shù)以及設(shè)計(jì)模式運(yùn)用。同時(shí)在項(xiàng)目管理尤其是敏捷軟件管理方面具有豐富的經(jīng)驗(yàn)。
轉(zhuǎn)載:http://szsxbj.com/gkk_detail/11185.html
已開課時(shí)間Have start time
產(chǎn)品管理內(nèi)訓(xùn)
- 集成產(chǎn)品開發(fā)IPD核心理念 何重軍
- 《基于系統(tǒng)工程萃智(TRI 何重軍
- 《向華為學(xué)管理——企業(yè)新產(chǎn) 何重軍
- 《華為產(chǎn)品開發(fā)管理高研班: 何重軍
- 《to C-產(chǎn)品孵化創(chuàng)新及 翟紅亮
- 《B端-產(chǎn)品設(shè)計(jì)管理能力提 翟紅亮
- 《產(chǎn)品經(jīng)理核心能力修煉》 何重軍
- 服務(wù)宣傳與產(chǎn)品推廣 李璐
- 產(chǎn)品設(shè)計(jì)和產(chǎn)品運(yùn)營人員綜合 鐘理勇
- 《產(chǎn)品生命周期管理流程及方 何重軍
- 行業(yè)客戶產(chǎn)品的設(shè)計(jì)、銷售與 陳文業(yè)
- 《匠人精神-打造產(chǎn)品質(zhì)量優(yōu) 劉艷萍