前言
據美國科技公司Gizmodo報道,截至2014年9月24日,全世界采用IT操作系統的設備數量已經達到10億臺,IT推動中國移動互聯網進入高速發展期,成為所有行業中發展前景最好的朝陽行業。
科技不斷進步,隨著時間的推移,各種編程語言受歡迎程度也在不斷的發生著改變。人們對討論這一類盤點編程語言受歡迎程度話題樂此不彼,通過盤點整理,開發人員不但可以了解編程語言的流行趨勢,還可以對未來工作的有一個大致的衡量與規劃,可以根據編程語言掌握情況選擇適合自己的編程語言,并規劃好自己的職業生涯路線。
GitHub是全球最大的開源軟件開發與管理社區,GitHub也成為了一探硅谷技術趨勢最好的窗口,每年GitHub都會推出“Octoverse”報告,其中列出了一些趨勢,包括其網站用戶中最受歡迎的編程語言。GitHub的《Octoverse 觀察報告》在業內具有相當高的權威性。
以下是2017年GitHub上最受歡迎的幾大主流編程語言
一: JavaScript
教程:www.w3school.com.cn/js/
官網:https://www.javascript.com/
JavaScript一種直譯式腳本語言,是一種動態類型、弱類型、基于原型的語言,內置支持類型。它的解釋器被稱為JavaScript引擎,為瀏覽器的一部分,廣泛用于客戶端的腳本語言,最早是在HTML網頁上使用,用來給HTML網頁增加動態功能。
排名第一的JavaScript仍然是具有獨孤求敗的勢頭,JavaScript繼續統治著程序員最常用的語言列表。以致于我們觀察榜單上面的數據,可以發現,JavaScript這一年在GitHub中共獲得230萬pull request,竟然是第二名的編程語言Python的兩倍有余。
二: Python
教程:http://www.runoob.com/python/python-tutorial.html
官網:https://www.python.org/
Python的歷史可以追溯到1989年,因其高度可讀的代碼而深受其粉絲的喜愛。許多程序員認為這是最簡單的語言開始。
Python是一種面向對象的解釋型計算機程序設計語言,由荷蘭人1989年發明,第一個公開發行版發行于1991年。Python語法簡潔清晰,特色之一是強制用空白符(white space)作為語句縮進。
Python具有豐富和強大的庫。它常被昵稱為膠水語言,能夠把用其他語言制作的各種模塊(尤其是C/C++)很輕松地聯結在一起。常見的一種應用情形是,使用Python快速生成程序的原型,而后封裝為Python可以調用的擴展類庫。
需要注意的是在您使用擴展類庫時可能需要考慮平臺問題,某些可能不提供跨平臺的實現,人生苦短,請用Python。Python語言相較于去年,排名有所進步。
三: Java
教程:http://www.runoob.com/java/java-tutorial.html
官網:http://www.cjsdn.net/
Java是一門面向對象編程語言,不僅吸收了C++語言的各種優點,還摒棄了C++里難以理解的多繼承、指針等概念,因此Java語言具有功能強大和簡單易用兩個特征。Java語言作為靜態面向對象編程語言的代表,極好地實現了面向對象理論,允許程序員以優雅的思維方式進行復雜的編程 。
Java具有簡單性、面向對象、分布式、健壯性、安全性、平臺獨立與可移植性、多線程、動態性等特點。Java可以編寫桌面應用程序、Web應用程序、分布式系統和嵌入式系統應用程序等。
四: Ruby
教程:http://www.runoob.com/ruby/ruby-tutorial.html
官網:https://www.ruby-lang.org/en/
Ruby因為易于閱讀和寫作而贏得了很多贊譽。Rails也是流行的,它是Ruby的一個附加框架,它使構建Web應用程序變得簡單。該語言的正式座右銘是“程序員最好的朋友”。
Ruby,一種簡單快捷的面向對象(面向對象程序設計)腳本語言,遵守GPL協議和Ruby License.
五: PHP
教程:http://www.w3school.com.cn/php/
官網:http://www.php.net/
PHP(外文名:PHP: Hypertext Preprocessor,中文名:“超文本預處理器”)是一種通用開源腳本語言。語法吸收了C語言、Java和Perl的特點,利于學習,使用廣泛,主要適用于Web開發領域,PHP并不是一種隨意的任意東西集合,而是關鍵字和函數工廠的虛擬爆炸.
PHP 獨特的語法混合了C、Java、Perl以及PHP自創的語法。它可以比CGI或者Perl更快速地執行動態網頁,PHP還可以執行編譯后代碼,編譯可以達到加密和優化代碼運行,使代碼運行更快。
六: C++
教程:http://www.runoob.com/cplusplus/cpp-tutorial.html
官網:http://www.cplusplus.com/
C ++編程語言C ++的另一個分支,最初創建于1983年,可以從桌面Web應用程序到服務器基礎結構中找到。
C++是C語言的繼承,它既可以進行C語言的過程化程序設計,又可以進行以抽象數據類型為特點的基于對象的程序設計,還可以進行以繼承和多態為特點的面向對象的程序設計。C++擅長面向對象程序設計的同時,還可以進行基于過程的程序設計,因而C++就適應的問題規模而論,大小由之。
C++不僅擁有計算機高效運行的實用性特征,同時還致力于提高大規模程序的編程質量與程序設計語言的問題描述能力。
七: C#
教程:http://www.runoob.com/csharp/csharp-tutorial.html
官網:http://www.c-sharpcorner.com/
C#看起來與Java有著驚人的相似;它包括了諸如單一繼承、接口、與Java幾乎同樣的語法和編譯成中間代碼再運行的過程。但是C#與Java有著明顯的不同,它借鑒了Delphi的一個特點,與COM(組件對象模型)是直接集成的,而且它是微軟公司 .NET windows網絡框架的主角。
C#是一種安全的、穩定的、簡單的、優雅的,由C和C++衍生出來的面向對象的編程語言。綜合了VB簡單的可視化操作和C++的高運行效率,以其強大的操作能力、優雅的語法風格、創新的語言特性和便捷的面向組件編程的支持成為.NET開發的首選語言。
C#是面向對象的編程語言。它使得程序員可以快速地編寫各種基于MICROSOFT .NET平臺的應用程序,MICROSOFT .NET提供了一系列的工具和服務來最大程度地開發利用計算與通訊領域。
八: Go
教程:http://www.runoob.com/go/go-tutorial.html
社區:https://studygolang.com/
Go是一種新的語言,一種并發的、帶垃圾回收的、快速編譯的語言。它可以在一臺計算機上用幾秒鐘的時間編譯一個大型的Go程序。Go為軟件構造提供了一種模型,它使依賴分析更加容易,且避免了大部分C風格include文件與庫的開頭。
Go是靜態類型的語言,它的類型系統沒有層級。因此用戶不需要在定義類型之間的關系上花費時間,這樣感覺起來比典型的面向對象語言更輕量級。Go完全是垃圾回收型的語言,并為并發執行與通信提供了基本的支持。按照其設計,Go打算為多核機器上系統軟件的構造提供一種方法。
九: C
教程:http://www.runoob.com/cprogramming/c-tutorial.html
C是迄今為止最常用的最古老的編程語言之一,創建于20世紀70年代初期。在1978年,該語言的傳奇和仍然廣泛閱讀的手冊,“C編程語言”,首次出版。
C語言是一門通用計算機編程語言,應用廣泛。C語言的設計目標是提供一種能以簡易的方式編譯、處理低級存儲器、產生少量的機器碼以及不需要任何運行環境支持便能運行的編程語言。
盡管C語言提供了許多低級處理的功能,但仍然保持著良好跨平臺的特性,以一個標準規格寫出的C語言程序可在許多電腦平臺上進行編譯,甚至包含一些嵌入式處理器(單片機或稱MCU)以及超級電腦等作業平臺。
十: TypeScript
教程:https://www.w3cschool.cn/typescript/
官網:https://www.tslang.cn/
編程語言標準相對年輕,TypeScript是由Microsoft在2012年創建的。它與大流行的JavaScript密切相關,旨在運行大型應用程序。
TypeScript是一種由微軟開發的自由和開源的編程語言。它是JavaScript的一個超集,而且本質上向這個語言添加了可選的靜態類型和基于類的面向對象編程。安德斯·海爾斯伯格,C#的首席架構師,已工作于TypeScript的開發。
結語
因此,2017年的頂級編程語言將包括JavaScript,Java,Python以及C系列的語言。幸運的是,它們中的一些,如JavaScript易于學習和實施,同時為開發人員和用戶提供了廣泛的機會。專注于他們中的任何一個都不會讓你犯錯。
2017年頂級編程語言將包括JavaScript、Java、Python以及C語言家族。幸運的是,JavaScrip等部分語言易于學習且能夠為開發者及用戶提供可觀的發展機遇.
參考鏈接:http://www.businessinsider.com/the-9-most-popular-programming-languages-according-to-the-facebook-for-programmers-2017-10/#11-typescript-5(GitHub Octoverse報告)
- 前端框架
- 進階攻略:前端最全的框架總結
- 進階攻略:前端完整的學習路線
- 進階攻略:最全的前端開源JS框架和庫
- 常用的六個富文本編輯器
- 移動端手勢的七個事件庫
- Bootstrap相關優質項目學習清單
- 三個Bootstrap免費字體和圖標庫
- jQuery實現多種切換效果的圖片切換的五款插件
- 移動端常用的四個框架
- 七個幫助你處理Web頁面層布局的jQuery插件
- 前端工具
- 八款前端開發人員更輕松的實用在線工具
- 推薦幾款好用的云筆記軟件
- 幾款在線的腦圖制作工具
- 細數那些年我用過的前端開發工具
- 九款優秀的企業項目協作工具推薦
- 細數那些帶打賞功能的平臺
- 干貨|幾個有用的問答平臺
- 前端資源
- web開發快速提高工作效率的一些資源
- 前端工程師們,這些干貨讓你開發效率加倍
- 那些我不得不收藏的技術網站
- 前端學習的幾個網站
- 老司機程序員用到的各種網站整理
- 前端幾個常用簡單的開發手冊拿走不謝
- 2017年度最流行的十大中國開源軟件
- 程序員常用的六大技術博客類
- 提高工作效率的幾個小技巧
- Bootstrap相關優質項目必備網址
- 前端技術棧
- h5調用底層接口的一些知識
- JS數組去重的6種算法實現
- Git安裝及密鑰的生成并上傳本地文件到GitHub上
- JS數組排序技巧匯總(冒泡、sort、快速、希爾等排序)
- 就如何快速免費提高網站排名小結
- 淺談移動端頁面無刷新跳轉問題的解決方案
- 移動端iPhone系列適配問題的一些坑
- HTML5在客戶端存儲數據的新方法——localStorage
- 移動開發之css3實現背景幾種漸變效果
- 前端雜談
- 程序員如何利用空余時間掙零花錢?
- 一個前端妹子的悲歡編程之路
- 【程序員交友】祈澈姑娘:假裝文藝與代碼齊飛的前端妹子
- 初中級前端開發工程師如何提升個人能力?
- 如何打造個人技術影響力
- 程序媛,堅持這幾個好習慣讓你越來越美
- 工作中如何快速成長和學習?
- 我是如何快速積累工作經驗
- 谷歌AI中國中心成立,人工智能勢不可擋?
- 前端面試
- 一份來自前端開發工程師的規范簡歷
- 2017前端精品面試文章總結
- 面試經歷:為即將找工作的你保駕護航
- 我的北漂之路 北漂如飲水,冷暖自知
- 如何在面試中脫穎而出?
- 2017年10大主流編程語言最新排行榜出爐
- 前端面試之前要準備的那些事