5年程序人生路 從新手到項(xiàng)目管理[2]
工作漸漸展開(kāi)之后,就是平靜如水的生活,每天上班,吃飯,睡覺(jué),日子也過(guò)得很快。剛開(kāi)始,由于懂得東西少,所以每次任務(wù)下來(lái)后,都是積極的去完成,因?yàn)楹ε伦约鹤霾煌辍5菨u漸的,當(dāng)自己清楚該怎么做的時(shí)候,人會(huì)產(chǎn)生疲倦,因?yàn)槊刻於甲鲆恍┎畈欢嗟膭趧?dòng)。慢慢的,做事情就喜歡拖拉了。當(dāng)分配一個(gè)任務(wù)后,自己先估量一下這個(gè)工作自己大概需要多久,一般老板給的時(shí)間會(huì)多很多。所以喜歡把工作先放著,去看看網(wǎng)頁(yè),逛逛論壇什么的,等到剩下的時(shí)間差不多了,需要開(kāi)始工作了,就懶洋洋的進(jìn)入工作狀態(tài),但是往往完成工作質(zhì)量都不怎么好,很多提交后會(huì)有些BUG。不過(guò)我也沒(méi)怎么在意。因?yàn)楹屠习尻P(guān)系好嘛,像我這樣,再怎么說(shuō)也屬于元老級(jí)別的。就這樣慢慢的工作了幾年。因?yàn)樾」臼裁炊家觯夹g(shù)也積累了很多。包括各種主流數(shù)據(jù)庫(kù)的用法,。NET,CSS,JAVASCRIPT,PHP,JAVA,perl,FLASH, 等等,其間,自己獨(dú)立開(kāi)發(fā)項(xiàng)目的時(shí)候,總想找出一種架構(gòu),加快自己下一個(gè)項(xiàng)目的開(kāi)發(fā)進(jìn)度。但是每次開(kāi)發(fā)完后,發(fā)現(xiàn)上次設(shè)計(jì)的架構(gòu)真垃圾。開(kāi)發(fā)過(guò)很多項(xiàng)目,每次都想了一些新的架構(gòu)方法。到現(xiàn)在沉淀下來(lái)的還值得用的架構(gòu)思想也沒(méi)多少。記得在做JSP的時(shí)候,感覺(jué)JSP里面服務(wù)端代碼和HTML混在一起,很難看。不如。NET的事件驅(qū)動(dòng)好用。就去寫(xiě)個(gè)模塊,讓JSP也實(shí)現(xiàn)事件驅(qū)動(dòng)的模式。結(jié)果寫(xiě)到后來(lái),也沒(méi)得到什么好處,并且感覺(jué)有點(diǎn)不倫不類(lèi),后來(lái)項(xiàng)目慢慢做大了,才漸漸明白面向?qū)ο蟮挠靡狻.?dāng)一個(gè)項(xiàng)目很小,邏輯很簡(jiǎn)單的時(shí)候,用面向?qū)ο蟮姆椒ㄔO(shè)計(jì)用處不大,反倒是組件用處更大。因?yàn)轫?xiàng)目小,基本上都是建幾張表,改改HTML的工作。但是項(xiàng)目一大,邏輯變復(fù)雜了,如果你要理清楚邏輯,這里就需要一種方法論。我一開(kāi)始寫(xiě)算法的那種方法有點(diǎn)不適用了。原來(lái)那種是從頂層開(kāi)始,向下細(xì)分。是一種至上而下的設(shè)計(jì)方法。而面向?qū)ο蟛皇,它是一種由點(diǎn)及面的設(shè)計(jì)方法。面向?qū)ο笫窍日页鲆粋(gè)個(gè)對(duì)象點(diǎn),然后再找出每個(gè)點(diǎn)之間的關(guān)系。在實(shí)際的項(xiàng)目中,你很難從上至下的設(shè)計(jì)。因?yàn)轫?xiàng)目需求往往剛開(kāi)始很不全面,很多項(xiàng)目后來(lái)改得都是面目全非。從上至下的設(shè)計(jì)不適合這種平凡的修改。并且當(dāng)需求很大時(shí),他涉及東西太多,你也很難從一個(gè)俯視的角度去全面的看這個(gè)系統(tǒng)。所以從上至下的設(shè)計(jì)不能滿(mǎn)足要求。打個(gè)比方,記得一個(gè)項(xiàng)目已經(jīng)做了80%,結(jié)果客戶(hù)覺(jué)得用得不方便,要改一下。很多原來(lái)做的功能都不需要,并且提了幾個(gè)新功能。但這幾個(gè)功能也只是對(duì)原來(lái)的功能稍加改動(dòng)。但是邏輯上看卻是大相徑庭。人腦不是電腦,如果想著這個(gè)代碼,去改那個(gè)代碼,勢(shì)必到后來(lái)讓自己也搞糊涂了。所以需要抽象出幾個(gè)對(duì)象出來(lái),是按照客戶(hù)的思維方式。然后抽象出來(lái)的對(duì)象里面包含原來(lái)的功能。這樣做起來(lái)就事半功倍。
在工作的磨練中,慢慢的發(fā)現(xiàn)了普通的程序員與優(yōu)秀的程序員的一些差別:
1, 普通的程序員遇到問(wèn)題喜歡張口就問(wèn)別人,問(wèn)之前沒(méi)經(jīng)過(guò)大腦想想。這是一個(gè)不好的習(xí)慣。其一,自己都沒(méi)仔細(xì)想想,就算別人幫你把問(wèn)題解決了,你自己不多久就會(huì)忘記。下次遇到,照樣是不會(huì)。因?yàn)檫@個(gè)問(wèn)題你沒(méi)有經(jīng)過(guò)大腦。其二,能夠回答你問(wèn)題的人,多半是有一定經(jīng)驗(yàn)了。他們或許很會(huì)安排好自己的事情,管理好自己的時(shí)間。如果時(shí)常去打斷他們,他們會(huì)覺(jué)得你很煩。
優(yōu)秀的程序員多半會(huì)先到網(wǎng)上查找一下相關(guān)問(wèn)題,看看網(wǎng)上有沒(méi)有相關(guān)解決方法。經(jīng)過(guò)一翻查找,他會(huì)把這個(gè)問(wèn)題記得比較牢。
2,在一個(gè)項(xiàng)目的合作開(kāi)發(fā)中,普通程序員往往只了解自己開(kāi)發(fā)那方面的東西。項(xiàng)目做完后往往對(duì)整個(gè)項(xiàng)目有哪些功能都不太清楚?赡軙(huì)有人抱怨,自己工作都做不完,哪有時(shí)間去了解整個(gè)系統(tǒng)。但現(xiàn)實(shí)多半是,花大量的時(shí)間去網(wǎng)上閑逛,卻不愿花時(shí)間去增進(jìn)知識(shí)。 如果總認(rèn)為項(xiàng)目的設(shè)計(jì)是設(shè)計(jì)者的工作,自己沒(méi)必要去了解。那么這樣的程序員只能是手工勞動(dòng)者。
優(yōu)秀的.程序員會(huì)對(duì)整個(gè)項(xiàng)目有認(rèn)識(shí),對(duì)一些自己感興趣的功能會(huì)去做一下了解,更優(yōu)秀一點(diǎn)的,會(huì)去對(duì)整個(gè)項(xiàng)目的架構(gòu)設(shè)計(jì)做一下了解。自問(wèn)如果他是項(xiàng)目設(shè)計(jì)者該怎么做? 去學(xué)習(xí)項(xiàng)目設(shè)計(jì)的優(yōu)秀之處,去發(fā)現(xiàn)設(shè)計(jì)的不足之處。觸類(lèi)旁通,把優(yōu)秀的地方用在自己將來(lái)的工作當(dāng)中。
3,普通程序員往往有很大的惰性。不能自覺(jué)的去學(xué)習(xí)知識(shí),增進(jìn)能力。所以每天耗費(fèi)大量的時(shí)間在一些消遣狀態(tài)中。所以時(shí)間往往白白的浪費(fèi)掉。
優(yōu)秀的程序員往往會(huì)安排好自己的工作和學(xué)習(xí)。在工作中學(xué)習(xí),在學(xué)習(xí)中工作。能夠感覺(jué)到自己每天都向著自己的目標(biāo)在前進(jìn),狀態(tài)佳,動(dòng)力足。他們因?yàn)槊刻旃ぷ髑榫w很高,所以研究的東西也多,時(shí)間比較寶貴。因此他們會(huì)善于利用一些工具來(lái)操作自己的電腦,大大來(lái)的減少瑣碎的電腦操作時(shí)間。更有勝者,會(huì)開(kāi)發(fā)一些符合自己的操作習(xí)慣的小程序,來(lái)提高自己的效率。說(shuō)不定這些小程序放到網(wǎng)上共享,可能還會(huì)有意想不到的收獲。
我現(xiàn)在做項(xiàng)目管理,看著手下的程序員,時(shí)常也讓我想起原來(lái)做程序員時(shí)候的壞毛病。比如,上班遲到啊,工作時(shí)間上網(wǎng)閑逛啊,交上來(lái)的程序BUG成堆啊…!看到這些,我時(shí)常都是會(huì)心的笑笑,可以理解! 不過(guò)我也時(shí)常提醒他們,如果你們想將來(lái)成為IT界的精英,而不是等到30歲感覺(jué)自己無(wú)路可走,那么請(qǐng)你們珍惜自己的時(shí)間。如果你們自己都不珍惜自己的時(shí)間,那么別人更不會(huì)去珍惜你的時(shí)間。
今天花了兩個(gè)多小時(shí),寫(xiě)了一篇短篇自敘。感覺(jué)值得,把自己五年多的光陰回顧了一遍。從前的故事歷歷在目。寫(xiě)下來(lái)過(guò)五年后再來(lái)回顧一下,說(shuō)不定會(huì)是另一番感受。
【5年程序人生路 從新手到項(xiàng)目管理[2]】相關(guān)文章:
拓展項(xiàng)目:坎坷人生路-拓展項(xiàng)目01-04
建設(shè)工程項(xiàng)目管理過(guò)程控制程序08-21
采購(gòu)管理的程序08-23
施工項(xiàng)目管理與項(xiàng)目成本管理09-12
項(xiàng)目管理流程管理10-03
采購(gòu)管理的主要程序10-07
形容手到擒來(lái)歇后語(yǔ)01-15
從新開(kāi)始的勵(lì)志簽名12-18