如果你從多年前就開(kāi)始玩手機(jī)或者電腦,那么現(xiàn)在你會(huì)發(fā)現(xiàn)科技正在以驚人的速度發(fā)展,帶來(lái)的一個(gè)最直觀的表現(xiàn)就是市場(chǎng)對(duì)編程人才的大量需求,并且編程工作的薪水要明顯高于其他行業(yè)的平均水平。即便不在科技行業(yè),如果你懂點(diǎn)編程,那也會(huì)為你加分不少。當(dāng)我們的生活越來(lái)越依賴信息化的網(wǎng)絡(luò)生活時(shí),你會(huì)發(fā)現(xiàn)編程的重要性。
1. Java
Java是基于類的面向?qū)ο蟮木幊陶Z(yǔ)言,擁有跨平臺(tái)、面向?qū)ο、泛型編程的特性,廣泛應(yīng)用于企業(yè)級(jí)Web應(yīng)用開(kāi)發(fā)和移動(dòng)應(yīng)用開(kāi)發(fā)。任職于Sun Microsystems的詹姆斯?高斯林等人于1990年代初開(kāi)發(fā)Java語(yǔ)言的雛形,最初被命名為Oak,目標(biāo)設(shè)置在家用電器等小型系統(tǒng)的程序語(yǔ)言, 應(yīng)用在電視機(jī)、電話、鬧鐘、烤面包機(jī)等家用電器的控制和通信。由于這些智能化家電的市場(chǎng)需求沒(méi)有預(yù)期的高,Sun公司放棄了該項(xiàng)計(jì)劃。隨著90年代互聯(lián)網(wǎng) 的發(fā)展,Sun公司看見(jiàn)Oak在互聯(lián)網(wǎng)上應(yīng)用的前景,于是改造了Oak,于1995年5月以Java的名稱正式發(fā)布。Java伴隨著互聯(lián)網(wǎng)的迅猛發(fā)展而發(fā) 展,逐漸成為重要的網(wǎng)絡(luò)編程語(yǔ)言。Java是為跨多個(gè)軟件平臺(tái)而設(shè)計(jì),這意味著一個(gè)在Mac OS X上寫的程序也能運(yùn)行在Windows上。著名的黑客工具burpsuite就是Java寫的。
2. C語(yǔ)言
C語(yǔ)言是一種通用的命令式編程語(yǔ)言,于上個(gè)世紀(jì)70年代開(kāi)發(fā),是最老的使用最廣泛的語(yǔ)言,為其他語(yǔ)言提供了構(gòu)建模塊,比如C#、Java、 java script以及Python等。C語(yǔ)言被廣泛應(yīng)用與各種不同的操作系統(tǒng)和應(yīng)用中。由于C語(yǔ)言為其他語(yǔ)言提供了基礎(chǔ),所以建議在學(xué)其他語(yǔ)言之前 先學(xué)下C或者C++。
3. C++
C++是一種使用非常廣泛的計(jì)算機(jī)編程語(yǔ)言,最初是作為C語(yǔ)言的增強(qiáng)版出現(xiàn)。C++是一種靜態(tài)數(shù)據(jù)類型檢查的、支持多重編程范式的通用程序設(shè)計(jì) 語(yǔ)言。它支持過(guò)程化程序設(shè)計(jì)、數(shù)據(jù)抽象、面向?qū)ο蟪绦蛟O(shè)計(jì)、泛型程序設(shè)計(jì)等多種程序設(shè)計(jì)風(fēng)格。C++被用在一些知名軟件中,比如Firefox、 Winamp以及Adobe programs。C++可以用來(lái)開(kāi)發(fā)系統(tǒng)軟件、應(yīng)用軟件、高性能的服務(wù)器、客戶端應(yīng)用程序以及視頻游戲。
4. C#
C#是微軟公司發(fā)布的一種面向?qū)ο蟮摹⑦\(yùn)行于.NET Framework之上的高級(jí)程序設(shè)計(jì)語(yǔ)言,結(jié)合了C和C++的法則。
5. Objective-C
Objective-C是一種通用、高級(jí)、面向?qū)ο蟮木幊陶Z(yǔ)言。它擴(kuò)展了標(biāo)準(zhǔn)的ANSI C編程語(yǔ)言,將Smalltalk式的消息傳遞機(jī)制加入到ANSI C中。它是蘋果的OS X和iOS 操作系統(tǒng),及其相關(guān)API、Cocoa和Cocoa Touch的主要編程語(yǔ)言。
6. PHP
PHP(Hypertext Processor) 是一種免費(fèi)的強(qiáng)大的服務(wù)器端腳本語(yǔ)言,主要目標(biāo)是允許網(wǎng)絡(luò)開(kāi)發(fā)人員快速編寫動(dòng)態(tài)頁(yè)面,但PHP也被用于其他很多領(lǐng)域。尤其適用于網(wǎng)絡(luò)開(kāi)發(fā)并可嵌入HTML 中使用,非常受web開(kāi)發(fā)者的歡迎,包括WordPss、Digg以及Facebook在內(nèi)均使用了該語(yǔ)言。
7. Python
Python是一種高級(jí)的服務(wù)器端腳本語(yǔ)言,適用于網(wǎng)站和移動(dòng)app開(kāi)發(fā)。對(duì)初學(xué)者來(lái)說(shuō),Python語(yǔ)言的可讀性和緊湊的語(yǔ)法使之簡(jiǎn)單易學(xué), 相比較其他語(yǔ)言,開(kāi)發(fā)者可以使用更少的代碼來(lái)表達(dá)一個(gè)概念。網(wǎng)頁(yè)版的應(yīng)用,比如Instagram,、Pinterest以及Rdio都使用了其相關(guān)的 web框架?Django,另外谷歌、Yahoo!以及NASA也是該框架的使用者。著名的Sqlmap就是Python寫的
8. Ruby
Ruby是一種為簡(jiǎn)單快捷的面向?qū)ο缶幊蹋嫦驅(qū)ο蟪绦蛟O(shè)計(jì))而創(chuàng)的腳本語(yǔ)言,可用于網(wǎng)站和移動(dòng)app的開(kāi)發(fā)。開(kāi)源Web應(yīng)用框架?Ruby on Rails (Rails)就是使用Ruby語(yǔ)言編寫的,并被廣泛被Scribd、GitHub、Groupon以及Shopify等使用。和Python一樣,對(duì)初 學(xué)者來(lái)說(shuō),Ruby是一種非常容易使用的語(yǔ)言,F(xiàn)在非常著名且強(qiáng)大的黑客工具M(jìn)etasploit的前期就是用ruby寫的。
9. java script
java script是一種基于對(duì)象和事件驅(qū)動(dòng)并具有相對(duì)安全性的客戶端腳本語(yǔ)言。同時(shí)也是一種廣泛用于客戶端Web開(kāi)發(fā)的腳本語(yǔ)言,常用來(lái)給HTML網(wǎng)頁(yè)添加動(dòng)態(tài)功能,比如響應(yīng)用戶的各種操作。java script也可以用在游戲開(kāi)發(fā),編寫左面應(yīng)用程序等方面。
10. SQL
Structured Query Language (SQL)一種編程語(yǔ)言,用于數(shù)據(jù)庫(kù)中的標(biāo)準(zhǔn)數(shù)據(jù)查詢語(yǔ)言,IBM公司最早使用在其開(kāi)發(fā)的數(shù)據(jù)庫(kù)系統(tǒng)中。1986年10月,美國(guó)國(guó)家標(biāo)準(zhǔn)學(xué)會(huì)(ANSI) 對(duì)SQL進(jìn)行規(guī)范后,以此作為關(guān)系式數(shù)據(jù)庫(kù)管理系統(tǒng)的標(biāo)準(zhǔn)語(yǔ)言(ANSI X3. 135-1986),1987年得到國(guó)際標(biāo)準(zhǔn)組織的支持下成為國(guó)際標(biāo)準(zhǔn)。不過(guò)各種通行的數(shù)據(jù)庫(kù)系統(tǒng)在其實(shí)踐過(guò)程中都對(duì)SQL規(guī)范作了某些編改和擴(kuò)充。所 以,實(shí)際上不同數(shù)據(jù)庫(kù)系統(tǒng)之間的SQL不能完全相互通用。
目前計(jì)算機(jī)語(yǔ)言可謂百家爭(zhēng)鳴,剛接觸編程的同學(xué),可能都有些迷茫,不知道該學(xué)那個(gè)語(yǔ)言好,經(jīng)常會(huì)發(fā)出這樣的聲音。“那個(gè)語(yǔ)言比較好”。這也是小編聽(tīng)到最多的發(fā)問(wèn)。
其實(shí),沒(méi)有什么所謂的好的的語(yǔ)言。如果某人說(shuō)什么語(yǔ)言比什么語(yǔ)言好,估計(jì)馬上會(huì)遇到雪片似的攻擊,更有可能千里之外的老母也會(huì)受到無(wú)辜的問(wèn)候。其實(shí)哥套用那句話“沒(méi)有最好的語(yǔ)言,只有最適合的語(yǔ)言”。這是站在全局大環(huán)境下,說(shuō)這句話的。但是無(wú)法解答入門者的提問(wèn)啊,是啊,你還是沒(méi)有告訴他選擇什么語(yǔ)言好。
大部分人學(xué)編程就是為了謀生,編碼工作本來(lái)是一門比較高的科技工作。但是在中國(guó)今天這個(gè)大環(huán)境下,已經(jīng)淪為可悲的碼農(nóng)。在哥的眼里看來(lái),甚至有些低賤。大部分人基本上過(guò)著朝九晚九的日子。拿著一點(diǎn)能夠供房的工資,溫水煮青蛙一樣,到快死之前才發(fā)現(xiàn),自己從來(lái)沒(méi)有停止過(guò)忙碌,但是就被這樣緩慢扼殺!熬幋a有風(fēng)險(xiǎn),入行需謹(jǐn)慎”。
語(yǔ)言太多,很多語(yǔ)言在小編的眼里看來(lái),的確是垃圾語(yǔ)言。為什么垃圾,因?yàn)樵谏虡I(yè)生產(chǎn)中使用很少,特別是鎮(zhèn)里面公司使用的更是鳳毛麟角?啾频拇a農(nóng)們,大都是靠編程謀生(別和我提興趣,在這樣的情況下有興趣也慢慢被加班扼殺),能好找工作,能多拿點(diǎn)錢才是王道。
大多數(shù)苦逼的碼農(nóng),隨著工齡的增加,一般至少會(huì)學(xué)三門以上的語(yǔ)言。小編在這里從上面十種編程語(yǔ)言推薦合適四門語(yǔ)言給初學(xué)者們,讓他們少走彎路。
第一個(gè)就是js。如果說(shuō)互聯(lián)網(wǎng)能發(fā)展到今天的輝煌,風(fēng)扉全球。web 1.0立下了汗馬功勞。也就是html語(yǔ)言的功勞。那么今天web2.0將延續(xù)這個(gè)輝煌的是哪位呢。js當(dāng)仁不讓了。js是個(gè)腳本語(yǔ)言,也是個(gè)客戶端的語(yǔ)言。如果你學(xué)好js,相信很容一找到web前臺(tái)開(kāi)發(fā)工程師的工作。并且哥很負(fù)責(zé)任的告訴你,js發(fā)展目前剛剛在起跑階段,生命周期還很長(zhǎng)。
第二個(gè)推薦的就是php。 php也是腳本語(yǔ)言,和js不同的是,它是后臺(tái)腳本語(yǔ)言。用它來(lái)寫cgi,可謂是得心應(yīng)手。效率極高。又容易學(xué)。php經(jīng)過(guò)這兩年的大環(huán)境滋潤(rùn),已經(jīng)如日中天,相信其生命周期還很漫長(zhǎng)。值得推薦給立志做碼農(nóng)的初哥們。學(xué)好它,應(yīng)該比較好找“web后臺(tái)開(kāi)發(fā)工程師”這類工作。
第三位推薦的是c/c++; 這個(gè)是王老五了,生命周期過(guò)來(lái)30年,為什么哥還推薦呢。因?yàn)槠溆械锰飒?dú)厚的競(jìng)爭(zhēng)條件。看看c/c++走過(guò)的幾十年,身邊倒下無(wú)數(shù)的尸體;抑或是當(dāng)年早期或中期的戰(zhàn)友或敵人,活到現(xiàn)在的還有存活的嗎,哥很遺憾的告訴你,沒(méi)有,即使有,也是在茍活。只有它還在金槍不倒?纯,這么強(qiáng)大生命力語(yǔ)言為什么不學(xué)呢。學(xué)好他。你不但可以得到一份不錯(cuò)的薪水職位。還能得到些許心理安慰。為啥。因?yàn)榇蠖鄶?shù)的比較NB點(diǎn)開(kāi)源服務(wù)器和OS,都是用c寫的,這時(shí)候要分析比較棘手的問(wèn)題,還是要看源碼的。你的差異化就體現(xiàn)出來(lái)鳥。用C語(yǔ)言,你應(yīng)該可以找到PC桌面開(kāi)發(fā)工程師,嵌入式開(kāi)發(fā)工程師,或后臺(tái)開(kāi)發(fā),游戲開(kāi)發(fā)工程師等職位。
最后一個(gè)是java語(yǔ)言,這個(gè)語(yǔ)言曾經(jīng)活過(guò),后來(lái)快要死了,不過(guò)近一年又開(kāi)始煥發(fā)第二春,原因是google推出的andriod系統(tǒng),F(xiàn)在andriod系統(tǒng)如春風(fēng)吹拂大地,到處一片生機(jī)。眼下學(xué)java還是很值得。找一份高薪手機(jī)客戶端開(kāi)發(fā),至少是一個(gè)不錯(cuò)選擇。