Diseño de Sistemas 2 - Principios de diseño y SOLID
|
|
Título del Test:
![]() Diseño de Sistemas 2 - Principios de diseño y SOLID Descripción: Cuestionario sobre principios de diseño para la materia Diseño de Sistemas |



| Comentarios |
|---|
NO HAY REGISTROS |
|
¿Qué es un principio de diseño?. Una técnica o herramienta básica para hacer el software más flexible, entendible, extensible y mantenible. Una solución genérica probada para resolver un problema definido. Un patrón de bajo nivel específico de un lenguaje de programación. Un modelo físico que sirve de plano de la implementación. Uní cada principio de diseño con su idea central. No te repitas (DRY). No lo vas a necesitar. KISS. No hables con extraños. ¿Qué plantea el principio "Pedir, no preguntar"?. Pedirle a los objetos que hagan el trabajo, no solo pedirles datos, distribuyendo responsabilidades. Consultar los datos de otros objetos y procesarlos en una clase central. Preguntar al usuario antes de ejecutar cada operación. Evitar crear interfaces entre los objetos. ¿Qué implica el principio "Programar hacia la interfaz y no hacia la implementación"?. Que las clases dependan de abstracciones (interfaces o clases abstractas) y no de implementaciones concretas. Que cada clase tenga una única responsabilidad. Que primero se diseñe la interfaz de usuario y después la lógica. Que las clases concretas no puedan cambiarse una vez implementadas. Según el principio de "Reuso por composición", ¿qué afirmación es correcta?. La delegación reusa a nivel de objetos y la herencia a nivel de clases; la composición evita jerarquías rígidas. La herencia reusa a nivel de objetos y la delegación a nivel de clases. La composición genera más acoplamiento que la herencia. Siempre conviene crear jerarquías profundas de herencia para reutilizar. ¿Qué propone el principio de "Separación de intereses" y qué aporta?. Aislar la aplicación en secciones con poca superposición; aporta más cohesión, reuso y mantenibilidad, y menos acoplamiento. Separar el código de la base de datos; aporta más acoplamiento. Dividir el equipo por intereses personales; aporta motivación. Concentrar todas las preocupaciones en una clase controladora; aporta simplicidad. Uní cada principio SOLID con su definición. Single responsibility. Open / close. Liskov substitution. Interface segregation. ¿Qué establece el principio de Inversión de dependencias (Dependency inversion)?. Los módulos de alto nivel no deben depender de los de bajo nivel; ambos deben depender de abstracciones. Los módulos de bajo nivel deben depender directamente de los de alto nivel. Una clase hija debe poder usarse como su padre. Las dependencias deben invertirse ejecutando el código en orden inverso. Según el principio Open/close, ¿mediante qué mecanismos se cambia el comportamiento de una clase sin modificarla?. Herencia, polimorfismo y composición. Editando directamente el código fuente de la clase. Duplicando la clase y cambiando la copia. Agregando variables globales. ¿Qué principio SOLID dice que "ninguna clase debería depender de métodos que no usa"? (escribí su nombre en inglés o en español). ¿Cómo se llama el principio por el cual un objeto, en lugar de implementar directamente un comportamiento, pasa la solicitud a otro objeto que tiene el conocimiento o la capacidad para manejarla? (una palabra). ¿Qué es la COHESIÓN?. El grado en que los elementos de una clase o módulo están relacionados y trabajan juntos para un propósito único y bien definido. El grado de dependencia entre diferentes clases de un sistema. La cantidad de clases que heredan de una misma superclase. La capacidad de un objeto de pasar una tarea a otro objeto. ¿Qué es el ACOPLAMIENTO?. El grado de dependencia entre clases: cuánto cambia un módulo cuando otro cambia. El grado en que los elementos de una clase trabajan para un propósito único. La relación entre una interfaz y la clase que la implementa. La cantidad de atributos que tiene una clase. Tenés una clase Cuenta y una subclase CuentaAhorro. ¿Qué principio se cumple si CuentaAhorro puede usarse en cualquier lugar donde se espera una Cuenta, sin conocer sus diferencias?. Liskov substitution. Single responsibility. No lo vas a necesitar. Separación de intereses. Según el resumen, ¿qué principios aportan MAYOR COHESIÓN? (marcá todas las correctas). No te repitas (DRY). Single responsibility. Open / close. Separación de intereses. No hables con extraños. No lo vas a necesitar. Singleton. Según el resumen, ¿qué principios están RELACIONADOS CON LA DELEGACIÓN? (marcá todas las correctas). Pedir, no preguntar. Programar hacia la interfaz. Liskov substitution. Interface segregation. Dependency inversion. KISS. No lo vas a necesitar. ¿Qué principios de diseño están vinculados con lograr BAJO ACOPLAMIENTO? (marcá todas las correctas). No hables con extraños. Dependency inversion. Separación de intereses. Programar hacia la interfaz. Reuso por composición. No lo vas a necesitar. KISS. |




