PDF de programación - Lenguaje ABAP orientado objetos

Imágen de pdf Lenguaje ABAP orientado objetos

Lenguaje ABAP orientado objetosgráfica de visualizaciones

Actualizado el 28 de Noviembre del 2017 (Publicado el 27 de Julio del 2017)
1.622 visualizaciones desde el 27 de Julio del 2017
481,1 KB
50 paginas
Creado hace 22a (21/03/2002)
ABAP orientado a objetos



Versión 1.0
22 de Marzo del 2002
Manuel Fernández Arguelles AG


LENGUAJE ABAP ORIENTADO A OBJETOS

ABAP orientado a objetos

¿QUÉ ES LA ORIENTACIÓN A OBJETOS?
La programación orientada a objetos es un método de desarrollo de software basado en el
comportamiento real de los objetos en el mundo real. Se pretende desarrollar componentes de software
que se comporten como los objetos reales a los que representan.
La orientación a objetos es una técnica usada en muchos lenguajes de programación los cuales comparten
una terminología usada universalmente.
En esta sección se realizará una primera visión de conjunto de estos términos para en secciones
posteriores adentrarse en la implementación de estos conceptos en el lenguaje ABAP.

Objetos
Un 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 y se asemejan en su funcionamiento a las funciones. Normalmente los métodos operan con los
datos privados del objeto, esto es, con datos que son sólo 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, sólo
pueden ser cambiados por los métodos de ese objeto. Así se garantiza la consistencia interna del objeto.

Clases
Una clase es una entidad teórica que describe el comportamiento de un objeto. Desde un punto de vista
meramente técnico, un objeto es una instancia en tiempo de ejecución de una clase. En principio se
pueden crear cualquier número de objetos basados en una única clase. Cada instancia de una clase
(objeto) tiene su propia identidad y su propio conjunto de valores para sus atributos. Dentro de un
programa un objeto es identificado por su referencia, la cual le proporciona un nombre que define
inequivocamente al objeto y permite acceder a sus métodos y atributos.

Propiedades de los objetos
En la programación orientada a objetos, los objetos tienen normalmente las siguientes propiedades:
− Encapsulación – Los objetos restringen la visibilidad de sus recursos (atributos y métodos) al resto

de usuarios. Cada objeto posee una interface que determina la manera de interactuar con él. La
implementación del objeto (su interior) es encapsulada, lo que quiere decir que desde fuera el objeto
es invisible, simplemente se usa.

− Polimorfismo – El polimorfismo quiere decir que métodos que se llaman exactamente igual pueden
comportarse de manera distinta en clases diferentes. La orientación a objetos tiene unas estructuras
llamadas interfaces que permiten acceder a métodos con el mismo nombre en diferentes clases.
Dentro de cada clase particular se puede redifinir el método obteniendo distintos métodos con el
mismo nombre. Asi es que un método no se define exactamente con su nombre, si no con su nombre
y el nombre de la clase a la que pertenece.

− Herencia – Se pueden utilizar clases existentes para originar nuevas clases. Las nuevas clases
originadas heredan los datos y los métodos de la superclase. De cualquier manera, se pueden
sobreescibir los métodos existentes, incluso añadir métodos nuevos.

Usos de la orientación a objetos
Las principales ventajas de la programación orientada a objetos son:
− Sistemas de software muy complejos se vuelven mucho más simples de comprender debido a que la

orientación a objetos proporciona una representación mucho 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 clases, sin tener que realizar cambios en ningún otro punto del sistema. Esto reduce
significativamente el costo total del mantenimiento necesario.

− 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 la fase de diseño.


Para conseguir estos objetivos necesitamos:

ABAP orientado a objetos - Manuel Fernández Fernández-Argüelles 1





ABAP orientado a objetos

− Lenguajes de programación orientados a objetos – Las técnicas de programación orientadas a objetos

no utilizan necesariamente un lenguaje orientado a objetos, aunque la eficiencia del desarrollo
depende directamente de la utilización o no de un lenguaje orientado a objetos.

− Herramientas orientadas a objetos – Estas herramientas permiten crear programas orientados a

objetos en lenguajes orientados a objetos. Permiten además diseñar y almacenar los objetos
desarrollados y las relaciones entre ellos.

− Diseño orientado a objetos – El diseño orientado a objetos de un sistema de software es, de todos los
requerimientos para conseguir las ventajas arriba enumeradas, el más importante, el que más tiempo
consume y el más dificil de llevar a cabo.

¿QUÉ SON LOS OBJETOS ABAP (ABAP OBJECTS)?
Este es un nuevo concepto introducido en el release 4.0 que tiene dos significados, por un lado se refiere
al entorno de ejecución ABAP y por otro a la extensión orientada a objetos del lenguaje ABAP

El entorno de ejecución
El nombre de ABAP objects para todo el entorno de ejecución ABAP quiere indicar el objetivo aún no
totalmente desarrollado de adaptar SAP completamente a la orientación a objetos. El ABAP Workbench
permite crear objetos del R/3 Repository tales como programas, objetos de autorización, objetos de
bloqueo, etcetera. El Business Object Repository (BOR) permite crear SAP Business objects. Hasta ahora
las técnicas de orientación a objetos se habían usado exclusivamente en el diseño, pero desde el release
4.0 el lenguaje ABAP es ya un lenguaje orientado a objetos.

Extensión orientada a objetos de ABAP
ABAP Objects es asimismo un conjunto de sentencias orientadas a objetos que han sido introducidas
dentro del lenguaje ABAP. Esta extensión se cimenta en el lenguaje ya existente, siendo compatible con
él. Se pueden usar objetos en programas existentes, de la misma manera que se pueden usar sentencias
ABAP convencionales en programas ABAP orientados a objetos.
El resto del lenguaje ABAP está creado desde un principio orientado a una programación estructurada, en
la cual los datos se almacenan de manera estructurada en tablas en la base de datos y los programas
mediante funciones acceden a estos datos y trabajan con ellos.

PASO DE LAS FUNCIONES A LOS OBJETOS
Los objetos son el centro de cualquier modelo orientado a objetos. Los objetos contienen atributos (datos)
y métodos (funciones). Uno de sus principales objetivos es el suministar al desarrollador de software una
forma de trabajo en la cual poder examinar un problema real y poder proporcionar una solución
individualizada al problema. En el entorno de los negocios podrían ser objetos las entidades Cliente,
Factura, etcetera.
Desde el Release 3.1 en adelante, el Business Object Repository (BOR) contiene ejemplos de tales
objetos (transacción SW02).
Lo más parecido a los objetos que tenía ABAP eran los módulos de funciones y los grupos de funciones.
Supongamos que tenemos un grupo de funciones para procesar pedidos. Los atributos de un pedido son
los datos globales del grupo de funciones, mientras que los módulos de funciones son las acciones que
manipulan los datos, o sea los métodos. Esto quiere decir que los datos reales del pedido están
encapsulados en el grupo de funciones y no se puede acceder directamente a ellos, sólo mediante los
módulos de funciones. De esta manera se garantiza la consistencia de los datos.
Cuando se ejecuta un programa ABAP, el sistema inicia una nueva sesión interna que tiene una zona de
memoria en la cual reside el programa ABAP y sus datos asociados. Cuando el programa llama a un
módulo de funciones, una instancia del grupo de funciones más sus datos es cargado en el área de
memoria de la sesión interna. Un programa puede cargar distintas instancias llamando a módulos de
funciones de diferentes grupos de funciones.
La instancia de un grupo de funciones en el área de memoria de la sesión interna representa prácticamente
el concepto de objeto. Cuando se llama al módulo de funciones, el programa que llama usa la instancia
del grupo de funciones basada en su descripción en la biblioteca de funciones. El programa no puede
acceder a los datos en el grupo de funciones directamente pero si a través del módulo de funciones. El
módulo de funciones y sus parámetros son la interface ente el grupo de funciones y el usuario.
La principal diferencia ente la verdadera orientación a objetos y los grupos de funciones es que mientras
que un programa puede trabajar simultaneamente con varios grupos de funciones, no puede hacerlo con
varias instancias de un mismo grupo. Si un programa quiere procesar varios pedidos a la vez tendría que

ABAP orientado a objetos - Manuel Fernández Fernández-Argüelles 2





ABAP orientado a objetos

adaptar el grupo de funciones para incluir una administración de instancias, usando por ejemplo, números
que diferencien las instancias. En la práctica, esto es muy complicado de realizar. Por esto, los datos son
almacenados en el programa y los módulos de funciones son llamados para trabajar con ellos
(programación estructurada). Un problema es por ejemplo que todos los usuarios de un módulo de
funciones deben usar las mismas estructuras de datos así como el propio grupo de funciones. El cambiar
la estructura de interna de datos de un grupo de funciones afecta a muchos usuarios, sin poder predecir las
posibles implicaciones del cambio. El único modo de evitar esto es mediante las interfaces, con una
técnica que garantice que las estructuras internas de las inst
  • Links de descarga
http://lwp-l.com/pdf5784

Comentarios de: Lenguaje ABAP orientado objetos (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad