✒️ABAP POO Introducción a la POO
ABAP POO Introducción a la POO
INTRODUCCION A LA PROGRAMACION ORIENTADA A OBJETOS (POO)
Es un método de desarrollo de software basado en el comportamiento de los objetos en el mundo real.
POO es un paradigma o modelo de programación. Es una forma de programar, una manera de plantearse la programación.
Tenemos que pensar de una manera distinta, para escribir nuestros programas en términos de objetos, propiedades, métodos y otros conceptos más.
ABAP soporta POO a partir de la versión 4.0.
Esta extensión se basa en el lenguaje ya existente, siendo compatible con él.
Se pueden usar objetos en programas existentes igual que si fueran sentencias ABAP.
Los conceptos de orientación a objetos de los objetos ABAP son esencialmente los mismos de otros lenguajes modernos orientados a objetos como C o JAVA
Un pequeño número de conceptos que han probado no ser provechosos en estos lenguajes no se incluyen en ABAP.
Los Objetos ABAP también tienen elementos muy útiles del lenguaje que C y Java no ofrecen.
COMO SE PIENSA EN LA POO
Pensar en términos de objetos es muy parecido a como lo haríamos en la vida real.
Por ejemplo un coche, sería el objeto en POO. Las propiedades (color, modelo) y los métodos (ponerse en marcha, parar, acelerar, frenar).
Luego estos objetos se pueden usar en nuestros programas.
Los programas POO utilizan muchos objetos para realizar acciones y ellos mimos también son objetos. Es decir un taller de coches sería un objeto que utilizaría los objetos, coche, herramientas, etc…
CONCEPTOS CLAVES DE LA POO
OBJETO: es únicamente una porción de código fuente que contiene datos y proporciona servicios.
Los objetos en programación se usan para modelar objetos o entidades del mundo real.
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 datos constituyen los atributos del objeto.
Los servicios que proporciona el objeto se conocen como métodos y se asemejan en su funcionamiento a las funciones. Normalmente los métodos operan con los datos privados del objetos estos solo son visibles para los métodos del objeto.
De esta manera, los atributos de un objeto no pueden ser cambiados directamente por el usuario del objeto, solo pueden ser cambiados por los métodos de es objeto. Así se garantiza la consistencia interna del objeto.
CLASE: es un conjunto de objetos que tienen la misma estructura y comportamiento.
Es una clasificación por ejemplo un pero no es un ave por lo tanto tenemos un clase para cada uno para diferenciarlos aunque los dos son animales
En POO una clase no es más que una serie de código que define a todos los elementos relacionados con ella. Podríamos escribir la clase AVE colocando en su interior todas las características que tienen las aves, estas serían los ATRIBUTOS.
Los mecanismos del ave como comer, dormir, etc. serían los METODOS.
Las reacciones a ciertos sucesos, como peligro, defensa, atracción, serían 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 si.
Cada vez que creamos una nueva instancia, esta aduqiere atributos, métodos y eventos de la clase a la que pertenece, sin embargo, cada instancia e independiente de las otras.
Ventajas:
Se cambiamos algo en la clase, todas las instancias de esta clase se actualizarán automáticamente. Esto nos permite hacer cambios sin tener que ir a cada una de las instancias.
Al ser independientes de las otras instancias, puedo dar valores diferentes sin que afecten a las demás. Aunque comparten estructura, pueden programarse individualmente, dando versatilidad y flexibilidad al código.
PRINCIPALES VENTAJAS DE LA POO
1. Sistemas de software complejos se vuelen mucho más simples de comprender. Proporciona una representación más cercana a la realidad.
2. Es posible realizar cambios al nivel de clase, sin tener que realizar cambios en ningún otro punto del sistema. Reduce significativamente el costo total del mantenimiento necesario
3. A través del polimorfismo y la herencia es posible la reutilización de componentes individuales.
4. Los trabajos de revisión y mantenimiento se reduce debido a que muchos problemas pueden ser detectados y corregidos en la fase de diseño
5. Facilita el trabajo en equipo. Varios desarrolladores pueden trabajar en distintos componentes en un mismo desarrollo.
DESVENTAJAS O LIMITACIONES
1. Limitaciones para el programador: Poco conocimiento por parte de los programadores.
2. Tamaño excesivo en las aplicaciones resultantes.
3. Cuando se heredan clases a partir de clases existentes, se heredan todos los miembros aunque no se necesiten.
4. Velocidad de ejecución. Por el tamaño de la aplicación.
 
 
 
Sobre el autor
Publicación académica de Josep Antoni Lopez Moyano, en su ámbito de estudios para el Máster ABAP POO.
Josep Antoni Lopez Moyano
Profesión: It Manager - Espa?a - Legajo: QP26P
✒️Autor de: 375 Publicaciones Académicas
🎓Egresado de los módulos:
- Carrera Consultor en SAP HCM Nivel Inicial
- Carrera Consultor Basis NetWeaver Nivel Avanzado
- Carrera Consultor Basis NetWeaver Nivel Inicial
- Máster Funcional ABAP
- Máster ABAP Orientado a Objetos
- Carrera Consultor ABAP Nivel Avanzado
- Carrera Consultor ABAP Nivel Inicial