✒️ABAP / Las Interfaces Por Roberto Fluder Ahumada

Selector Alummnos / Empresas

ABAP Las Interfaces

ABAP Las Interfaces

• Introducción a Interfaces Las interfaces en ABAP son fundamentales para la Programación Orientada a Objetos (POO), ya que extienden la funcionalidad de las clases y proporcionan un punto de contacto común para el usuario. Son útiles cuando clases similares necesitan ofrecer funcionalidades parecidas pero con implementaciones distintas, permitiendo a los usuarios interactuar con ellas de forma unificada sin preocuparse por los detalles específicos de cada tipo de cuenta.

â—¦ Clases similares con funcionalidades similares pero código diferente: Necesidad de un punto de contacto común para interactuar con ellas.

â—¦ Ejemplo de cuentas bancarias: Un método para calcular comisiones anuales puede tener la misma interfaz pero diferente implementación entre una cuenta corriente y una de ahorro.

â—¦ Unificación de interacción: Permite al usuario ejecutar el mismo método para todas las cuentas sin preocuparse por el tipo individual.

• ¿Qué son las Interfaces? Las interfaces son estructuras independientes que se pueden implementar en una clase para ampliar su alcance. La visibilidad de los componentes de una clase (públicos, protegidos, privados) define su ámbito específico, y las interfaces extienden el ámbito público de una clase al añadir sus propios componentes, creando un punto de contacto común para los usuarios. Las interfaces, junto con la herencia, son uno de los pilares del polimorfismo, permitiendo que un mismo método con una interfaz se comporte de manera diferente en distintas clases.

â—¦ Interfaces: Estructuras independientes que se implementan en una clase para extender su ámbito.

â—¦ Determinación del ámbito de una clase: Definido por sus componentes y secciones de visibilidad.

â—¦ Extensión del ámbito de una clase: Las interfaces añaden sus componentes a la sección pública, creando un punto de contacto común.

â—¦ Papel en el Polimorfismo: Junto con la herencia, permiten que un método se comporte diferente en distintas clases.

• Definición de una Interface Las interfaces pueden ser definidas de forma global en el Repositorio R/3 o localmente dentro de un programa ABAP. La definición de una interfaz incluye la declaración de sus componentes, como atributos, métodos y eventos, de manera similar a cómo se definen en una clase. Los componentes definidos en una interfaz siempre pertenecerán a la sección pública de la clase en la que se implementa la interfaz.

â—¦ Tipos de definición: Global en el Repositorio R/3 o local en un programa ABAP.

â—¦ Sintaxis para interfaces locales: Código entre INTERFACE y ENDINTERFACE.

â—¦ Contenido de la definición: Declaración de todos los atributos, métodos y eventos.

â—¦ Visibilidad de componentes de interfaz: Pertenecen a la sección pública de la clase que la implementa.

• Implementación de Interfaces Al implementar una interfaz en una clase, los componentes de la interfaz se incorporan a la sección pública de dicha clase, permitiendo que sean direccionados como miembros de la clase bajo un nombre específico (interface_name~component_name). La clase que implementa la interfaz es responsable de proporcionar la implementación de todos los métodos definidos en la interfaz, ya que las interfaces no tienen una parte de implementación propia. Esto permite que múltiples clases implementen la misma interfaz, pero cada una con una lógica de método distinta.

â—¦ Inclusión de componentes: Se añaden a la sección pública de la clase.

â—¦ Acceso a componentes de interfaz: Se direcciona usando interface_name~component_name.

â—¦ Implementación de métodos: La clase debe implementar todos los métodos de las interfaces que adopta.

â—¦ Ausencia de parte de implementación en la interfaz: Los métodos de la interfaz son implementados por la clase que la usa.

â—¦ Flexibilidad de implementación: Diferentes clases pueden implementar la misma interfaz de maneras distintas.

• Referencias a Interfaces Las variables referenciadas son el medio para acceder a los objetos en ABAP. Pueden ser creadas con una referencia a una interfaz en lugar de una clase. Este tipo de referencia puede apuntar a objetos de cualquier clase que implemente la interfaz a la que se refiere. Una vez declarada (utilizando DATA <ref_variable> TYPE REF TO <interface_name>, donde la interfaz debe haber sido declarada previamente), una referencia a interfaz permite acceder a todos los componentes visibles de la interfaz del objeto al que apunta, lo que simplifica la interacción con objetos de diferentes clases que comparten la misma funcionalidad a través de la interfaz.

â—¦ Creación de variables referenciadas: Pueden referenciarse a interfaces además de clases.

â—¦ Capacidad de las variables referenciadas a interfaz: Pueden contener referencias a objetos de clases que implementan esa interfaz.

â—¦ Sintaxis para definir una referencia a interfaz: DATA <ref_variable> TYPE REF TO <interface_name>.

â—¦ Requisito de declaración: La interfaz debe haber sido declarada previamente en el programa.

â—¦ Funcionalidad de la referencia a interfaz: Permite acceder a todos los componentes visibles de la interfaz del objeto.

• Direccionar y asignar objetos usando referencias a interfaces Para interactuar con un objeto a través de una interfaz, primero se declara una variable referenciada a la clase, y si la clase implementa una interfaz, se puede asignar esta referencia de clase a una referencia de interfaz para que ambas apunten al mismo objeto. Esto posibilita el acceso a los atributos y métodos dependientes de instancia y estáticos de la interfaz, ya sea directamente a través de la referencia de clase (usando ref_variable->interface_name~attribute/method_name) o, de manera más polimórfica, a través de la referencia de interfaz (usando ref_variable->attribute/method_name), utilizando una sintaxis específica para cada tipo de componente. También se puede acceder a las constantes de la interfaz utilizando interface_name~constant_name y a los componentes estáticos utilizando el nombre de la clase que implementa la interfaz (class_name=>interface_name~static_component_name) o una referencia al objeto junto con el nombre de la interfaz (ref_variable->interface_name~static_component_name).

â—¦ Asignación de referencias: Una referencia de clase puede asignarse a una referencia de interfaz si la clase implementa dicha interfaz.

â—¦ Acceso a componentes de instancia vía referencia de clase: Se usa ref_variable->interface_name~attribute/method_name.

â—¦ Acceso a componentes de instancia vía referencia de interfaz: Se usa ref_variable->attribute/method_name.

â—¦ Acceso a constantes: interface_name~constant_name.

â—¦ Acceso a componentes estáticos: Utiliza el nombre de la clase o la referencia al objeto junto con el nombre de la interfaz y el componente.

• Ejemplo de Interfaces Un programa ABAP ilustra el uso de interfaces al declarar la interfaz ESTADO y las clases CONTADOR y BICICLETA. Ambas clases implementan la interfaz ESTADO en su sección pública. La creación de objetos de estas clases (CUENTA y BICI) y la ejecución de métodos a través de la interfaz (CUENTA->INCREMENTAR y BICI->MANEJAR) demuestran cómo se unifica el comportamiento a pesar de las diferentes implementaciones subyacentes, procesando los resultados y mostrándolos en pantalla.

â—¦ Programa de ejemplo: Demuestra el uso de la interfaz ESTADO y las clases CONTADOR y BICICLETA.

â—¦ Implementación de interfaz en clases: ESTADO es declarada en la sección pública de CONTADOR y BICICLETA.

â—¦ Flujo del programa: Creación de objetos, ejecución de métodos y visualización de resultados.


 

Escanear / Compartir

 

 


Sobre el autor

Publicación académica de Roberto Fluder Ahumada, en su ámbito de estudios para la Carrera Consultor ABAP Nivel Avanzado.

Roberto Fluder Ahumada

Profesión: Analista de Sistemas - Chile - Legajo: TD38U

✒️Autor de: 59 Publicaciones Académicas

🎓Egresado del módulo:

Certificación Académica de Roberto Fluder

✒️+Comunidad Académica CVOSOFT

Continúe aprendiendo sobre el tema "Las Interfaces" de la mano de nuestros alumnos.

SAP Master


Las Interfaces Introducción y motivación Las clases, instancias y objetos, junto con variables de referencia, son la base de la programación orientada a objetos en ABAP. Cuando varias clases similares deben ofrecer la misma funcionalidad (p. ej., cálculo de comisiones en cuentas corriente y de ahorro) pero con implementaciones distintas, las interfaces proporcionan un punto de contacto común para el usuario. El usuario puede invocar el mismo método sin preocuparse del tipo concreto de la clase, gracias a la abstracción que ofrece la interfaz. Definición y componentes de una interfaz Una interfaz es una estructura independiente...

Acceder a esta publicación

Creado y Compartido por: Juan Ignacio Romero

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Expert



Las interfaces en SAP permiten el intercambio de información entre SAP y otros sistemas, internos o externos, garantizando la integración y coherencia de datos. Se usan para automatizar procesos, evitar duplicidad y reducir errores. Pueden ser síncronas (respuesta inmediata) o asíncronas (procesamiento en diferido). Entre las tecnologías más usadas están IDocs, BAPIs, RFCs, Web Services y APIs. Los IDocs facilitan la comunicación masiva y estructurada; las BAPIs permiten acceder a funciones de negocio de forma controlada; los RFCs conectan sistemas SAP o no SAP. Las interfaces se diseñan según requerimientos de negocio, volumen de datos, seguridad y formato (XML, JSON, CSV)....

Acceder a esta publicación

Creado y Compartido por: David Ibarra / Disponibilidad Laboral: FullTime + Carta Presentación

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

• Introducción a Interfaces Las interfaces en ABAP son fundamentales para la Programación Orientada a Objetos (POO), ya que extienden la funcionalidad de las clases y proporcionan un punto de contacto común para el usuario. Son útiles cuando clases similares necesitan ofrecer funcionalidades parecidas pero con implementaciones distintas, permitiendo a los usuarios interactuar con ellas de forma unificada sin preocuparse por los detalles específicos de cada tipo de cuenta. â—¦ Clases similares con funcionalidades similares pero código diferente: Necesidad de un punto de contacto común para interactuar con ellas. â—¦ Ejemplo de cuentas bancarias: Un método para calcular comisiones...

Acceder a esta publicación

Creado y Compartido por: Roberto Fluder Ahumada

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP SemiSenior

Las interfaces en ABAP son una forma de definir un conjunto de métodos que las clases pueden implementar. Son útiles para garantizar que diferentes clases compartan ciertos comportamientos sin necesidad de herencia. En ABAP, las interfaces se definen con la palabra clave INTERFACE, seguida del nombre de la interfaz. Dentro de la interfaz, se declaran los métodos que las clases que la implementarán deberán definir. Por ejemplo: INTERFACE z_mi_interfaz. METHODS metodo1. METHODS metodo2. ENDINTERFACE. Las clases que implementan esta interfaz deben proporcionar la lógica para metodo1y metodo2. Para implementar una interfaz en ABAP, primero define una clase y usas la palabra clave INTERFACES seguida del...

Acceder a esta publicación

Creado y Compartido por: Exequiel Eduardo Acevedo / Disponibilidad Laboral: FullTime

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

Introducción a interfaces: Las clases, sus interfaces (los objetos) y el acceso a los objetos usando variables referenciadas son la base de la programación orientada a objetos en ABAP. Interfaces: son estructuras independientes que se pueden implementar en una clase para extender el ámbito de esa clase. Las interfaces extienden el ámbito de una clase añadiendo sus propios componentes a la sección pública. Esto permite a los usuarios acceder a diferente clases por medio de un punto de contacto común. Las interfaces junto con la herencia proporciona uno de los pilares básicos del polimorfismo, ya que permite que un sólo método con una interface se comporte distinto en...

Acceder a esta publicación

Creado y Compartido por: Javier Miguel Angel Barcelo / Disponibilidad Laboral: PartTime

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Expert


Las interfaces permiten usar diferentes clases de una manera uniforme aprovechando las referencias de las interfaces, es decir, el polimorfismo por ejemplo las interfaces implementadas en diferentes clases amplían el ámbito público de la clase en el mismo conjunto de componentes, si la clase no tiene ningún componente publico especifico de ella misma entonces las interfaces describe completamente el ámbito público de la clase. Las interfaces son tipos de objetos que se pueden definir localmente en un programa ABAP o bien globalmente a través del repositorio R/3 en la transacción SE24 tal como veremos más adelante en detalle para las clases. Si se definen las clases globalmente...

Acceder a esta publicación

Creado y Compartido por: Jose Medina / Disponibilidad Laboral: FullTime + Carta Presentación

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

INTRODUCCIÓN A INTERFACES Las clases, sus instancias (los objetos) y el acceso a los objetos usando variables referenciadas son la base de la programación orientada a objetos en ABAP. QUE SON LAS INTERFACES. Son estructuras independientes que se pueden implementar en una clase para extender el ámbito de esa clase. El ámbito especifico de una clase viene definido por sus componentes y sus secciones de visibilidad, ya que todos sus atributos y los parámetros de los métodos pueden ser utilizados por todos los usuarios. Las interfaces junto con la herencia proporcionan uno de los pilares básicos del polimorfismo, ya que permiten que un solo método con una interface se comporte distinto en...

Acceder a esta publicación

Creado y Compartido por: Gerardo Jose Campos Tovar / Disponibilidad Laboral: FullTime + Carta Presentación

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Expert


Interfaces Interfaces are standalone structures that can be implemented within a class to extend its scope. A class's specific scope is defined by its components and visibility sections. Protected components of a class define its scope concerning its subclasses. Interfaces expand a class's scope by adding their own components to the public section. This facilitates users accessing different classes through a common contact point. Interfaces, coupled with inheritance, provide a fundamental pillar of polymorphism. They enable a single method with an interface to behave differently in different classes. Interfaces allow for the uniform use of different classes by leveraging references to interfaces, i.e., polymorphism. For example, interfaces implemented...

Acceder a esta publicación

Creado y Compartido por: Jaime Eduardo Gomez Arango / Disponibilidad Laboral: FullTime + Carta Presentación

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Expert


Las Interfaces 1 - Intro a las interfaces. Las clases, sus instancias y el acceso a los objetos usando variables referencias son la base de POO. clase similares, codificadas diferentes en cada clase. 2 - Qué son las interfaces? son estructuras independientes que se pueden implementar en una clase para extender el ambito de esa clase (definido por sus componentes y sus secciones de visibilidad). Las interfaces extienden el ambito de una clase añadiendo sus propios componentes a la seccion publica. Permite al usuario acceder a diferentes clases por medio de un punto de contacto comun. Las interfaces junto con la herencia proporcionan uno de los pilares basico del polimorfismo. Audio: las interfaces...

Acceder a esta publicación

Creado y Compartido por: Pablo Adrian Oggero

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

Las Interfaces Introducción a Interfaces Las clases, sus instancias (los objetos) y el acceso a los objetos usando variables referenciadas son la base de la POO en ABAP. Además, hay veces en las que es necesario para clases similares proporcionar funcionalidades similares pero que están codificadas diferentes en cada clase, las cuales dan un punto de contacto común con el usuario. Por ejemplo, podríamos tener 2 clases similares, Cuenta corriente y Cuenta de ahorro, las cuales tiene un método para calcular las comisiones del año. Las interfaces y nombres de los métodos son os mismos pero la implementación es diferente. El usuario de las clases y las instancias tiene que ser capaces...

Acceder a esta publicación

Creado y Compartido por: Lisimaco Prieto Herrera

 


 

👌Genial!, estos fueron los últimos artículos sobre más de 99.000 publicaciones académicas abiertas, libres y gratuitas compartidas con la comunidad, para acceder a ellas le dejamos el enlace a CVOPEN ACADEMY.

🔎Buscador de Publicaciones:


🔎Googlear en CVOSOFT:
Googlear: "ABAP - Las Interfaces"

 


 

No sea Juan... Solo podrá llegar alto si realiza su formación con los mejores!