Este documento describe los conceptos fundamentales de la programación orientada a objetos. Introduce los conceptos de clase, objeto, método, atributo, estado interno, herencia y polimorfismo. Explica que la programación orientada a objetos surgió en el lenguaje Simula 67 y fue refinada en Smalltalk, influyendo en lenguajes posteriores como C++.