重構(gòu)高級(jí)培訓(xùn)
?
培訓(xùn)對(duì)象
各類軟件企業(yè)和研發(fā)中心的程序員、軟件設(shè)計(jì)師、架構(gòu)師, 項(xiàng)目經(jīng)理,質(zhì)量部門員工。
如果你已經(jīng)多年不寫(xiě)代碼,最好不要參加,本課程面向一線還在編程的程序員/設(shè)計(jì)師/架構(gòu)師
如果你不認(rèn)為寫(xiě)好代碼是一件重要,困難并且有趣的事情,請(qǐng)你不要參加. 本課程面向追求卓越的程序員.
如果你不重視代碼質(zhì)量, 最好不要參加. 本課程面向重視代碼質(zhì)量的管理者.
對(duì)于重構(gòu)技術(shù)懷有疑問(wèn)和困惑,需要梳理解答的團(tuán)隊(duì)和個(gè)人.
?
學(xué)員基礎(chǔ)
學(xué)員學(xué)習(xí)本次重構(gòu)高級(jí)培訓(xùn)杭州班課程應(yīng)具備下列基礎(chǔ)知識(shí):
了解Java/C#或者C++任一面向?qū)ο笳Z(yǔ)言,
具有面向?qū)ο蠡靖拍?熟悉基本設(shè)計(jì)模式
?
培訓(xùn)內(nèi)容
主要包含以下幾個(gè)方面的內(nèi)容:
1、結(jié)合多個(gè)項(xiàng)目案例進(jìn)行分析。
2、重構(gòu)技術(shù):軟件并不是在一開(kāi)始就可以設(shè)計(jì)的完美無(wú)缺,因此必須經(jīng)過(guò)不斷的重構(gòu)進(jìn)行改善,重構(gòu)是實(shí)現(xiàn)優(yōu)秀設(shè)計(jì)的一種重要手段
3、 代碼壞味道: 介紹常見(jiàn)的糟糕的代碼壞味道,以告誡學(xué)員,今后如何避免出現(xiàn)這樣的拙劣代碼。這是21條代碼基本要求,是代碼管理的最低要求,可以接受的底線.
4、代碼管理:項(xiàng)目管理者和質(zhì)量管理部門,如何組織代碼評(píng)審,代碼審查,如果通過(guò)代碼評(píng)審,提高設(shè)計(jì)能力。
5、 重構(gòu)到模式: 模式的應(yīng)用是一個(gè)漸進(jìn)演變的過(guò)程, 壞味道也不是一開(kāi)始就出現(xiàn)的.如果在一開(kāi)始就想到用某某模式, 有時(shí)很可能導(dǎo)致設(shè)計(jì)過(guò)度.重構(gòu)與模式有一種天然的關(guān)系. 重構(gòu)是手段, 模式是目的, 同時(shí)模式也為重構(gòu)指明了方向和原則.通過(guò)案例分析設(shè)計(jì)模式是如何演進(jìn)/重構(gòu)出來(lái)的
6、 單元測(cè)試: 介紹如何使用XUnit進(jìn)行單元測(cè)試,如何更高效地撰寫(xiě)bug更少的代碼如何在團(tuán)隊(duì)中高效地進(jìn)行測(cè)試,設(shè)計(jì)具有易測(cè)性的軟件等等。
7、 代碼質(zhì)量度量: 結(jié)合和完善Logiscope和McCabe兩種軟件度量體系,選取出依據(jù)軟件程序代碼的可量化測(cè)量,建立代碼質(zhì)量度量評(píng)估模型.有助于軟件的量化評(píng)價(jià),為質(zhì)量管理人員了解軟件質(zhì)量水平、軟件設(shè)計(jì)師改進(jìn)軟件程序質(zhì)量,提供量化的客觀依據(jù).
8、 持續(xù)集成和靜態(tài)分析工具: 介紹持續(xù)集成基本原則和工具,以及應(yīng)用最佳實(shí)踐。同時(shí)介紹業(yè)界大量使用代碼靜態(tài)分析工具,以便在編碼階段就能夠找出可能的編碼缺陷和壞味道。
9、 設(shè)計(jì)重構(gòu): 介紹什么是好的設(shè)計(jì)特征,如何實(shí)現(xiàn)優(yōu)秀設(shè)計(jì).以及敏捷設(shè)計(jì)思想(演化設(shè)計(jì))與重構(gòu).
10、 架構(gòu)重構(gòu): 由于軟件應(yīng)對(duì)需求變化的能力越來(lái)越差,通過(guò)重構(gòu)架構(gòu)進(jìn)行軟件重建的做法變得越來(lái)越有吸引力。如何進(jìn)行架構(gòu)重構(gòu),怎樣重構(gòu)等.
?
?
?