La programación orientada a objetos es una metodología de desarrollo de software que se centra en representar el mundo real mediante objetos. Se puede aplicar a cualquier lenguaje de programación y se ha vuelto popular en los últimos años debido a sus ventajas sobre formas de programar anteriores. Representa el problema a resolver de una manera similar a como está organizado en el mundo real, haciendo que los cambios en la estructura de datos afecten inmediatamente a las acciones que se realizan sobre ellos.