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

看板Tech_Job (科技人)作者 (蛋蛋)時間3年前 (2020/07/11 17:46), 編輯推噓36(39350)
留言92則, 48人參與, 3年前最新討論串1/5 (看更多)
轉職一年多 幾萬行龐大的code 實在不知道要怎麼看 導致工作進度落後 常delay 交不出來 每天工時12小時 假日有時還進公司自主加班 其實也不只是code 還有背景知識也不熟悉 像是錄影跟回放功能 這些以前學校都沒學過 太多不懂不知道從何問起 只能慢慢嘗試 非常無力 總不可能請同事從頭教我 有人也是進職場遇到自己從沒學過的東西嗎? 本來想找課本來看 但母校的課程網頁 好像也沒有教這一塊 就算假日沒進公司 心裡也沒辦法放鬆 都在焦慮周一進公司 要怎麼面對這些code.... 抱歉 說了一大堆 總結問題 1.如何有效率地看龐大的code 2.不懂的背景知識,該如何有效率學習 先謝謝前輩了orz ----- Sent from JPTT on my Asus ASUS_Z012DA. -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 42.73.50.147 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Tech_Job/M.1594460785.A.66D.html

07/11 17:49, 3年前 , 1F
沒架構文件?
07/11 17:49, 1F

07/11 17:49, 3年前 , 2F
先問前輩程式架構,先了解架構後再看才有意義,不然程
07/11 17:49, 2F

07/11 17:49, 3年前 , 3F
式就一堆if else是有什麼難的?
07/11 17:49, 3F

07/11 17:50, 3年前 , 4F
老鳥:嘻嘻 我手把手教你你不就追上來了 何必呢
07/11 17:50, 4F

07/11 17:50, 3年前 , 5F
一般來講都應該要有架構文件啦 一般來講.....
07/11 17:50, 5F

07/11 17:51, 3年前 , 6F
如果你真的很衰 碰到沒有架構文件又不想丟辭呈的話
07/11 17:51, 6F

07/11 17:52, 3年前 , 7F
你先全部大略看過一遍 然後連連看 將主架構function找
07/11 17:52, 7F

07/11 17:52, 3年前 , 8F
出來 然後用pattern的概念一個一個慢慢推進去讀code
07/11 17:52, 8F

07/11 17:53, 3年前 , 9F
小弟曾經跟過大半個專案是用這種方式消化code的 覺得這
07/11 17:53, 9F

07/11 17:53, 3年前 , 10F
樣會比較有效率 供你參考
07/11 17:53, 10F

07/11 17:54, 3年前 , 11F
你就把讀code當成玩RPG裡在探索未知領域就好
07/11 17:54, 11F

07/11 17:54, 3年前 , 12F
VS code是你的好朋友,然後用雙螢幕勝過單螢幕
07/11 17:54, 12F

07/11 17:58, 3年前 , 13F
背景知識就沒救了...你去找找看有沒有相關的科普書籍
07/11 17:58, 13F

07/11 17:58, 3年前 , 14F
或是相關的行業內會議PPT 知道有哪些topic
07/11 17:58, 14F

07/11 17:59, 3年前 , 15F
然後接下來就是找keyword 啃spec
07/11 17:59, 15F

07/11 18:00, 3年前 , 16F
這沒有人帶的話 就是需要時間累積 自己慢慢找慢慢撞
07/11 18:00, 16F

07/11 18:00, 3年前 , 17F
就算你再天賦異稟也很難速成
07/11 18:00, 17F

07/11 18:03, 3年前 , 18F
Debug mode設斷點看call stack
07/11 18:03, 18F

07/11 18:07, 3年前 , 19F
還有 如果你是寫韌體的話 自己要有hal層的概念
07/11 18:07, 19F

07/11 18:08, 3年前 , 20F
register之類的東西就不要硬下去讀了 這種東西沒有hw出
07/11 18:08, 20F

07/11 18:08, 3年前 , 21F
完整spec 你認真在那邊看到死也沒用 不要寫code的人自
07/11 18:08, 21F

07/11 18:08, 3年前 , 22F
己沒有那個layer的意識亂寫 你還在那邊傻傻trace老半天
07/11 18:08, 22F

07/11 18:09, 3年前 , 23F
讀spec清楚protocol長怎樣就可以了
07/11 18:09, 23F

07/11 18:30, 3年前 , 24F
debug mode 催下去就是了,別傻傻 print
07/11 18:30, 24F

07/11 18:31, 3年前 , 25F
以人類的惡意去思考會輕鬆點。
07/11 18:31, 25F

07/11 18:40, 3年前 , 26F
重構 寫測試
07/11 18:40, 26F

07/11 18:42, 3年前 , 27F
沒文件就自己寫,我寫過UML其實不好寫
07/11 18:42, 27F

07/11 18:44, 3年前 , 28F
沒有程式註解可以看嗎? 那就是前人的問題了
07/11 18:44, 28F

07/11 18:46, 3年前 , 29F
先了解架構
07/11 18:46, 29F

07/11 19:12, 3年前 , 30F
背景知識超級重要,先找人問清楚,背景知識不懂,就無法理
07/11 19:12, 30F

07/11 19:12, 3年前 , 31F
解架構為什麼要這樣設計,程式自然看不懂
07/11 19:12, 31F

07/11 19:14, 3年前 , 32F
背景知識超級重要,如果不了背景知識,就不會了解架構為什
07/11 19:14, 32F

07/11 19:14, 3年前 , 33F
麼要這樣設計,程式自然看不懂
07/11 19:14, 33F

07/11 19:48, 3年前 , 34F
有些可能是workaround,註解也沒寫清楚只能問了,怕
07/11 19:48, 34F

07/11 19:48, 3年前 , 35F
常常打擾同事的話,就列下來看一個段落再一起問
07/11 19:48, 35F

07/11 20:05, 3年前 , 36F
有些code不是單純 if else 沒專業背景看不懂 邏輯看
07/11 20:05, 36F

07/11 20:05, 3年前 , 37F
的懂但是 code 看不懂要補專業知識
07/11 20:05, 37F

07/11 20:12, 3年前 , 38F
多請老鳥喝咖啡,去聊天順便聊code
07/11 20:12, 38F

07/11 20:22, 3年前 , 39F
我之前看前人的CODE居然幹了100多個if else..
07/11 20:22, 39F

07/11 20:30, 3年前 , 40F
幾萬行也在哀Zzz
07/11 20:30, 40F

07/11 20:33, 3年前 , 41F
Debugger + editor的跳轉定義功能
07/11 20:33, 41F

07/11 20:41, 3年前 , 42F
跑unit test看看回傳什麼
07/11 20:41, 42F

07/11 20:42, 3年前 , 43F
在公司待久一點慢慢看懂code下班假日都看就會懂
07/11 20:42, 43F

07/11 20:58, 3年前 , 44F
20幾年的碼農良心建議,換工作比較好
07/11 20:58, 44F

07/11 21:01, 3年前 , 45F
總有每週進度報告吧!聽聽同事報的內容聽久了就會有點想法
07/11 21:01, 45F

07/11 21:01, 3年前 , 46F
了。
07/11 21:01, 46F

07/11 21:03, 3年前 , 47F
另外總有code review吧!
07/11 21:03, 47F

07/11 21:05, 3年前 , 48F
我都付一點錢外包給朋友做 供你參考
07/11 21:05, 48F

07/11 21:19, 3年前 , 49F
我都用資料流去看
07/11 21:19, 49F

07/11 21:26, 3年前 , 50F
如何有效率的看code? 就是不要看不相干的地方
07/11 21:26, 50F

07/11 21:27, 3年前 , 51F
知道甚麼時候適可而止 並且把重點放在文件上
07/11 21:27, 51F

07/11 21:28, 3年前 , 52F
Debugger step run ?
07/11 21:28, 52F

07/11 21:29, 3年前 , 53F
台廠沒啥在寫文件的吧
07/11 21:29, 53F

07/11 22:06, 3年前 , 54F
真的沒架構文件隨便埋個bt都比較快
07/11 22:06, 54F

07/11 22:16, 3年前 , 55F
善用debugger/dump stack/log,有些是一堆multithread等來
07/11 22:16, 55F

07/11 22:16, 3年前 , 56F
等去,你天馬星空想像都不如加幾行log看他怎麼跑
07/11 22:16, 56F

07/11 22:17, 3年前 , 57F
然後code看久就會越來越快了,就跟看英文書一樣
07/11 22:17, 57F

07/11 23:02, 3年前 , 58F
韌體的code,才真正要你命,純軟就看你的工具如何有效的
07/11 23:02, 58F

07/11 23:02, 3年前 , 59F
使用,觀念很重要。
07/11 23:02, 59F

07/11 23:09, 3年前 , 60F
看那麼快幹嘛 給老人一點尊重
07/11 23:09, 60F

07/11 23:11, 3年前 , 61F
問人或看文件 不可能真的去看整個
07/11 23:11, 61F

07/11 23:12, 3年前 , 62F
code是已知錯在那行 才去看
07/11 23:12, 62F

07/11 23:19, 3年前 , 63F
如果架構文件有隨著 code 更新而更新那還好,有些人只會一
07/11 23:19, 63F

07/11 23:19, 3年前 , 64F
直改 code 不改文件,結果兩邊對不起來看了更慘...
07/11 23:19, 64F

07/11 23:30, 3年前 , 65F
不要寫架構文件,專心寫code 不要研究code,專心寫code
07/11 23:30, 65F

07/11 23:51, 3年前 , 66F
都做 一年多了才提背景知識不熟也怪怪的
07/11 23:51, 66F

07/11 23:53, 3年前 , 67F
如果是功能開發,簡單的錄影回放用 3rd party 2天內搞定
07/11 23:53, 67F

07/11 23:56, 3年前 , 68F
如果是 maintain&debug 就直接從公司既有的 API 下手
07/11 23:56, 68F

07/12 00:01, 3年前 , 69F
邊做邊整理, 註解, 模組化, 自然就上手 如果原本寫的很
07/12 00:01, 69F

07/12 00:02, 3年前 , 70F
爛可讀性低,就順手慢慢重構吧,這樣還比較輕鬆
07/12 00:02, 70F

07/12 01:08, 3年前 , 71F
看看臨兵桌上有甚麼不是程式語言的書, 借來看看
07/12 01:08, 71F

07/12 02:39, 3年前 , 72F
用source insight 一邊trace code 一邊補齊所缺的知識
07/12 02:39, 72F

07/12 03:08, 3年前 , 73F
問有沒有架構圖+找前輩帶你順一次架構
07/12 03:08, 73F

07/12 07:32, 3年前 , 74F
debug mode 下去吧,你光用看的,根本很難看的懂
07/12 07:32, 74F

07/12 07:59, 3年前 , 75F
跑起來debug mode開下去。先問主架構是哪條,跳過不重
07/12 07:59, 75F

07/12 07:59, 3年前 , 76F
要的扣。扣第一次不用每行看懂,領略function意思就好
07/12 07:59, 76F

07/12 07:59, 3年前 , 77F
。一邊trace一邊畫架構圖。
07/12 07:59, 77F

07/12 10:11, 3年前 , 78F
要看懂這篇推文從零開始,我下一本要看的書名
07/12 10:11, 78F

07/12 10:57, 3年前 , 79F
個人偏好IntelliJ > VScode
07/12 10:57, 79F

07/12 11:37, 3年前 , 80F
背景知識是像影片編碼解碼之類的嗎?如果不是那邊有bug或
07/12 11:37, 80F

07/12 11:37, 3年前 , 81F
是必須要自己農就不用急著看 慢慢補
07/12 11:37, 81F

07/12 12:12, 3年前 , 82F
先睡飽
07/12 12:12, 82F

07/12 12:46, 3年前 , 83F
推文 IDE 比 editor 是什麼概念
07/12 12:46, 83F

07/12 12:51, 3年前 , 84F
變性
07/12 12:51, 84F

07/12 13:35, 3年前 , 85F
這板真不乏死愛面子逞口快的台男XDDD
07/12 13:35, 85F

07/12 16:24, 3年前 , 86F
你應該先對程式有瞭解 還要去分析程式架構 不是一昧
07/12 16:24, 86F

07/12 16:24, 3年前 , 87F
的看所有的程式碼吧
07/12 16:24, 87F

07/12 19:52, 3年前 , 88F
ctrl+f google是你的左右手
07/12 19:52, 88F

07/12 23:47, 3年前 , 89F
沒架構只好自己畫圖拼出架構來
07/12 23:47, 89F

07/13 01:31, 3年前 , 90F
其中的讀取某個時間點的影像
07/13 01:31, 90F

07/13 01:32, 3年前 , 91F
嫩咖才用ide,高手都用vi
07/13 01:32, 91F

07/15 02:08, 3年前 , 92F
先推給別人,讓別人去釐清
07/15 02:08, 92F
文章代碼(AID): #1V2OfnPj (Tech_Job)
文章代碼(AID): #1V2OfnPj (Tech_Job)