工程師
互聯(lián)網(wǎng)
推薦課程
average > 0 ? $model->average . '分' : '10.0分' ?>

卓越程序員之優(yōu)秀的代碼質(zhì)量培訓(xùn)

K. Kang

開發(fā)部總監(jiān)

北京航空航天大學(xué),碩士。
畢業(yè)后即進(jìn)入北大方正進(jìn)行軟件開發(fā),先后在北大方正技術(shù)研究院、方正電子、方正電子政務(wù)科技有限公司、方正國際、明博教育科技有限公司工作,擔(dān)任高級程序員、高級系統(tǒng)分析員、系統(tǒng)架構(gòu)師、開發(fā)部總監(jiān)等職務(wù);擁有10多項(xiàng)國家發(fā)明專利。5年培訓(xùn)經(jīng)驗(yàn),主要從事企業(yè)IT軟件設(shè)計(jì)培訓(xùn)及咨詢。在安博教育等機(jī)構(gòu)任特聘講師,信產(chǎn)部計(jì)算機(jī)技術(shù)培訓(xùn)中心高級技術(shù)顧問,案例豐富,來源于實(shí)踐,從實(shí)際項(xiàng)目出發(fā),擅長用直白的語言說明復(fù)雜的原理。
一直在軟件的一線工作,在軟件設(shè)計(jì)及編碼上有豐富的經(jīng)驗(yàn),善于從實(shí)際出發(fā),將各種理論上的規(guī)范和技巧落地,變成實(shí)際項(xiàng)目開發(fā)中,易于接受和使用的原則和方式。在其帶領(lǐng)過的研發(fā)團(tuán)隊(duì)中,都以形成了良好的軟件風(fēng)格和高質(zhì)量的代碼而著稱??道蠋熢趯ο到y(tǒng)進(jìn)行劃分、子系統(tǒng)和類設(shè)計(jì)方面有豐富的經(jīng)驗(yàn),善于規(guī)劃系統(tǒng)職責(zé),在系統(tǒng)分析、架構(gòu)設(shè)計(jì)、模塊設(shè)計(jì),模塊職責(zé)分配等方面進(jìn)行合理的劃分及平衡有著深厚的功底和豐富的實(shí)踐經(jīng)驗(yàn)。
項(xiàng)目經(jīng)歷
具有15年從事IT行業(yè)的軟件開發(fā)、系統(tǒng)架構(gòu)設(shè)計(jì)與分析經(jīng)驗(yàn),熟悉中國企業(yè)的需求,經(jīng)歷過多種文化氛圍與組織形態(tài),對大型項(xiàng)目、系統(tǒng)工程管理有著深入的實(shí)踐與體會(huì)。且一直工作在大型軟件開發(fā)、系統(tǒng)架構(gòu)設(shè)計(jì)實(shí)際項(xiàng)目的第一線,主持過政府、金稅工程、中國軍隊(duì)(總參、總后、二炮)等機(jī)構(gòu)的復(fù)雜信息化項(xiàng)目設(shè)計(jì),在實(shí)際工作中積累了豐富的項(xiàng)目實(shí)際經(jīng)驗(yàn)和系統(tǒng)架構(gòu)設(shè)計(jì)分析經(jīng)驗(yàn)。主持過的項(xiàng)目包括奧運(yùn)首都機(jī)場奧運(yùn)福娃機(jī)器人項(xiàng)目;優(yōu)課數(shù)字化教學(xué)應(yīng)用系統(tǒng);美國外包項(xiàng)目、國稅總局金稅工程信息化項(xiàng)目;方正奧思多媒體創(chuàng)作工具;網(wǎng)絡(luò)雷達(dá)數(shù)據(jù)采集分析系統(tǒng);分布式電子圖書管理系統(tǒng)等。
近期授課經(jīng)歷

先后為IBM、洛基亞(8次)、艾默生、梅特勒.托利多、阿里軟件、京東、中國聯(lián)通、中國電信、用友軟件、中石油天然氣管道公司、中國移動(dòng)、恒生電子、西南電信、三五互聯(lián)、中金在線、浪潮集團(tuán)、海關(guān)總署、中國科學(xué)院計(jì)算機(jī)網(wǎng)絡(luò)信息中心、中國航天研究院、上海盛大網(wǎng)絡(luò)、上海證券研究所、上海攜程計(jì)算機(jī)、雅馬哈信息系統(tǒng)有限公司、廈門航空、通化鋼鐵集團(tuán)、總參、21世紀(jì)、南京大漢網(wǎng)絡(luò)、等近百家企事業(yè)單位。

北京航空航天大學(xué),碩士。 畢業(yè)后即進(jìn)入北大方正進(jìn)行軟件開發(fā),先后在北大方正技術(shù)研究院、方正電子、方正電子政務(wù)科技有限公司、方正國際、明博教育科技有限公司工作,擔(dān)任高級程序員、高級系統(tǒng)分析員、系統(tǒng)架構(gòu)師、開發(fā)部總監(jiān)等職務(wù);擁有10多項(xiàng)國家發(fā)明專利。5年培訓(xùn)經(jīng)驗(yàn),主要從事企業(yè)IT軟件設(shè)計(jì)培訓(xùn)及咨詢。在安博教育等機(jī)構(gòu)任特聘講師,信產(chǎn)部計(jì)算機(jī)技術(shù)培訓(xùn)中心高級技術(shù)顧問,案例豐富,來源于實(shí)踐,從實(shí)際項(xiàng)目出發(fā),擅長用直白的語言說明復(fù)雜的原理。 一直在軟件的一線工作,在軟件設(shè)計(jì)及編碼上有豐富的經(jīng)驗(yàn),善于從實(shí)際出發(fā),將各種理論上的規(guī)范和技巧落地,變成實(shí)際項(xiàng)目開發(fā)中,易于接受和使用的原則和方式。在其帶領(lǐng)過的研發(fā)團(tuán)隊(duì)中,都以形成了良好的軟件風(fēng)格和高質(zhì)量的代碼而著稱??道蠋熢趯ο到y(tǒng)進(jìn)行劃分、子系統(tǒng)和類設(shè)計(jì)方面有豐富的經(jīng)驗(yàn),善于規(guī)劃系統(tǒng)職責(zé),在系統(tǒng)分析、架構(gòu)設(shè)計(jì)、模塊設(shè)計(jì),模塊職責(zé)分配等方面進(jìn)行合理的劃分及平衡有著深厚的功底和豐富的實(shí)踐經(jīng)驗(yàn)。 項(xiàng)目經(jīng)歷 具有15年從事IT行業(yè)的軟件開發(fā)、系統(tǒng)架構(gòu)設(shè)計(jì)與分析經(jīng)驗(yàn),熟悉中國企業(yè)的需求,經(jīng)歷過多種文化氛圍與組織形態(tài),對大型項(xiàng)目、系統(tǒng)工程管理有著深入的實(shí)踐與體會(huì)。且一直工作在大型軟件開發(fā)、系統(tǒng)架構(gòu)設(shè)計(jì)實(shí)際項(xiàng)目的第一線,主持過政府、金稅工程、中國軍隊(duì)(總參、總后、二炮)等機(jī)構(gòu)的復(fù)雜信息化項(xiàng)目設(shè)計(jì),在實(shí)際工作中積累了豐富的項(xiàng)目實(shí)際經(jīng)驗(yàn)和系統(tǒng)架構(gòu)設(shè)計(jì)分析經(jīng)驗(yàn)。主持過的項(xiàng)目包括奧運(yùn)首都機(jī)場奧運(yùn)福娃機(jī)器人項(xiàng)目;優(yōu)課數(shù)字化教學(xué)應(yīng)用系統(tǒng);美國外包項(xiàng)目、國稅總局金稅工程信息化項(xiàng)目;方正奧思多媒體創(chuàng)作工具;網(wǎng)絡(luò)雷達(dá)數(shù)據(jù)采集分析系統(tǒng);分布式電子圖書管理系統(tǒng)等。 近期授課經(jīng)歷 先后為IBM、洛基亞(8次)、艾默生、梅特勒.托利多、阿里軟件、京東、中國聯(lián)通、中國電信、用友軟件、中石油天然氣管道公司、中國移動(dòng)、恒生電子、西南電信、三五互聯(lián)、中金在線、浪潮集團(tuán)、海關(guān)總署、中國科學(xué)院計(jì)算機(jī)網(wǎng)絡(luò)信息中心、中國航天研究院、上海盛大網(wǎng)絡(luò)、上海證券研究所、上海攜程計(jì)算機(jī)、雅馬哈信息系統(tǒng)有限公司、廈門航空、通化鋼鐵集團(tuán)、總參、21世紀(jì)、南京大漢網(wǎng)絡(luò)、等近百家企事業(yè)單位。

課程費(fèi)用

5800.00 /人

課程時(shí)長

2

成為教練

課程簡介

目標(biāo)收益

培訓(xùn)對象

課程內(nèi)容

讓軟件投入使用后的“折騰”期盡量縮短!
業(yè)界普遍認(rèn)為,軟件項(xiàng)目開發(fā)成本的70%取決于軟件開發(fā)人員個(gè)人的技能、經(jīng)驗(yàn)和工作習(xí)慣(《個(gè)體軟件過程的改進(jìn)》-張友生等)。因此,提高軟件研發(fā)人員的代碼能力,是軟件企業(yè)的立足之本!
軟件企業(yè)的開發(fā)成本在那里?一個(gè)中大規(guī)模的軟件,從其誕生、投入使用到最終穩(wěn)定,中間要經(jīng)過長時(shí)間的“折騰”期。在這個(gè)時(shí)期,軟件會(huì)出現(xiàn)無數(shù)的問題:不穩(wěn)定、隨即性的死機(jī)、數(shù)據(jù)庫連接丟失、不符合用戶的業(yè)務(wù)…,于是軟件被反復(fù)修改,好不容易穩(wěn)定一點(diǎn)了,為了適應(yīng)用戶的需求又必須做新的修改,于是新一輪的不穩(wěn)定再次出現(xiàn),軟件開發(fā)商為此投入了巨大的人力物力。最終一個(gè)中大型的軟件基本穩(wěn)定下來,需要經(jīng)過幾年的甚至十年以上的時(shí)間!一些軟件從此開始發(fā)揮其巨大的商業(yè)價(jià)值,但更多的軟件系統(tǒng),由于時(shí)間過長,面臨業(yè)務(wù)模型、技術(shù)落后的尷尬境地,于是,基于新框架的軟件被策劃出來,進(jìn)入了下一個(gè)誕生、投入使用、“折騰”、穩(wěn)定、推倒重來的過程。
如何緩解這樣的尷尬境地?從技術(shù)的角度,提高研發(fā)人員的代碼質(zhì)量是重中之重。大量的,大面積提高軟件軟發(fā)人員的軟件設(shè)計(jì)、編寫質(zhì)量,可大大縮短軟件開發(fā)完成后的穩(wěn)定期,做到只是為了適應(yīng)用戶的需求而修改,而非因?yàn)檐浖旧碣|(zhì)量不過關(guān)而反復(fù)修改;并且為適應(yīng)用戶需求所做的修改,也能保證修改本身的可靠性,且新修改不會(huì)導(dǎo)致已有代碼出現(xiàn)問題!
本課程的講師都是骨灰級的編碼高手,有近15年的一線軟件編碼經(jīng)驗(yàn),經(jīng)歷過大量的軟件產(chǎn)品、項(xiàng)目,經(jīng)歷過軟件研發(fā)中的種種磨練,對軟件穩(wěn)定性不佳造成的反復(fù)、結(jié)項(xiàng)一拖再拖、不得不長期泡在用戶現(xiàn)場等,有深刻的體會(huì)。我們收集了大量的案例,包括優(yōu)秀的設(shè)計(jì)編碼,和典型的不佳設(shè)計(jì),通過“魔鬼式訓(xùn)練”訓(xùn)練,大量的、反復(fù)式的練習(xí),強(qiáng)化提高程序員的代碼與編程能力,以此促進(jìn)企業(yè)軟件生產(chǎn)力水平的大幅度提高。
實(shí)踐證明,軟件的設(shè)計(jì)和編碼是有章可循的。本課程總結(jié)講師的總結(jié)了程序員非常易犯的若干種錯(cuò)誤,匯聚了軟件開發(fā)常見的常見策略、模式、原則,歸納為易于理解的編程實(shí)戰(zhàn)技巧,每種都通過大量的案例進(jìn)行強(qiáng)化訓(xùn)練,并用綜合案例加以貫穿,通過大量的真實(shí)案例,貫穿了設(shè)計(jì)、編碼、重構(gòu)、調(diào)試等整個(gè)軟件生命周期過程,詳細(xì)地介紹了各個(gè)階段需要注意的要點(diǎn)以及難點(diǎn),這些知識(shí)都是培訓(xùn)師十幾年編程經(jīng)驗(yàn)的總結(jié),如何避免重復(fù)犯錯(cuò),讓代碼更具健壯性。

課程大綱

第一單元
規(guī)范編碼與優(yōu)劣代碼的判定
內(nèi)容一:成為卓越的程序員----代碼能力及關(guān)鍵因素
軟件的核心是什么(市場?管理?技術(shù)?需求?銷售?測試?)
做一個(gè)優(yōu)秀的程序員并不簡單!
低頭看路與抬頭看天——理論與實(shí)踐的結(jié)合
優(yōu)秀代碼的評價(jià)標(biāo)準(zhǔn)
優(yōu)秀的代碼,而不僅是可以運(yùn)行的代碼
劣質(zhì)代碼的代價(jià)
內(nèi)容二:編碼規(guī)范
通用的編碼規(guī)范
C/C++/java/C#/編碼規(guī)范
內(nèi)容三:案例—通過實(shí)際項(xiàng)目演示優(yōu)秀的代碼及不佳代碼
介紹項(xiàng)目背景,展現(xiàn)設(shè)計(jì)細(xì)想
閱讀代碼指出代碼壞癥狀
重構(gòu)為優(yōu)秀的代碼,介紹重構(gòu)的思想及代碼對比
第二單元
整潔代碼之道
內(nèi)容一:代碼的壞味道—代碼的質(zhì)量底線
代碼壞味道概述
代碼壞味道——程序員與醫(yī)生的區(qū)別
代碼壞味道----低級篇(重復(fù)的代碼、過長的函數(shù)、過大的類、過長的參數(shù)列表、發(fā)散式變化、分散的修改)
代碼壞味道----中級篇(偽面向?qū)ο蟮恼{(diào)用、數(shù)據(jù)泥團(tuán)、基本類型的誤用、switch-case結(jié)構(gòu)的誤用、平行繼承體系、過薄的類、只有局部意義的成員變量)
代碼壞味道----高級篇(過度耦合的消息鏈、過薄的中間對象、緊耦合類、相似的類、只有數(shù)據(jù)的類、濫用類的繼承關(guān)系)
通過案例,讓學(xué)員尋找代碼壞味道
可以根據(jù)客戶現(xiàn)在的項(xiàng)目作為案例進(jìn)行現(xiàn)場分析,找出相應(yīng)的代碼壞味道
內(nèi)容二:某項(xiàng)目分析----重點(diǎn)了解現(xiàn)實(shí)項(xiàng)目代碼的充斥大量壞味道
介紹項(xiàng)目需求情況,閱讀現(xiàn)有代碼指出代碼壞癥狀
不看不知道,代碼到底有多爛—觸目驚心的代碼
通過重構(gòu)逐步改善代碼質(zhì)量
本案例學(xué)習(xí)多種代碼的整潔方案
第三單元
代碼質(zhì)量度量
內(nèi)容一:代碼質(zhì)量度量
代碼質(zhì)量的度量
通過分析多個(gè)實(shí)際項(xiàng)目,分別度量相關(guān)是否標(biāo)準(zhǔn)
內(nèi)容二:代碼評審
代碼評審前期準(zhǔn)備
代碼評審的代碼量
代碼評審的檢查表
代碼評審的總結(jié)與學(xué)習(xí)
通過案例分析如何做好代碼評審
第四單元
如何達(dá)到優(yōu)秀的設(shè)計(jì)
內(nèi)容一:什么是好的設(shè)計(jì)以及如何預(yù)先設(shè)計(jì)實(shí)現(xiàn)
什么是好的設(shè)計(jì)和衡量的手段
可擴(kuò)展性(Extensibility)容易添加新的功能. 結(jié)合案例,通過那些手段如何實(shí)現(xiàn)該目標(biāo)
靈活性(Flexibility)代碼修改平穩(wěn)地發(fā)生. 結(jié)合案例,通過那些手段如何實(shí)現(xiàn)該目標(biāo)
可插入性(Pluggability)容易將一個(gè)類抽出去,同時(shí)將另一個(gè)有同樣接口的類加入進(jìn)來. 結(jié)合案例,通過那些手段如何實(shí)現(xiàn)該目標(biāo)
軟件的變化分析---發(fā)現(xiàn)變化/封裝變化/隔離變化
分析真實(shí)項(xiàng)目,如何預(yù)先設(shè)計(jì),給我們哪些啟示,我們可以學(xué)習(xí)到什么
內(nèi)容二:代碼設(shè)計(jì)中的通用模式 (GRASP模式)
什么是GRASP設(shè)計(jì)原則
信息專家模式和應(yīng)用場景,以及案例分析
創(chuàng)建者模式和應(yīng)用場景,以及案例分析
創(chuàng)建者模式和應(yīng)用場景,以及案例分析
高內(nèi)聚/低耦合模式和應(yīng)用場景,以及案例分析
控制者模式和應(yīng)用場景,以及案例分析
多態(tài)/純虛構(gòu)模式和應(yīng)用場景,以及案例分析
間接/保護(hù)變量模式和應(yīng)用場景,以及案例分析
分析某個(gè)具體項(xiàng)目,如何設(shè)計(jì)重構(gòu),給我們哪些啟示,我們可以學(xué)習(xí)到什么
內(nèi)容四:案例—某項(xiàng)目設(shè)計(jì)思路分析
案例情況
演示如何發(fā)現(xiàn)設(shè)計(jì)壞味道,以及如何重構(gòu)
第一單元
規(guī)范編碼與優(yōu)劣代碼的判定
內(nèi)容一:成為卓越的程序員----代碼能力及關(guān)鍵因素
軟件的核心是什么(市場?管理?技術(shù)?需求?銷售?測試?)
做一個(gè)優(yōu)秀的程序員并不簡單!
低頭看路與抬頭看天——理論與實(shí)踐的結(jié)合
優(yōu)秀代碼的評價(jià)標(biāo)準(zhǔn)
優(yōu)秀的代碼,而不僅是可以運(yùn)行的代碼
劣質(zhì)代碼的代價(jià)
內(nèi)容二:編碼規(guī)范
通用的編碼規(guī)范
C/C++/java/C#/編碼規(guī)范
內(nèi)容三:案例—通過實(shí)際項(xiàng)目演示優(yōu)秀的代碼及不佳代碼
介紹項(xiàng)目背景,展現(xiàn)設(shè)計(jì)細(xì)想
閱讀代碼指出代碼壞癥狀
重構(gòu)為優(yōu)秀的代碼,介紹重構(gòu)的思想及代碼對比
第二單元
整潔代碼之道
內(nèi)容一:代碼的壞味道—代碼的質(zhì)量底線
代碼壞味道概述
代碼壞味道——程序員與醫(yī)生的區(qū)別
代碼壞味道----低級篇(重復(fù)的代碼、過長的函數(shù)、過大的類、過長的參數(shù)列表、發(fā)散式變化、分散的修改)
代碼壞味道----中級篇(偽面向?qū)ο蟮恼{(diào)用、數(shù)據(jù)泥團(tuán)、基本類型的誤用、switch-case結(jié)構(gòu)的誤用、平行繼承體系、過薄的類、只有局部意義的成員變量)
代碼壞味道----高級篇(過度耦合的消息鏈、過薄的中間對象、緊耦合類、相似的類、只有數(shù)據(jù)的類、濫用類的繼承關(guān)系)
通過案例,讓學(xué)員尋找代碼壞味道
可以根據(jù)客戶現(xiàn)在的項(xiàng)目作為案例進(jìn)行現(xiàn)場分析,找出相應(yīng)的代碼壞味道
內(nèi)容二:某項(xiàng)目分析----重點(diǎn)了解現(xiàn)實(shí)項(xiàng)目代碼的充斥大量壞味道
介紹項(xiàng)目需求情況,閱讀現(xiàn)有代碼指出代碼壞癥狀
不看不知道,代碼到底有多爛—觸目驚心的代碼
通過重構(gòu)逐步改善代碼質(zhì)量
本案例學(xué)習(xí)多種代碼的整潔方案
第三單元
代碼質(zhì)量度量
內(nèi)容一:代碼質(zhì)量度量
代碼質(zhì)量的度量
通過分析多個(gè)實(shí)際項(xiàng)目,分別度量相關(guān)是否標(biāo)準(zhǔn)
內(nèi)容二:代碼評審
代碼評審前期準(zhǔn)備
代碼評審的代碼量
代碼評審的檢查表
代碼評審的總結(jié)與學(xué)習(xí)
通過案例分析如何做好代碼評審
第四單元
如何達(dá)到優(yōu)秀的設(shè)計(jì)
內(nèi)容一:什么是好的設(shè)計(jì)以及如何預(yù)先設(shè)計(jì)實(shí)現(xiàn)
什么是好的設(shè)計(jì)和衡量的手段
可擴(kuò)展性(Extensibility)容易添加新的功能. 結(jié)合案例,通過那些手段如何實(shí)現(xiàn)該目標(biāo)
靈活性(Flexibility)代碼修改平穩(wěn)地發(fā)生. 結(jié)合案例,通過那些手段如何實(shí)現(xiàn)該目標(biāo)
可插入性(Pluggability)容易將一個(gè)類抽出去,同時(shí)將另一個(gè)有同樣接口的類加入進(jìn)來. 結(jié)合案例,通過那些手段如何實(shí)現(xiàn)該目標(biāo)
軟件的變化分析---發(fā)現(xiàn)變化/封裝變化/隔離變化
分析真實(shí)項(xiàng)目,如何預(yù)先設(shè)計(jì),給我們哪些啟示,我們可以學(xué)習(xí)到什么
內(nèi)容二:代碼設(shè)計(jì)中的通用模式 (GRASP模式)
什么是GRASP設(shè)計(jì)原則
信息專家模式和應(yīng)用場景,以及案例分析
創(chuàng)建者模式和應(yīng)用場景,以及案例分析
創(chuàng)建者模式和應(yīng)用場景,以及案例分析
高內(nèi)聚/低耦合模式和應(yīng)用場景,以及案例分析
控制者模式和應(yīng)用場景,以及案例分析
多態(tài)/純虛構(gòu)模式和應(yīng)用場景,以及案例分析
間接/保護(hù)變量模式和應(yīng)用場景,以及案例分析
分析某個(gè)具體項(xiàng)目,如何設(shè)計(jì)重構(gòu),給我們哪些啟示,我們可以學(xué)習(xí)到什么
內(nèi)容四:案例—某項(xiàng)目設(shè)計(jì)思路分析
案例情況
演示如何發(fā)現(xiàn)設(shè)計(jì)壞味道,以及如何重構(gòu)

活動(dòng)詳情

提交需求