在计算机科学中,声明式编程是一种编程范式,即构建计算机程序的结构和元素的一种风格,它表达了计算的逻辑而没有描述其控制流程。许多应用这种风格的语言试图通过描述程序在问题领域必须完成的事情来最小化或消除副作用,而不是描述如何将它作为一系列编程语言原语来实现(如何离开直至语言的实现)。这与命令式编程相反,命令式编程以明确的步骤实现算法。声明性编程通常将程序视为形式逻辑的理论,并将计算视为逻辑空间中的推论。声明式编程可能会极大地简化编写并行程序。常用的声明性语言包括数据库查询语言(例如SQL,XQuery),正则表达式,逻辑编程,函数式编程和配置管理系统。声明式编程通常被定义为任何不是必须的编程风格。还有其他一些常见的定义,试图给这个术语一个定义,而不是简单地将它与命令式编程对比。