-
1 # 非著名程式設計師
-
2 # 大學生程式設計指南
在全球範圍內程式語言的種類已經超過500種,真正進入主流的程式語言有十幾種,而且這些程式設計的語言的排名一直在發生變化,除了C語言,Java之外,還有C++,以及風頭正勁的python,程式語言趨向於兩個方向發展,對於底層程式語言的能力要求進一步提升;應用級別的開發在向著高度整合化的方向發展,多年的軟體行業的發展已經積累了大量的優質類庫,很多基本的功能只需要呼叫api介面就可以完成了。
高度整合的化的程式語言底層的維護升級是一件巨大的工程,所以覺得底層語言已經過時的理論起碼在未來的程式設計生活中不會就此消失,像C語言/C++這種程式設計與語言在未來也不會就此消失,上層的程式語言要求的整合化越高,對於底層開發人員的能力要求也會越高,底層開發人員的要求高了薪資也會跟著上漲,市場上要求變高了,所以很多新手程式設計師覺得C語言這些老掉牙的程式語言已經不行了,至少不能再做為主流的程式語言,這種想法是比較片面的。
最近很火熱的人工智慧,很多人覺得搞定了python就可以玩轉人工智慧了,其實python只是人工智慧的主線程式語言,真正體現效率的還是C語言和C++,不能只是看到表面的現象,複雜的演算法以及影響效能的還是底層程式語言比較靠譜,底層程式語言整體來講對於技術人員的綜合能力要求更高,而且很多客戶端的框架都是C/C++方式,因為這涉及到效能方面的問題,像安卓系統的框架,谷歌瀏覽器核心都是C++來完成的,很多主流的框架都是基於C++來完成的。
應用程式設計越來越簡單化,應用層面開發主要難點在於設計框架能力,單純用簡單實用的功能相對比較簡單,但是把各種功能融合在一起就是考驗框架方面的功能了,所以無論是底層開發還是應用級開發都有自身要求的點,不能簡單的認為底層程式設計的人員能力高於應用開發人員,首先在意識層面這種意識是不準確的,程式語言在表面上看起來就是工具般的存在,不要覺得程式語言學的種類越多能力就越強,關鍵在於程式設計思想的培養過程。
-
3 # Web前端進階指南
每個語言都有它獨有的特色,要不然他也不會流行,更不會被程式設計師接受,自然就會有其它語言替代。主流語言很多,我就來列舉一二:
流行的語言1: JavaScript
JavaScript一種直譯式指令碼語言,是一種動態型別、弱型別、基於原型的語言,內建支援型別。它的直譯器被稱為JavaScript引擎,為瀏覽器的一部分,廣泛用於客戶端的指令碼語言,最早是在HTML網頁上使用,用來給HTML網頁增加動態功能。
2: Python
Python的歷史可以追溯到1989年,因其高度可讀的程式碼而深受其粉絲的喜愛。許多程式設計師認為這是最簡單的語言開始。
Python是一種面向物件的解釋型計算機程式設計語言,由荷蘭人1989年發明,第一個公開發行版發行於1991年。Python語法簡潔清晰,特色之一是強制用空白符(white space)作為語句縮排。
3 : Java
Java是一門面向物件程式語言,不僅吸收了C++語言的各種優點,還摒棄了C++裡難以理解的多繼承、指標等概念,因此Java語言具有功能強大和簡單易用兩個特徵。Java語言作為靜態面向物件程式語言的代表,極好地實現了面向物件理論,允許程式設計師以優雅的思維方式進行復雜的程式設計 。
4 : Ruby
Ruby因為易於閱讀和寫作而贏得了很多讚譽。Rails也是流行的,它是Ruby的一個附加框架,它使構建Web應用程式變得簡單。該語言的正式座右銘是“程式設計師最好的朋友”。Ruby,一種簡單快捷的面向物件(面向物件程式設計)指令碼語言,遵守GPL協議和Ruby License.
5 : PHP
PHP(外文名:PHP:Hypertext Preprocessor,中文名:“超文字預處理器”)是一種通用開源指令碼語言。語法吸收了C語言、Java和Perl的特點,利於學習,使用廣泛,主要適用於Web開發領域,PHP並不是一種隨意的任意東西集合,而是關鍵字和函式工廠的虛擬爆炸.
6 : C++
C++是C語言的繼承,它既可以進行C語言的過程化程式設計,又可以進行以抽象資料型別為特點的基於物件的程式設計,還可以進行以繼承和多型為特點的面向物件的程式設計。C++擅長面向物件程式設計的同時,還可以進行基於過程的程式設計,因而C++就適應的問題規模而論,大小由之。
7 : C#
C#是一種安全的、穩定的、簡單的、優雅的,由C和C++衍生出來的面向物件的程式語言。綜合了VB簡單的視覺化操作和C++的高執行效率,以其強大的操作能力、優雅的語法風格、創新的語言特性和便捷的面向元件程式設計的支援成為.NET開發的首選語言。
8 : Go
Go是靜態型別的語言,它的型別系統沒有層級。因此使用者不需要在定義型別之間的關係上花費時間,這樣感覺起來比典型的面嚮物件語言更輕量級。Go完全是垃圾回收型的語言,併為併發執行與通訊提供了基本的支援。按照其設計,Go打算為多核機器上系統軟體的構造提供一種方法。
9 : C
C語言是一門通用計算機程式語言,應用廣泛。C語言的設計目標是提供一種能以簡易的方式編譯、處理低階儲存器、產生少量的機器碼以及不需要任何執行環境支援便能執行的程式語言。
儘管C語言提供了許多低階處理的功能,但仍然保持著良好跨平臺的特性,以一個標準規格寫出的C語言程式可在許多電腦平臺上進行編譯,甚至包含一些嵌入式處理器(微控制器或稱MCU)以及超級電腦等作業平臺。
10:nodejs
nodejs是一種用前端語言寫後端的直譯器,是一個JavaScript執行環境,這就使JavaScript走向了服務端,如果你想當熟練JavaScript,等你學完nodejs,差不多就是全棧工程師啦。nodejs是可以代替PHP或Java開發後端的中介軟體,也可以說是工具吧。
回覆列表
其實在回答這問題之前,我們應該看看如何定義主流?主流開發的語言有哪些?這有沒有一個統一的標準呢?畢竟計算機發展了幾十年裡,湧現出了太多的程式語言,如果你經常看 TIOBE 程式語言排行榜的話,你會發現,有太多的程式語言了。
而如何定義主流程式語言呢?我認為主流的程式語言,之所以稱得上為主流,最起碼應該有如下兩個特點:
1、在語言排行榜的前 20 名在語言排行榜的前 20 名裡,這就意味著使用這門程式語言的人比較多,用的人比較多,肯定算得上主流。畢竟大多數都在用,都在流行的語言,就可以稱得上為主流的意思。
如果一個語言,極少數人用,不經常提到,肯定不能算主流啊!這個道理應該是淺顯易懂的。
2、至少穩定 3-5年什麼意思呢?就是這門語言在排行榜上必須穩定 3-5年的時間,至少 3 年,為什麼?如果一門語言,就一個月進入了排行榜前 20 名,其餘的時間都沒有入圍,也不能算主流語言,曇花一現的語言,還沒有發展起來,形成自己完成的生態,以及沒有形成眾多開發者的擁護,就低落了,也不能算主流程式語言。
穩定性,也是衡量這門開發語言是否主流的標準,越穩定,這門語言的發展就越好,生態就會越完善,用的人就會越來越多,就會成為大家選擇程式語言的首選,說明市場對這門語言是認可和看重的。
標準定下來,那麼我們就來看看語言排行榜上有哪些語言呢?最新一期 2019 年 11 月公佈的語言排行榜。
TIOBE 程式語言排行榜
對,首先映入眼簾的就是題主所說的,Java 和 C ,這兩門語言常年霸佔在語言排行榜的前三名。所以,肯定是主流的開發語言了。
後面的 Python 是近兩年隨著人工智慧的火爆,迅速發展起來的,現在的適用人群很大,也非常流行,這幾年及未來肯定還會在這個榜單上,所以,Pyhon 是主流的開發語言,主要用於人工智慧,爬蟲,後臺等等很多開發都可以用它。
C++更不用說了,它的功能更是非常重要,就現在的形勢而言 C++ 的用處還是挺大的,特別是一些嵌入式系統或一些系統底層的東西用 C/C++ 。
Swift 是 OC 的替代品,所以,Swift 和 OC 目前用於蘋果相關的開發比較多,比如 iOS 端的應用就是用它們開發的。
JS 主要是用於前端的開發,這個不用太介紹了,只要是程式設計師肯定都知道,但是它跟 Java 是沒有關係的哈。
Go 這幾年也是非常火的。Go 語言主要用作伺服器端開發,其定位是用來開發 “大型軟體” 的,適合於很多程式設計師一起開發大型軟體,並且開發週期長,支援雲計算的網路服務。Go 語言作為伺服器程式語言,很適合處理日誌、資料打包、虛擬機器處理、檔案系統、分散式系統、資料庫代理等;網路程式設計方面,Go 語言廣泛應用於 Web 應用、API 應用、下載應用等;除此之外,Go 語言還可用於記憶體資料庫和雲平臺領域,目前國外很多雲平臺都是採用 Go 開發。
具體其他的我就不一樣介紹了,最起碼我上面列出來的這幾門語言絕對是非常非常流行的主流的程式語言。