La programación orientada a objetos (POO) es un enfoque de programación basado en "objetos" y "clases" conceptuales. Un objeto es un modelo reutilizable para una entidad física o no física con elementos descriptivos y funcionales. Cada instanciación de un objeto o clase tiene datos diferentes. Por ejemplo, un objeto que define una "persona" puede tener un campo de "nombre", pero cada instancia de una "persona" puede tener un nombre diferente.
La programación orientada a objetos ayuda a crear piezas de código reutilizables, lo que la convierte en una opción conveniente para proyectos complejos.