目前最值得學習的9種前沿的開發語言,可能有一天你會發現……
作者丨Peter Wayner
翻譯丨Vincent
從事主流開發語言的人員有很多,但是除了這些語言,我們也應該了解一些其他的,這樣,我們才能根據場景的不同決定採用哪一種。本文中作者為我們列舉了9種語言的應用場景。
目前比較流行的開發語言之所以能夠被大多數開發人員使用,是因為它們各自有各自的優勢。但是除了C#、Java或者JavaScript這些語言外,還有些其它的高級語言在某些時候也會提供很高的價值。下面的9種語言應該出現在每一位程序員的候選清單中。它們可能不是所有場景下的最佳選擇,因為它們都是有專用於某一種情況下的。但它們都提供了值得研究和學習的有利方面。可能有一天,其中一種語言被證明是你的項目或老闆所需要的。
Kotkin:重新設計過的Java語言
Java是一門偉大的語言,支持各種主流的平台。但是它現在有點過時了,而且痛點正在被放大。Kotlin的意思是快速的編譯,它與Java並存,解決了Java開發者耗時長的問題。Kotkin的特性中需要重點關注的就是它對空值的處理,這個問題每個開發者都會遇到。Kotkin在這一方面取得了巨大的進步,它還可以和現有的Java代碼一起使用,而且還可以將代碼編譯成JavaScript和本地代碼。
Erlang:實時系統的函數式編程
Erlang的秘密武器就是功能範式。大多數代碼都被迫在自己的小世界中運行,這樣這些代碼就不會對系統其他部分產生影響。這些函數在內部完成所有的工作,在類似於沙箱一樣的的小「進程」中進行運行,並且只通過郵件消息相互通信。該模型還簡化了運行時代碼需要哪些代碼確定可以同時運行的過程。這樣做就使得並發性非常容易檢測,所以運行時進程的開銷也會非常小。
如果你正在構建一個實時系統,該系統沒有空間給那些已經刪掉的數據,比如行動電話交換機的計費系統,那麼可以考慮一下Erlang。
Go:簡單性和動態性
谷歌在調查開發語言的過程中,發現這些語言雜亂無章、複雜,而且往往很慢。2009年,谷歌發布了它的解決方案:一種看起來像C語言的靜態類型的語言,但它的後台更智能,可以讓程序員不必指定類型和處理malloc調用。谷歌使用了和Sun以及蘋果公司完全不一樣的策略,他們希望Go語言的代碼能夠「簡單到可以一直保存在程序員的腦海中」。
如果你是一家想要吸引谷歌眼球的創業公司,你需要建立一些伺服器端業務邏輯,那麼Go就是一個很好的起點。
OCaml:適用於複雜的數據層次
有些程序員不希望指定變數的類型,動態語言可以做到。其他人則喜歡定義變數是否整數、字元串或對象。對他們來說,許多編譯語言提供了他們想要的所有支持。還有一些人夢想著精心設計的層次結構,甚至可以說是創造出「代數」的類型。他們設想了各種不同類型的列表和表,它們被組合在一起,以表達複雜的、多層次的數據。它們談到了多態性、模式匹配原語和數據封裝。這僅僅是一個複雜的、高度結構化的世界的開始,他們想要的是類型、元類型和元數據類型。
點擊展開全文


※AI 產學研大集結,2017中國人工智慧大會將於明日正式召開
※從大學輟學到名企資深開發,犧牲正規教育換取實踐經驗的涅槃
※PostgreSQL 10 Beta 2發布 大量Bug被修復
※看Github上的開發者是如何更換編程語言的?
TAG:CSDN |
※看房時,開發商最怕你觀察「這裡」,發現問題,最好去找下一家!
※交房時,開發商最怕業主「檢查」這4處,發現一個,字就別簽了!
※未被開發的島上發現一隻老鼠,仔細一看才發現,它比人到的還早
※四十多年前,秦始皇陵發生了一件可怕的事,致使至今不敢開發挖掘
※如果哈登開發出了後仰跳投,會是一個什麼樣的場景?
※現在開發商做的水電都要重做,但以前的房子很少會改,這是為什麼?
※戰鬥名族開發的俯卧撐就是不一樣?能做到最後幾種就不是一般人!
※交房時,開發商最怕檢查這3個地方,發現問題就不要簽字!
※沒有藝術天賦?no!可能是還沒開發出來!
※未來人類如何開發火星?最缺乏的還是水和空氣,但可以這樣解決
※他開發了一款模擬父親語氣的聊天AI,還沒做完人就抑鬱了……
※有了這個神器你也能開發「跳一跳」
※迪拜又搞事了,斥資3億建了一個世界最大金相框,原來富有真的可以開發想像力……
※谷歌開發出了幾乎是世界上最好的 AI,真正的 AI 生活要來了嗎?
※谷歌開發出了幾乎是世界上最好的AI,真正的AI生活要來了嗎?
※交房時,開發商最怕業主「檢查」這4處,發現問題,字就別簽了!
※辛苦買的房,到手後卻發現縮了水?開發商可能會從這幾方面做手腳
※它是毀滅的代言人,當德國擁有後,將其能力開發到最大
※小米6開發版迎來更新,有驚喜,但是網友的發問也是一針見血
※扉間開發的三個術被後代發揚光大,除穢土轉生還有一個也是禁術?