Objetos Propiedades de los objetos Clases Caractersticas de una clase Ventajas Anexos La programacin orientada a objetos (POO) es una filosofa de diseo y desarrollo de software donde el modelo informtico es un reflejo de las entidades del mundo real. A diferencia de los lenguajes tradicionales, donde existen procedimientos por un lado y datos por el otro, la POO permite a los programadores representar cada entidad del problema como un objeto encapsulado que contiene tanto sus datos y cmo los comportamientos gestionan sobre ellos. La orientacin a objetos es una tcnica usada en muchos lenguajes de programacin los cuales comparten una terminologa usada universalmente. La programacin orientada a objetos (POO) ofrece elementos que facilitan el desarrollo de software en aspectos tales como modularizacin, reutilizacin de piezas de cdigo (no copy/paste) y encapsulamiento (ocultar el estado de los objetos) Un objeto es nicamente una porcin de cdigo fuente que contiene datos y proporciona servicios. Los datos constituyen los atributos del objeto. Los servicios que proporciona el objeto se conocen como mtodos y se asemejan en su funcionamiento a las funciones. Normalmente los mtodos operan con los datos privados del objeto, esto es, con datos que son slo visibles para los mtodos del objeto. De esta manera, los atributos de un objeto no pueden ser cambiados directamente por el usuario del objeto, slo pueden ser cambiados por los mtodos de ese objeto. As se garantiza la consistencia interna del objeto. Encapsulacin: Los objetos restringen la visibilidad de sus recursos (atributos y mtodos) al resto de usuarios. Cada objeto posee una interface que determina la manera de interactuar con l. La implementacin 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 mtodos que se llaman exactamente igual pueden comportarse de manera distinta en clases diferentes. La orientacin a objetos tiene unas estructuras llamadas interfaces que permiten acceder a mtodos con el mismo nombre en diferentes clases. Dentro de cada clase particular se puede redefinir el mtodo obteniendo distintos mtodos con el mismo nombre. As es que un mtodo 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 mtodos de la superclase. De cualquier manera, se pueden sobre-escibir los mtodos existentes, incluso aadir mtodos nuevos. Una clase es una entidad terica que describe el comportamiento de un objeto. Desde un punto de vista meramente tcnico, un objeto es una instancia en tiempo de ejecucin de una clase. En principio se pueden crear cualquier nmero 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 inequvocamente al objeto y permite acceder a sus mtodos y atributos. Las clases son las plantillas de los objetos. A la inversa, podemos decir que el tipo de un objeto es el mismo que el de su clase. Una clase es la descripcin abstracta de un objeto. Tambin podemos decir que una clase es un conjunto de instrucciones que tienen como objetivo construir un objeto. Los atributos de los objetos estn definidos por los componentes de la clase (atributos, mtodos y eventos), que son los que describen y controlan el comportamiento de los objetos. Public section: Todos los componentes declarados en la seccin pblica son accesibles para todos los usuarios de la clase y para todos los mtodos de la clase y de cualquier clase que herede de ella. Los componentes pblicos conforman la interface entre la clase y el usuario. Protected section: Todos los componentes declarados en la seccin protegida son accesibles para todos los mtodos de la clase y de las clases que heredan de ella. Los componentes protegidos conforman la interface entre una clase y todas sus subclases. Debido a que la herencia an no est activa en el release 4.5B la seccin protegida tiene actualmente el mismo efecto que la seccin privada. Private section: Los componentes declarados en la seccin privada son slo visibles en los mtodos de la misma clase. Los componentes privados no forman parte de la interface externa de la clase. Sistemas de software muy complejos se vuelven mucho ms simples de comprender debido a que la orientacin a objetos proporciona una representacin mucho ms cercana a la realidad que otras tcnicas de programacin. A travs del polimorfismo y la herencia es posible la reutilizacin de componentes individuales. En un sistema correctamente diseado con orientacin a objetos es posible realizar cambios al nivel de la clases, sin tener que realizar cambios en ningn otro punto del sistema. Esto reduce significativamente el costo total del mantenimiento necesario. http://www.abap.es/Descargas/Manual%20ABAP%20Orientado%20a%20Objetos.pdf http://www.teknodatips.com.ar/sap-netweaver/239-abap-objects-tutorial-paso-a- paso-parte-02.html https://archive.sap.com/kmuuid2/cda3992d-0e01-0010-90b2- c4e1f899ac01/ALV%20Object%20Model%20-%20Simple%202D%20Table%20- %20Event%20Handling.pdf https://wiki.scn.sap.com/wiki/display/ABAP/OBJECT+ORIENTED+ALV+Guide