Re: [請益] 如何有效率的看code ?

作者: yamakazi (大安吳彥祖)   2020-07-12 12:17:55
如果你沒寫錯的話
一年多看幾萬行code真的不多
我也是轉職仔,原本在ic house寫C做韌體,一個人負責一個.c/.h檔。一年才進三行code。
轉職後寫C++整個team大約十多人,負責的那一層有兩千萬行code。然後第一年就進快一萬行code。
我原本不會C++的,所以什麼framework,modern C++,design pattern,multithreaded 之類的都沒學過要重學。
我不知道你的工作類似哪種,如果是類似我第一種其實很簡單,IDE 上function name點進去看函數定義就好了沒那麼難。
第二種的話有文件可看那當然最好,但沒文件也是很正常。正常人不可能每新增一個class就寫一份文件,那樣開發速度太慢。而且像MVC或design pattern這種很generic的架構也沒人在寫文件的。再加上寫class diagram或sequence diagram其實很花時間。我剛轉職的時候也會寫但做上手了以後根本懶得寫。
建議你多準備一個螢幕,用雙螢幕看會比較快,如果是筆電的話還可以三螢幕。
然後選擇適合的editor,我個人是用visual studio code,ctrl加滑鼠左鍵點到function上就可以看到函數定義,用launch.json就可以用debug mode,設斷點看call stack然後單步執行。
註解的話我們公司不太寫在程式碼裡面的,都是用issue tracker和git去追蹤。比如說你想看這段code是誰寫的基於什麼理由然後又經過了怎樣的演進。你就用git查blame,就會看到這段code是哪幾張ticket改的,你再去ticket看上面應該都有商業邏輯和註解可看。有code review的公司在bitbucket上應該也有大家的討論和註解可以看。
大概是這樣,其他想到再補充
作者: dwudwu (NCTUPGOne)   2020-07-12 12:39:00
怎麼會離開豬屎屋去系統廠呢?
作者: yamakazi (大安吳彥祖)   2020-07-12 12:44:00
系統場沒有不好呀,而且我公司比較像是外商軟體公司
作者: rainkaras (rainkaras)   2020-07-12 13:01:00
推比較現代的作法,很多地方開發時程都壓超緊,連測試時間都不給了還寫文件
作者: flysonics (飛音)   2020-07-12 13:28:00
老實說習慣古早時代寫小工具都會留readme跟更新紀錄了現在都習慣寫滿滿的註解 issue tracker簡單標原因就好
作者: sarau (我是男的)   2020-07-12 13:46:00
註解應該是很重要的 畢竟是很直覺的 用git找太費時間了
作者: Phater (肥特)   2020-07-12 13:54:00
樓上倒過來了吧,成千上萬行的程式分布不同目錄檔案,你要找註解還不確定是誰或何時寫的,註解是不是還有效. 看git log直接知道作者時間,加上git diff可以知道變化的內容. 跟JIRA Redmine合起來用一目了然
作者: yuanyu90221 (菜菜鳥)   2020-07-12 17:18:00
git log真的比較直覺
作者: nec1002 (訓練自己 加強能力)   2020-07-12 17:40:00
簡單來講就是要用時間補能力 不然就不要幹 離職
作者: cphe (魔鬼藏在垃圾筒裡)   2020-07-12 19:05:00
註解對於了解細節還是很重要,某些功能的patch修修補補都不知道演進多少次,git log比較適合用來看演進過程,不是trace
作者: sunsamy   2020-07-12 19:31:00
最好是有人在看演進過程,git垃圾工具無誤,一堆錯誤觀念
作者: king22649   2020-07-12 19:57:00
不用git用啥? svn?
作者: yamakazi (大安吳彥祖)   2020-07-12 20:24:00
其實我比較喜歡perforce
作者: benedict76 (ben)   2020-07-12 20:30:00
git我們都拿來看出包的是誰XD
作者: egnaro123 (原po是大叔)   2020-07-12 20:52:00
push
作者: oneheat (等待)   2020-07-12 21:53:00
八成是android+高通...
作者: sqt (深海)   2020-07-13 06:45:00
謝謝分享
作者: holmes006 (zerglooky)   2020-07-13 12:16:00
推git
作者: cphe (魔鬼藏在垃圾筒裡)   2020-07-13 12:57:00
某人對git 很悲憤XDD
作者: gugeegee (咕雞雞)   2020-07-14 09:37:00
crag打錯 ctags -R *

Links booklink

Contact Us: admin [ a t ] ucptt.com