1. Inicio
  2. Tecnología
  3. Programación orientada a objetos

Significado de Programación orientada a objetos

Sustantivo femenino. De programación y el adjetivo orientado, participio de orientar; sigla habitual: POO, en inglés OOP.

La programación orientada a objetos es un paradigma que organiza el código en objetos que combinan datos y comportamiento, y que se comunican entre sí mediante mensajes o llamadas a métodos.

Se apoya en cuatro ideas centrales —encapsulamiento, herencia, polimorfismo y abstracción— y es uno de los paradigmas más usados en el desarrollo de software.

Qué es la programación orientada a objetos

La programación orientada a objetos no es simplemente escribir código con clases, sino modelar un problema como un conjunto de objetos que representan entidades del mundo real o abstracto, cada uno con sus propios datos, llamados atributos, y sus propias acciones, llamadas métodos.

Un objeto se crea a partir de una plantilla llamada clase, que define qué atributos y qué métodos tendrán todos los objetos construidos con ella. Dos objetos de la misma clase comparten estructura, pero cada uno mantiene su propio estado, independiente del de los demás.

No debe confundirse con la simple existencia de funciones organizadas por tema: lo distintivo de este paradigma es que el dato y el comportamiento que actúa sobre él viajan juntos dentro del mismo objeto, en lugar de estar separados. La estudian la ingeniería de software y el diseño de sistemas.

Origen de la palabra programación orientada a objetos

«Orientado» procede del participio del verbo orientar, y este del latín oriens, «que nace, que sale», por el punto cardinal donde sale el sol. Aplicado a la programación, el término no tiene una etimología propia: es una metáfora, pues el código se organiza «orientándose» hacia los objetos como unidad central, en vez de hacia las funciones o los procedimientos.

El paradigma se atribuye a lenguajes como Simula, pensado para simular sistemas, y se popularizó después con Smalltalk y, más tarde, con C++ y Java, que lo llevaron a la programación comercial a gran escala. En español, la expresión y su sigla, POO, se usan indistintamente en la enseñanza y en la industria.

Principios de la programación orientada a objetos

PrincipioEn qué consiste
EncapsulamientoAgrupa los datos y los métodos que los manipulan dentro del objeto, y oculta los detalles internos que no necesitan verse desde fuera.
HerenciaPermite que una clase nueva reutilice y extienda los atributos y métodos de otra ya existente.
PolimorfismoHace posible que objetos de clases distintas respondan de forma propia a un mismo mensaje o método.
AbstracciónReduce un objeto a los atributos y métodos relevantes para el problema, dejando fuera los detalles que no importan en ese contexto.

Ejemplos de uso de programación orientada a objetos

El videojuego define una clase Personaje de la que heredan las clases Héroe y Enemigo, cada una con su propio comportamiento.

En el banco, cada cuenta se modela como un objeto con su saldo y sus métodos para ingresar o retirar dinero.

La empresa migró su sistema de facturación a programación orientada a objetos para reutilizar código entre distintos módulos.

Gracias al polimorfismo, el mismo método dibujar produce un resultado distinto según se llame sobre un círculo o sobre un cuadrado.

El curso de introducción a la programación orientada a objetos enseña primero a diseñar clases antes de escribir el código completo.

Sinónimos y palabras relacionadas

Sinónimos: paradigma orientado a objetos, POO (sigla).

Antónimos: programación funcional, programación procedimental.

No es lo mismo que:

Preguntas frecuentes sobre la programación orientada a objetos

¿Qué diferencia hay entre una clase y un objeto?

La clase es la plantilla que define atributos y métodos; el objeto es cada instancia concreta construida a partir de esa plantilla, con su propio estado. Consulta la diferencia entre clase y objeto.

¿Qué significan las siglas POO y OOP?

POO es la sigla en español de programación orientada a objetos; OOP es la sigla equivalente en inglés, de object-oriented programming. Ambas nombran el mismo paradigma.

¿Por qué se usa tanto la programación orientada a objetos?

Porque facilita reutilizar código mediante la herencia, organizar sistemas grandes en piezas independientes y mantener el software a medida que crece, al agrupar datos y comportamiento en unidades manejables.

Ver también