Aplicaciones Móviles. Unidad 2: Patrones de Diseño de Software
|
|
- Rodrigo Castilla Castillo
- hace 6 años
- Vistas:
Transcripción
1 INACAP Universidad Tecnológica de Chile Sede Santiago Centro Aplicaciones Móviles Unidad 2: Patrones de Diseño de Software Ing. Manuel López Ramos
2 Unidad 1 Qué es un Patrón de Diseño de Software?
3 Qué es un Patrón de Diseño de Software? Un patrón de diseño de software es una solución reutilizable de software. Está destinada a algún tipo de problema general y muy común. Se utiliza como una plantilla de solución, por lo que debe ser adaptada al problema que se trata de solucionar. No todos los lenguajes permiten o necesitan la implementación de todos los patrones reconocidos en Ingeniería de Software. Fueron inicialmente estudiados y reunidos en un libro, llamado "Design Patterns - Elements of Reusable Object-Oriented Software" (1994, escrito por Erich Gamma, Richard Helm, Ralph Johnson y John Vlissides, conocidos como "the Gang of Four" - "el grupo de cuatro", o GoF). Se basan en 2 propiedades de la P.O.O y el diseño orientado a objetos: a) desarrollar una interfaz (interface) y no una implementación final; y, b) favorecer la composición de objetos por sobre la herencia. En el libro, se reconocen 23 patrones de diseño.
4 Clasificaciones Generales Los patrones de software pueden clasificarse, según su orientación, en los siguientes grupos: Patrones de diseño: aquellos que muestran cómo crear los módulos y la comunicación entre estos módulos. Patrones de arquitectura: aquellos que indican cómo lograr un sistema completo a una escala mayor.
5 Clasificación de Patrones de Diseño A la vez, los patrones de diseño pueden clasificarse, según su aplicación, en los siguientes grupos: Patrones de creación: aquellos que indican cómo crear objetos o instancias de clase en un programa (objetos). Patrones de estructura: aquellos que indican cómo componer o unir clases y objetos para generar nueva funcionalidad (utilizan normalmente la generalización de clases). Patrones de comportamiento: aquellos que indican cómo se comunican los objetos entre sí.
6 Unidad 2 Tipos de Patrones de Diseño de Software Estándar
7 Patrones de Creación Los patrones de creación se reconocen con los siguientes nombres: Abstract Factory: crea una instancia de muchas familias de clases. Builder: separa la construcción de un objeto de su representación. Factory Method: crea una instancia de muchas clases derivadas. Object Pool: ahorra el tener que crear y eliminar múltiples objetos, mediante su reciclaje o reutilización. Prototype: una instancia completamente inicializada y lista para ser copiada o clonada. Singleton: una clase que sólo permite crear una única instancia.
8 Patrones de Estructura Los patrones de estructura se reconocen con los siguientes nombres: Adapter: hace calzar interfaces de diferentes clases. Bridge: separa la interfaz de un objeto de su implementación. Composite: una estructura de árbol de objetos simples y compuestos. Decorator: agrega responsabilidades a los objetos dinámicamente. Facade: una clase simple que representa un subsistema completo. Flyweight: una instancia pequeña usada para compartición eficiente. Private Class Data: restringe el acceso a los selectores y mutadores. Proxy: un objeto que representa a otro objeto.
9 Patrones de Comportamiento Los patrones de comportamiento se reconocen con los siguientes nombres: Chain of responsibility: una forma de paso de un requerimiento entre una cadena de objetos. Command: encapsula una petición de comando como un objeto. Interpreter: una forma para incluir elementos de lenguaje en un programa. Iterator: accede secuencialmente a los objetos de una colección de ellos. Mediator: define una comunicación simplificada entre clases. Memento: captura y restaura el estado interno de un objeto. Null Object: diseñado para actuar como un valor por omisión para un objeto.
10 Patrones de Comportamiento Observer: una forma de notificar un cambio a una serie de clases. State: altera el comportamiento de un objeto cuando su estado cambia. Strategy: encapsula un algoritmo dentro de una clase. Template method: delega los pasos exactos de un algoritmo a una subclase. Visitor: define una nueva operación para una clase sin cambios.
11 Otros Patrones de Software Comunes Aparte de los patrones estándar de diseño de software (definidos por el GoF en su libro "Design Patterns"), también se han definido otros según el problema y la tecnología. Dos de estos patrones son muy convenientes a la hora de desarrollar software actual: Patrón de J2EE DAO (Data Access Object): representa una clase que permite acceder a datos de la aplicación, independiente de la tecnología de datos que se utilice (ya sea: un motor de bases de datos, archivos de texto, archivos XML, archivos JSON, una conexión de red, una estructura dinámica en memoria RAM, etc.) Patrón de arquitectura MVC (Model-View-Controller): representa la arquitectura de una aplicación completa donde cada clase implementa funciones de interfaz de usuario, o bien, funciones de validación y control de flujo, o bien, funciones y las reglas del negocio. Estas funciones sólo deben aplicarse dentro de uno de estos ámbitos del problema y no sobre 2 ó más a la vez.
12 Buenas Prácticas Al implementar patrones, se deben seguir las siguientes buenas prácticas: Implementar interfaces para indicar la forma de acceso a métodos. Utilizar la generalización o herencia sólo como recurso conceptual y no para ahorrar en la escritura de código. Buscar bajo acoplamiento: es decir, una clase o método no depende íntimamente de los demás. Buscar alta cohesión en el código: es decir, cada clase y método se destina para una tarea específica - responsabilidad definida.
13 Buenas Prácticas También recordar los principios básicos del diseño de clases, denominados como S.O.L.I.D. (propuestos por Robert C. Martin, a principios de la 1ra década del 2000): S (single responsibility principle): Un objeto sólo tiene una única responsabilidad. O (open/close principle): Las entidades de software deben estar abiertas para su extensión, pero cerradas para su modificación. L (Liskov substitution principle): Un objeto puede reemplazarse por un objeto de un subtipo, sin alterar el funcionamiento del programa. I (Interface segregation principle): Muchas interfaces cliente específicas son mejores que una sóla interfaz general. D (Dependency inversion principle): Depender de abstracciones y no de implementaciones.
14 Unidad 3 Ejemplos de Patrones de Diseño de Software
15 Ejemplos de uso: patrón Singleton El patrón Singleton se utiliza cuando se requiera la creación de un único objeto a partir de una clase, pero impidiendo que se puedan crear más de ellos. Consiste en impedir que un programa pueda utilizar el constructor de la clase (cambiando su acceso a private), pero entregando un método estático (normalmente getinstance) que devuelva la única y misma instancia cada vez que sea requerido. El patrón se modela en un diagrama de clases de UML como se muestra a continuación:
16 Ejemplos de uso: patrón Singleton Código de ejemplo en Java: public class Singleton { private static final Singleton INSTANCE = new Singleton(); private Singleton() {} } public static Singleton getinstance() { return INSTANCE; }
17 Ejemplos de uso: patrón Singleton Ejercicios: a) Cree la clase JugadorSingleton, que implemente el patrón Singleton, para representar un único jugador en un juego de video. b) Cree la clase ConexionBD, que implemente el patrón Singleton, para representar una única conexión a un motor de bases de datos reutilizable. c) Cree la clase FechaActual, que implemente el patrón Singleton, y que permita obtener la fecha y hora actual del sistema.
18 Ejemplos de uso: patrón Strategy El patrón Strategy busca la implementación de una familia de algoritmos, dentro de una clase, de manera que se puedan utilizar de forma intercambiable. El algoritmo puede operar en varias formas, pero todas las formas se acceden mediante el mismo nombre de método (es decir, se implementa el polimorfismo). El algoritmo se ejecutará con un código u otro, dependiendo del objeto derivado sobre el que se aplique el método.
19 Ejemplos de uso: patrón Strategy Ejercicios: a) Crear una jerarquía de clases que siga el patrón Strategy y que permita implementar el método calcularsueldo( ), que entrega el valor del sueldo líquido para diferentes empleados de una empresa. Los tipos de empleados de la empresa y sus sueldos son los siguientes: * obrero: sueldototal = sueldobruto - pagoafp - pagosalud * jefe : sueldototal = sueldobruto + bonosemestral / 6 - pagoafp - pagosalud * gerente: sueldototal = sueldobruto + bonoanual / 12 + bonosemestral / 6 - pagoafp - pagosalud b) Crear una jerarquía de clases que siga el patrón Strategy y que permita controlar los tipos de saltos de línea agregados a una línea de texto en diferentes sistemas operativos, mediante el método imprimirsaltodelinea( ). En Windows, se utilizará el string "\r\n" como salto de línea; en GNU/Linux, el string "\n"; y en Apple Macintosh Classic, el string "\r".
20 Ejemplos de uso: patrón Adapter El patrón de diseño Adapter convierte la interfaz de una clase en la interfaz que espera la clase cliente. Permite que clases con interfaces diferentes e incompatibles puedan trabajar en conjunto. La clase Cliente debe crear un objeto de la clase Adapter y llamar al método request() para ejecutar la acción incompatible. El método request() de la clase Adapter llama directamente al método specificrequest de la clase Adaptee y convierte la interfaz al formato que espera el cliente.
21 Ejemplos de uso: patrón Adapter Ejercicios: a) Crear una jerarquía de clases que siga el patrón Adapter y que permita convertir datos de temperatura Fahrenheit en datos de temperatura Celsius. El método de la clase a adaptar se llama gettemperaturafahr( ), de la clase TemperaturaSistemaRemoto, y devuelve un valor de tipo float. b) Crear una jerarquía de clases que siga el patrón Adapter y que permita convertir fechas en formato DD/MM/AAAA a formato AAAA-MM-DD. El método que devuelve la fecha en el primer formato se llama getfechadma( ), pertenece a la clase FechaEnChile y devuelve la fecha en formato de String. c) Propuesto: mediante el patrón Adapter, crear una forma de convertir datos de un archivo XML (que almacena nombre, apellido, edad y sexo de varios usuarios) a datos en un archivo de tipo JSON (con los mismos campos).
22 Ejemplos de uso: patrón Data Access Object (DAO) El patrón de diseño DAO permite encapsular el acceso a una fuente de datos. Ofrece una interfaz de acceso, mediante métodos generales. Sin embargo, la fuente de datos se elige según la fuente disponible para la aplicación, lo que implicará crear un objeto a partir de alguna de las clases implementadas correspondientes. Cada clase implementada, define una fuente de datos diferente.
23 Ejemplos de uso: patrón Object Pool El patrón de diseño Object Pool permite la creación de un conjunto (o pozo) de objetos que pueden reutilizarse desde una clase cliente. Evita la creación y destrucción de objetos sucesiva realizada en un proceso, lo cual gasta tiempo y memoria de más. Se crea una clase que defina el objeto a almacenar (clase ReusableObject) y otra clase (clase ReusablePool) con una lista o arreglo que almacene los elementos y que permita utilizarlos y devolverlos.
24 Ejemplos de uso: patrón Null Object
Capitulo 2. Marco Teórico
Capitulo 2. Marco Teórico En el presente capítulo se describirán los conceptos utilizados para el desarrollo de ésta tesis. Entre los conceptos a mencionar se encuentran Patrones de Diseño, los Principios
Más detallesPatrones de diseño en PHP Los 23 modelos de diseño: descripciones y soluciones ilustradas en UML2 y PHP
Introducción a los patrones de diseño 1. Design patterns o patrones de diseño 15 2. Descripción de los patrones de diseño 17 3. Catálogo de patrones de diseño 18 4. Cómo escoger y utilizar un patrón de
Más detallesPatrones de Diseño. Programa de Estudio.
Patrones de Diseño Programa de Estudio Patrones de Diseño Analiza, modela y resuelve problemas de diseño de sistemas utilizando los patrones de diseño. Aprende cuándo y cómo utilizar cada uno de los patrones
Más detallesPatrones de diseño en Java Los 23 modelos de diseño: descripción y soluciones ilustradas en UML 2 y Java
Introducción a los patrones de diseño 1. Design patterns o patrones de diseño 15 2. Descripción de los patrones de diseño 17 3. Catálogo de patrones de diseño 18 4. Cómo escoger y utilizar un patrón de
Más detallesDesarrollo de Aplicaciones Empresariales
Diego Seco Material adaptado de: Eduardo Mosqueira y Óscar Pedreira {eduardo, opedreira}@udc.es LIDIA & LBD Universidade da Coruña 2014-1 Desarrollo de Aplicaciones Empresariales Patrones Gangof Four(GOF)
Más detallesTIPOS DE PATRONES. PATRONES DE DISEÑO: Las soluciones probadas para el diseño de software. En estas nos vamos a centrar.
TIPOS DE PATRONES Hoy, podemos encontrar literalmente miles de patrones definidos. Resulta imposible para un programador conocerlos todos, ni mucho menos probarlos o valorarlos. Así que necesitamos una
Más detallesUso de Patrones de diseño
Uso de Patrones de diseño jsr@.upm.es - 1 - Relaciones La importancia de la relaciones en los diseños de orientación a objetos. Identificación de situaciones comunes. Necesidad de reciclar ideas no código
Más detallesPATRONES DE DISEÑO DE CREACIÓN. Abstract Factory Builder Factory Method Prototype
PATRONES DE DISEÑO DE CREACIÓN Abstract Factory Builder Factory Method Prototype Patrones de diseño de creación Abstraen el proceso de creación de instancias Encapsulan el conocimiento sobre las clases
Más detallesIngeniería del software I Patrones de Diseño
Qué es un Patrón de Diseño? Ingeniería del software I Patrones de Diseño Los patrones de diseño capturan soluciones a problemas particulares de diseño. abstraen estructuras de diseño recurrentes Incorporan
Más detallesIN77J Orientación al Objeto para el e-business. 6. Diseño
IN77J Orientación al Objeto para el e-business 6. Diseño Temario 6. Diseño Descomposición Realización de Casos de Uso Taller Patrones de Diseño 2 Descomposición Una de las principales técnicas para abordar
Más detallesIntroducción a los patrones de Software
Introducción a los patrones de Software Dpto. de Ingeniería de Sistemas y Computación Universidad de los Andes Material de base: Gloria Cortés y Rubby Casallas Referencias LARMAN, Craig. Applying UML and
Más detallesPatrones de Alto nivel: Patrones de Arquitectura Patrones de nivel medio: Patrones de Diseño Patrones de bajo nivel: Idioms
Patrones Patrones Es una solución reusable de problemas comunes. Los patrones solucionan problemas que existen en muchos niveles de abstracción. desde el análisis hasta el diseño y desde la arquitectura
Más detallesUniversidad Tecnológica Emiliano Zapata Tecnologías De la Información Y comunicación Área Sistemas informáticos
Universidad Tecnológica Emiliano Zapata Tecnologías De la Información Y comunicación Área Sistemas informáticos Rivera Figueroa Gerardo René Alvares Flores Jairo Ángeles Pastor Luis Eduardo Gonzales Sarabia
Más detallesIntroducción a la Programación de Videojuegos y Gráficos
Introducción a la Programación de Videojuegos y Gráficos GRADO EN INGENIERÍA INFORMÁTICA CURSO 2012/2013 T2: ARQUITECTURA Y LÓGICA DE VIDEOJUEGO 2.1. Ingeniería del software aplicada a videojuegos (paradigmas
Más detallesCapítulo 4 Patrones y Patrones de Diseño (ii)
Capítulo 4 Patrones y Patrones de Diseño (ii) Orientado a Objetos Ingeniería Informática Ingeniería Técnica de Informática de Sistemas y Gestión Optativa (6 créditos) http://www.info-ab.uclm.es/asignaturas/42579
Más detallesDiseño de Software Basado en Patrones. César Julio Bustacara M.
Diseño de Software Basado en Patrones César Julio Bustacara M. Patrones de Diseño Introducción Las Tecnologías Orientadas a Objetos son las más utilizadas en los últimos años para el desarrollo de aplicaciones
Más detallesUML 2 Iniciación, ejemplos y ejercicios corregidos
Ediciones ENI UML 2 Iniciación, ejemplos y ejercicios corregidos (3ª edición) Colección Recursos Informáticos Contenido Contenido 1 Capítulo 1 Introducción 1. Motivaciones de la obra.....................................
Más detallesGrado en Ingeniería Informática Universidad de Alcalá Curso Académico 2014/15 Curso 4º Cuatrimestre 1º
PATRONES SOFTWARE Grado en Ingeniería Informática Universidad de Alcalá Curso Académico 2014/15 Curso 4º Cuatrimestre 1º GUÍA DOCENTE Nombre de la asignatura: Código: Titulación en la que se imparte: Departamento
Más detallesTaller de Programación I. Tema 10: Herencia en Java
INACAP Universidad Tecnológica de Chile Sede Santiago Centro Taller de Programación I Curso Java J2SE Tema 10: Herencia en Java Ing. Manuel López Ramos (versión 1) Parte I Qué es la herencia entre clases?
Más detallesFederico Peinado
Federico Peinado www.federicopeinado.es Depto. de Ingeniería del Software e Inteligencia Artificial disia.fdi.ucm.es Facultad de Informática www.fdi.ucm.es Universidad Complutense de Madrid www.ucm.es
Más detallesCLASE 10: MÁS PATRONES. Universidad Simón Bolívar. Ing. de Software. Prof. Ivette C. Martínez
CLASE 10: MÁS PATRONES Universidad Simón Bolívar. Ing. de Software. Prof. Ivette C. Martínez Polimorfismo Problema: Cómo manejar las alternativas basadas en el tipo? Cómo crear componentes conectables?
Más detallesHoras Contacto. Objetivos Se pretende que el estudiante asimile los conceptos fundamentales de análisis y diseño orientado a objetos
FACULTAD DE INGENIERIA DEPARTAMENTO DE INGENIERIA DE SISTEMAS Nombre de la asignatura (Curso) Código de la asignatura (ID Curso) Análisis y Diseño Orientado a Objetos 4183 Fecha de Actualización Julio
Más detallesPatrones Creacionales Builder. Patrones Creacionales Abstract Factory. Patrones Creacionales Singleton. Patrones Creacionales Prototype
Temario Patrones de Diseño de Software Fundamentos de Ingeniería de SW Jocelyn Simmonds GOF: Patrones Creacionales Patrones Estructurales ILI-236 (JS) Patrones II 1 / 31 ILI-236 (JS) Patrones II 2 / 31
Más detallesDISEÑO DE APLICACIONES ORIENTADAS A OBJETOS
ASIGNATURA DE GRADO: DISEÑO DE APLICACIONES ORIENTADAS A OBJETOS Curso 2015/2016 (Código:71022011) 1.PRESENTACIÓN DE LA ASIGNATURA El objetivo de esta guía es orientar al alumno en el estudio de la asignatura.
Más detallesPATRONES DE DISEÑO. FAVA - Formación en Ambientes Virtuales de Aprendizaje. SENA - Servicio Nacional de Aprendizaje
PATRONES DE DISEÑO 1. Generalidades 2. Patrones Gof 2.1. Patrones Creacionales 2.1.1.Fábrica Abstracta 2.1.2.Constructor 2.1.3.Método de Factoría 2.1.4.Prototipo 2.1.5.Singleton 2.2. Patrones Estructurales
Más detallesPatrones de diseño. Sesión 1: Introducción y patrones básicos. Especialista Universitario Java Enterprise
Sesión 1: Introducción y patrones básicos Titulo Módulo 2006-2007 Depto. Ciencia de la Computación e IA Titulo sesión-1 En el desarrollo de aplicaciones J2EE ( y no J2EE!) se presentan una y otra vez los
Más detallesFederico Peinado
Federico Peinado www.federicopeinado.es Depto. de Ingeniería del Software e Inteligencia Artificial disia.fdi.ucm.es Facultad de Informática www.fdi.ucm.es Universidad Complutense de Madrid www.ucm.es
Más detallesPROGRAMA DE CURSO. Metodologías de Diseño y Programación. Nombre en Inglés. Design and Programming Methodologies.
Código CC3002 Nombre Nombre en Inglés PROGRAMA DE CURSO Metodologías de Diseño y Programación Design and Programming Methodologies SCT es Docentes Horas de Cátedra Horas Docencia Auxiliar Horas de Trabajo
Más detallesGrado en Ingeniería Informática Universidad de Alcalá Curso Académico 2016/2017 Curso 4º Cuatrimestre 1º
PATRONES SOFTWARE Grado en Ingeniería Informática Universidad de Alcalá Curso Académico 2016/2017 Curso 4º Cuatrimestre 1º GUÍA DOCENTE Nombre de la asignatura: Patrones Software Código: 780042 Titulación
Más detallesGrado en Ingeniería Informática Universidad de Alcalá Curso Académico 2017/2018 Curso 4º Cuatrimestre 1º
PATRONES SOFTWARE Grado en Ingeniería Informática Universidad de Alcalá Curso Académico 2017/2018 Curso 4º Cuatrimestre 1º GUÍA DOCENTE Nombre de la asignatura: Patrones Software Código: 780042 Titulación
Más detallesTaller de Programación I. Tema 08: Estructuras Dinámicas de Datos en Java
INACAP Universidad Tecnológica de Chile Sede Santiago Centro Taller de Programación I Curso Java J2SE Tema 08: Estructuras Dinámicas de Datos en Java Ing. Manuel López Ramos Parte I Qué son las estructuras
Más detallesIngeniería del Software de Gestión II. Algunas notas sobre Patrones de Diseño Clásicos Curso 2004/2005
Ingeniería del Software de Gestión II Algunas notas sobre Patrones de Diseño Clásicos Curso 2004/2005 Algunas notas sobre Patrones de Diseño Clásicos El Camino Qué es un Patrón de Diseño (PD) Qué no es
Más detallesPatrones GoF. of four) 23 patrones presentados por la pandilla de los cuatro en el libro Design Patterns.. Gamma, Helm, Johnson, Vlissides
Patrones GoF ANALISIS Y DISEÑO O O.O. Patrones GoF GoF (gang of four) 23 patrones presentados por la pandilla de los cuatro en el libro Design Patterns.. Gamma, Helm, Johnson, Vlissides. 1995. 1 Patrones
Más detallesPatrones de Diseño. M.C. Juan Carlos Olivares Rojas
Patrones de Diseño M.C. Juan Carlos Olivares Rojas Patrones de Diseño Son principios generales de soluciones que aplican ciertos estilos que ayudan a la creación de software. Es una descripción de un problema
Más detallesPROGRAMA DE CURSO. Horas de Trabajo Personal Horas de Cátedra
PROGRAMA DE CURSO Código Nombre CC3002 Metodologías de Diseño y Programación Nombre en Inglés Design and programming methodologies SCT Unidades Docentes Horas de Cátedra Horas Docencia Auxiliar Horas de
Más detallesA continuación se describe con mayor detalle cada una de tales unidades:
1. OBJETIVOS: - Entender los conceptos teórico-prácticos que se emplean en la fase de diseño de un proyecto de software. - Entender las metodologías de diseño para las diferentes estrategias de desarrollo
Más detallesPatrones de Diseño. Creado por: Javier Garzás Actualizado por: Santiago Moral
Patrones de Diseño Creado por: Javier Garzás Actualizado por: Santiago Moral (santiago.moral@urjc.es) Patrones, primer ejemplo Primer ejemplo Caso práctico: el (típico) videoclub Se pretende diseñar el
Más detallesUNIVERSIDAD DE CIENCIAS EMPRESARIALES Y SOCIALES FACULTAD DE CIENCIAS EMPRESARIALES
UNIVERSIDAD DE CIENCIAS EMPRESARIALES Y SOCIALES FACULTAD DE CIENCIAS EMPRESARIALES Carrera: Tecnicatura universitaria en programación de sistemas Materia: Programación III Curso: 2 año Curso lectivo:
Más detallesMÁSTER UNIVERSITARIO EN INGENIERÍA WEB. Guía de Aprendizaje Información al estudiante
MÁSTER UNIVERSITARIO EN INGENIERÍA WEB Datos Descriptivos Guía de Aprendizaje Información al estudiante Escuela Técnica Superior de Ingeniería de Sistemas Centro responsable Informáticos Titulación: Máster
Más detallesPROGRAMACIÓN ORIENTADA A OBJETOS
PROGRAMACIÓN ORIENTADA A OBJETOS SEBASTIÁN DAVID MORENO BERNAL CRISTIAN CAMILO ORJUELA VELANDIA LENGUAJES DE PROGRAMACIÓN 24/04/2017 1. Introducción 2. Historia 3. Filosofía del paradigma 4. Conceptos
Más detallesIngeniería del Software I. Patrones de Diseño. Carlos Blanco Universidad de Cantabria
Ingeniería del Software I Carlos Blanco Universidad de Cantabria 2 Índice Introducción Clasificación Patrones Creacionales Patrones Estructurales Patrones de Comportamiento Antipatrones 3 Introducción
Más detallesHoras Contacto. Modelar gráficamente la solución de problemas con un enfoque Orientado a Objetos, usando un lenguaje de modelado, en este caso UML.
FACULTAD DE INGENIERIA DEPARTAMENTO DE INGENIERIA DE SISTEMAS Nombre de la asignatura (Curso) Código de la asignatura (ID Curso) Análisis y Diseño Orientado a Objetos 4183 Fecha de Actualización Enero
Más detallesESCUELA POLITÉCNICA NACIONAL
ESCUELA POLITÉCNICA NACIONAL FACULTAD DE INGENIERÍA EN SISTEMAS GUÍA PRÁCTICA PARA EL USO DE PATRONES DE DISEÑO EN EL DESARROLLO DE SOFTWARE PROYECTO PREVIO A LA OBTENCIÓN DEL TÍTULO DE INGENIERO EN SISTEMAS
Más detallesCurso: Diseño Orientado a Objetos Patrones de Diseño
Curso: Diseño Orientado a Objetos Patrones de Diseño DISEÑO ORIENTADO A OBJETOS PATRONES DE DISEÑO... 1 OBJETIVO...1 AUDIENCIA...1 CONTENIDO...1 BIBLIOGRAFÍA...2 DOCENTE...3 MODALIDAD DEL DESARROLLO...3
Más detallesPatrones de Diseño. Ing. Miguel Angel Cedeño Garcidueñas
Patrones de Diseño Ing. Miguel Angel Cedeño Garcidueñas miguelcedega@correo.fie.umich.mx Patrones de Diseño Diseñar software orientado a objetos es difícil, pero diseñar software orientado a objetos reutilizable
Más detallesPrograma Regular. Metodologías de programación I. Ingeniería en Informática. Ciclo lectivo: Docente/s: Coordinador: Dr. Lic.
Programa Regular Nota: para un adecuado ordenamiento y estandarización de los programas se sugiere respetarla denominación de cada ítem indicado a continuación, a fin de unificar criterios en la presentación
Más detallesPatrones. Maestría en Ingeniería de Software
Patrones Maestría en Ingeniería de Software Agenda - Model Driven Architecture (MDA) - Unified Model Language (UML) - Object Constraint Language (OCL) - Patrones - Conclusiones Contenido Patrones Introducción
Más detallesEl patrón Composite (Compuesto) Propósito Componer los objetos a una estructura de jerarquía de relación partetodo.
Definición más precisa de los patrones Un patrón del diseño nomina, abstrae y identifica los aspectos claves de un diseño común para crear un diseño orientado a objetos reutilizable. Son descripciones
Más detallesTRABAJO DE DIPLOMA CÓDIGO DE MATERIA 29
TRABAJO DE DIPLOMA CÓDIGO DE MATERIA 29 Titular: Dario Guillermo Cardacci FACULTAD DE TECNOLOGÍA INFORMÁTICA UNIVERSIDAD ABIERTA INTERAMERICANA 1 ÍNDICE GUÍA DE TRABAJOS REVISIÓN CONCEPTUAL... 3 GUÍA DE
Más detallesProgramación Orientada a Objetos. Integrantes: Santiago Hernández Bolívar Edwin Alexander Bohórquez
Programación Orientada a Objetos Integrantes: Santiago Hernández Bolívar Edwin Alexander Bohórquez Tabla de Contenido Historia. Filosofía del paradigma. Conceptos claves. Ventajas y desventajas. Lenguajes
Más detallesConceptos Básicos. Programación Orientada a Objetos 2
Programación Orientada a Objetos Conceptos Básicos de Objetos Ing. Julio Ernesto Carreño Vargas MsC. Conceptos Básicos Las aproximaciones ADOO y POO, proveen a los objetos como el principal medio para
Más detallesReutilización del Software. Patrones de Diseño
Reutilización del Software Patrones de Diseño 1 Introducción El diseño OO es difícil y el diseño de software orientado a objetos reutilizable lo es aún más. Los diseñadores expertos no resuelven los problemas
Más detallesLógica de Negocios. Esteban Calabria 2007
Lógica de Negocios Esteban Calabria 2007 Lógica de Negocios Para organizar el Layer de Negocios Transaction Script Table Module Domain Module Service Layer Scripting Conceptos Previos Glanularidad Interfaces
Más detallesPatrones de diseño. Universidad de Costa Rica Sede Occidente Bachillerato en Informática Empresarial
Universidad de Costa Rica Sede Occidente Bachillerato en Informática Empresarial Curso: Ingeniería de Software Profesor: Óscar Alfaro Solis Patrones de diseño Realizado por: Jean Carlo Murillo Alpízar
Más detallesUNIVERSIDAD DISTRITAL FRANCISCO JOSÉ DE CALDAS FACULTAD INGENIERÍA PROYECTO CURRICULAR MAESTRÍA EN CIENCIAS DE LA INFORMACIÓN Y LAS COMUNICACIONES
UNIVERSIDAD DISTRITAL FRANCISCO JOSÉ DE CALDAS FACULTAD INGENIERÍA PROYECTO CURRICULAR MAESTRÍA EN CIENCIAS DE LA INFORMACIÓN Y LAS COMUNICACIONES SYLLABUS INGENIERÍA DE SOFTWARE NOMBRE DEL DOCENTE: HENRY
Más detallesProyecto de fin de Carrera 2013/2014. Autor: Miguel Souto Bartolomé Consultor: Óscar Escudero Sánchez
Proyecto de fin de Carrera 2013/2014 Autor: Miguel Souto Bartolomé Consultor: Óscar Escudero Sánchez Índice: 1. Introducción 1. Resumen ejecutivo 2. Objetivos 2. Patrones 1. Patrones de aplicaciones web
Más detallesHERRAMIENTAS Y ENTORNOS DE PROGRAMACIÓN
HERRAMIENTAS Y ENTORNOS DE PROGRAMACIÓN Tema 1. Introducción Escuela Superior de Informática 1 Tema 1. Introducción! Introducción (~ 3 horas)! Generalidades sobre Ingeniería del Software! Estilos y Principios!
Más detallesTema 6 Patrones de Diseño. Programación Orientada a Objetos Curso 2010/2011
Tema 6 Patrones de Diseño Programación Orientada a Objetos Curso 2010/2011 Contenido Introducción a los patrones de diseño. Patrón del Método plantilla. Patrón Composición. Patrón Estrategia. Clases anónimas
Más detallesA3F. Diseño MVC. Carlos Fontela
Diseño MVC Carlos Fontela cfontela@fi.uba.ar Temario Diseño y patrones Patrones macro MVC como caso particular Modularización Principios de diseño Modularización de clases Modularización de paquetes Modularización
Más detallesPATRONES DE CREACIÓN. Abstract Factory (Creacional de Objetos)
ÍNDICE Patrones de Creación...5 Abstract Factory (Creacional de Objetos)...5 Builder (Creacional de objetos)...6 Factory Method (Creacional de clases)...8 Prototype (Creacional de objetos)...9 Singleton
Más detallesPlanificaciones. 7510 - Técnicas de Diseño. Docente responsable: PANTALEO GUILLERMO GUSTAVO. 1 de 5
Planificaciones 7510 - Técnicas de Diseño Docente responsable: PANTALEO GUILLERMO GUSTAVO 1 de 5 OBJETIVOS En este curso se busca introducir a los alumnos en el concepto de diseño de software. Para lograrlo
Más detallesIntroducción a la Orientación a Objetos
Introducción a la Orientación a Objetos Fernando Bellas Permuy Departamento de Tecnologías de la Información y las Comunicaciones (TIC) Universidad de A Coruña http://www.tic.udc.es/~fbellas fbellas@udc.es
Más detallesPatrones. (Conceptos Generales)
Patrones (Conceptos Generales) Agenda Motivación para los patrones Definiciones de patrones Tipos de patrones (Catálogos) De diseño (GoF) De arquitectura (POSA) De plataforma (J2EE) Ejemplo (Patrón DAO)
Más detallesSistema de Administración de Farmacias Descripción de la Arquitectura Versión 1.1. Historia de revisiones
Sistema de Administración de Farmacias Descripción de la Arquitectura Versión 1.1 Historia de revisiones Fecha Versión Descripción Autor 29/08/2014 1.0 Versión Inicial Guillermo López 30/08/2014 1.1 Verificación
Más detallesArquitecturas Software. Arquitecturas Software. Arquitecturas Software. Juan José Moreno Navarro. Motivación: Idea principal: Características:
Arquitecturas Software Juan José Moreno Navarro (Curso de Software basado en Componentes, junto a Lars-Ake Fredlund) Arquitecturas Software Motivación: Complejidad creciente de aplicaciones. Sistemas distribuidos
Más detallesPrincipios de Diseño Orientado a Objetos
Principios de Diseño Orientado a Objetos PRINCIPIOS DE DISEÑO DE CLASES PRINCIPIO ABIERTO-CERRADO (OCP): Un módulo debe ser abierto para extensión pero cerrado para modificación. Wikipidia: La noción de
Más detallesPatrones de diseño. Programación III.I.T.I. de Sistemas. Contenidos. Información sobre patrones de diseño. Motivación.
Departamento de Informática Universidad de Valladolid Programación III.I.T.I. de Sistemas Patrones 1 Contenidos Programación III.I.T.I. de Sistemas Patrones de diseño Patrones de diseño Introducción Conceptos
Más detallesIMPLEMENTACIÓN DE CONCEPTOS P.O.O. EN JAVA
IMPLEMENTACIÓN DE CONCEPTOS P.O.O. EN JAVA Implementación de conceptos P.O.O. en Java Temario 2. Conceptos de Programación Orientada a Objetos 1. Conceptos de P.O.O. 2. Implementación de conceptos P.O.O
Más detallesPatrones de Diseño EJERCICIOS
EJERCICIOS Ingeniería del Software I Carlos Blanco Universidad de Cantabria Introducción Un patrón es una solución probada que se puede aplicar con éxito a un determinado tipo de problemas que aparecen
Más detallesEspecialista en Struts y Patrones del Diseño
titulación de formación continua bonificada expedida por el instituto europeo de estudios empresariales Especialista en Struts y Patrones del Diseño duración total: 200 horas 100 horas horas teleformación:
Más detallesIngeniería del Software Orientada a Objetos. Unidad 5: Conceptos del Paradigma Orientado a Objetos
Ingeniería del Software Orientada a Objetos Unidad 5: Conceptos del Paradigma Orientado a Objetos Por qué la Orientación a Objetos? Proximidad de los conceptos de modelado respecto de las entidades del
Más detallesUNIVERSIDAD AUTÓNOMA DE CHIAPAS LICENCIATURA EN SISTEMAS COMPUTACIONALES
UNIVERSIDAD AUTÓNOMA DE CHIAPAS LICENCIATURA EN SISTEMAS COMPUTACIONALES Área de formación: Disciplinaria Unidad académica: Programación Orientada a Objetos Ubicación: Cuarto Semestre Clave: 2087 Horas
Más detallesIntroducción a OOP. Programación Orientada a Objeto
Introducción a OOP Programación Orientada a Objeto Evolución Programación no Estructurada, Programación procedimental, Programación modular y Programación orientada a objetos. Programación no Estructurada
Más detallesIntroducción a la Ingeniería de Software
Introducción a la Ingeniería de Software Diseño Software Engineering 7ed Addison Wesley Ian Sommerville Diseño Durante el diseño se refina la arquitectura El diseño es un plano de una solución para el
Más detallesReutilización con Delegación y Herencia
Reutilización con Delegación y Herencia Carlos Fontela cfontela@fi.uba.ar Temario Delegación Herencia UML: clases, paquetes, secuencias Cuándo usar herencia y cuándo delegación Redefinición Clases abstractas
Más detallesPrincipios de la Tecnología de Objetos
Principios de la Tecnología de Objetos Conceptos básicos de la Orientación a Objetos Copyright Copyright (c) 2004 José M. Ordax Este documento puede ser distribuido solo bajo los términos y condiciones
Más detallesTema: Programación Orientada a Objetos
Estructura de datos y Programación / Programación I Tema: Programación Orientada a Objetos Ing. Analia Méndez Ing. Raquel Zarco Año: 2012 Qué es Programación Orientada a Objetos (POO)? Es un paradigma
Más detallesInstructivo para la elaboración de un Manual Técnico
Instructivo para la elaboración de un Manual Técnico Autora: Ing. Alena González Reyes. (agonzalez@ceis.cujae.edu.cu) Ciudad de la Habana, Cuba Marzo, 2010 Índice 1. Introducción... 3 2. Confección...
Más detallesLa Universidad Católica de Loja
UNIVERSIDAD TÉCNICA PARTICULAR DE LOJA La Universidad Católica de Loja ESCUELA DE CIENCIAS DE LA COMPUTACIÓN TEMA: Desarrollo e implementación de un aplicativo Web para la gestión de concursos de la Asociación
Más detallesProgramación orientada a objetos. Resumen de Temas Unidad 5: Herencia
Programación orientada a objetos Resumen de Temas Unidad 5: Herencia 5.1 Introducción a la Herencia La herencia es el mecanismo fundamental de relación entre clases en la orientación a objetos. Relaciona
Más detallesPATRONES DE DISEÑO FRAMEWORKS
PATRONES DE FRAMEWORKS Definiciones Finalidades Características Diseño de software basado en patrones Descripción Utilización de los patrones en el diseño Clasificación FRAMEWORKS Basado en la reutilización
Más detallesPatrones de Diseño. Ezequiel Postan. 1 Libro e índice. 2 Introducción
Patrones de Diseño Ezequiel Postan 1 Libro e índice Gamma, E., Helm, R., Johnson, R., Vlissides, J., Patrones de diseño, Addison-Wesley, 2003. Páginas 2-69: Introducción. Composite. Strategy. Decorator.
Más detallesProyecto Práctico de Análisis y Diseño Orientado a Objetos
Ingeniería del Software II Ingeniería Informática, 4 Curso Proyecto Práctico de Análisis y Diseño Orientado a Objetos Curso 2004-2005 Gonzalo Génova y Vicente Palacios Proyecto Práctico de Análisis y Diseño
Más detallesNombre del patrón: command orden (también es conocido como Action y Transaction)
Command Nombre del patrón: command orden (también es conocido como Action y Transaction) Clasificación del patrón: Patrones de comportamiento. Problema: Necesidad de enviar peticiones sin saber nada acerca
Más detallesOracle Fusion Middleware 11g: Creación de Aplicaciones ADF - Acelerado
Oracle University Contacte con nosotros: 902 302 302 Oracle Fusion Middleware 11g: Creación de Aplicaciones ADF - Acelerado Duración: 5 Días Lo que aprenderá Este curso enlazado comprende los cursos Oracle
Más detallesGuía Docente ESCUELA POLITÉCNICA SUPERIOR
Guía Docente REDES Y SERVICIOS PARA INTERNET PRIMER CURSO SEGUNDO SEMESTRE MÁSTER UNIVERSITARIO EN INGENIERÍA DE TELECOMUNICACIÓN MODALIDAD PRESENCIAL CURSO 2016/2017 ESCUELA POLITÉCNICA SUPERIOR 1. IDENTIFICACIÓN
Más detallesPatrones en el e-learning
Patrones en el e-learning DOCUMENTO BASE El concepto de patrón en el e-learning permite resumir y comunicar la experiencia acumulada en la enseñanza-aprendizaje por medios telemáticos. Un patrón puede
Más detallesConceptos a tratar. Fundamentos de la Programación Orientada a Objetos Ampliación sobre clases y objetos
Fundamentos de la Programación Orientada a Objetos Ampliación sobre clases y objetos Programación Orientada a Objetos Facultad de Informática Dep. Ingeniería del Software e Inteligencia Artificial Universidad
Más detallesCLASE 9: DISEÑO CON PATRONES. Universidad Simón Bolívar. Ing. de Software. Prof. Ivette C. Martínez
CLASE 9: DISEÑO CON PATRONES Universidad Simón Bolívar. Ing. de Software. Prof. Ivette C. Martínez Diseño de Objetos Identificar requerimientos, crear un modelo del dominio, agregar métodos a las clases
Más detallesArquitectura de Software. Juan Bernardo Quintero
Arquitectura de Software Juan Bernardo Quintero Catálogo de Patrones Nombre Corto Nombre Completo Propósito Básico Autor Año GoF Gang of Four Solución de problemas del diseño POSA J2EE PoEAA GRASP Pattern-Oriented
Más detallesDiseño Basado en Componentes. Curso 2008/09
Tabla de contenidos Diseño Basado en Componentes Técnicas relacionadas con Reutilización Introducción: por qué reutilizar?, qué reutilizar? Técnicas: Ingeniería de dominios Líneas de productos (Product-lines)
Más detallesCrear diagramas basados en UML para la representación de la solución a un problema mediante el Paradigma Orientado a Objetos.
PROGRAMA DE CURSO Modelo 2009 DEPARTAMENTO: COMPUTACIÓN Y DISEÑO GRÁFICO NOMBRE DEL CURSO: Diseño de Software con Práctica Profesional CLAVE: 1013M ACADEMIA A LA QUE PERTENECE: Diseño de Software PROFESIONAL
Más detallesPROGRAMACIÓN EN JAVA
1. INTRODUCCIÓN A LA PROGRAMACIÓN 1.1. Datos, algoritmos y programas 1.1.1. Definición de algoritmo 1.1.2. Datos 1.1.3. Características de un programa 1.2. Paradigmas de programación 1.2.1. Programación
Más detallesPLANIFICACIÓN PROGRAMACION II
PLANIFICACIÓN PROGRAMACION II 1) FUNDAMENTACIÓN DE LA MATERIA DENTRO DEL PLAN DE ESTUDIOS. El fundamento de la cátedra de Programación II I dentro del segundo semestre de la carrera tiene como objeto continuar
Más detallesAcademia de computación de IE, ICA e ISISA. Unidad didáctica Programación Orientada a Objetos
Academia de computación de IE, ICA e ISISA Unidad didáctica Programación Orientada a Objetos Elaboración y diseño de cien reactivos de opción múltiple para la unidad didáctica programación orientada a
Más detallesIntroducción a la Orientación a Objetos
Introducción a la Orientación a Objetos Breve historia de la OO 1960s. Simula incorpora características propias de la OO. 1970s. Smalltalk. Lenguaje totalmente OO. 1990s. Boom de la OO. 2000-Hoy. Época
Más detallesIngeniería del Software de Gestión II 2 de febrero de 2005 Pág: 1/8. Apellidos: Nombre: Núm.:
Ingeniería del Software de Gestión II 2 de febrero de 2005 Pág: 1/8 Apellidos: Nombre: Núm.: PD1 (4 Ptos.): Responda razonadamente a las siguientes cuestiones: 1. Qué diferencia existe entre un diagrama
Más detallesIngeniería del Software de Gestión II 26 de enero de 2005 Pág: 1/6. Apellidos: Nombre: Núm.:
Ingeniería del Software de Gestión II 26 de enero de 2005 Pág: 1/6 Apellidos: Nombre: Núm.: PD1 (5 Ptos.): Responda a las siguientes cuestiones de forma concisa y razonada: 1. Qué contraindicación tiene
Más detallesASIGNATURA: Ingeniería de software II DOCENTE: Licda.Carla Milagro López Vásquez RESPONSABLE: Rodolfo Alberto Palma Ramos CARRERA:
UNIDAD 04: PATRONES DE DISEÑO WEB. ASIGNATURA: Ingeniería de software II DOCENTE: Licda.Carla Milagro López Vásquez RESPONSABLE: Rodolfo Alberto Palma Ramos CARRERA: Técnico en Ingeniería en Sistemas y
Más detallesAdministración e Ingenierías Ingeniería de Sistemas
Facultad Programa Asignatura Administración e Ingenierías Ingeniería de Sistemas PROGRAMACIÓN I Problema? Cómo implementar soluciones de software utilizando lenguajes de programación orientados a objetos?
Más detalles