新聞中心
導(dǎo)讀

成都創(chuàng)新互聯(lián)專(zhuān)業(yè)成都網(wǎng)站制作、成都網(wǎng)站設(shè)計(jì)、外貿(mào)營(yíng)銷(xiāo)網(wǎng)站建設(shè),集網(wǎng)站策劃、網(wǎng)站設(shè)計(jì)、網(wǎng)站制作于一體,網(wǎng)站seo、網(wǎng)站優(yōu)化、網(wǎng)站營(yíng)銷(xiāo)、軟文發(fā)布平臺(tái)等專(zhuān)業(yè)人才根據(jù)搜索規(guī)律編程設(shè)計(jì),讓網(wǎng)站在運(yùn)行后,在搜索中有好的表現(xiàn),專(zhuān)業(yè)設(shè)計(jì)制作為您帶來(lái)效益的網(wǎng)站!讓網(wǎng)站建設(shè)為您創(chuàng)造效益。
換過(guò)幾次工作的程序員一般都比較頭疼,新到一個(gè)公司,會(huì)給你一個(gè)項(xiàng)目,別人以前寫(xiě)的,40-50萬(wàn)行代碼,并且代碼沒(méi)按照一定的規(guī)范去寫(xiě),因?yàn)檫@個(gè)代碼來(lái)自N個(gè)人,一看代碼我就頭大,我曾經(jīng)就做過(guò)這樣的事情,開(kāi)始的時(shí)候也很抓狂,但是慢慢的我認(rèn)為我找到里面的竅門(mén)了,一下算是我給大家提供的一個(gè)思路吧。(我之前跟的那個(gè)項(xiàng)目是 B/S的,所以是針對(duì)B/S寫(xiě)的)
1.看操作說(shuō)明書(shū)
目的:這個(gè)項(xiàng)目是干什么的?
任何一個(gè)項(xiàng)目都有他要實(shí)現(xiàn)的功能,而操作說(shuō)明書(shū)就是告訴你怎么去用它,怎么去操作這些代碼,這些代碼提供了一個(gè)怎樣的服務(wù)。如果你進(jìn)到一個(gè)比較正規(guī)的公司的話,會(huì)有測(cè)試的,有些操作你操作不了,可以求助測(cè)試人員,以為他們是公司里面最熟悉這些操作的。盡可能熟練的去操作這些功能。
小結(jié):我在做開(kāi)發(fā)的時(shí)候,功能比較多,所以只看了一部分功能,原因是我沒(méi)時(shí)間,所以自己在看這部分的時(shí)候,如果時(shí)間不夠,大體上把握即可。
2.看框架
目的:這個(gè)項(xiàng)目是什么架構(gòu)?
任何一個(gè)項(xiàng)目都有自己的架構(gòu),自己的模式,自己盡量去看代碼結(jié)構(gòu),有可能你感覺(jué)很難,因?yàn)榇a太多了,所以不要?dú)怵H,要給自己心里暗示“自己是可以的”。小結(jié):如果看不懂也沒(méi)關(guān)系,可以先做下面的, 我之前所看的代碼,我根本看不懂,后來(lái)很長(zhǎng)一段時(shí)間,同事告訴我“軟件框架”,任何模式都可以很好的進(jìn)行開(kāi)發(fā)。看的時(shí)候肯定會(huì)遇到自己沒(méi)見(jiàn)過(guò)的代碼,不用去管它。
3.跟代碼【核心】
目的:每個(gè)方法是干什么的?先執(zhí)行那個(gè)?在執(zhí)行那個(gè)?
找一個(gè)小的模塊,這把片代碼徹底看懂。這個(gè)時(shí)候你需要的就是跟代碼了,打斷點(diǎn);如果是B/S的,你可以再加腳本調(diào)試debugger。告訴你一個(gè)小竅門(mén):當(dāng)跟代碼的時(shí)候,旁邊放一張紙,遇到主要的方法,要記下來(lái),從頭到尾記下來(lái),等跟完了自己可以拿這張紙進(jìn)行復(fù)述。這樣這個(gè)功能大概怎么跑的你就記下了。跟的時(shí)候遇到的方法一定要記下來(lái),但是跟的時(shí)候一定不要去查,等跟完了在去查。如果是由于自己知識(shí)點(diǎn)的原因,應(yīng)馬上徹底補(bǔ)上來(lái)。
小結(jié):這個(gè)是核心,一般人只是跟不記,等一下自己就不知道自己會(huì)那些,不會(huì)那些,大概怎么跑的都不知道了。所以一定要記。比如我之前開(kāi)發(fā)全部是用戶(hù)控件,很抓狂,你根本不知道那個(gè)方法先加載,那個(gè)頁(yè)面需要參數(shù),但是你把它畫(huà)出來(lái)了,一點(diǎn)點(diǎn)看下來(lái)了,感覺(jué)很有意思。
4.畫(huà)圖
目的:如果一個(gè)頁(yè)面有2個(gè)用戶(hù)控件你是需要畫(huà)圖的,這樣做可以讓你一眼看到頁(yè)面的布局,防止你下次看代碼的時(shí)候,找不到那是那。那個(gè)頁(yè)面調(diào)用哪個(gè)方法最好也寫(xiě)上。當(dāng)我在拿到這張圖的時(shí)候我可以復(fù)述多少?當(dāng)你在修BUG的時(shí)候可以用這張圖。
當(dāng)你跟完代碼之后,你肯定知道哪里是哪里了,這時(shí)候你就用紙把這個(gè)頁(yè)面的圖片畫(huà)下來(lái),最好是不看代碼畫(huà),等畫(huà)完了,在看代碼,看自己是否真的了解邏輯來(lái)。
小結(jié):這一步跟第三步可以同時(shí)進(jìn)行。 如果你跟感覺(jué)很吃力,可以多跟幾次,重復(fù)3,4步,一般跟3遍就大概掌握這片代碼的邏輯。
我現(xiàn)在面對(duì)的問(wèn)題是:大的代碼結(jié)構(gòu)我都能看懂,但是我不知道業(yè)務(wù),那就的好好聽(tīng)了,用眼睛用心去聽(tīng)就可以了,沒(méi)有別的辦法了。
以上是本人在看代碼的時(shí)候一些總結(jié)出來(lái)的思路,大家誰(shuí)有好的方案可以那出來(lái)一起分享。
當(dāng)前題目:你該如何去閱讀擁有海量代碼行的項(xiàng)目
分享URL:http://fisionsoft.com.cn/article/djdhjeo.html


咨詢(xún)
建站咨詢(xún)
