工作裡面可能會沉澱下來很多的東西, 比如文檔, 代碼/腳本, 或者圖片, 甚至你留下的趣事或者“案底”。
對於修改代碼, 我很多年前就體驗過一次,
當然我也碰到了一些比較尷尬的情況, 比如我們之前開發一個相當複雜的業務, 一個類竟然已經被上百個人改過了, 看著一條條的代碼改動標記和注釋, 就會對已有的程式能夠穩穩當當運行起來抱有一種崇敬之情。 程式的邏輯太多,
程式開始調試了, 還算勉強通過, 結果我旁邊的同事有些奔潰了, 笨重的伺服器跑起來了, 發現代碼執行邏輯的部分還沒有運行到他寫的代碼就奔潰了, 可以想像那種排隊的感覺有多無奈。
如果代碼層面的問題得以解決, 或者說能行得通, 那麼前端部分的糾結也蠻多, 記得比較有意思的一個案例就是當時開發的一個網上營業廳的頁面, 我們測試了IE的低版本還有firefox,chrome等, 顯示都是正常的, 當時比較新的流覽器版本是IE8,結果客戶回饋一上線發現頁面的字體顯示有些錯亂, 細細瞭解了下問題, 發現原來是客戶的領導的電腦上是這樣的, 他的電腦流覽器版本比較新, 而其他人還是習慣用相對較低的一個版本,
慢慢的, 也確實有了一些經驗, 所以會時不時的看看別人寫的代碼, 我覺得基本有兩種狀態。 一種是看了之後有種驚喜的感覺, 要不是裡面的代碼風格很清新, 代碼看起來就好比一個裝飾品一般, 低調奢華, 要不是代碼的邏輯非常縝密, 很多你沒想到的點, 這裡都考慮到了, 設計中的冪等性在這裡是完美的體現。 或者是代碼的精道, 原來的一小段邏輯判斷, 可能人家一行代碼就搞定了, 這種情況立馬打開電腦默默的模仿一些, 記下這個絕技, 這是好的一方面,當然還有一種情況,也不一定是極端,可能是大多數人都會犯的錯誤,程式就好比一個喝醉的人一樣,只考慮正常的邏輯,不正常的邏輯說明邏輯不正常,不需要考慮,當然我寫的很多代碼也確實是這樣,從小步快走,快速反覆運算的方式來說,這種方法是對的,代碼代碼不夠充實和健壯,能夠一氣呵成是意料之外的。
還有一個痛點就是經常會看著看著自己就糾結起來,為什麼要這麼實現呢,明明有更好的方法,可能在某個時間看看代碼,終於能夠體會寫腳本的人的痛處了,原來是有這麼一個坎,只能不得已為之,當然這種情況確實很少,一方面能耐下心來認真看完代碼還不如自己去好好實現一版。所以你會在行業裡看到很多類似的情況。
對我來說,代碼的意義本身就是服務于業務,作為一個服務的載體,代碼問題肯定無處不在,一味的追求代碼的完美在工程實踐中還是很可能會做妥協,而不管不顧方法論,只是堆砌代碼也是萬萬不可的,從某種程度上來說,代碼的邏輯清晰和設計上好的風格可以保證程式的健壯性,當然還有一點很重要就是最起碼得有一些代碼的解釋。
這是好的一方面,當然還有一種情況,也不一定是極端,可能是大多數人都會犯的錯誤,程式就好比一個喝醉的人一樣,只考慮正常的邏輯,不正常的邏輯說明邏輯不正常,不需要考慮,當然我寫的很多代碼也確實是這樣,從小步快走,快速反覆運算的方式來說,這種方法是對的,代碼代碼不夠充實和健壯,能夠一氣呵成是意料之外的。還有一個痛點就是經常會看著看著自己就糾結起來,為什麼要這麼實現呢,明明有更好的方法,可能在某個時間看看代碼,終於能夠體會寫腳本的人的痛處了,原來是有這麼一個坎,只能不得已為之,當然這種情況確實很少,一方面能耐下心來認真看完代碼還不如自己去好好實現一版。所以你會在行業裡看到很多類似的情況。
對我來說,代碼的意義本身就是服務于業務,作為一個服務的載體,代碼問題肯定無處不在,一味的追求代碼的完美在工程實踐中還是很可能會做妥協,而不管不顧方法論,只是堆砌代碼也是萬萬不可的,從某種程度上來說,代碼的邏輯清晰和設計上好的風格可以保證程式的健壯性,當然還有一點很重要就是最起碼得有一些代碼的解釋。