編程語言:最完整的編程語言分類!知道你學的語言屬於什麼嗎?

​編程語言是形式化的語言,帶有一組提供所需輸出的指令。爲了在咱們的機器中實現各類算法,咱們開始使用編程語言。一組特定的指令用於可編程機器,而不是通用的編程語言。計算機編程語言用於與計算機通訊。每種編程語言都基於某些語法和語義規則。程序員

 

計算機以數字表示形式工做。僅將0或1的存在理解爲關閉或打開。所以,要與計算機進行通訊,咱們必須以二進制形式給出指令,而這幾乎是不可能的,所以這裏出現了能夠節省咱們時間的編程語言。咱們遵循某種編程語言的通常語法規則,用英語編寫了說明,而後經過一些過程將其轉換爲機器代碼,並告訴計算機執行一些特定的操做。算法

日益增加的對計算能力和生產率的需求是開發功能更強大,價格更低廉,速度更快的商用機器,超級計算機和各類編程設備以及各類應用程序和計算機類型的關鍵因素,須要特定的編程語言來完成特定的任務。下面列出了全部類型的編程語言的完整分類列表。編程語言沒有嚴格的分類方案。所以,咱們能夠將一種語言視爲不止一種編程語言的示例。數據庫

讓咱們一一理解這些編程語言。因爲列表很大,所以不可能詳細討論全部這些內容。在這裏,我正在用全部這些各類編程語言的示例編寫簡短的介紹。你們記得點個贊啵~express

 

編譯語言:

編譯語言是一種編程語言,其中咱們使用編譯器來編譯和執行代碼。編譯器一般是從咱們的書面源代碼生成機器級代碼的翻譯器。編程

例:api

C服務器

C ++微信

C#數據結構

ALGOL併發

Cobol

Fortran

Java

Visual Basic

Smalltalk

解釋語言:

解釋語言是一種編程語言,在其中,無需將程序編譯爲機器語言的指令,咱們就能夠直接自由地執行指令。解釋器逐行執行程序。語言解釋爲編譯後的實現(如平臺獨立性,動態範圍,動態類型等)提供了更多的靈活性。

示例:

Python

Ruby

Perl

Pascal

Lisp

BASIC

APL

腳本語言:

腳本語言是控制應用程序的編程語言。能夠在任何其餘應用程序上獨立執行的腳本。它們被普遍應用於它們所控制的應用中,並被用於自動化領域。

例:

PHP

VBScript

Windows PowerShell

F-Script

BeanShell

AutoIt

R

Game Maker Language

標記語言:

標記語言是一種人工語言,用於對文檔進行註釋,以便在語法上與文本(可定義文本顯示方式的文本)區分開。

例:

HTML

XML

XHTML

SGML

Curl

程序語言:

程序(命令式)編程意味着指定程序達到預期狀態應採起的步驟。過程不過是一組能夠經過過程調用引用的指令。這有助於代碼的重用。這種類型的編程使程序結構化並易於跟蹤程序流。

例:

HyperTalk

Go

PL/C

PL/I

MATLAB

Curl

Mathematica

MATLAB

函數式語言:

函數式編程語言將每次計算都定義爲數學評估。他們專一於函數的應用。一些函數式編程語言是純函數式語言,可是許多所謂的函數式語言是不純淨的,包含命令式功能,它們不是純函數式語言。

例:

Pure Functional

Agda

SAC

SASL

Cuneiform

Curry

Futhark

Haskell

不純功能語言:

APL

C++ (since C++11)

C#

VB.NET

Ceylon

Kotlin

Lisp

Clojure

JScript

PHP

Python

基於邏輯的編程語言:

邏輯編程是一種編程範例,主要基於形式邏輯。基於邏輯的編程是一組邏輯形式的語句,這些語句表達有關問題域的事實和規則。

例:

Prolog

ROOP

ALF

Alma-0

Curry

Fril

Janus

 

面向對象的語言:

面向對象的編程(OOP)是基於「對象」概念的高級編程範例,該對象可能包含字段形式的數據,一般稱爲屬性。在OOP中,計算機程序將相關數據和功能綁定到對象中,並實現對象及其相關過程以建立軟件程序。

例:

Scala

C++

Java

Python

C#

Ruby

Scala

數據流語言:

數據流編程語言依賴於表示數據流。在數據流語言中,數據流從一條指令傳遞到另外一條指令以執行。條件執行會跳轉數據,並在過程調用中將數據路由到其餘位置。

例子:

Analytica

BMDFM

Hartmann pipelines

Lucid

Max

Oz

Prograph

Pure Data

嵌入式語言:

主要是動態腳本和編程語言。它也能夠用做獨立於平臺的通用編程語言。嵌入式語言有兩種類型:

服務端

客戶端

客戶端嵌入式語言旨在爲網頁提供動態特性,從而減小從新鏈接服務器的開銷。

服務器端嵌入式語言更加靈活。動態生成附加標記是擁有服務器端代碼片斷的主要目的。服務該頁面時,嵌入在網頁中的服務器端是自動丟棄的代碼,並由輸出替換。

例:

(1)服務器端

PHP

VBScript

SMX

Tcl

WebDNA

(2)客戶端

ActionScript

JavaScript

VBScript

機器語言:

這些語言可由計算中央處理器直接執行。機器語言一般以八進制或十六進制形式的位模式編碼。

例:

ARM

DEC

x86

IBM System/360

MIPS

Sun, Oracle SPARC

系統語言:

這些語言用於內存管理或任務管理中使用的低級語言。與應用軟件相比,一般用於系統編程的系統編程語言(例如,用於編寫系統軟件的語言)一般須要不一樣的開發方法。

例:

Ada

Nim

Rust

Swift

ESPOL

併發語言:

這些語言是爲了在消息傳遞語言中併發而構造的。例如,Java顯示共享內存併發。

例:

Go

Java

Julia

clojure

Scala

範式語言:

這些類型的語言支持多種編程語言或編程範式。多範式語言容許使用多種編程風格。沒有一種特定的語言可以以最簡單或有效的方式解決全部問題,這就是咱們使用Multiparadigm語言的緣由。

例:

Ada

APL

BETA

C++

C#

Cobra

擴展語言:

這些語言用做其餘語言的擴展。擴展編程語言嵌入到另外一個程序中,並用於在擴展腳本中利用其功能。

例:

AutoLISP

BeanShell

Perl

Pike

Ruby

迭代語言:

這些語言圍繞生成器提供或提供生成器。

例:

Aldor

Alphard

PHP

CLU

Cobra

硬件描述語言:

這些編程語言用於電子產品,硬件描述語言或HDL用於描述電子電路或數字邏輯電路的結構,設計和操做。Verilog和VHDL在工業中使用的各類最流行和獲得良好支持的HDL品種中。

例:

模擬電路的HDL:

Verilog-AMS

VHDL-AMS

數字電路的HDL:

Advanced Boolean Expression Language(ABEL)

Altera Hardware Description Language(AHDL)

Bluespec

Lava

ELLA

視覺語言:

在Viual Languages中,用戶能夠以二維或多種方式指定程序,而不能使用視覺語言中的一維(文本字符串)來指定程序,咱們使用圖形元素和圖形來開發程序。

例:

Analytica

Blockly

DRAKON

Fabrik

Scratch

Simulink

Spreadsheets

基於列表的語言:

列表的語言基於列表數據結構。

例:

Lisp

Arc

Clojure

R

Dylan

Joy

同步語言:

這些編程語言用於對反應系統進行編程。編程反應系統是被中斷並當即響應的系統。這些系統中的一些也稱爲實時系統,而且被普遍使用。

例:

Argus

Averest

Esterel

Lustre

Signal

宏語言:

這些語言用於將一個源代碼文件轉換爲另外一個。宏是一小段文本,能夠擴展爲更大的文本。宏語言一般用於預處理源代碼。預處理程序提供文件包含等功能。

示例:

cpp (the C preprocessor)

m4

ML/I (general purpose macro processor)

查詢語言:

數據庫和信息系統中使用這些語言進行查詢。

例:

SQL

XPath

AQL

PQL

XQuery

元編程語言:

編程語言是編寫程序,該程序編寫或操縱其餘程序(包括其自身)做爲數據,或者完成在編譯時在運行時執行的部分工做。

例:

C++

CWIC

Curl

D

eC

Emacs Lisp

Elixir

F#

基於規則的語言:

當被一組數據中的條件激活時,基於規則的語言實例化規則。將選擇某些集合,並執行屬於那些規則的語句。

例:

awk

CLIPS

Constraint Handling Rules

Drools

Jess

OPS5

Prolog

數值分析語言:

在數值分析中,咱們分析和實現用於數值解的算法,以解決涉及連續變量的現實數學模型的巨大問題。咱們在數值分析中使用如下編程語言。

例:

Mathematica

MATLAB

PROSE

R

語法處理語言:

這些語言可幫助生成詞法分析器和解析器以實現上下文無關的語法。例:

ANTLR

Coco/R (EBNF with semantics)

GNU bison (FSF’s version of Yacc)

GNU Flex (FSF version of Lex)

lex (Lexical Analysis, from Bell Labs)

Parsing expression grammar (PEG)

非基於英語的語言:

有幾種編程語言,它們是用英語之外的其餘語言開發的。在這種狀況下,語言不是障礙。

Chinese BASIC – Chinese

Fjölnir – Icelandic

Language Symbolique d’Enseignement – French

Lexico – Spanish

Rapira – Russian

ChaScript-Bengali

ezhil-Tamil

基於XML的語言:

這些語言用於將XML文檔轉換爲人類可讀的格式。

Ant

C?

XPath

XQuery

XProc

原諒筆者,通過這樣一番分類以後,筆者發現我沒有接觸過的語言實在還有太多太多,咱們須要學習的東西還有不少不少呀!

話說回來昂,筆者仍是一名CC++的程序員,若是你想更好的提高你的編程能力,好好學習C/C++編程知識的話!那麼你很幸運~

C語言C++編程學習交流圈子,【點擊進入】微信公衆號:C語言編程學習基地

分享(源碼、項目實戰視頻、項目筆記,基礎入門教程)

歡迎轉行和學習編程的夥伴,利用更多的資料學習成長比本身琢磨更快哦!

編程學習書籍:

編程學習視頻:

相關文章
相關標籤/搜索