以下九種語言應(yīng)該是每個(gè)程序員所關(guān)注的技術(shù)。它們并不是最好的編程語言,有些甚至僅僅在專門項(xiàng)目應(yīng)用上提供幫助。但這九種編程語言具備上升空間,是值得每一個(gè)開發(fā)人員研究和學(xué)習(xí),或許有一天這些語言成為你的項(xiàng)目必不可少的。
Erlang語言:提供實(shí)時(shí)系統(tǒng)功能
Erlang是由瑞典電信設(shè)備制造商愛立信所轄的計(jì)算機(jī)科學(xué)研究室開發(fā),目的是可以應(yīng)付大規(guī)模開發(fā)活動(dòng)的程序設(shè)計(jì)語言和運(yùn)行環(huán)境。Erlang于1987年發(fā)布正式版本,erlang是函數(shù)式語言,提供了9個(gè)9的穩(wěn)定性和超高并發(fā)并發(fā)性能,于1998年發(fā)表開放源代碼版本。
Erlang是運(yùn)作于虛擬機(jī)的解釋型語言,在程序設(shè)計(jì)范型上,Erlang屬于多重范型編程語言,涵蓋函數(shù)式、并行及分布式。循序運(yùn)行的Erlang是一個(gè)及早求值,單次賦值和動(dòng)態(tài)類型的函數(shù)式編程語言。特別是在實(shí)時(shí)系統(tǒng)應(yīng)用上,如移動(dòng)電話交換機(jī)計(jì)費(fèi)系統(tǒng)。
GO語言:簡(jiǎn)單、動(dòng)態(tài)
Go語言是谷歌2009發(fā)布源編程語言,專門針對(duì)多處理器系統(tǒng)應(yīng)用程序的編程進(jìn)行了優(yōu)化,使用Go編譯的程序可以媲美C或C++代碼的速度,而且更加安全、支持并行進(jìn)程。
編譯后Go代碼的運(yùn)行速度與C語言非常接近,而且編譯速度非常快,就像在使用一個(gè)交互式語言。現(xiàn)有編程語言均未專門對(duì)多核處理器進(jìn)行優(yōu)化。Go就是谷歌工程師為這類程序編寫的一種語言。它不是針對(duì)編程初學(xué)者設(shè)計(jì)的,但學(xué)習(xí)使用它也不是非常困難。Go支持面向?qū)ο螅揖哂姓嬲姆庋b和反射 等功能,可以被用于網(wǎng)絡(luò)服務(wù)器、存儲(chǔ)系統(tǒng)和數(shù)據(jù)庫中。
Groovy語言: Java編程的精華
Groovy是用于Java虛擬機(jī)的一種敏捷的動(dòng)態(tài)語言,作為一種成熟的面向?qū)ο缶幊陶Z言,既可以用于面向?qū)ο缶幊蹋挚梢杂米骷兇獾哪_本語言。Groovy語言提供程序員來編寫簡(jiǎn)單的程序,充分利用現(xiàn)有的Java代碼的能力。
構(gòu)建在強(qiáng)大的Java語言之上并添加了從Python,Ruby和Smalltalk等語言中諸多特征,例如動(dòng)態(tài)類型轉(zhuǎn)換、閉包和元編程支持。不僅如此,緊密聯(lián)系到Java JAR文件,Groovy的代碼運(yùn)行像一個(gè)動(dòng)態(tài)類型的腳本語言,可全面進(jìn)入到靜態(tài)類型的Java對(duì)象的數(shù)據(jù)。
Ocaml語言:復(fù)雜數(shù)據(jù)層次“魔術(shù)師”
OCaml最早稱為Objective Caml,是Caml編程語言的主要實(shí)現(xiàn),開發(fā)工具包含交互式頂層解釋器,字節(jié)碼編譯器以及最優(yōu)本地代碼編譯器。Ocaml有一個(gè)巨大標(biāo)準(zhǔn)庫,使得可以像Python或者Perl語言一樣可以方便地開發(fā)各種應(yīng)用程序。
對(duì)于程序員來說,OCaml由編程語言社區(qū)努力推廣,并提供有目標(biāo)的支持,自動(dòng)內(nèi)存管理和設(shè)備的便攜性。目前可從蘋果的App Store獲下載OCaml應(yīng)用程序。通過OCaml語言的應(yīng)用特性,可以建立一個(gè)教代數(shù)的網(wǎng)站。
Coffeescript:JS轉(zhuǎn)譯語言
Coffeescript并非一種語言,受到Ruby、Python與Haskell等語言的啟發(fā),增強(qiáng)了Javascript的簡(jiǎn)潔性與可讀性的轉(zhuǎn)譯器。同時(shí)新增更復(fù)雜的功能,例如列表內(nèi)涵、模式匹配等。使用Coffeescript可以體會(huì)編程泛型的表達(dá)方式,減少逗號(hào)、括弧這些只是增強(qiáng)表達(dá)能力的一些副作用。