ALEGSA.com.ar

Definición de programación orientada a objetos

Significado de programación orientada a objetos: La programación orientada a objetos (POO) es un paradigma de lenguaje de programación que emplea el concepto de objetos en sus ...
09-07-2023

 


Definición de programación orientada a objetos

 

La programación orientada a objetos (POO) es un paradigma de lenguaje de programación que emplea el concepto de objetos en sus interacciones con el fin de desarrollar programas informáticos. En otras palabras, esta programación utiliza objetos como elementos fundamentales en la construcción de la solución.

Emplea técnicas de programación como: herencia, cohesión, abstracción, polimorfismo, acoplamiento y encapsulamiento.

La POO es diferente de la programación estructurada tradicional, en la que los datos y los procedimientos están separados y sin relación, ya que lo único que se busca es el procesamiento de unos datos de entrada para obtener otros de salida.

Los programadores que emplean POO, definen primero los objetos para luego enviarles mensajes solicitándoles que realicen sus métodos por sí mismos.

La POO surgió como paradigma en los años 70.

La programación orientada a objetos se basa en el principio de encapsulamiento, que consiste en agrupar en un objeto tanto los datos como los métodos que operan sobre ellos. De esta manera, se logra un mayor nivel de modularidad y reutilización de código, ya que es posible utilizar objetos creados previamente en distintas partes del programa.

Otra característica importante de la POO es la herencia, que permite crear nuevas clases basadas en clases existentes, heredando sus atributos y métodos. Esto facilita la creación de programas más flexibles y fáciles de mantener, ya que se pueden reutilizar funcionalidades y agregar nuevas sin necesidad de volver a escribir todo el código.

El polimorfismo es otra técnica utilizada en la programación orientada a objetos, que permite a un objeto mostrar diferentes comportamientos dependiendo del contexto en el que se encuentra. Esto se logra mediante el uso de interfaces o clases abstractas, que definen un conjunto de métodos comunes que pueden ser implementados de diferentes maneras por las clases que las heredan.

La cohesión es un concepto relacionado con la calidad del diseño de un sistema orientado a objetos. Se refiere a la medida en que los elementos de una clase están relacionados y se agrupan de manera lógica y coherente. Una alta cohesión indica un diseño sólido y bien estructurado, mientras que una baja cohesión puede indicar una mala modularidad y dificultades en la comprensión y mantención del código.

El acoplamiento, por otro lado, se refiere al grado de dependencia entre las clases de un sistema. Un acoplamiento bajo indica que las clases están poco relacionadas entre sí, lo cual es deseable para lograr un sistema flexible y fácilmente modificable. Por el contrario, un alto acoplamiento indica una fuerte dependencia entre las clases, lo cual puede dificultar la reutilización del código y la realización de cambios en el sistema.

En conclusión, la programación orientada a objetos es un paradigma de programación que utiliza objetos como elementos fundamentales en la construcción de programas informáticos. Emplea técnicas como la herencia, cohesión, abstracción, polimorfismo, acoplamiento y encapsulamiento para lograr un código modular, reutilizable y fácil de mantener. Surgió en los años 70 y desde entonces ha sido ampliamente utilizado en el desarrollo de software.


Características de los objetos en la programación orientada a objetos



- Un objeto es una entidad que tiene un estado, un método (comportamiento) y una identidad. Un objeto es una abstracción de algún hecho o ente del mundo real, con atributos que representan sus características o propiedades, y métodos que emulan su comportamiento o actividad. Todas las propiedades y métodos comunes a los objetos se encapsulan o agrupan en clases.

- El estado de un objeto son los atributos a los que se les asignan valores (datos). La única manera de modificar el estado de un objeto es a través de sus métodos.

- El método o comportamiento son los mensajes a los que podrá responder dicho objeto. En otras palabras, las funciones u operaciones que se pueden realizar con dicho objeto. Los objetos tienen mecanismos de interacción (llamados métodos) que permiten comunicarse entre sí. Esta comunicación favorece el cambio de estado del objeto.

- La identidad de un objeto es lo que lo diferencia del resto de los objetos. Es un identificador.



Características específicas de la programación orientada a objetos (POO)



- Abstracción: La abstracción a objetos expresa las características esenciales de un objeto, las cuales distinguen al objeto de los demás (la abstracción genera la ilusión de simplicidad). Además de distinguir entre los objetos provee límites conceptuales. Entonces se puede decir que la encapsulación separa las características esenciales de las no esenciales dentro de un objeto. Si un objeto tiene más características de las necesarias los mismos resultarán difíciles de usar, modificar, construir y comprender.

- Encapsulamiento: significa reunir todos los elementos que pueden considerarse pertenecientes a una misma entidad, al mismo nivel de abstracción. Esto permite aumentar la cohesión de los componentes del sistema.

- Principio de ocultación: ocultamiento del estado del objeto, es decir, de los datos que pertenecen a un objeto de manera que sólo se pueda cambiar mediante los métodos (u operaciones) definidas para ese objeto. Lo único visible de un objeto para el resto es su interfaz, es decir, los métodos que pueden utilizarse. El aislamiento protege a las propiedades de un objeto contra su modificación por quien no tenga derecho a acceder a ellas; solamente los propios métodos internos del objeto pueden acceder a su estado.

- Modularidad: propiedad que permite dividir una aplicación en partes (módulos) más pequeños. Cada módulo debe intentar ser lo más independiente posible de la aplicación.

- Polimorfismo: el polimorfismo se refiere a la propiedad por la que es posible enviar mensajes sintácticamente iguales a objetos de tipos distintos. El único requisito que deben cumplir los objetos que se utilizan de manera polimórfica es saber responder al mensaje que se les envía.

- Herencia: Las clases se relacionan entre sí y permiten formar una jerarquía de clasificación. Los objetos heredan propiedades y métodos (comportamientos) de las clases a las que pertenecen. La herencia organiza y facilita el polimorfismo y el encapsulamiento, permitiendo a los objetos ser definidos y creados como tipos especializados de objetos preexistentes. Estos pueden compartir (y extender) su comportamiento sin tener que volver a implementarlo.

Ver también: orientado a objetos y programación.


Resumen: programación orientada a objetos



La POO es un tipo de programación que utiliza objetos como base para crear programas. Se enfoca en el uso de técnicas como herencia, cohesión y encapsulamiento. A diferencia de la programación estructurada, en la POO se definen objetos y se les envían mensajes para que realicen sus acciones. Surgió en los años 70.




¿Qué es la programación orientada a objetos?



La programación orientada a objetos (POO) es un paradigma de programación que utiliza el concepto de objetos para desarrollar programas informáticos. En lugar de centrarse en las funciones y procedimientos, la POO se basa en la interacción entre objetos, que son entidades independientes con su propio estado y comportamiento.


¿Cuáles son las ventajas de utilizar la programación orientada a objetos?



La programación orientada a objetos ofrece varias ventajas, como la reutilización de código, la modularidad y el encapsulamiento. Al utilizar objetos, se pueden crear componentes independientes que pueden ser reutilizados en diferentes programas. Además, el encapsulamiento permite ocultar los detalles internos de un objeto, lo que facilita su mantenimiento y evolución.


¿Cuál es la diferencia entre una clase y un objeto en la programación orientada a objetos?



En la programación orientada a objetos, una clase es una plantilla o estructura que define las características y comportamientos que tendrán los objetos creados a partir de ella. Por otro lado, un objeto es una instancia específica de una clase, es decir, es una entidad concreta que tiene un estado y un comportamiento determinados.


¿Cómo se logra la herencia en la programación orientada a objetos?



La herencia es un concepto clave en la programación orientada a objetos que permite crear nuevas clases basadas en clases existentes. Se logra mediante la declaración de una clase secundaria (o subclase) que hereda las características y comportamientos de una clase padre (o superclase). Esto permite reutilizar el código y establecer relaciones jerárquicas entre las clases.


¿Qué significa el concepto de polimorfismo en la programación orientada a objetos?



El polimorfismo es un principio fundamental de la programación orientada a objetos que permite utilizar un mismo nombre de método para diferentes objetos. Esto significa que un objeto puede responder de manera diferente a una misma llamada de método, según su tipo. El polimorfismo facilita la flexibilidad y la extensibilidad de los programas orientados a objetos.


¿Cuándo es recomendable utilizar la programación orientada a objetos?



La programación orientada a objetos es recomendable cuando se busca un diseño flexible, modular y reutilizable. Es especialmente útil en proyectos grandes y complejos, donde se requiere una buena estructuración del código y la capacidad de evolucionar con facilidad. Sin embargo, en proyectos más pequeños y simples, otros paradigmas de programación pueden ser más adecuados.





Autor: Leandro Alegsa
Actualizado: 09-07-2023

¿Cómo citar este artículo?

Alegsa, Leandro. (2023). Definición de programación orientada a objetos. Recuperado de https://www.alegsa.com.ar/Dic/programacion_orientada_a_objetos.php

Diccionario informático



 


articulos
Asistente IA
Escribe tu consulta sobre informática y tecnologías al asistente de Inteligencia Artificial
¡te responderá en segundos!




* ACLARACIÓN: el asistente ha sido entrenado para responder tus dudas con muy buenos resultados, pero puede equivocarse, esta tecnología aún está en desarrollo. Te sugiero dejar tu email para que te contactemos para corregir la respuesta de la IA: leemos todas las consultas y respuestas.


Comentarios relacionados

  • Tipos de programación orientada a objetos

    Existen varios tipos de programación orientada a objetos, entre ellos:

    1. Clásica o basada en clases: es el tipo de programación orientada a objetos más común. Se basa en la creación de clases que contienen atributos y métodos, y a partir de ellas se crean objetos.

    2. Basada en prototipos: en este tipo de programación, los objetos se crean a partir de prototipos que contienen los atributos y métodos necesarios.

    3. Orientada a aspectos: se centra en la modularización de aspectos específicos de un programa, como la seguridad o la gestión de errores.

    4. Orientada a agentes: en este tipo de programación, los objetos se consideran como agentes autónomos que pueden interactuar con otros objetos de manera independiente.

    5. Orientada a eventos: se basa en la creación de eventos que activan acciones en los objetos del programa.

    Cada tipo de programación orientada a objetos tiene sus propias características y beneficios, y la elección de uno u otro dependerá de las necesidades y objetivos del proyecto en cuestión.
Usa nuestro buscador para definiciones, informática y tecnologías