Patrones de diseño Grupo 1 Haeberli, Julián Lara, Guisell

Slides:



Advertisements
Presentaciones similares
DESARROLLANDO EL PLAN DE TRABAJO
Advertisements

Justificación y Descripción del Dominio de Conocimiento de una Ontología para la Formalización y Automatización de Escenarios Educativos A. Rius, M.A.
Curso de java básico (scjp)
Plan de Implantación Sistemas de Información III
Importancia de la Documentación de proyectos
FACHADA COMPOSITOR MEMENTO
DISEÑO DE LA INVESTIGACIÓN
METODO DE ANALISIS DE FALLAS
Tipos de Datos Abstractos Modularidad
Tipo de Dato Abstracto Tipos de datos:
Programación 1 Introducción
ORIENTADO A OBJETOS ESTUDIANTE JESSICA LORENA LEAL MEDINA INGENIERIA DE SOFTWARE PROGRAMA INGENIERIA DE SISTEMAS UNIVERSIDA COOPERATIVA DE COLOMBIA NEIVA-HUILA.
Introducción al lenguaje de programación lógico Prolog
INTERFAZ DE ACCES DISEÑO DE BASE DE DATOS
Patrones de diseño OO Gang of Four (GoF)
UNIVERSIDAD TECNOLÓGICA DE HERMOSILLO T.S.U. EN T.I.C., Área: Sistemas Informáticos Ing. José Padilla Duarte y estudiantes de Sistemas Informáticos Hermosillo,
Unified Modeling Language (Lenguaje de Modelamiento unificado)
“LA ENFERMEDAD DEL ALZHEIMER ”
Introducción a la programación Orientada a objetos
Tema 12 – Conceptos Básicos
Propuesta de una metodología para el desarrollo de proyectos informáticos empleando la herramienta para el diseño automatizado GeneXus Autor: Dipl.-Ing.
DEPARTAMENTO DE INGENIERÍA INFORMÁTICA
Jorge Villalobos Jorge Arias Darío Correal
Ingeniería de Software
Patrones Creacionales
Ingeniería de Software Orientado a Objetos
Introducción a la POO • ¿Qué es la programación orientada a objets (POO)? – Un “paradigma” de programación – Una forma de pensar acerca de los problemas.
REQUERIMIENTOS DE SOFTWARE
Planeación con Planning Tool y DotProject Grupo de Construcción de Software Facultad de Ingeniería Universidad de los Andes Rubby Casallas, Andrés Yie.
1 Diseño Orientado a Objetos Agustín J. González ELO-329: Diseño y Programación Orientados a Objetos 1er. Sem
Unidad VI Documentación
MATEMÁTICAS III INTRODUCCIÓN
Tecnológico de Estudios Superiores Huixquilucan Fundamentos de Sistemas Ingeniería en Sistemas Computacionales Lic.: Lydia Villavicencio Gómez “Paradigmas.
Juan Manuel Perdigón Mario Felipe Monsalve
Pasos de un estudio de simulacion (repaso).
Introducción a la investigación de mercados Naresh malhotra
3.- Introducción a Patrones de Diseño
Metodología para solución de problemas
1 Diseño de Patrones Agustín J. González ELO329. Generalidades En Electrónica y en la vida en común usar soluciones probadas para problemas similares.
Ingeniería del Software
Eva Lleonart Martín Asunción García-Menacho Rovira
Programación orientada a objetos. La programación orientada a objetos es un conjunto de normas, que se basan en la idea de construir un software de forma.
Teoría de Autómatas y Lenguajes Formales Informática Técnica de Gestión ESCUELA SUPERIOR DE INFORMATICA Universidad de Castilla-La Mancha Tema 1. Introducción.
INTRODUCCIÓN A LA INGENIERÍA DEL SOFTWARE
ELEMENTOS DE CONTENIDO Y ALCANCE
TEMA 9: DIAGRAMA DE CLASE EN UML
Reuso y Reingeniería M.C. Juan Carlos Olivares Rojas.
Introducción a UML Departamento de Informática Universidad de Rancagua
Patrones de diseño equipo n.1
PRESENTADO POR: LINA MARCELA IGUA TORRES SONIA MOYANO ESPINOSA DAVID MAHECHA MEDINA CRISTIAN HERNÁNDEZ GERMAN RAMÍREZ.
TIPOS DE AUDITORÍAS EN SISTEMAS DE INFORMACIÓN
POO U1: INTRODUCCIÓN AL PARADIGMA DE LA PROGRAMACIÓN ORIENTADA A OBJETOS.
Jairo Pinto Ing. sistemas
Desarrollo de lógica algorítmica.
Universidad Tecnológica de Izúcar de Matamoros Programa Educativo: Tecnologías de la Información Asignatura: Base de datos para aplicaciones Tema: Base.
Unified Modeling Language (Lenguaje de Modelamiento unificado)
PROGRAMACIÓN IV INTRODUCCIÓN.
Ciclo de desarrollo del software
Programación Java y Desarrollo de Aplicaciones Modulo 1 Arquitectura de ordenadores Tema 3 Programas.
Patrones de Diseño Agustín J. González ElO329.
DESARROLLO DE SOFTWARE Cuando se va desarrollar un software intervienen muchas personas como lo es el cliente quien es el que tiene el problema en su.
La Programación Orientado a Objetos
Fundamentos de Computación
UNIVERSIDAD LATINA (UNILA)
ANALISIS DE SISTEMAS PROFESOR HECTOR ARCIA.
MODELAMIENTO VISUAL Y UML
CICLO DE VIDA DE UN SOFTWARE. Es el conjunto de los programas de cómputo, procedimientos, reglas, documentación y datos asociados, que forman parte de.
Prof. Manuel B. Sánchez. Un paradigma de programación representa un enfoque particular o filosofía para la construcción del software. No es mejor uno.
Tema: Conceptos cruciales Primera clase: 11 agosto 2014.
Patrones de diseño en ING. Del software. ¿Qué es un patrón?  Es una solución a un software el cual esta creado o no mediante un patrón de diseño, es.
Transcripción de la presentación:

Patrones de diseño Grupo 1 Haeberli, Julián Lara, Guisell Medina, Diego Segura, Ayrton Soria, NicolÁs

Agenda Por favor silenciemos los celulares Introducción Reseña histórica Clasificación Propiedades Ejemplo Beneficios – Desventajas Anti-patrones Preguntas

Introducción Tratan los problemas del diseño de software que se repiten y que se presentan en situaciones particulares, con el fin de proponer soluciones a ellas. Son soluciones exitosas a problemas comunes.

Reseña Histórica La importancia de las relaciones en los diseños de orientación a objetos. Identificación de situaciones comunes. Necesidad de reciclar “ideas” no “código”. Identificado por la banda de los cuatro.

Gang of Four (GOF) Design Patterns (1994)

Definición Es “Una solución (probada) a un problema en un determinado contexto” (Erich Gamma) Detallada: Es una solución probada que se puede aplicar con éxito a un determinado tipo de problemas que aparecen repetidamente en el desarrollo de sistemas software.

Clasificación Creacionales: Definen la mejor manera en que un objeto es instanciado. El objetivo es abstraer el proceso de instanciación y ocultar los detalles de cómo los objetos son creados o inicializados. Estructurales: Permiten crear grupos de objetos para ayudarnos a realizar tareas complejas. Comportamiento: Permiten definir la comunicación entre los objetos del sistema y el flujo de la información entre los mismos.

Propiedades Nombre. Problema: descripción de cuándo utilizarlo. Solución. Consecuencias (buenas y malas).

Singleton o Singular (Creacional) Ejemplo: Singleton o Singular (Creacional) Nombre: Singular Problema: Necesidad de una sola instancia de una clase. Ejemplo: un calendario.

Singleton o Singular (Creacional) Ejemplo: Singleton o Singular (Creacional) Solución: Limitar el número de instancias de una clase verificando que no esté instanciada previamente. Consecuencias: Acceso global y controlado a única instancia. Es una mejora a las variables globales: los nombres de las variables globales no siguen un estándar para su acceso.

Beneficios Son independientes de los lenguajes. Efectividad comprobada en la resolución de problemas similares en ocasiones anteriores. Estandarizan el diseño. Ahorro de tiempo.

Desventajas El uso de un patrón no se refleja claramente en el código. Los patrones suponen cierta sobrecarga de trabajo a la hora de implementar: Se usan más clases de las estrictamente necesarias.

¿Qué NO es un patrón de diseño? No es garantía de un sistema bien diseñado. Es un buen punto de partida para pensar una solución, no la solución. No reemplaza al diseñador.

Anti-patrones Son ejemplos bien documentados de malas soluciones para problemas. El estudio formal de errores que se repiten permite al desarrollador reconocerlos más fácilmente.

Conclusión Los patrones de diseño son muy útiles. Es por ello que se los conoce como las mejores prácticas en el desarrollo y construcción de software.

¡Gracias por su atención! ¿Preguntas?