在程序員的圈子裡有一個話題經久不衰:程序員入職新公司後接手已有的代碼,怎麼處理?
程序員都有一顆工程師的心,所以當他們到一片新的場地想做的第一件事就是,將舊的一切推倒重來。是的,他們決不會滿足於簡單的增量勞動。
程序員的內心
我們之所以認為舊代碼一團糟,其實是由編程的一個基本定律決定的,那就是:寫代碼容易,讀代碼難。
那麼,程序員讀別人的代碼到底是怎樣一種心理體驗呢?
1、
這是什麼………… 我X,太牛X了。
這是什麼………… 我X,太傻X了。
2、有一個遊戲是這樣玩兒的,一覺醒來,你發現自己被隨機的丟在某個城市的goole street view里,沒有路名,沒有地圖,只有街景。你要自己找到路,走到機場,飛回家。
見到機場,你就贏了。
讀別人的代碼的體驗,和玩兒這個遊戲差不多。。。
生無可戀
3、
要麼:卧槽,大牛和我做朋友吧。
要麼:尼瑪,雜碎怎麼混進來的?
4、
居然能TM這麼寫?
居然能TM這麼寫!
5、
我勒個去這個好牛逼怎麼做到的?我研究一下。
(若干小時后)
應該大概是這樣吧……
這個根本不用這麼麻煩嘛,看我怎麼把它弄好。
(若干小時后)
難怪那時候要這樣寫……原來是這樣……
(回滾到修改之前的狀態)
這個誰寫的這麼屎……讓我看看……
git blame(發現是自己寫的)
嗯這個還是能用的(嚴肅)
慚愧慚愧
6、敢寫註釋么!!!
7、別人的代碼好爛呢,於是我開始改改改....
發現別人的代碼比我的好用哎,於是CTRL+ZZZZZZZZZZZZZZZZ....
8、
這特么誰寫的坑爹代碼?
這行誰加的,有意義么?
還特么不寫註釋!
Annotate一下看看誰提交的
。。。
好吧,我想起來是怎麼回事了。。。
9、別說讀別人的,自己寫過的時間長了在讀也是需要很多想象力的!
10、.......?πω? βλ?πει? αυτ? τη φρ?ση.
11、堅持住,堅持住,千萬不能吐血。家裡還有老婆孩子呢!
12、想給他重構一遍。。。
13、一開始我是抗拒的,想想需求我還是從了吧!
14、
不怕對方代碼跑不動,
就怕對方代碼風格不一樣。
4空格縮進遇到2空格縮進,
大括弧換行遇到大括弧不換行,
橫杆命名遇到駝峰命名,
分分鐘想提刀去滅了對方!