Sei sulla pagina 1di 5

PROGRAMACION ORIENTADA A OBJETOS - SESION 2 Sobrecarga En programacin orientada a objetos la sobrecarga se refiere a la posibilidad de tener dos o ms funciones con

el mismo nombre pero funcionalidad diferente. Es decir, dos o ms funciones con el mismo nombre realizan acciones diferentes. El compilador usar una u otra dependiendo de los parmetros usados. A esto se llama tambin sobrecarga de funciones. Tambin existe la sobrecarga de operadores que al igual que con la sobrecarga de funciones se le da ms de una implementacin a un operador.
Ejemplo Articulo.java

La siguiente definicin de la Clase Articulo tiene dos mtodos con el mismo nombre pero con diferentes parmetros, el primero no tiene parmetros y asigna al atributo precio el valor 3.5, el segundo recibe un parmetro de tipo Float el cual asigna al atributo precio el valor que se pase como argumento al mtodo.
Definicin de la Clase public class Articulo { private float precio; public void setPrecio() { precio = 3.50; } public void setPrecio(float nuevoPrecio) { precio = nuevoPrecio; } } // Llamado 2 float miPrecio = 3,35; miArticulo.setPrecio(miPrecio); // Llamado 1 miArticulo.setPrecio(); Instanciacin de la Clase Articulo miArticulo = new Articulo();

UML Lenguaje Unificado de Modelado (LUM o UML, por sus siglas en ingls, Unified Modeling Language) es el lenguaje de modelado de sistemas de software ms conocido y utilizado en la actualidad; est respaldado por el OMG (Object Management Group). Es un lenguaje grfico para visualizar, especificar, construir y documentar un sistema. UML ofrece un estndar para describir un "plano" del sistema (modelo), incluyendo aspectos conceptuales tales como procesos de negocio, funciones del sistema, y aspectos concretos como expresiones de lenguajes de programacin, esquemas de bases de datos y componentes reutilizables. Es importante resaltar que UML es un "lenguaje de modelado" para especificar o para describir mtodos o procesos. Se utiliza para definir un sistema, para detallar los artefactos en el sistema y para documentar y construir. En otras palabras, es el lenguaje en el que est descrito el modelo.

Se puede aplicar en el desarrollo de software entregando gran variedad de formas para dar soporte a una metodologa de desarrollo de software (tal como el Proceso Unificado Racional o RUP), pero no especifica en s mismo qu metodologa o proceso usar. UML ofrece nueve diagramas en los cuales modelar sistemas. Diagramas de Casos de Uso para modelar los procesos business . Diagramas de Secuencia para modelar el paso de mensajes entre objetos. Diagramas de Colaboracin para modelar interacciones entre objetos. Diagramas de Estado para modelar el comportamiento de los objetos en el sistema. Diagramas de Actividad para modelar el comportamiento de los Casos de Uso, objetos u operaciones. Diagramas de Clases para modelar la estructura esttica de las clases en el sistema. Diagramas de Objetos para modelar la estructura esttica de los objetos en el sistema. Diagramas de Componentes para modelar componentes. Diagramas de Implementacin para modelar la distribucin del sistema. Patrones de Diseo Los patrones de diseo son la base para la bsqueda de soluciones a problemas comunes en el desarrollo de software y otros mbitos referentes al diseo de interaccin o interfaces. Un patrn de diseo es una solucin a un problema de diseo. Para que una solucin sea considerada un patrn debe poseer ciertas caractersticas. Una de ellas es que debe haber comprobado su efectividad resolviendo problemas similares en ocasiones anteriores. Otra es que debe ser reutilizable, lo que significa que es aplicable a diferentes problemas de diseo en distintas circunstancias. y Categoras o Patrones Creacionales  Fbrica Abstracta ( Abstract Factory ): El problema a solucionar por este patrn es el de crear diferentes familias de objetos, como por ejemplo la creacin de interfaces grficas de distintos tipos (ventana, men, botn, etc.).  Mtodo de Fabricacin ( Factory Method ): Parte del principio de que las subclases determinan la clase a implementar.   
Prototipado ( Prototype ): Se basa en la clonacin de ejemplares copindolos de un prototipo. Singleton: Restringe la instanciacin de una clase o valor de un tipo a un solo objeto.

Modelo Vista Controlador (MVC).

Patrones Estructurales  Adaptador (Adapter): Convierte una interfaz en otra.  Puente (Bridge): Desacopla una abstraccin de su implementacin permitiendo modificarlas independientemente.  Objeto Compuesto (Composite): Utilizado para construir objetos complejos a partir de otros ms simples, utilizando para ello la composicin recursiva y una estructura de rbol.  Envoltorio (Decorator): Permite aadir dinmicamente funcionalidad a una clase existente, evitando heredar sucesivas clases para incorporar la nueva funcionalidad.  Fachada (Facade): Permite simplificar la interfaz para un subsistema.  Peso Ligero (Flyweight): Elimina la redundancia o la reduce cuando tenemos gran cantidad de objetos con informacin idntica.  Apoderado (Proxy): Un objeto se aproxima a otro. Patrones de Comportamiento  Cadena de responsabilidad (Chain of responsibility): La base es permitir que ms de un objeto tenga la posibilidad de atender una peticin.  Orden (Command): Encapsula una peticin como un objeto dando la posibilidad de deshacer la peticin.  Intrprete (Interpreter): Intrprete de lenguaje para una gramtica simple y sencilla.  Iterador (Iterator): Define una interfaz que declara los mtodos necesarios para acceder secuencialmente a una coleccin de objetos sin exponer su estructura interna.  Mediador (Mediator): Coordina las relaciones entre sus asociados. Permite la interaccin de varios objetos, sin generar acoples fuertes en esas relaciones.  Recuerdo (Memento): Almacena el estado de un objeto y lo restaura posteriormente.  Observador (Observer): Notificaciones de cambios de estado de un objeto.  Estado (Server): Se utiliza cuando el comportamiento de un objeto cambia dependiendo del estado del mismo.  Estrategia (Strategy): Utilizado para manejar la seleccin de un algoritmo.  Mtodo plantilla (Template Method): Algoritmo con varios pasos suministrados por una clase derivada.  Visitante (Visitor): Operaciones aplicadas a elementos de una estructura de objetos heterognea.

Patrn Modelo Vista Controlador (MVC)


Es un patrn de arquitectura de software que separa los datos de una aplicacin, la interfaz de usuario, y la lgica de negocio en tres componentes distintos. El patrn de llamada y retorno MVC,

e ve frecuentemente en aplicaciones web, donde la vista es la pgina HTML y el cdigo que provee de datos dinmicos a la pgina. El modelo es el Sistema de Gestin de Base de Datos y la Lgica de

negocio, y el controlador es el responsable de recibir los eventos de entrada desde la vista.

Modelo: Esta es la representacin especfica de la informacin con la cual el sistema opera. En resumen, el modelo se limita a lo relativo de la vista y su controlador facilitando las presentaciones visuales complejas. El sistema tambin puede operar con ms datos no relativos a la presentacin, haciendo uso integrado de otras lgicas de negocio y de datos afines con el sistema modelado Vista: Este presenta el modelo en un formato adecuado para interactuar, usualmente la interfaz de usuario. Controlador: Este responde a eventos, usualmente acciones del usuario, e invoca peticiones al modelo y, probablemente, a la vista.

MVC con UML

Ejemplo MVC

Ejercicios de Aplicacin y y Disee una clase que implemente la sobrecarga de mtodos y desde otra instnciela e invoque el mtodo sobrecargado.

Potrebbero piacerti anche