明輝手游網(wǎng)中心:是一個(gè)免費(fèi)提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺(tái)!

我看程序員(轉(zhuǎn)重粒子空間)

[摘要]我看程序員<br><br>朋友請(qǐng)我寫篇文章,談?wù)勅绾尉幊獭N曳枪Τ擅椭呷,自己那點(diǎn)兒經(jīng)驗(yàn)?zāi)贸鰜頃?huì)被人笑話的。但是看到周圍很多師弟師妹正在走我以前走過的錯(cuò)路,使我不得不斗膽說幾句,只望大家在程序員的道路上一帆風(fēng)順就好。<br><br>程序員——一個(gè)...
我看程序員<br>
<br>
朋友請(qǐng)我寫篇文章,談?wù)勅绾尉幊。我非功成名就之高人,自己那點(diǎn)兒經(jīng)驗(yàn)?zāi)贸鰜頃?huì)被人笑話的。但是看到周圍很多師弟師妹正在走我以前走過的錯(cuò)路,使我不得不斗膽說幾句,只望大家在程序員的道路上一帆風(fēng)順就好。<br>
<br>
程序員——一個(gè)毀譽(yù)參半的稱謂。想當(dāng)初曾經(jīng)被視作英雄,眾人景仰。而如今,卻被許多人瞧不起,客氣的說他們是“高技術(shù)工人”,不客氣的就直接稱其為“牛”了。圖靈獎(jiǎng)獲得者,Edsgar Dijkstra在他的《卑微的電腦程序員》一文中說:&quot;對(duì)我來說,電腦程序員是個(gè)尊稱,但對(duì)其他一些人來說,電腦程序員確是不懂他自己在干什么,而是只會(huì)依指令行事之徒,一些只知道分析、追求語言特性的人!笨磥,許多人曲解了“程序員”這個(gè)名詞的涵義。那什么樣的人才是真正的程序員呢?我斗膽給程序員分為四類,請(qǐng)大家對(duì)號(hào)入座。<br>
<br>
一、高中生程序員<br>
<br>
這里絲毫沒有貶低高中生的意思。在美國(guó),有大量的高中生從事程序員的職業(yè),他們的工作就是編碼、編碼、再編碼。很可悲,目前中國(guó)的大學(xué)生基本都是做這樣的工作,甚至某些碩士、博士也是如此。<br>
<br>
這一類型的程序員認(rèn)為語言是最重要的。他們認(rèn)真地學(xué)習(xí)語言的語法和函數(shù)庫(kù)。他們不停地學(xué)習(xí)語言,以為只要掌握的語言多、新,就能有競(jìng)爭(zhēng)力,有好的工作。他們確實(shí)很厲害,VC、VB、Delphi、PB、Java、ASP、PHP等等都能拿來就用。但是,正因?yàn)樗麄,編程才被稱為“牛都可以干的事”。<br>
<br>
在正規(guī)的公司,高中生程序員整日都在添表格——工程師程序員把軟件劃分模塊,甚至詳細(xì)定義好了每一個(gè)函數(shù),高中生們就是向這些函數(shù)里添加代碼,如同添表格一樣。很多時(shí)候,高中生甚至不知道他做的項(xiàng)目是什么,只知道這個(gè)函數(shù)的功能是什么。<br>
<br>
在國(guó)內(nèi),如此正規(guī)的軟件公司很少,大多數(shù)還處于作坊式的開發(fā)模式,所以,高中生程序員還是很吃香的。幾個(gè)人一商量就開干,沒有完整的計(jì)劃,不考慮維護(hù)性、重用性,注釋懶得寫,文檔更不提。這樣,項(xiàng)目非常依賴這幾個(gè)人,自然他們的日子過得很好。他們最頭疼的事情是后期維護(hù),每當(dāng)要加堿功能、改bug的時(shí)候,他們就會(huì)發(fā)現(xiàn)自己已經(jīng)看不懂自己寫的代碼了。<br>
<br>
軟件工程正在逐步實(shí)行,公司越來越正規(guī),高中生程序員也就越來越難做了。年輕時(shí),他們或許可以打拼一番,但是30、40歲之后,當(dāng)他們對(duì)新語言、新技術(shù)的接受能力已比不過年輕的程序員時(shí),他們也就退出了競(jìng)爭(zhēng)行列。<br>
<br>
當(dāng)“軟件集成電路”的夢(mèng)想變?yōu)楝F(xiàn)實(shí),當(dāng)各種可重用控件、組件、類庫(kù)都已經(jīng)具備,那時(shí)就不再需要高中生程序員了。<br>
<br>
二、黑客程序員<br>
<br>
黑客決不是那些到處黑機(jī)器搞破壞的人,他們是一群癡迷于技術(shù)的人。<br>
<br>
他們從不循規(guī)蹈矩,不信奉任何規(guī)則、定理,總是從常人不可想象的角度去思考、編程、使用工具。這樣做的結(jié)果,或者發(fā)現(xiàn)系統(tǒng)漏洞,或者發(fā)現(xiàn)更高效、巧妙的方法。他們從不滿足于使用別人封裝的接口、定制的框架,總是要刨根問底,對(duì)技術(shù)的鉆研直至底層。<br>
<br>
他們中間,高學(xué)歷者并不多,多的是熱血青年。對(duì)他們來說,當(dāng)黑客程序員決不是職業(yè),而是愛好。當(dāng)一個(gè)人對(duì)自己所作的事充滿興趣時(shí),他肯定能作出非凡的成果。這就是他們成功的根本原因。<br>
<br>
黑客是推動(dòng)技術(shù)進(jìn)步的最重要力量之一。<br>
<br>
三、工程師程序員<br>
<br>
他們是企業(yè)的中堅(jiān),屬于管理階層。人們送給他們美稱——軟件工程師,但他們?nèi)韵矚g說自己是程序員,因?yàn)樗麄冎械拇蠖鄶?shù)是從高中生程序員成長(zhǎng)起來的。<br>
<br>
“軟件工程”是他們的法寶,在這套理論導(dǎo)引下,他們領(lǐng)導(dǎo)者整個(gè)軟件的開發(fā)過程。他們知道什么樣的軟件是擁有市場(chǎng)的,知道用戶需要什么樣的軟件,知道該讓誰來編代碼、誰來測(cè)試,使整個(gè)團(tuán)隊(duì)協(xié)調(diào)一致。他們?cè)O(shè)計(jì)出了一個(gè)個(gè)可重用的模塊,讓公司的開發(fā)工作越來越高效。他們?cè)O(shè)計(jì)出的系統(tǒng)都是可維護(hù)的,能夠方便地做各種修改、擴(kuò)充?傊,他們是為高中生程序員做表格的人。<br>
<br>
他們也懂技術(shù),不過他們更注重的是技術(shù)的思想而不是末節(jié)的使用。比如當(dāng)Java出現(xiàn)的時(shí)候,他并不是去學(xué)Java的語法、函數(shù)庫(kù),而是看各種介紹Java的文章,聽別人的評(píng)論,領(lǐng)會(huì)Java的功能和思想,思考怎樣利用Java的特性。<br>
<br>
隨著軟件業(yè)的發(fā)展,必須拋棄作坊式的手段,實(shí)施基于團(tuán)隊(duì)的科學(xué)的管理和開發(fā)過程。所以對(duì)工程師的需求越來越大,然而現(xiàn)在合格的、富有經(jīng)驗(yàn)的工程師卻很少。<br>
<br>
四、科學(xué)家程序員<br>
<br>
有些科學(xué)家在設(shè)計(jì)出算法后,將它交給別人在計(jì)算機(jī)上實(shí)現(xiàn)。另一些科學(xué)家在設(shè)計(jì)的同時(shí)便考慮到可實(shí)現(xiàn)性,并能利用計(jì)算機(jī)的特性增強(qiáng)算法,更可貴的是他們饒有興致地自己編程實(shí)現(xiàn)算法。后一種科學(xué)家便是科學(xué)家程序員。<br>
<br>
他們具有深厚的理論水平,帶動(dòng)著計(jì)算機(jī)領(lǐng)域中各個(gè)學(xué)科的前進(jìn)。<br>