幾種常用程式語言的區別
計算機程式語言是指用於人與計算機之間通訊的語言,是人與計算機之間傳遞資訊的媒介,因為它是用來進行程式設計的,所以又稱程式設計語言或者程式語言。
計算機語言是一種特殊的語言。因為它是用於人與計算機之間傳遞資訊的,所以人和計算機都能“讀懂”。具體地說,一方面,人們要使用計算機語言指揮計算機完成某種特作,就必須對這種工作進行特殊描述,所以它能夠被人們讀懂。另一方面,計算機必須按計算機語言描述來行動,從而完成其描述的特定工作,所以能夠被計算機“讀懂”。
C語言是程式導向語言在當代的魯殿靈光,常用於編寫 作業系統。C++是C語言的一個超集,既有指標又有物件使它成為最複雜的語言。
C/C++的優勢:
1.幾乎所有現代程式語言都脫胎於C/C++,因此瞭解了C/C++,就瞭解了關於程式語言的一切,非常有利於快速掌握其他各類程式語言。
2.C/C++可以被嵌入任何現代處理器中,幾乎所有作業系統都支援C/C++,跨平臺性非常好。
C/C++的不足:
1.據說C/C++發明的時候為了提高入行門檻和行業收入水平刻意製造了學習難度。
2.儘管C語言體型小巧,可最常使用的C++規模可觀且擁有大量極為複雜的功能互動方式,容易造成資源浪費。
Java是最典型的面嚮物件語言。Java不僅吸收了C++語言的各種優點,還摒棄了C++裡難以理解的多繼承、指標等坑爹概念。今明兩年畢業的大學生大多是Java的同齡人(1995年)。
Java的優勢:
1.Java平臺不斷迎來新功能,比如移動網際網路時代的Android, 大資料時代的 Hadoop,人工 智慧時代的TensorFlow。
2.Java是世界上使用範圍最廣的語言——Java環境安裝時那句“3 Billion Devices Run Java”誰沒見過?
Java的不足:
-
國內Java及其衍生技術的就業環境被培訓班破壞得太厲害,培訓班HR曾問我:“Android不吃香了,你能推薦幾個 hadoop講師嗎?”
2.Java佔用大量記憶體,並且啟動時間較長——搞Android的都被Windows系統中的Android AVD坑過。
C#是微軟看到Java太火了而發明的和Java語法差不多的語言。
C#的優勢:
1.C#的最大優勢在於全面整合.Net庫,提供出色的功能與完美的庫訪問能力。
2.VR時代的到來讓Unity-3d開發者有很好的發展前景。
C#的不足:1.由於整合.Net庫造成跨平臺能力太差。
2.目前.Net在國內就業環境不太好,收入較低。
JavaScript是一種動態型別、弱型別、基於原型的直譯式指令碼語言,也是使用頻率最高的給HTML網頁增加動態功能的語言。外行最常鬧的笑話是以為它是Java語言的分支。
JavaScript的優勢:
1.作為指令碼語言,JavaScript可立即執行而無需等待伺服器響應,速度非常出色。
2.JavaScript是動態型別語言,學習難度低。並且掌握了JavaScript語言就等於成為能同時開發網頁( HTML5)、後臺( Node.js)、移動端( React Native、Weex)的全棧工程師。
JavaScript的不足:
1.程式碼在使用者電腦上執行,可能會被別有用心的壞人惡意利用。
2.JavaScript過於依賴瀏覽器,在不同的瀏覽器上有不同的表現。
SQL是一種專精於資料庫的特殊目的語言。用於存取資料以及查詢、更新和管理關聯式資料庫系統。
SQL的優勢:
1.儲存過程可以重複使用,可減少資料庫開發人員的工作量,開發速度快。
2.SQL可設定只有某此使用者才具有對指定儲存過程的使用權,安全性好。
SQL的不足:
1.和Java語言的大多數設計模式一樣,SQL開發速度是靠犧牲執行速度換來的。
2.不同資料庫系統之間的SQL不能完全相互通用,可移植性差。
Python
總結:需要拿著遊標卡尺學習的語言
python是一款伺服器端解釋型開源非編譯指令碼語言。它常被暱稱為膠水語言,能夠把用其他語言製作的各種模組(尤其是C/C++)很輕鬆地聯結在一起。
Python的優勢:Python學習簡單,被譽為“最易學習的語言”
Python的不足:Python存在一些只在特定情況下才會出現(無法重現)的bug
php是一種通用開源指令碼語言。語法吸收了C語言、Java和Perl的特點,利於學習,使用廣泛,主要適用於Web開發領域。號稱“世界上最好的語言”
PHP的優勢:
1.PHP學習簡單,易於快速上手。
2.歷久彌新的PHP擁有龐大而活躍的官方社群,開發者面臨的大部分難題都有現成的解決方案,很多十幾年前的解決方案在當代也有指導意義。
PHP的不足:
1.PHP的執行速度比較慢。
2.PHP的錯誤處理機制比較糟糕,以為PHP需要支援大量舊版本的功能。
objective-c和 swift都是OS X和 ios系統上的專用語言。Objective-C在三年前是國內收入最高的語言,從去年開始大量培訓班輸出了一大堆“三年經驗”的速成“iOS工程師”成了脈脈匿名區的笑話。
Objective-C的優勢:蘋果提供了豐富的工具和庫以便開發者使用Objective-C開發軟體。
Objective-C的不足:Objective-C擁有自己獨特的程式設計方法思路,與其他程式語言思路差別較大。
Swift的優勢:隨著時間推移,Swift在iOS和OS X軟體中佔的程式碼比例會越來越多。
Swift的不足:版本更迭太快,不同版本差別過大,近年發生過幾次“從精通到重新入門”的情況。
Objective-C和Swift的優勢:因為僅需要在少數平臺上執行,不容易遇到相容性問題。
Objective-C和Swift的不足:這倆語言的就業環境被培訓班徹底毀了,現在才開始學這兩種語言可能會有像2007年6000點時入市的散戶的結局。
Kotlin 是最新問世的一個基於JVM的程式語言,專用於開發Android。
Kotlin的優勢:
1.和Java的互操作性極佳。其他JVM語言都實現了自己語言的標準庫。而Kotlin則使用Java的標準庫,只是對其進行了擴充。更輕巧,Apk更小。
2.因為弱化了資料型別,學習成本較Java低。
Kotlin的不足:
1.同時可能也繼承了Java比較坑爹的東西。
2.能且僅能在Android Studio 3.0上執行,這點有點像易語言。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70026630/viewspace-2945420/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Markdown常用的幾種語法
- ASP程式中常使用的幾種指令碼語言指令碼
- Golang語言排序的幾種方式Golang排序
- 幾種常用的排序程式碼排序
- 常見的程式語言python怎麼樣?各程式語言有什麼區別?Python
- JS非同步程式設計的幾種方式及區別JS非同步程式設計
- 在區塊鏈Web3世界中使用的幾種傳統程式語言 - mcgee區塊鏈Web
- 關於ASP程式中常見的幾種指令碼語言介紹指令碼
- 從初學者到程式設計高手,幾種必學的程式語言程式設計
- C語言:一種高效、易學的程式語言C語言
- Java與C語言的區別?JavaC語言
- python和r語言的區別PythonR語言
- C語言與嵌入式C語言的區別C語言
- Python和其他流行的程式語言有什麼區別?Python
- 20 種最奇怪的程式語言
- 學了十幾種程式語言後,我終於悟了!
- C# 獲取程式路徑的幾種方法及其區別【WPF】C#
- 概念區別 【編譯型語言與解釋型語言、動態型別語言與靜態型別語言、強型別語言與弱型別語言】編譯型別
- 前端的你常用的程式語言有哪些?前端
- 解釋型語言、編譯型語言 區別編譯
- 初學者,哪幾種程式語言最值得你去學習?
- 什麼是Python?Python語言支援哪幾種程式設計方式?Python程式設計
- 編譯語言、解釋語言與指令碼語言之間的區別編譯指令碼
- 部署Go語言程式的N種方式Go
- Go 語言 := 的具體使用與區別Go
- 前端的你常用的程式語言是什麼?前端
- Css預編語言以及區別CSS
- linux中後臺執行程式常用的幾種方法Linux行程
- 函數語言程式設計的幾個概念函數程式設計
- 程式語言的“別樣”編年史
- [譯] 如果把程式語言看作國家,每種語言分別代表哪個國家?
- 常用的jQuery事件有幾種?jQuery事件
- 建樹的幾種常用方法
- 網站開發的常用程式語言有哪些?網站
- JS中幾種迴圈的區別與相同點JS
- 22種程式語言新年快樂
- 哪種程式語言最熱門?
- python和c語言的區別是什麼PythonC語言