盤點預測與趨勢,哪種語言最受青睞

圖片描述

哪門語言最受青睞,2017年,開發者應該學什麼?
以下彙集了數據信息和一些觀點,希望給大家帶來啓示。感謝科技網站 HackerEarth、HackerNews、Github,門戶網站 Glassdoor、Indeed的編輯們。

在2017年最受歡迎的頂級編程語言

Java SEJava EEJava Web
Python
PHP
Swift
R
Matlab
Arduino

在2017年最熱門的領域

機器學習
深度學習
人工智能
虛擬現實

關於Java

用於Android開發和世界上大多數金融系統。Java的速度和性能是顯而易見的首選。它多年來被評價爲最好的編程語言,它總是很好地保持用戶的技能更新。

Java 9 預計在 2017 年發佈,並將帶來備受歡迎的新功能,例如用於評估代碼的 repl、對 HTTP 2.0 的支持和新的 API。有才能的 Java 開發人員和使用該語言開發項目的人對於這些特性有強烈的需求。如果 Java 不是你需要的,有一些基於 JVM 的語言,如 Kotlin 和 Scala。

關於Python

Python 有以 Django 和 Flask 的形式組合的全棧/最小框架。Django 1.10 在 8 月發佈,爲 Postgres 引入了全文搜索和一個大修改的中間件層。

關於PHP

在過去,PHP是一種簡單的方法來淘汰一些動態網頁。如果你需要一點點的變化,你可以在HTML標籤之間嵌入簡單的代碼。Web開發者有了它就基本足夠了,但它的緩慢足以令程序員中的中堅分子看不起它。

因爲一些喜愛PHP的程序員在Wordpress和Facebook等地方都在爭相利用即時編譯器,這種曾創造出Java如此高性能解決方案的技術來執行比以前更快的PHP代碼。現在的工具如HipHop,虛擬機和PHP7.0提供的速度可能是舊版本的2倍。這會給Node.jsJava帶來挑戰。

PHP 有大量的 Web 框架可供選擇。由於其出色的文檔和功能,Laravel 構造了一個積極的社區。Zend Framework 發佈了第 3 版,這標誌着這個面向業務的框架的巨大升級。Symfony 在今年也發佈了很多新的版本,使它作爲一個全棧解決方案成爲一個更好的選擇。

關於Swift

Swift 3 於2016年早些時候發佈。這是蘋果對現代編程語言的願景 — 簡化 iOS 和 macOS 上應用程序的開發。Swift 是開源的而且吸引了大量的社區。版本 4 計劃於 2017 年發佈,將改進語言特性和引入服務器 API,使其成爲編寫 Web Apps 和後端的一個不錯選擇。

在 2016 年,我們看到了 Progressive Web App 概念的興起。它代表了脫機工作的 Web 應用程序,並提供類似 Native App 的體驗。它們可以添加到你的智能設備的主屏幕,甚至可以給你發送推送通知,彌補了與本地移動應用程序的差距。我們認爲,在 2017 年,PWA 將變得更加重要,更值得探討。

Progressive Web App(PWA) 是 Google 在 Web
平臺開始推廣的一個新概念,可以理解爲是儘可能藉助目前的新技術(比如 Service Worker,Push Notification
及其他展現層的新技術)以增強 Web App 的體驗和功能,讓 Web App 的體驗無限接近 Native App。PWA
並不只是在移動設備上使用,有現代瀏覽器存在的地方就可以有 PWA。PWA 也不是 Chrome Only,現代瀏覽器基本都支持。

關於Javascript

全球化的Web腳本語言。當Web接管我們的宇宙時,使用主要用於Web應用程序的Javascript也將接管世界。它是一個好的前端工具,可以在所有環境中使用。從添加效果到創建基本功能的遊戲,Javascript是業界最喜歡和最受歡迎的編程語言學習。

2017年,JavaScript 繼續着它令人難以置信的創新步伐。由於 Web 瀏覽器的快速發佈計劃的推動,JS 標準每年都會更新。下一個版本,ES2017 預計將於 2017 年中期完成。它將帶來許多 JS 開發人員渴望的特性 — 用於處理異步函數的 аsync/await。

關於C++

《Effective C++》 系列圖書的作者、編程新聞方面 Dr. Dobb 獎得主(Dr. Dobb’s JournalExcellence in Programming Award) Scott Meyers ——在我看來C++仍然是一個重要的編程語言,因爲它自出生以來的長處仍然在各種各樣項目的軟件開發人員中具有持續的吸引力。我曾在2014年作過演講《爲什麼C ++將繼續遠航》,其中我總結了C++以下優點:

  • C語言兼容
  • 非常通用的功能
  • 不存在範式(Paradigm agnosticism)
  • 專注系統編程

C ++是最適合那些要求苛刻的系統應用,那些不容易滿足技術上的約束的系統。對於這樣的應用程序,通常情況下,C ++的唯一重大的競爭對手是C,而與C相比,C ++ 又能提供更強大的抽象和建模功能。

抱有同樣態度的還有Constantin Brancusi 大學的 Adrian Runceanu 教授在C ++,Java,Oracle 有超過16年的經驗——我認爲使用C / C ++是因爲它提供了一個很好的指針機制(a good mechanism for using pointers),我們可以用這種語言創建可移植的應用程序。我相信C / C ++很容易學習,這就是爲什麼學生喜歡使用這種編程語言創建應用程序。其他語言(Java,Java,Python)可用於開發Web應用程序,但C / C ++不能以這種方式使用。我不知道這種語言的未來是什麼,但我相信C ++在未來將繼續在業界處於主導地位。”

關於R語言

隨着世界對統計和數據分析越來越癡迷,R是你需要添加到你的技能組合的語言。如果你在工作門戶網站上看到的與R相關的工作越來越多,那麼可以肯定R在2017年可能是最受追捧的語言。

關於Swift

當蘋果應對開發商的投訴時,它決定拿出 Swift 取代 Objective-C。它必然成爲開發商的最愛。到目前爲止,iOS開發人員正在像其他人一樣快速地編碼,當他們在市場現身時,Swift的使用率只會更加擴大。

關於MATLAB

曾經是數學家和科學家使用的硬派語言。隨着對分析和統計的興趣越來越大,MATLAB的受歡迎程度正在復甦。更多的開發人員將回到MATLAB,因爲數學分析的複雜性正在增加。

關於SQL

隨着人們越來越需要技術,數據庫一直在指數級增加。如果你有興趣管理數據庫,SQL是你的首選。SQL是爲了特殊的數據庫目的設計的語言,不同於通用語言。幾乎可在需要數據庫管理的任何地方使用它。SQL是一個需要學習的重要技能,是爲數據庫忠實粉量身定做的。

關於Arduino

這並不是一項新語言,它由 C 和 C++組合而成,但物聯網將屬於 Arduino! 嵌入式編程也將是一個關鍵的玩家。隨着更多的嵌入式芯片需要編碼,Arduino將是在 2017 年興起的新技能

關於Redis

Redis 是最受歡迎的 Key-Value 數據庫。它體積小,快速而且通用性好。作爲 NoSQL 數據存儲或進程消息傳遞和同步通道,你可以將其作爲智能內存緩存的替代方案。它提供了大量的數據結構可供選擇,並且即將到來的 4.0 版本將有一個模塊系統和改進的複製功能。

關於機器學習

機器學習在過去的十二個月中已經呈現爆炸式的增長。通過在今年 3 月份的 AlphaGo vs Lee Sedol 的歷史性比賽,它進入了主流。從原始數據中學習的智能計算機系統正在改變我們與移動設備交互的方式。機器學習將是 2017 年更大的影響因子。

關於GO

Java 和 Javascript 可能仍然是其基於網絡的服務行業的最愛,Google的GO也已經出現了幾年,並將是一個偉大的語言。Ruby 是初創公司最喜歡的,這已經有一段時間了,其流行度在預計的未來不會減少。Mozilla 的 Rust和 Facebook 的 HACK(超過90%的Facebook 代碼用 HACK 書寫)必須也加入這些列表,但在2017年上半年還不行。

關於MySQL

MySQL 8.0 將是該數據庫的下一個主要版本。正式版預計 2017 年發佈,將給系統帶來很多改進。MySQL 仍然是最受歡迎的數據庫管理系統,整個行業都受益於這些新版本。

關於Node.js

Node.js 是在瀏覽器外運行 JS 的主要方式。今年我們看到它發佈了許多新版本,提升了性能以及添加對整個 ES6 規範的覆蓋。Node 具有快速構建 API、服務器、桌面應用程序甚至機器人的框架,以及創建可以想象到的各種模塊的龐大社區。一些你可能想研究的框架:Express, Koa, Next, Nodal。



關於未來

世界正在快速變化,越來越多的程序員不再願意爲了效率而犧牲性能。曾一度限於科學家的高性能計算,現在由於深度學習人工智能應用成爲主流。

在2016年,我們看到了算法交易、自動駕駛汽車、3D打印、風險管理、醫療診斷、航空安全,以及在並行超級計算和天體物理學方面的 Julia Computing 應用。這些應用程序和用例預計在 2017 年爆發,因爲Julia 框架 1.0 將發佈,學習框架會變得更容易使用。


選出你喜歡的知識庫》》》》知識庫年度大賞
或者參與本文討論,一起來說說語言的未來發展

這裏寫圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章