信息技術的發展時間雖然不長,但其爆炸式的發展速度使信息技術迅速覆蓋社會和人類生活的各個角落。程序員們是這場信息化浪潮的見證者之一,更是其中的主要參與者,這是時代賦予每個程序員的機會和責任。
信息技術的更新速度是驚人的,程序員的職業生涯則是一個要求不斷學習的過程,永遠不能固步自封。本人在工作期間曾看見過很多程序員只要有閑暇時間就瀏覽一些沒有太大作用的網頁,在網上聊天,打游戲,浪費了大量的時間,十分不可取。而另外一種情況是,IT技術的日新月異使很多程序員眼花繚亂,什么都想學,卻又不知從何學起,今天看看這個,明天學學那個,貪多不熟。
雖然IT技術發展迅速,但很多技術都是有規律可循,一些基本的概念、原理和方法還很通用,可以舉一反三。本人根據自己的體會和經驗,向那些剛剛踏入 IT行業的新程序員們或正在迷茫的程序員們推薦程序員必須把握的七種武器,有了這七種武器,雖不敢說笑傲江湖,但將自己立于不敗之地還是可以的。
第一種武器:開發工具
至少熟練把握兩到三種開發工具的使用,這是程序員的立身之本,其中C/C++和java是我重點推薦的開發工具,C/C++以其高效率和高度的靈活性成為開發工具中的利器,很多系統級的軟件還是用C/C++編寫。而JAVA的跨平臺和與WEB很好的結合是JAVA的優勢所在,而本人對SUN公司的 “網絡即計算機”的概念相當欣賞,并相信JAVA即其相關的技術集JAVA One會成為未來的主流開發工具之一。其次,假如能把握一種簡便的可視化開發工具,如VB,PowerBuilder,Delphi,C++ Builder,則更好,這些開發工具減小了開發難度,并能夠強化程序員對象模型的概念。另外,需要把握基本的腳本語言,如shell,perl等,至少能讀懂這些腳本代碼。
第二種武器:數據庫
為什么數據庫是如此重要?很多應用程序都是以數據庫的數據為中心,而數據庫的產品也有不少,其中關系型數據庫仍是主流形式,所以程序員至少熟練把握一兩種數據庫,對關系型數據庫的要害元素要非常清楚,要熟練把握SQL的基本語法。雖然很多數據庫產品提供了可視化的數據庫治理工具,但SQL是基礎,是通用的數據庫操作方法。假如沒有機會接觸商業數據庫系統,可以使用免費的數據庫產品是一個不錯的選擇,如MySQL, Postgres等。
第三種武器:操作系統
當前主流的操作系統是Windows,linux/Unix,熟練地使用這些操作系統是必須的,但只有這些還遠遠不夠。要想成為一個真正的編程高手,需要深入了解操作系統,了解它的內存治理機制、進程/線程調度、信號、內核對象、系統調用、協議棧實現等。Linux作為開發源碼的操作系統,是一個很好的學習平臺,Linux幾乎具備了所有現代操作系統的特征。雖然Windows系統的內核實現機制的資料較少,但通過互聯網還是能獲取不少資料。只有對操作系統有一定的了解后,你會發現自己上了一個新的臺階。
第四種武器:網絡協議TCP/ip
在互聯網如此普及的今天,假如您還沒有對互聯網的支撐協議TCP/IP協議棧有很好的把握,就需要迅速補上這一課,網絡技術已改變了軟件運行的模式,從最早的客戶/服務器結構,到今天的WEB Services,再到未來的網格計算,這一切都離不開以TCP/IP協議棧為基礎的網絡協議支持,所以,深入把握TCP/IP協議是非常必要的。至少,你需要了解ISO七層協議模型,IP/UDP/TCP/HTTP等常用協議的原理和三次握手機制。
新聞熱點
疑難解答