La programación orientada a objetos tiene cuatro características principales: Encapsulamiento . Quiere decir que oculta datos mediante código. Abstracción . Es como se pueden representar los objetos en modo de código. Herencia. Es donde una clase nueva se crea a partir de una clase existente. Polimorfismo . Se refiere a la propiedad por la que es posible enviar mensajes sintácticamente iguales a objetos de tipos distintos.
En este curso, los pasos a seguir será. Analizar Plasmar Programar
paradigma: Teoría que suministra la base y modelo para resolver problemas
Los cuatro elementos Clases Propiedades Métodos Objetos
Los cuatro pilares: Encapsulamiento Abstracción Herencia Polimorfismo
Nos permiten plasmar de forma gráfica a través de diagramas nuestro análisis. Servirá de intermediario para poder entender el problema y la solución con la orientación a objetos.
OMT (Object Modeling Techniques) 1991
UML (Unified Modeling Language) 1997
Metodología que se basa estrictamente en identificar los objetos, sus métodos, sus atributos y cuales son las relaciones que tienen. Pero ya está descontinuada.
Toma todas las bases y técnicas del OMT, las unifica y permite una ampliación de apicaciones, no solo objetos y clases. Sino que incluye casos de uso, actividades, iteración, estados e implementación. Un buen desarrollador debe manejar y dominar con fluidez, conceptos de UML ya que es lo que nos van a entregar cuando empecemos a trabajar en un proyecto que se haya construido bajo la arquitectura POO.
Clases
En la parte superior se colocan los atributos o propiedades, y debajo las operaciones de la clase. Notarás que el primer caracter con el que empiezan es un símbolo. Este denotará la visibilidad del atributo o método, esto es un término que tiene que ver con Encapsulamiento y veremos más adelante a detalle.
Estos son los niveles de visibilidad que puedes tener:
Asosiación
Una forma de representar las relaciones que tendrá un elemento con otro es a través de las flechas en UML. . La flecha siempre apuntará hacia la dependencia. La claseA depende de la claseB
Herencia
Siempre que veamos este tipo de flecha se estará expresando la herencia.La dirección de la flecha irá desde el hijo hasta el padre. Como en el caso de la asosiación, la flecha continúa apuntando hacia la dependencia
Agregación
Este se parece a la asociación en que un elemento dependerá del otro, pero en este caso será: Un elemento dependerá de muchos otros. Aquí tomamos como referencia la multiplicidad del elemento. Lo que comúnmente conocerías en Bases de Datos como Relaciones uno a muchos.
Con esto decimos que la ClaseA contiene varios elementos de la ClaseB. Estos últimos son comúnmente representados con listas o colecciones de datos.
Composición
Este es similar al anterior solo que su relación es totalmente compenetrada de tal modo que conceptualmente una de estas clases no podría vivir si no existiera la otra.