
Programación Orientada a Objetos: es un método de desarrollo de software basado en el comportamiento de los objetos en el mundo real. Es un paradigma de programación (forma de programar). Esto se introdujo en ABAP desde la versión 4.0.
Objeto: es una porción de código fuente que contiene datos y proporciona servicios. Contienen atributos (datos) y operaciones (o métodos, que dan servicios).
Clase: es un conjunto de objetos que tienen la misma estructura y comportamiento. Podría definirse como "molde" de un objeto. Permite controlar centralmente a todos los objetos que dependan de ella.
Instancia: es un objeto de una clase creado en tiempo de ejecución.
Las ventajas de la POO es que los sitemas se vuelven más simples de comprender, se pueden hacer cambios a nivel clases, mediante polimorfismos y herencia se pueden reutilizar componentes individuales, el trabajo en revisión y mantenimiento se reducen y facilita el trabajo en equipo.
Sin embargo, hay muchos programadores que no están familiarizados con ellos y la lógica de la programación estructurada sigue siendo predominante.