La programación orientada a objetos es una filosofía de programación que divide un programa en unidades funcionales mediante la creación de clases y objetos. Una clase define los atributos y métodos comunes a los objetos de esa clase, mientras que un objeto es una instancia concreta de una clase. La programación orientada a objetos encapsula datos y comportamientos en objetos para gestionar programas más grandes de manera modular.