Declarative programming is a programming paradigm that expresses what computation should achieve rather than specifying the detailed control flow for how to achieve it. Logic programming, database query languages, and some rule-based systems are common examples of declarative approaches.