✒️ABAP POO Introducción a la POO
ABAP POO Introducción a la POO
INTRODUCCION A LA POO
QUE ES? Es un metodo de desarrollo basado en el comportamiento de los objetos reales, conocido como paradigma o modelo de programacion.
Los objetos ABAP son conjuntos de sentencias orientadas a objetos que se introdujo a partir de la version 4.0
Veamos cuales son los origines de la POO:
PRIMERA ETAPA: Surgimiento de los lenguajes ensambladores, en donde la unidad de programación es la instrucción compuesta de un operador y los operandos. Aquí, el nivel de abstracción que se aplica es muy bajo.
SEGUNDA ETAPA: Surgimiento de los lenguajes de programación: Fortran, ALGOL y COBOL en donde los objetos y operaciones del mundo real se podían modelar mediante datos y estructuras de control separadamente. En esta etapa, el diseño del software se enfoca sobre la representación del detalle procedimental y en función del lenguaje elegido. Conceptos como refinamiento progresivo, modularidad, procedimientos y programación estructurada, son básicos en esta etapa. Aquí existe una mayor abstracción de los datos.
TERCAERA ETAPA: Surgimiento del concepto de abstracción y ocultamiento de la información.
CUARTA ETAPA: A partir de los años 70 se trabaja sobre una nueva clase de lenguajes de simulación y sobre la construcción de prototipos tales como el Simula 70, el cual llevó al SmallTalk. En estos lenguajes la abstracción de datos es de gran importancia y los problemas del mundo real se representan mediante objetos de datos a los cuales se le añade el correspondiente conjunto de operaciones asociados a ellos. Términos como abstracción de datos, objeto, encapsulación, entre otros, son conceptos básicos sobre los cuales se fundamenta la POO.
COMO SE PIENSA EN LA POO?
En terminos de objetos, vamos a pensar en un elemento principal que tiene una serie de caracteristicas y funcionalidades asociadasa.
CONCEPTOS CLAVES DE LA POO.
- OBJETO: Posicion de codigo fuente que contiene datos y proporciona servicios
Los objetos se usan para modelar objetos o entidades del mundo real.
Un objeto es la representacion en un programa de un concepto y contiene la información necesario para abstraerlo como ejemplo, los datos que describen sus atributos y operciones que pueden realizarse
Los servicios que proporciona el objeto se conocen como metodos y se asemejan a su funcionamiento a las funciones.
Para garantizar la consistencia interna del objeto, los atributos de un objeto no pueden ser cambiados directamente por el usuario, solo puede cambiarse por los metodos de ese objeto
- CLASE: Conjunto de objetos que tienen la misma estructura y comportamiento (CLASIFICACIÓN)
En la POO clase es una serie de codigo que define a todos los elementos relacionados con ella.
Las caracteristicas que que contienen las clases, las llamaremos en lenguaje de programadores, ATRIBUTOS.
Los mecanismos (actividades) especificos que tiene una clase los llamamos MÉTODOS.
Ls acciones que tiene la clase las llamamos EVENTOS.
- INSTANCIA: Es un objeto de una clase en particular creado en tiempo de ejecución. Simboliza la definicion de un objeto pero no es un objeto.
Cada que creamos una INSTANCIA, adquiere atributos, metodos y eventos de la clase a la que pertenece.
Cada instancia es independiente de otra, esto nos da dos VENTAJAS;
- Al momento de realizar un cambio en la clase, todas las instancias de la clase se actualizan automaticamente
- Pueden programarse individualmente, dando versatilidad y flexibilidad al codigo
PRINCIPALES VENTAJAS DE LA POO}
- Sistemas muy complejos, mucho mas simples de comprender ya que proporciona una representacion mucho mas cercana a la realidad
- En un sistema correctamente diseñado, podemos realizar cambios al nivel de la clase sin realizar cambios en ningun otro punto del sistema
- Es posible la reutilizacion de componentes individuales con el POLIMORFISMO (Propiedad que presentan los objetos y significa que metodos se llaman igual pero puden comportarse de manera distinta), y la HERENCIA (Capacidad que tiene una clase de heredar las propiedades y metodos de otra clase)
- Facilita la revision y mantenimiento del sistema, ya que muchos problemas se detectan y corrigen en la fase de diseño
- Facilita el trabajo en equipo
A pesar de que las ventajas de la POO superan a sus 9limitaciones, podemos encontrar algunas características no deseables en esta; algunas de ellas son:
- Las limitaciones para el programador: No obstante que la tecnologia POO no es nueva, una gran porcentaje de programadores no están familiarizados con los conceptos de dicha tecnologia. En otras palabras, la logica de la programación estructurada sigue siendo predominante en la gran mayoría de los desarrolladores de software. Despues de haber revisado en forma breve los principios de la POO, nos queda claro que en esta nos requiere una lógica de pensamiento totalmente diferente a la logica comunmente utilizada para la la programación estructurada.
- El tamaño excesivo en las aplicaciones resultantes: La gran mayoría de los equipos de computación cuentan con capacidades tanto de almacenamiento como de memoria, lo suficientemente buena como para ejecutar la mayoría de las aplicaciones que puedan desarrollarse con la POO. Sin embargo, existen casos en los cuales lo anterior no se cumple.
- Herencia: Una de las desventajas de la POO es que cuando se heredan clases a partir de clases existentes, se heredan de forma implícita todos los miembros de dicha clase, aun cuando no todos se necesitan. Lo que produce que haya aplicaciones muy grandes que no siempre encajan en los sistemas con los que se dispone.
- La velocidad de ejecución: Relacionado al punto anterior, una aplicación innecesariamente pesada en muchas ocaciones es mas lenta de ejecutar que una aplicacion conformada unicamente por los módulos necesarios
 
 
 
Sobre el autor
Publicación académica de Ixhel Magai Lopez Valencia, en su ámbito de estudios para el Máster ABAP POO.
Ixhel Magai Lopez Valencia
Mexico - Legajo: PM62E
✒️Autor de: 134 Publicaciones Académicas
🎓Egresado de los módulos:
- Máster ABAP for HANA
- Máster ABAP Orientado a Objetos
- Carrera Consultor ABAP Nivel Avanzado
- Carrera Consultor ABAP Nivel Inicial
Disponibilidad Laboral: PartTime
Presentación:
Soy ingeniera en telematica, estoy interesada en aprender programacion en sap, solo tengo conocimientos basicos en java
Certificación Académica de Ixhel Lopez