聲明式編程(英語:Declarative programming)是一種編程範式,與命令式編程相對立。它描述目標的性質,讓計算機明白目標,而非流程。聲明式編程不用告訴計算機問題領域,從而避免隨之而來的副作用。而命令式編程則需要用算法來明確的指出每一步該怎么做。
聲明式編程通常被看做是形式邏輯的理論,把計算看做推導。聲明式編程因大幅簡化了並行計算的編寫難度,自2009年起備受關注。
聲明式語言包包括資料庫查詢語言(SQL,XQuery),正則表達式,邏輯編程,函式式編程和組態管理系統。
聲明式編程透過函式、推論規則或項重寫(term-rewriting)規則,來描述變數之間的關係。它的語言運行器(編譯器或解釋器)採用了一個固定的算法,以從這些關係產生結果。
基本介紹
定義
- 聲明式編程是告訴計算機需要計算“什麼”而不是“如何”去計算
- 任何沒有副作用的程式語言,或者更確切一點,任何引用透明的程式語言
- 任何有嚴格計算邏輯的程式語言
子編程範式
約束式編程
領域專屬語言
函式式編程
邏輯式編程
參見
- (對立的)命令式編程