版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、程序員的職業(yè)生涯程序員的職業(yè)生涯程序員的職業(yè)生涯可分為四個階段,初級程序員(菜鳥)、高級程序員(熟練工)、系統(tǒng)程序員(高手)、軟件大師(大師),其作品也經(jīng)歷四種境界:?可以運行的程序?健壯、高效的程序?結(jié)構(gòu)優(yōu)美的程序?思想深邃的程序程序員的必經(jīng)第一個階段程序員的必經(jīng)第一個階段都是編寫可以運行的程序。很多人的編程生涯是從“HelloWld”開始,當(dāng)?shù)谝淮伟凑战炭茣系牟襟E,將源文件編輯完后,編譯、連接、運行,在屏幕上顯示出“HelloWl
2、d”時,心中的激動一點也不亞于阿里巴巴打開了寶庫的大門。初級程序員的目標(biāo)一般是讓程序能運行起來,他們迷惑于庫函數(shù)的眾多,不知道該用那一個,他們還要學(xué)習(xí)基本的語法,以使程序編譯通過。初級程序員一般不會考一般不會考一般不會考慮設(shè)計模式、軟件結(jié)構(gòu)慮設(shè)計模式、軟件結(jié)構(gòu)慮設(shè)計模式、軟件結(jié)構(gòu)等問題。記得本人編寫的第一個較大的程序是本人的本科畢業(yè)論文題目——一個計算機輔助實驗系統(tǒng),開發(fā)工具為TurboC,在DOS下開發(fā)(那個時候Windows還不太流
3、行,怎么樣,年代夠久遠吧),整個軟件大約7000行代碼,在當(dāng)時已經(jīng)能干不少事,在DOS下也能顯示不少花里胡哨的圖形界面,支持中文,支持鼠標(biāo)操作(那時候在DOS下需要自己處理鼠標(biāo)事件中斷),當(dāng)時還頗受好評??墒墙裉煸僦匦聹亓?xí)過去的作品,真有點摻不忍睹,整個軟件毫無結(jié)構(gòu)可言,一共分成兩個源文件還是由于編譯器不支持一個太大的源文件而被迫分開,整個系統(tǒng)就是源代碼的簡單堆砌。相信每個程序員都需要經(jīng)歷這個階段,它是程序員職業(yè)生涯的開始,沒有捷徑可以
4、跨越,程序員職業(yè)生涯的開始,沒有捷徑可以跨越,程序員職業(yè)生涯的開始,沒有捷徑可以跨越,只有不斷的實踐、學(xué)習(xí)和總結(jié)。只有不斷的實踐、學(xué)習(xí)和總結(jié)。只有不斷的實踐、學(xué)習(xí)和總結(jié)。第二階段第二階段程序員已積累了不少的編程經(jīng)驗,語法和庫函數(shù)不再是障礙,他們已不再滿足于程序正確運行、功能實現(xiàn)無誤。他們需要了解程序背后發(fā)生的事情,需要了解操作系統(tǒng)的原理和調(diào)度機制,內(nèi)存管理,文操作系統(tǒng)的原理和調(diào)度機制,內(nèi)存管理,文操作系統(tǒng)的原理和調(diào)度機制,內(nèi)存管理,文件
5、系統(tǒng)組織件系統(tǒng)組織件系統(tǒng)組織等;了解開發(fā)工具的細節(jié),如C的函數(shù)調(diào)用機制,參數(shù)的傳送機制、堆棧的建立過程等;了解C的封裝、繼承和多態(tài)性背后程序員的職業(yè)生涯術(shù)的日新月異使很多程序員眼花繚亂,什么都想學(xué),卻又不知從何學(xué)起,今天看看這個,明天學(xué)學(xué)那個,貪多不熟。雖然IT技術(shù)發(fā)展迅速,但很多技術(shù)都是有規(guī)律可循,一些基本的概念、原理和方法還很通用,可以舉一反三。本人根據(jù)自己的體會和經(jīng)驗,向那些剛剛踏入IT行業(yè)的新程序員們或正在迷茫的程序員們推薦程序
6、員必須掌握的七種武器,有了這七種武器,雖不敢說笑傲江湖,但將自己立于不敗之地還是可以的。第一種武器:開發(fā)工具至少熟練掌握兩到三種開發(fā)工具的使用,這是程序員的立身之本,其中CC和JAVA是我重點推薦的開發(fā)工具,CC以其高效率和高度的靈活性成為開發(fā)工具中的利器,很多系統(tǒng)級的軟件還是用CC編寫。而JAVA的跨平臺和與WEB很好的結(jié)合是JAVA的優(yōu)勢所在,而本人對SUNSUNSUN公司的公司的公司的““網(wǎng)絡(luò)即計算機網(wǎng)絡(luò)即計算機網(wǎng)絡(luò)即計算機””的
7、概念的概念的概念相當(dāng)欣賞,并相信JAVA即其相關(guān)的技術(shù)集JAVAOne會成為未來的主流開發(fā)工具之一。其次,如果能掌握一種簡便的可視化開發(fā)工具簡便的可視化開發(fā)工具簡便的可視化開發(fā)工具,如VB,PowerBuilder,Delphi,CBuilder,則更好,這些開發(fā)工具減減小了開發(fā)難度,并能夠強化程序員對象模型的概念小了開發(fā)難度,并能夠強化程序員對象模型的概念小了開發(fā)難度,并能夠強化程序員對象模型的概念。另外,需要掌握基本的腳本語言,如s
8、hellperl等,至少能讀懂這些腳本代碼。第二種武器:數(shù)據(jù)庫為什么數(shù)據(jù)庫是如此重要很多應(yīng)用程序都是以數(shù)據(jù)庫的數(shù)據(jù)為中心,而數(shù)據(jù)庫的產(chǎn)品也有不少,其中關(guān)系型數(shù)據(jù)庫仍是主流形式,所以程序員至少熟練掌握一兩種數(shù)據(jù)庫,對關(guān)系型數(shù)據(jù)庫的關(guān)鍵元素要非常清楚,要熟練掌握SQL的基本語法。雖然很多數(shù)據(jù)庫產(chǎn)品提供了可視化的數(shù)據(jù)庫管理工具,但SQL是基礎(chǔ),是通用的數(shù)據(jù)庫操作方法。如果沒有機會接觸商業(yè)數(shù)據(jù)庫系統(tǒng),可以使用免費的數(shù)據(jù)庫產(chǎn)品是一個不錯的選擇,如
9、mySQLPostgres等。第三種武器:操作系統(tǒng)當(dāng)前主流的操作系統(tǒng)是Windows,LinuxUnix,熟練地使用這些操作系統(tǒng)是必須的,但只有這些還遠遠不夠。要想成為一個真正的編要想成為一個真正的編要想成為一個真正的編程高手,需要深入了解操作系統(tǒng)程高手,需要深入了解操作系統(tǒng)程高手,需要深入了解操作系統(tǒng),了解它的內(nèi)存管理機制、進程線程調(diào)度、信號、內(nèi)核對象、系統(tǒng)調(diào)用、協(xié)議棧實現(xiàn)等。Linux作為開發(fā)源碼的操作系統(tǒng),是一個很好的學(xué)習(xí)平臺,L
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
評論
0/150
提交評論