新聞中心

EEPW首頁 > 汽車電子 > 學(xué)習(xí)方法與實(shí)踐 > 十年編程經(jīng)驗(yàn)?zāi)Y(jié)

十年編程經(jīng)驗(yàn)?zāi)Y(jié)

——
作者: 時間:2007-05-14 來源: 收藏
有天和朋友聊天,朋友是國內(nèi)一家大型互聯(lián)網(wǎng)企業(yè)的一位技術(shù)主管,朋友把他將近十年研發(fā)工作積累的心血總結(jié)成兩點(diǎn),這兩點(diǎn)朋友剛一提出來我并沒有馬上明白,只是大約有這么一個概念,我還沒達(dá)到朋友在技術(shù)領(lǐng)域的那種高度,不能徹底領(lǐng)悟他深刻的思想。但我想與眾多剛剛踏入IT技術(shù)研發(fā)領(lǐng)域的新人們分享一下這位朋友的思想,我盡全力來解釋闡述朋友的話語,希望能給大家?guī)硪恍﹩l(fā)。
 
第一點(diǎn)是:不斷抽象已知的東西?,F(xiàn)實(shí)生活總是包括很多零散的東西,待解決的問題不會只有一面,所以抽取零散東西的共同屬性,聚合不同角度的同一面向,成為從問題領(lǐng)域進(jìn)入領(lǐng)域的第一步。抽象的層次越高,你架構(gòu)設(shè)計就越簡單。
 
第二點(diǎn)是:面對未知的東西用已有的抽象經(jīng)驗(yàn)來模擬體驗(yàn),從而不斷調(diào)整直至達(dá)到可以控制未知東西的程度。有了上面第一點(diǎn)的基礎(chǔ),才可能到達(dá)這第二點(diǎn)的境界?,F(xiàn)實(shí)問題總是不斷變化著的推陳出新的,從未知到半知到已知,是人認(rèn)識客觀世界的一個過程,恰如人生從天真到懵懂到成熟的過程。
 
天才是什么?聊著聊著我們突然說到比爾蓋茨,說到那些天才黑客,朋友和我都很興奮。我問朋友,從他總結(jié)的兩點(diǎn)來看天才是怎么實(shí)踐這兩點(diǎn)的?朋友想了一下說,天才就是生來就有那種抽象的能力,他并不一定局限于計算機(jī)領(lǐng)域的空間來看待問題,他擁有從這個世界其他領(lǐng)域來模擬體驗(yàn)計算機(jī)領(lǐng)域的天賦,他甚而可以抽象整個世界。
 
朋友的思想太博大高深,如我這般入行不久的初級程序員怎能領(lǐng)會?但我還是裝作深有體會的不斷點(diǎn)頭,同時把朋友從山巔拉到山腳下。我說:“你說得太抽象了,不如你告訴一個起步階段的程序員應(yīng)該怎么慢慢通過實(shí)踐來逐步達(dá)到這種境界吧?!蔽抑琅笥言谶@方面頗有體會,他以前曾跟我提起他畢業(yè)后在第一家公司是怎么接受錘煉的。果然朋友很快開始闡述:“很簡單,起步階段就是專心的模仿。切記不要被那些亂七八糟的東西晃花了眼,什么j2ee與.net之爭,什么soa的革命等等,你不要去關(guān)心這些東西。當(dāng)你在公司上班時,會有這樣一個矛盾,當(dāng)你完成公司交待的一個任務(wù)時,你可能為了盡快完成任務(wù)用了很多別人現(xiàn)成的框架。這本身沒問題,但何謂專心的模仿?就是說你在工作之余,需要來研究這些框架,你可以不用這些框架,而是用最原始的方式來寫,你會慢慢體會到框架的約束,進(jìn)而有對框架進(jìn)行改進(jìn)的欲望。但是最終你也會發(fā)現(xiàn):其實(shí)任何一個框架都比你自己寫的要好。然而在你不斷模仿的同時你就得到不斷的提高?!迸笥言街v越起勁,又開始分析高手和低手在起步階段的差異,“其實(shí)所謂學(xué)得快,所謂高手,就是說他在模仿的過程中不斷比較自己寫的東西和框架本身的差異,不斷發(fā)現(xiàn)問題,想盡辦法解決問題,思考得越多,你碰到的問題就會越多,這是一個正向循環(huán),最終你的技術(shù)能力就會螺旋式的上升;而低手只會被動的等待問題,一旦問題自己覺得解決得差不多就放下了,這樣自然就不會產(chǎn)生更多的問題,最終技術(shù)能力就始終停留在那個菜鳥階段?!?/DIV>
 
朋友的話讓我慚愧不已,我就是典型的不求甚解啊,問題解決得差不多就行,能運(yùn)行就萬歲,總是不去深究,這樣給系統(tǒng)留下多大的隱患啊,而且也是對自己極大的不負(fù)責(zé)任。
 
聊完了技術(shù)方面的東西,我們想聊點(diǎn)輕松的,但是話題仍然離不開那些搞技術(shù)的新人們。朋友正好最近替公司招聘人才,面試了很多名校的計算機(jī)相關(guān)專業(yè)的一些畢業(yè)生。朋友說他們技術(shù)功底不夠扎實(shí),我說他們除了這個,心態(tài)也很浮躁,恨不得一參加工作就拿大幾千的工資,一進(jìn)公司就做項(xiàng)目經(jīng)理,太眼高手低。朋友也深有同感,說面試的時候就有一種怪怪的感覺,而且朋友進(jìn)一步將這種心態(tài)問題提升到提升到認(rèn)識論的高度,“其實(shí)我覺得他們本質(zhì)上是一個不能夠正確認(rèn)識自己的問題。認(rèn)識論其實(shí)很簡單,首先認(rèn)識問題,然后解決問題。你說你想做項(xiàng)目經(jīng)理,那么你需要具備哪些技能,技術(shù)上的,管理上的等,你需要多長時間來磨煉這些技能等。不也就是這樣嘛,認(rèn)識問題,抽象問題,進(jìn)行設(shè)計編碼最終解決問題,其實(shí)做所有的事情都是如此。”
 
跟朋友的這番聊天讓我受益匪淺,而讓我感受最深的不是上面提及的這些關(guān)于編程和心態(tài)兩方面的道理,而是我體會到:技術(shù)人員并不像人們想象中的那么呆板,每個人都在以自己的方式活著,不斷參悟人生的玄妙,而技術(shù)人員以一種更為奇特的方式和電腦搏斗,付出了更多的心血,當(dāng)然體悟得也更加深刻,然而最終每個人都會殊途同歸。


關(guān)鍵詞: 編程

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉