![](/cvo_files/imgs_sap_abap/logos/logo_cvo_academy_it.png)
✒️ABAP Introducción a la Programación Orientada a Objetos
ABAP Introducción a la Programación Orientada a Objetos
![ABAP Introducción a la Programación Orientada a Objetos ABAP Introducción a la Programación Orientada a Objetos](https://www.cvosoft.com/cvo_files/imgs_sap_abap/og-images/372.jpg)
Introducción a la programación Orientada a Objetos.
1.-Qué es la programación Orientada a Objetos POO.
Es un método de desarrollo de software basado en el comportamiento de los objetos en el mundo real.
Un objeto es la representación en un programa de un concepto, y contiene toda la información necesaria para abstraerlo: datos que describen sus atributos y operaciones que pueden realizarse sobre los mismos.
Los objetos se componen de tres partes fundamentales:
- Métodos
- Eventos
- Atributos
2.-Cómo se piensa en la POO.
Pensar en términos de objetos es muy parecido a como lo haríamos en la vida real.
Como ejemplo, diríamos que un coche es el elemento principal que tiene una serie de características, como el color, el modelo, la marca, etc. Además tiene una serie de funcionalidades asociadas, como pueden ser ponerse en marcha o parar.
En un esquema POO el coche seria el objeto, las propiedades serian las características, y los métodos serian las funcionalidades.
Otro ejemplo lo vemos con una fracción, es decir, una operación matemática que tiene un numerador y un denominador que divide al numerador. 3 / 2.
La fracción seria el objeto y tendría dos propiedades, el numerador y el denominador. Luego podría tener varios métodos como simplificarse, sumarse, restarse, etc.
3.-Conceptos claves de la POO
OBJETO: Es únicamente una porción de código fuente que contiene datos y proporciona servicios.
Los datos constituyen los atributos del objeto. Los servicios que proporciona el objeto se conocen como métodos (se asemejan a las funciones). Normalmente los métodos operan con los datos privados del objeto, esto es, con datos que son visibles sólo para los métodos del objeto.
CLASE: Es un conjunto de objetos que tienen la misma estructura y comportamiento.
En la POO una clase no es más que una serie de código que define a todos los elementos relaciones con ella. Así, podríamos escribir la clase ave colocando en ella todas las características que tienen las aves (pico, color, alto, ancho, patas, etc.), estas características serán los Atributos.
También las aves tienen ciertos mecanismos como dormir, comer, reproducirse, etc. Estos mecanismos serán los Métodos.
También sabemos que las aves reaccionan ante ciertos sucesos, peligro, atracción, defensa, etc. Estos serán los Eventos.
INSTANCIA: Es un objeto de una clase en particular creado en tiempo de ejecución.
Una clase simboliza la definición de un objeto, pero no es el objeto en sí. Así que para sentarnos necesitamos convertir esa idea en algo, en un objeto real, al cual llamaremos Instancia.
Cada vez que creamos una nueva instancia, esta adquiere atributos, métodos y eventos de la clase a la que pertenece, sin embargo cada instancia es independiente de las otras. Lo cual nos da dos ventajas:
Si hago algún cambio en la clase, todas las instancias de esta clase se actualizaran automáticamente.
Al ser independientes de las otras instancias, puede darles valores diferentes si afectar a las demás.
4.-Principales ventajas de la orientación a Objetos.
Sistemas de software muy complejos se vuelven más simples de comprender debido a que la orientación a objetos proporciona una representación más cercana a la realidad que otras técnicas de programación.
- En un sistema correctamente diseñado con orientación a objetos, es posible realizar cambios al nivel de la Clase, si tener que realizar cambios en ningún otro punto del sistema.
- A través del polimorfismo y la herencia es posible la reutilización de componentes individuales.
- La cantidad de trabajo en revisión y mantenimiento del sistema se reduce debido a que muchos problemas pueden ser detectados y corregidos en tiempo de diseño.
- Facilita el trabajo en equipo debido a que varios desarrolladores pueden trabajar en distintos componentes de un mismo desarrollo.
NOTA: A pesar de las ventajas, podemos encontrar algunas características no deseadas: Las limitaciones para el programador cuando no está familiarizado con la POO, Tamaño excesivo en las aplicaciones resultantes, Problema con las clases heredadas, ya que se hereda todos los miembros de la clase aunque no se necesiten y Velocidad de ejecución al ser más pesadas las aplicaciones.
 
 
 
Sobre el autor
Publicación académica de Juan Hernández, en su ámbito de estudios para la Carrera Consultor ABAP.
Juan Hernández
Profesión: Programador Informático - España - Legajo: XQ15K
✒️Autor de: 125 Publicaciones Académicas
🎓Egresado de los módulos:
Disponibilidad Laboral: PartTime