偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

你該如何去閱讀擁有海量代碼行的項目

開發(fā) 項目管理
如果你是一個擁有多年經(jīng)驗(yàn)的程序員,一定會碰到幾十萬代碼行的項目。如何去理解和讀懂這些代碼,其實(shí)有其技巧。學(xué)會這些,你距離項目經(jīng)理的路會更近一些。

導(dǎo)讀

換過幾次工作的程序員一般都比較頭疼,新到一個公司,會給你一個項目,別人以前寫的,40-50萬行代碼,并且代碼沒按照一定的規(guī)范去寫,因?yàn)檫@個代碼來自N個人,一看代碼我就頭大,我曾經(jīng)就做過這樣的事情,開始的時候也很抓狂,但是慢慢的我認(rèn)為我找到里面的竅門了,一下算是我給大家提供的一個思路吧。(我之前跟的那個項目是 B/S的,所以是針對B/S寫的)

1.看操作說明書

目的:這個項目是干什么的?

任何一個項目都有他要實(shí)現(xiàn)的功能,而操作說明書就是告訴你怎么去用它,怎么去操作這些代碼,這些代碼提供了一個怎樣的服務(wù)。如果你進(jìn)到一個比較正規(guī)的公司的話,會有測試的,有些操作你操作不了,可以求助測試人員,以為他們是公司里面最熟悉這些操作的。盡可能熟練的去操作這些功能。

小結(jié):我在做開發(fā)的時候,功能比較多,所以只看了一部分功能,原因是我沒時間,所以自己在看這部分的時候,如果時間不夠,大體上把握即可。

2.看框架

目的:這個項目是什么架構(gòu)?

任何一個項目都有自己的架構(gòu),自己的模式,自己盡量去看代碼結(jié)構(gòu),有可能你感覺很難,因?yàn)榇a太多了,所以不要?dú)怵H,要給自己心里暗示“自己是可以的”。小結(jié):如果看不懂也沒關(guān)系,可以先做下面的, 我之前所看的代碼,我根本看不懂,后來很長一段時間,同事告訴我“軟件框架”,任何模式都可以很好的進(jìn)行開發(fā)??吹臅r候肯定會遇到自己沒見過的代碼,不用去管它。

3.跟代碼【核心】

目的:每個方法是干什么的?先執(zhí)行那個?在執(zhí)行那個?

找一個小的模塊,這把片代碼徹底看懂。這個時候你需要的就是跟代碼了,打斷點(diǎn);如果是B/S的,你可以再加腳本調(diào)試debugger。告訴你一個小竅門:當(dāng)跟代碼的時候,旁邊放一張紙,遇到主要的方法,要記下來,從頭到尾記下來,等跟完了自己可以拿這張紙進(jìn)行復(fù)述。這樣這個功能大概怎么跑的你就記下了。跟的時候遇到的方法一定要記下來,但是跟的時候一定不要去查,等跟完了在去查。如果是由于自己知識點(diǎn)的原因,應(yīng)馬上徹底補(bǔ)上來。

小結(jié):這個是核心,一般人只是跟不記,等一下自己就不知道自己會那些,不會那些,大概怎么跑的都不知道了。所以一定要記。比如我之前開發(fā)全部是用戶控件,很抓狂,你根本不知道那個方法先加載,那個頁面需要參數(shù),但是你把它畫出來了,一點(diǎn)點(diǎn)看下來了,感覺很有意思。

4.畫圖

目的:如果一個頁面有2個用戶控件你是需要畫圖的,這樣做可以讓你一眼看到頁面的布局,防止你下次看代碼的時候,找不到那是那。那個頁面調(diào)用哪個方法最好也寫上。當(dāng)我在拿到這張圖的時候我可以復(fù)述多少?當(dāng)你在修BUG的時候可以用這張圖。

當(dāng)你跟完代碼之后,你肯定知道哪里是哪里了,這時候你就用紙把這個頁面的圖片畫下來,最好是不看代碼畫,等畫完了,在看代碼,看自己是否真的了解邏輯來。

小結(jié):這一步跟第三步可以同時進(jìn)行。 如果你跟感覺很吃力,可以多跟幾次,重復(fù)3,4步,一般跟3遍就大概掌握這片代碼的邏輯。

我現(xiàn)在面對的問題是:大的代碼結(jié)構(gòu)我都能看懂,但是我不知道業(yè)務(wù),那就的好好聽了,用眼睛用心去聽就可以了,沒有別的辦法了。

以上是本人在看代碼的時候一些總結(jié)出來的思路,大家誰有好的方案可以那出來一起分享。

原文鏈接:http://www.cnblogs.com/muer/archive/2011/05/02/2034448.html

【編輯推薦】

  1. 項目經(jīng)理的力量應(yīng)該從哪里來?
  2. 新手軟件項目經(jīng)理該如何入門
  3. 軟件項目管理總體流程設(shè)計
  4. 軟件開發(fā)中項目管理的注意事項
  5. 如何在項目管理中減少團(tuán)隊的啟動時間
責(zé)任編輯:彭凡 來源: 博客園
相關(guān)推薦

2011-05-03 09:10:12

項目管理程序員

2023-12-29 08:17:26

Python代碼分析Profile

2021-03-18 07:52:42

代碼性能技巧開發(fā)

2019-07-12 10:20:45

海量數(shù)據(jù)搭建

2019-07-15 16:02:30

大數(shù)據(jù)數(shù)據(jù)分析輿情系統(tǒng)

2016-10-11 16:28:11

源代碼

2021-08-30 08:13:41

設(shè)計系統(tǒng)化用戶

2023-07-31 08:02:28

2011-07-19 11:35:09

linux網(wǎng)絡(luò)協(xié)議

2022-06-21 07:41:08

FCPJS代碼

2022-08-15 18:22:22

JS代碼

2021-01-24 16:00:22

Ansible系統(tǒng)運(yùn)維

2020-04-23 16:04:25

代碼編輯器工具程序員

2020-05-26 21:09:16

碼農(nóng)插件開源

2017-07-14 09:13:53

2019-11-15 15:50:41

JS代碼React前端

2021-10-26 10:30:31

代碼編輯器LinuxVS Code

2021-09-06 10:22:47

匿名對象編程

2023-02-06 21:58:23

2012-10-10 08:44:18

NativeWebHybrid
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號