Object-oriented programming (OOP) is a paradigm that emphasizes structuring software by encapsulating data and behavior into objects. It contrasts procedural programming, which is derived from structured programming and focuses on sequences of instructions.