编程语言的分类
一、編程語言的分類
機器語言
匯編語言
高級語言
越往后,執行效率越低,開發的效率越高。
二、高級語言的分類
1、編譯型語言和解釋型語言
區別:
程序執行之前先編譯成機器碼。
程序執行時,邊運行邊解釋成機器碼。
拓展:混合型語言:在編譯的時候不是直接編譯成機器碼而是中間碼。
拓展:JIT(即時編譯),它是動態編譯的一種,結合了傳統的提前編譯(AOT) 和解釋,即在程序執行時編譯而不是在執行前。
2、靜 / 動
(1)靜態語言和動態語言
運行時可以改變其結構的語言(例如新的函數、對象、甚至代碼可以被引進,已有的函數可以被刪除或是其他結構上的變化。)
(2)強類型語言和弱類型語言
區別:
一個變量定義時需指定數據類型,之后不可變,只能接受相同數據類型的值(除非涉及自動類型轉換和強制類型轉換)
一個變量定義時無需指定數據類型,可以接受任何數據類型的值
(3)靜態類型語言和動態類型語言
區別:
編譯器在 compile time 執行 類型檢查
編譯器在 runtime 執行 類型檢查
3、范式
(1)面向過程語言和面向對象語言
(2)命令式語言、函數式語言、邏輯式語言
(3)命令式編程和聲明式編程
命令式編程 Imperative programming
聲明式編程 Declarative programming
(4)結構化編程和非結構化編程
結構化編程(Structured programming)采用子程序、塊結構、for循環以及while循環等結構,來取代傳統的 goto。
(5)流程驅動編程對比事件驅動編程
(6)總結
現在的高級編程語言大多都是支持多范式設計的。
三、高級語言的 TOP 榜
https://www.tiobe.com/tiobe-index/
四、其他別稱
1、腳本語言
腳本語言(scripting language)也是一種編程語言。
它設計的初衷,往是作為一種臨時的“補丁”。它的設計者并沒有考慮把它作為一種“通用程序語言”,沒有考慮用它構建大型的軟件。所以一般來說功能較弱,會有坑。
一般有以下特征:
屬于編譯型語言
簡單、易學、易用
2、膠水語言
膠水語言(glue language)是用來連接軟件組件的程序設計語言
它通常是腳本語言。
總結
- 上一篇: 怪物猎人崛起锐利的牙怎么获得
- 下一篇: 17行html代码实现的将网页文本保存成