淺談項(xiàng)目管理中該如何review與重構(gòu)
本文之前的內(nèi)容,請(qǐng)?jiān)L問《我們?nèi)绾伍_始對(duì)項(xiàng)目進(jìn)行管理:文檔很重要》和《我們?nèi)绾伍_始對(duì)項(xiàng)目進(jìn)行管理:需要什么樣的人》
(五)review和重構(gòu)
說到review,有些筒子可能立刻就想到了:吵架。確實(shí),有的時(shí)候review真的可能演變成吵架,但是我們?yōu)榱隧?xiàng)目的成功,這個(gè)風(fēng)險(xiǎn)一定要冒,慢慢成熟以后,被人批評(píng)的次數(shù)多了,臉皮厚點(diǎn)兒就好了。;)玩笑歸玩笑,review確實(shí)是需要技巧的:在review別人的代碼時(shí),要注意你的話語有時(shí)會(huì)傷害別人的自尊心,讓別人覺得你是在雞蛋里頭挑骨頭;在別人review你的代碼時(shí),同樣的你也會(huì)覺得別人是在雞蛋里頭挑骨頭,傷害你的自尊心。這里我也沒有太多的技巧可言,一句話,換位思考,臉皮厚點(diǎn)兒吧。哈。
Review可能分成以下幾種:
1, 設(shè)計(jì)的review。說起review大家更多想到的是大家坐在一起邊侃大山邊看別人的代碼,其實(shí)設(shè)計(jì)的review是更加重要的和更加高級(jí)的,也是更有價(jià)值的,問題發(fā)現(xiàn)的早解決的代價(jià)就小嘛。在review別人或者自己的設(shè)計(jì)時(shí),我們都能學(xué)到別人的設(shè)計(jì)理念,方法和技巧,這能大大提高團(tuán)隊(duì)成員的能力。項(xiàng)目中的技術(shù)牛人,項(xiàng)目經(jīng)理和技術(shù)骨干應(yīng)該作為設(shè)計(jì)review的主力人員,多多談?wù)勛约旱目捶ǎ煌瑫r(shí)也要注意尊重設(shè)計(jì)者的感情,讓大家都有收獲的同時(shí),把項(xiàng)目做好。
2, 代碼的review。代碼review的形式可以多種多樣,兩個(gè)人坐在一起看看代碼也是一種review,也沒有必要非得所有人都湊齊。Review代碼的可以讓自己迅速成長(zhǎng),也能讓項(xiàng)目組成員熟悉別人的業(yè)務(wù)和代碼,以***程度減少人員變動(dòng)造成的損失;同時(shí)也能讓代碼規(guī)范更加一致。
不管是設(shè)計(jì)review還是代碼review,都不一定要全部人員到場(chǎng),這可能會(huì)浪費(fèi)一些時(shí)間;但是設(shè)計(jì)的review最少要有一個(gè)技術(shù)骨干或者項(xiàng)目經(jīng)理在場(chǎng),否則review就會(huì)變成討論會(huì)進(jìn)而升級(jí)成戰(zhàn)爭(zhēng)。
Review有時(shí)候也會(huì)被認(rèn)為浪費(fèi)時(shí)間,特別是很多程序員對(duì)review別人的代碼沒有任何興趣,也不愿意讓別人對(duì)自己的代碼說三道四。我想說,作為一個(gè)二十一世紀(jì)的軟件工程師,我們不但要善于對(duì)技術(shù)進(jìn)行鉆研,更要善于把自己的技術(shù)傳播出去,也要善于通過別人的指點(diǎn)更快的提高自己的工作能力。這是一個(gè)開放的時(shí)代,是一個(gè)需要交流的時(shí)代,是一個(gè)迅速發(fā)展的時(shí)代,你慢,就就完蛋。
在review發(fā)現(xiàn)了很多問題之后,我們要怎么辦呢?對(duì),重構(gòu)。這幾年重構(gòu)這個(gè)詞已經(jīng)非常的火了,大家都說重構(gòu)很重要,但是又有幾個(gè)人真正的去重構(gòu)呢?有幾個(gè)人真正的不允許自己寫重復(fù)代碼呢?大家是不是還在說:“項(xiàng)目schedule太緊了,等有空了再優(yōu)化吧”?我認(rèn)為,這句話是有問題的,項(xiàng)目的總時(shí)間短,任務(wù)重,我們沒辦法;但是優(yōu)化(重構(gòu))卻不會(huì)增加這種時(shí)間的壓力,相反的,重構(gòu)會(huì)大大減少后續(xù)的開發(fā)和debug時(shí)間。因?yàn)橹貥?gòu)后,出現(xiàn)的bug更容易被定為,更容易被fix;相反垃圾代碼引起的debug和fix bug的時(shí)間將遠(yuǎn)遠(yuǎn)大于重構(gòu)的時(shí)間。
原文鏈接:http://www.cnblogs.com/GodSpeed/archive/2011/08/16/2140040.html
【編輯推薦】
- 新手軟件項(xiàng)目經(jīng)理該如何入門
- 項(xiàng)目經(jīng)理的力量應(yīng)該從哪里來?
- 軟件項(xiàng)目管理總體流程設(shè)計(jì)
- 新手軟件項(xiàng)目經(jīng)理之***期限的迷局
- 向新手軟件項(xiàng)目經(jīng)理推薦敏捷