Declarative Programming
Declarative programming describes "what to do" rather than "how to do it", leaving execution steps to the system — e.g., SQL/HTML/regex.
Purpose
Express intent at a higher level of abstraction, reducing imperative boilerplate.
Mechanism
Declare results or constraints; the runtime/compiler decides execution. SQL declares a query rather than an iteration. React JSX declares UI rather than DOM manipulation. Functional programming is a subset of declarative. Complementary to imperative.
Use cases
- Query design
- UI declaration
- Configuration