ENES

Programación orientada a objetos

Organizar el código en objetos que juntan datos con las acciones que los usan.

Una clase Customer funciona como plano con un nombre, un email y una acción sendInvoice, y de ella salen tres objetos cliente

La programación orientada a objetos, o POO, es una forma de organizar el código alrededor de objetos. Un objeto junta ciertos datos con las funciones que trabajan sobre ellos. Un objeto Customer puede guardar un nombre y un email y saber cómo hacer sendInvoice(). La clase es el molde: escribís la clase Customer una vez y creás miles de objetos cliente a partir de ella.

Casi siempre vienen tres ideas con ella. Encapsulamiento: un objeto esconde sus tripas y muestra solo lo que los demás necesitan, así podés cambiar lo de adentro sin romper el resto. Herencia: una clase puede extender a otra, entonces un PremiumCustomer reutiliza todo lo de Customer y le agrega un descuento. Polimorfismo: objetos distintos pueden responder al mismo pedido a su manera, así el código llama a pay() sin importarle si es una tarjeta o una transferencia.

La POO nació con lenguajes como Simula y Smalltalk en los 60 y 70, y se volvió masiva con C++ y después con Java. Java, C#, Python y Swift se apoyan en ella. No es el único estilo: la programación funcional, que prefiere datos simples y funciones sin estado escondido, ganó terreno, y la mayoría de los lenguajes modernos mezclan los dos. Abusar de la herencia es una forma clásica de terminar con código difícil de cambiar.

Para quedarse

Para seguir leyendo

Términos relacionados

Más de Software