It's never too late.
蠻喜歡這句話的,當(dāng)生活中總是充滿了各種抱怨的時候,這句話總是讓人耳目一新。
當(dāng)我們抱怨的時候,為什么不動手去改變它呢?有人說太遲了,what's done is done!
反過來思考這個問題,很多事情都已經(jīng)成了定局才讓我們抱怨和后悔,那之前做這些事的時候,或許就沒有用正確的方式來做才造成了現(xiàn)在的樣子。
之所以說前面這些,是因為最近一段時間有讀一些書,有做一些事,也有一些思考。
書是關(guān)于代碼質(zhì)量的,事是關(guān)于實習(xí)的。
這段時間經(jīng)歷的事情,可能不論是經(jīng)驗豐富的老玩家還是剛剛進公司的新人都會經(jīng)歷的事情。一個已經(jīng)研發(fā)了兩年的項目,必定是有一份十分厚重的代碼的。往往一個新手要進入這么一個項目組,真的是十分的沒有頭緒。
如果再加上管理不夠嚴(yán)格的編程風(fēng)格、積年累月的新功能添加造成的無數(shù)處代碼修改的話,好像就更難以言表這些代碼的厚重了。如果再加上新人初來咋到畏手畏腳想低調(diào)做事低調(diào)做人,何況整個項目組的同事都可能藏龍臥虎身懷絕技怕自己技不如人也不敢太多的怨聲載道,那就更難以釋懷了。
我得到的解釋是這個項目組前期處于一個快速開發(fā)的過程。也就是說,想要達到的目的就是一個字“快”。最近項目組又開始回爐,想要達到的目的則是“好”。那么為了“快”,所以就Open to Modification也是能說得過去的。總而言之,如果整體是在朝著好的方向發(fā)展,速度慢點是沒什么的。
陰差陽錯之間,在同事的桌子上看見了一本《代碼整潔之道》。于是在IncrediBuild長達15分鐘的編譯過程中,總是可以抽空讀上幾頁。大約在上班的時候用這種牙縫時間看了前面4章的內(nèi)容,每有會意便悠然蛋疼。說句不太好聽的話便是——這些正在被compiling的legacy code和Clean Code處于兩個對立面,如同青城山上隨處可見的道家八卦圖中的黑白圖案……(我真心的希望我的同事們?nèi)绻匆娺@篇blog不要有跨省我的沖動 ^_^ )
實習(xí)的兩個月時間很短,基本上我學(xué)會了很多快捷鍵。也才意識到Visual Studio可以像某些職業(yè)SC選手一樣是一個需要“操作”和“APM”的東西。這對于我這么一個進公司之前不怎么打斷點,不怎么喜歡Step into的人來說,算是長了很多見識。如何動態(tài)的調(diào)試程序,找到問題所在的位置,我還有許多要學(xué)。在我看來,打斷點的功夫好比點穴(小白的葵花點穴手……)。大致上,你在打斷點的時候得對代碼相當(dāng)?shù)氖煜おq如你在點穴的時候?qū)θ梭w上的經(jīng)脈穴位十分的熟悉;在打斷點的時候得十分準(zhǔn)確如同點穴一樣,稍微前一點或者后一點可能都無法很快查出你想查的問題(比如還需要再手動執(zhí)行N步,有些過程相當(dāng)費時);當(dāng)然最相似的地方在于——它們都讓事物靜止下來~
當(dāng)我對項目剛剛上手,差不多兩個月的時間就這么逝去了。于是乎就路漫漫的回到家中開始畢業(yè)設(shè)計,如今畢設(shè)的東西做的個八九不離十了,也有時間陪陪女朋友看看閑書玩玩游戲什么的。免不了的卻是止不住思考以后的職業(yè)道路。如何在技術(shù)面上更快的提升,還有在非技術(shù)面上更快的提升。
程序員總是喜歡和公平的事物打交道(Joel on Software),比如計算機,比如代碼,比如這個世界的非人情面的所有東西。所以程序員總是很難做到對周遭人情冷暖處處關(guān)心,各種待人待事的細(xì)節(jié)上也差強人意。這一些從俺們工作室秘書身上真是學(xué)到很多,讓我覺得自己有時候是蠻傻的。在熟人面前這種傻會是直率或者放肆得有些可愛,不過換到外人面前可能就有冒犯。女朋友一直叫我有空看看《杜拉拉升職記》,或許下一本要看的書得是它,而不是《重構(gòu)》 -。-
既然說道了《重構(gòu)》,那就再多說兩句。它真是一本好書,它真是一本值得看的好書,它真是一本在接手厚重代碼過后值得一看的好書,它告訴你It's never too late to Refactor!
posted on 2010-05-21 10:29
Charlie 侯杰 閱讀(1950)
評論(6) 編輯 收藏 引用 所屬分類:
Miscellaneous