Curso SAP ABAP Programación Orientada a Objetos (POO)
Instructor: Laura Martínez
Descripción del curso
La Programación Orientada a Objetos (POO) es el corazón del desarrollo moderno en SAP. Con la llegada de ABAP for Cloud Development, este paradigma se vuelve indispensable, ya que los frameworks actuales y las tecnologías en la nube de SAP se basan exclusivamente en este modelo.
Este curso ha sido totalmente actualizado para reflejar la evolución del lenguaje, abandonando el entorno clásico de SAP GUI (SE24) para centrarse en el desarrollo profesional mediante Eclipse ADT. Aprenderás a construir soluciones más flexibles, dinámicas y escalables, dominando las nuevas instrucciones de instanciación, el uso de la consola para pruebas y las herramientas de calidad como ABAP Unit. A diferencia de la programación estructurada, la POO te permitirá afrontar requerimientos de negocio complejos con una lógica reutilizable y robusta, garantizando que puedas liderar proyectos bajo el estándar de excelencia que exige el ecosistema Cloud.
Qué aprenderás
- Entorno de desarrollo en SAP BTP: Configuración y flujo de trabajo orientado a objetos en la nube.
- Fundamentos de la POO: Transición del modelo estructurado al modelo de objetos.
- Instancias: Nuevas instrucciones para declarar e instanciar objetos simultáneamente.
- Herencia, Casting y Clase Amiga: Técnicas para la reutilización de código y gestión de visibilidad.
- Interfaces y Clases Abstractas: Definición de contratos y plantillas para arquitecturas sólidas.
- Polimorfismo, Asociación y Composición: Métodos para crear relaciones flexibles entre objetos.
- Eventos en orientación a objetos: Comunicación eficiente entre componentes del sistema.
- Componentes Locales: Manejo de clases locales dentro del ámbito de clases globales en Eclipse.
- Excepciones: Tratamiento profesional de errores mediante clases de excepción.
- ABAP Unit Test: Creación y ejecución de clases de test para garantizar la calidad del software.
- Patrones de Diseño: Implementación de soluciones estándar para problemas comunes de desarrollo.
Requisitos
- Conocimientos básicos de ABAP: Es necesario conocer la sintaxis fundamental y la lógica de programación estructurada.
- Familiaridad con Eclipse ADT: Manejo básico de la herramienta de desarrollo (se recomienda haber cursado ABAP Cloud de Cero a Avanzado).
- Mentalidad de Innovación: Disposición para dejar atrás las herramientas clásicas (SAP GUI) y adoptar el flujo de trabajo moderno basado en códig
Contenido del curso
1. Introducción
- 1.1. Contenido del curso
- 1.2. Introducción en la Programación OO
2. Entorno de desarrollo
- 2.1. Cuenta sap.com
- 2.2. Cuenta SAP BTP
- 2.3. Instancia ABAP en Cloud
- 2.4. JDK – Instalación
- 2.5. Eclipse – Instalación
- 2.6. ADT – ABAP Development Tools
- 2.7. Proyecto ABAP Cloud
3. Fundamentos de la programación orientada a objetos
- 3.1. Clase – Creación
- 3.2. Encapsulación
- 3.3. Atributos de instancia y estáticos
- 3.4. Métodos de instancia y estáticos
- 3.5. Instancia
- 3.6. Miembros estáticos – Acceso
- 3.7. Parámetros por referencia-valor
- 3.8. Métodos funcionales
- 3.9. Tipos de datos con clases
- 3.10. Constantes en clases
- 3.11. Parámetro opcional
- 3.12. Parámetro proporcionado
- 3.13. Restringir acceso escritura
- 3.14. Autorreferencia
- 3.15. Documentación – Fundamentos POO
- 3.16. Laboratorio – Fundamentos POO
- 3.17. Test – POO
4. Instancias
- 4.1. Generación de la instancia
- 4.2. Constructor de instancia
- 4.3. Constructor estático
- 4.4. Visibilidad de los constructores
- 4.5. Documentación – Instancias
- 4.6. Laboratorio – Instancias
- 4.7. Test – Instancias
5. Herencia, Casting y Clase Amiga
- 5.1. Conceptos
- 5.2. Herencia
- 5.3. Constructores con herencia
- 5.4. Atributos con herencia
- 5.5. Redefinición de métodos
- 5.6. Narrowing Cast
- 5.7. Widening Cast
- 5.8. Clase final
- 5.9. Método final
- 5.10. Encapsulación de instancias
- 5.11. Concepto Friends - Clase amiga
- 5.12. Herencia con clase amiga
- 5.13. Documentación – Herencia
- 5.14. Laboratorio – Herencia
- 5.15. Test – Herencia
6. Interfaces y clases abstractas
- 6.1. Interfaces - Conceptos
- 6.2. Definir interfaces
- 6.3. Llamada a métodos de interfaz
- 6.4. Implementación de múltiples interfaces
- 6.5. Interfaces anidadas
- 6.6. Aliases
- 6.7. Clase abstracta
- 6.8. Documentación – Interfaces y clases abstractas
- 6.9. Laboratorio – Interfaces y clases abstractas
- 6.10. Test – Interfaces y clases abstractas
7. Polimorfismo, asociación y composición
- 7.1. Polimorfismo - Conceptos
- 7.2. Polimorfismo con clases
- 7.3. Polimorfismo con interfaces
- 7.4. Asociación
- 7.5. Composición
- 7.6. Múltiples referencias apuntando al mismo objeto
- 7.7. Crear instancias de tipos distintos
- 7.8. Asignar instancias utilizando la clase genérica OBJECT
- 7.9. Documentación – Polimorfismo
- 7.10. Laboratorio – Polimorfismo
- 7.11. Test – Polimorfismo
8. Eventos en orientación a objetos
- 8.1. Eventos – Conceptos
- 8.2. Definición y levantamiento de eventos
- 8.3. Establecer clase receptora
- 8.4. Establecer referencia manejadora
- 8.5. Utilizar la referencia del objeto diseñador con SENDER
- 8.6. Definir eventos en las interfaces
- 8.7. Desactivar objeto manejador
- 8.8. Eventos estáticos
- 8.9. Manejar eventos para todas las instancias de la clase
- 8.10. Documentación – Eventos en POO
- 8.11. Laboratorio – Eventos en POO
- 8.12. Test – Eventos en POO
9. Componentes Locales
- 9.1. Class-relevant Local Types
- 9.2. Local Types
- 9.3. Componentes Locales – Uso
- 9.4. Documentación – Componentes Locales
- 9.5. Laboratorio – Componentes Locales
- 9.6. Test – Componentes Locales
10. Excepciones
- 10.1. Excepciones basadas en clases
- 10.2. Clase de excepción
- 10.3. Vincular texto con clase de mensaje
- 10.4. Emitir excepciones basadas en clases
- 10.5. Estructura de control TRY-CATCH-ENDTRY
- 10.6. Estructura de control RETRY
- 10.7. Excepciones basadas en clases en el Debugger
- 10.8. Granularidad
- 10.9. Estructura de control CLEANUP
- 10.10. Implementación de excepciones reanudables
- 10.11. Asignación de excepciones unas a otras
- 10.12. Documentación – Excepciones
- 10.13. Laboratorio – Excepciones
- 10.14. Test – Excepciones
11. ABAP Unit Test – Clases de Test
- 11.1. ABAP Unit TDD – Test Driven Development
- 11.2. Crear clase global de Test
- 11.3. ABAP Unit Test – Relaciones
- 11.4. ABAP Unit Test – Ejecución
- 11.5. Crear clase local de Test
- 11.6. Test-Seam
- 11.7. Test-Injection
- 11.8. Interfaz Parcialmente Implementada
- 11.9. ABAP Coverage
- 11.10. Documentación – ABAP Unit
- 11.11. Laboratorio – ABAP Unit
- 11.12. Test – ABAP Unit
12. Patrones de diseño
- 12.1. Singleton
- 12.2. Factory Method
- 12.3. Template Method
- 12.4. Observer
- 12.5. Model-View-Controller
- 12.6. Conclusiones
- 12.7. Laboratorio – Patrones de diseño
- 12.8. Test – Patrones de diseño
Tu instructor
Laura Martínez
SAP ABAP | SAP Build
Ingeniera Electrónica y Consultora Técnica con Máster en Desarrollo de Aplicaciones y Servicios Web. Especialista en ABAP Cloud y desarrollo de aplicaciones empresariales con SAP Build. Como instructora, se enfoca en formar profesionales en la creación de soluciones modernas, escalables y orientadas a la nube dentro del ecosistema SAP BTP.
Preguntas frecuentes
Una vez completada la inscripción, contarás con todo el contenido mediante vídeos, laboratorios, documentación y tests en el aula virtual para siempre, y podrás avanzar a tu propio ritmo.
Al inicio de cada unidad tendrás foros disponibles para dejar las dudas que se te presenten durante la formación. Un docente dará respuesta a tus consultas y te brindará el soporte necesario.
Al finalizar el curso deberás presentar un test que deberás aprobar con más del 60% para obtener el certificado. Tendrás dos intentos habilitados para presentarlo.
