La programación orientada a objetos es un paradigma de programación surgido en los años 1970 que utiliza objetos como elementos fundamentales. Un objeto representa un ente del mundo real con atributos y métodos, y las clases agrupan propiedades y métodos comunes entre objetos para crear instancias u objetos. El lenguaje Simula 67 introdujo los conceptos básicos de POO, luego refinados en Smalltalk, y hoy muchos lenguajes soportan esta orientación.