Podcast
Questions and Answers
¿Cuál es la función principal del patrón Builder?
¿Cuál es la función principal del patrón Builder?
El patrón Template Method permite modificar algoritmos de manera compleja.
El patrón Template Method permite modificar algoritmos de manera compleja.
False
¿Qué beneficia el uso del patrón Strategy?
¿Qué beneficia el uso del patrón Strategy?
Permite elegir y cambiar algoritmos dinámicamente en tiempo de ejecución.
El patrón _________ proporciona una interfaz simple para un subsistema complejo.
El patrón _________ proporciona una interfaz simple para un subsistema complejo.
Signup and view all the answers
Relaciona los patrones de diseño con su descripción:
Relaciona los patrones de diseño con su descripción:
Signup and view all the answers
¿Qué patrón ayuda a reducir la complejidad y dependencias entre subsistemas?
¿Qué patrón ayuda a reducir la complejidad y dependencias entre subsistemas?
Signup and view all the answers
Un Director en el patrón Builder tiene el control total de la creación de un objeto.
Un Director en el patrón Builder tiene el control total de la creación de un objeto.
Signup and view all the answers
Menciona un escenario en el que se aplique el patrón Fachada.
Menciona un escenario en el que se aplique el patrón Fachada.
Signup and view all the answers
¿Cuál es la clasificación de los patrones de diseño?
¿Cuál es la clasificación de los patrones de diseño?
Signup and view all the answers
El patrón Singleton permite que una clase tenga múltiples instancias.
El patrón Singleton permite que una clase tenga múltiples instancias.
Signup and view all the answers
¿Qué hace el patrón Builder?
¿Qué hace el patrón Builder?
Signup and view all the answers
El patrón de diseño __________ se encarga de la creación de objetos a partir de una interfaz común.
El patrón de diseño __________ se encarga de la creación de objetos a partir de una interfaz común.
Signup and view all the answers
¿Cuál es una de las ventajas del patrón Builder?
¿Cuál es una de las ventajas del patrón Builder?
Signup and view all the answers
El patrón Composite se utiliza únicamente con el patrón Builder.
El patrón Composite se utiliza únicamente con el patrón Builder.
Signup and view all the answers
¿Qué rol desempeña el Director en el patrón Builder?
¿Qué rol desempeña el Director en el patrón Builder?
Signup and view all the answers
Relacione los términos con sus descripciones:
Relacione los términos con sus descripciones:
Signup and view all the answers
¿Cuál es el principio que establece que una clase debe tener una única razón para cambiar?
¿Cuál es el principio que establece que una clase debe tener una única razón para cambiar?
Signup and view all the answers
El Principio de Abierto-Cerrado establece que un módulo debe ser cerrado para la extensión.
El Principio de Abierto-Cerrado establece que un módulo debe ser cerrado para la extensión.
Signup and view all the answers
¿Qué asegura el Principio de Sustitución de Liskov?
¿Qué asegura el Principio de Sustitución de Liskov?
Signup and view all the answers
El principio que sugiere que las dependencias en un sistema deben ser hacia módulos más estables se llama principio de __________.
El principio que sugiere que las dependencias en un sistema deben ser hacia módulos más estables se llama principio de __________.
Signup and view all the answers
Relaciona cada principio con su descripción correspondiente:
Relaciona cada principio con su descripción correspondiente:
Signup and view all the answers
¿Cuál de los siguientes principios enfatiza la separación entre la interfaz y la implementación?
¿Cuál de los siguientes principios enfatiza la separación entre la interfaz y la implementación?
Signup and view all the answers
La cohesión baja se relaciona generalmente con tener múltiples responsabilidades en una clase.
La cohesión baja se relaciona generalmente con tener múltiples responsabilidades en una clase.
Signup and view all the answers
¿Qué representa el Principio de Dependencias Acíclicas?
¿Qué representa el Principio de Dependencias Acíclicas?
Signup and view all the answers
Study Notes
Resumen del examen D1
- El documento es un resumen de Diseño de aplicaciones 1 de la Universidad ORT Uruguay.
- El documento incluye un índice detallado de los temas cubiertos en el examen.
- El documento se descarga de studocu.com
Conceptos POO
- Diseño Orientado a Objetos (DOO): Representa el problema del mundo real en el software.
- Abstracción: Simplificación de la realidad en clases y objetos.
- Información oculta: Minimizar la visibilidad de los secretos del objeto.
- Modularización: Dividir la aplicación en módulos más pequeños.
- Encapsulación: Combinar características y comportamiento en una clase.
- Cohesión: Medida de la relación entre las responsabilidades de una clase.
- Acoplamiento: Medida de la relación entre clases y paquetes.
UML - Paquetes, Clases, Interacción
- Paquetes/Espacios de nombres: Agrupan elementos relacionados.
- Diagramas de interacción: Describen cómo colaboran los objetos.
- Diagramas de secuencia: Muestra el orden temporal de las interacciones.
- Diagramas de colaboración: Muestra la estructura del sistema.
Relaciones entre clases
- Asociación: Conexión estructural entre los objetos.
- Asociación unidireccional/bidireccional: La dirección del sentido de la asociación.
- Multiplicidades: Número de instancias de una clase relacionadas con otra instancia.
Agregación y Composición
- Agregación: Relación entre un todo y sus partes. El componente puede existir independientemente.
- Composición: Relación entre un todo y sus partes. El componente no puede existir sin el todo.
Dependencia
- Relación entre cliente y proveedor de servicios.
- Cliente solicita un servicio.
- Servidor provee el servicio.
Clases de asociación: Roles y Constraints
- Roles: Nombre de un extremo de la asociación.
- Constraint: Condiciones que se deben cumplir para el modelo.
- Stereotypes: Clasificación secundaria de objetos.
- Notas: Información adicional que acompaña al modelo.
Clean Code
- El código debe ser eficiente, fácil de leer, cambiar y probar.
- Selección de nombres: Los nombres de las variables deben ser explícitos.
- Reglas: Consejos para la selección de nombres de clases, métodos, etc.
Funciones
- Debe tener una sola responsabilidad.
- Debe expresarse con concisión.
- Ideales entre 0 y 2 parámetros.
- Evitar booleanos como parámetros.
Formateo
- Importante para la legibilidad.
- Aspectos visuales de las clases y estructuras de datos.
- Manejo de errores.
- Manejo de fronteras y Tests
Refactoring
- Reestructuración de código para mejorar el diseño sin cambiar la funcionalidad.
- Motivos y beneficios de aplicar refactoring.
- Condiciones para aplicar refactoring.
Patrones de Diseño
- Clasificación de patrones en creacionales, estructurales y comportamentales.
- Describir casos de uso de cada patrón con ejemplos concretos.
- Ventajas y desventajas de aplicar cada patrón.
GRASP
- Patrones generales de asignación de responsabilidades en el DOO
- Experto, Creador, Controlador, Bajo Acoplamiento, Alta Cohesión, Fabricación Pura e Indirección.
Conceptos y principios de diseño SOLID
- Principios de diseño software que facilitan la construcción de sistemas robustos y mantenibles.
- Explicación de principios individuales (SRP, OCP, LSP, ISP, DIP).
Studying That Suits You
Use AI to generate personalized quizzes and flashcards to suit your learning preferences.
Related Documents
Description
Este resumen abarca los principales conceptos del curso de Diseño de Aplicaciones 1 de la Universidad ORT Uruguay. Se exploran temas de programación orientada a objetos y diagramas UML, esenciales para entender la construcción de software modular y eficiente. Ideal para preparar el examen y repasar los temas principales cubiertos en clase.