wayground logo

Free Printable Worksheets

Font size

S
M
L
XL
Worksheets

Repaso Diseño Software

Total questions: 30

Worksheet time: 29mins

Name
Class
Date
1.

La funcionalidad y los atributos de calidad son:

a)

Independientes

b)

Ortogonales

c)

Codependientes

d)

Necesarios

2.

¿Cuál de los siguientes no es un tipo común de atributo de calidad?

a)

Fuera de tiempo de ejecución

b)

Presentación

c)

Ejecución

d)

Usuario

3.

¿Qué es un patrón de diseño?

a)

Técnicas para resolver problemas comunes en el desarrollo de software

b)

Aquellos que expresan un esquema organizativo estructural fundamental para sistemas de software.

c)

Patrones de bajo nivel específicos para un lenguaje de programación o entorno concreto.

4.

¿Cómo se puede definir un patrón de diseño?

a)

Un patrón de diseño es un modelo de solución a problemas que casi nunca se presentan en el desarrollo de un software

b)

Un patrón de diseño describe un problema que ocurre una y otra vez en un ambiente de desarrollo de software, y luego describe el núcleo de su solución en forma tal que es posible usarla un millón de veces sin elaborarla dos veces de la misma forma

c)

Un patrón de diseño tiene en cuenta la longitud y complejidad del modelo de requerimientos o especificaciones escritas del sistema y de su interfaz, las cuales dan indicaciones de la cantidad de aprendizaje requerido por los usuarios del sistema

d)

Un patrón de diseño es aquel formato que sirve para describir un problema con todas sus características, pero no siempre da una solución para el problema que plantea

5.

¿Qué son los patrones creacionales?

a)

Los patrones creacionales se centran en la corrección de estructuras que hayan sido mal ubicadas en el software

b)

Los patrones creacionales se centran en la descripción de procesos y búsqueda de patrones que los describan

c)

Los patrones creacionales se centran en la "creación, composición y representación" de objetos

d)

Los patrones creacionales se centran en la forma en la que se organizan e integran las clases y objetos para diseñar estructuras más grandes

6.

¿Cuál de las siguientes respuestas es correcta respecto al Factory Method?

a)

Factory Method proporciona una interfaz para crear objetos en una superclase, mientras permite a las subclases alterar el tipo de objetos que se crearán

b)

Factory Method permite la colaboración entre objetos con interfaces incompatibles

c)

Factory Method se describe con mucha formalidad para que las personas puedan reproducirlos en muchos contextos

d)

Factory Method se utiliza para identificar condiciones de error y problemas en el código

7.

Una forma de implementar prototype es:

a)

Cuando se crea la interfaz del prototipo y se declara el método clonar en ella, o simplemente se añade el método a todas las clases de una jerarquía de clase existente

b)

Cuando se quiere ahorrar recursos del sistema mediante la reutilización de objetos existentes

c)

Cuando no se conoce de antemano las dependencias y los tipos exactos de los objetos con los que deba funcionar tu código

d)

Cuando se construyen objetos complejos paso a paso

8.

Los patrones de diseño se utilizan para ahorrar tiempo y evitar volver a la etapa de desarrollo

a)

Verdadero

b)

Falso

9.

Prototype es un patron de diseño creacional que proporciona una interfaz para crear objetos en una super clase

a)

Verdadero

b)

Falso

10.

Los patrones creacionales permiten varios mecanismos de creación de objetos que permiten la flexibilidad y la reutilización de códigos existentes

a)

Verdadero

b)

Falso

11.

Los Patrones de Diseño son útiles porque:

a)

Validar código

b)

lenguaje común

c)

ahorra tiempo

d)

Todas las anteriores

12.

Algunos ejemplos de patrones estructurales...

a)

Factory Method, Layers, MVC

b)

Adapter, Bridge, Composite

c)

Prototype, Builder, Facade

13.

El objetivo del patrón ________ es garantizar que una clase sólo tenga una instancia única en toda la aplicación y que sólo se pueda acceder a la clase a través de dicha instancia

a)

Factory

b)

Singleton

c)

Builder

d)

Adapter

14.

Un anti-patrón de diseño es una solución común, bien documentada, de malas soluciones para un problema.

a)

Verdadero

b)

Falso

15.

¿Cuál de estos autores aporto su idea muy significativa para aplicar en los sistemas, utilizando principios de diseño?

a)

Edward Yourdon

b)

Christofer Alexander

c)

Ivar Jacobson

d)

James Rumbauhg

16.

¿Cuál de las siguientes caracteristicas debe ser considerada importante para que una técnica se defina como un principio de diseño?

a)

Alcanzable

b)

Reutilizable

c)

Considerable

d)

Reseteable

17.

¿Qué principio se ve afectado directamente si toda la funcionalidad queda en una clase y se agregan nuevas?

a)

Inversión de dependencia

b)

Segregación de interfaces

c)

Sustitución de Liskov

d)

Unica responsabilidad

18.

¿Qué cosa nos ayuda a desacoplar módulos entre sí?

a)

Herencia

b)

Polimorfismo

c)

Asociatividad

d)

Interfaces

19.

La flexibilidad nos permite añadir nuevos mecanismos de forma fácil, sin tener que modificar lo que ya funciona. ¿A qué principio me estoy refiriendo?

a)

Segregación de interfaces

b)

Sustitución Liskov

c)

Unica responsabilidad

d)

Abierto/Cerrado

20.

Las precondiciones no pueden ser reforzadas por un subtipo. ¿En qué principio se postuló este argumento?

a)

Interface segregation

b)

Dependency inversion

c)

Open/Close

d)

Liskov Subtitution

21.

Según lo explicado en clase, ¿Cuáles de las siguientes son características recomendadas para los nombres de las variables?

a)

Cortos

b)

Concisos

c)

Auto-explicativos

d)

Divertidos

22.

Según lo explicado en clase ¿cuáles son características recomendadas para las funciones (functions) dentro de un programa?

a)

Deben tener argumentos bandera

b)

Deben tener un nombre descriptivo

c)

Siempre deben recibir al menos un argumento

d)

No deben sobrepasar las 20 líneas de extensión

23.

Según lo visto en clase ¿Cuáles NO son buenos tipos de comentarios dentro del código?

a)

Comentarios de copyright

b)

Comentarios de cierre de llaves y paréntesis

c)

Comentarios de To do (por hacer)

d)

Comentarios con mucha información

24.

Según lo explicado en clase ¿Cuál de las siguientes es una recomendación de formato?

a)

Evitar dejar espacios en blanco entre bloques de código

b)

Permitir que cada programador tenga su estilo

c)

Tener más de 120 caracteres por línea

d)

Uso de comas para acentuar los parámetros

25.

¿Cuál es la Segunda Ley de TDD?

a)

La prueba es escrita hasta que falla (no compilar, es fallar)

b)

Nunca se debe escribir código sin antes haber escrito su respectiva prueba

c)

Solo se escribe el código necesario para hacer que la prueba sea superada

d)

Siempre se escribe primero el código producto y luego su respectiva prueba

26.

Según lo visto en clase ¿cuáles son recomendaciones para clases (classes) de programación?

a)

Las clases más pequeñas deben ser implementadas primero

b)

Las clases deben tener un número pequeño de instancias

c)

Las variables públicas se colocan antes que las privadas

d)

Debemos evitar la encapsulación de clases

27.

Según lo visto en clase ¿Cuáles de las siguientes son habilidades necesarias para hacer uso de la técnica Pair Programming?

a)

Trabajo en equipo

b)

Cooperación

c)

Comunicación

d)

Seguir las reglas

28.

Según lo visto en clase ¿Qué palabra reservada se puede usar para evitar que un método sea sobre escrito cuando se hereda la clase?

a)

Isolated

b)

Protected

c)

Final

d)

Eso es imposible

29.

¿Cuál de los siguientes no es un Patrón Estructural?

a)

Composite

b)

Builder

c)

Bridge

d)

Adapter

30.

¿Cuál de los siguientes informáticos no pertenece a GoF?

a)

Richard Helm

b)

Jeff Sutherland

c)

John Vlissides

d)

Erich Gamma