You are on page 1of 4

Guia Patrones de diseo

1. Qu es un patrn de diseo?
Consiste en un diagrama de objetos que forma una solucin a un problema
conocido y frecuente. El diagrama est constituido por un conjunto de objetos
descritos por clases y las relaciones que enlazan los objetos.
2. Qu es un gestor de versiones?
Sistema que registra los cambios realizados sobre un archivo o conjunto de
archivos de modo que puedas recuperar versiones especificas ms adelante,
comparar cambios, ver quien modifico el archivo por ltima vez etc.
3. Menciona 3 ejemplos de Gestores de versiones
a) Git Hub
b) Mercurial
c) TFS

4. Cmo escoger y utilizar un patrn de diseo?
Leer detalladamente las descripciones de los patrones y determinar si existen uno
o ms patrones se acerque al problema.

Una vez escogido el patrn su uso en una aplicacin comprende:
a) Estudiar profundamente su estructura genrica que sirve como base para
utilizar un patrn.
b) Renombrar las clases y mtodos de la estructura genrica
c) Adaptar la estructura genrica para poner responder a las restricciones de
la aplicacin, lo cual implica cambios en el diagrama de objetos.

5. Describe brevemente el objetivo del patrn Singleton
Tiene como objetivo asegurar que una clase slo posee una instancia y
proporcionar un mtodo de clase nico que devuelva esta instancia, es decir
restringe la creacin de objetos pertenecientes a una clase.
Punto de acceso: Global
6. Dibuja el diagrama de clases del mtodo Singleton



7. Cules son los Participantes en el patrn Singleton?
La clase Singleton, ofrece acceso a la instancia nica mediante el mtodo de clase
instance.
8. Menciona la colaboracin en el patrn Singleton
Cada cliente de la clase Singleton accede a la instancia nica mdiate el mtodo de
la case instante.
9. Cuando se utiliza el patrn Singleton?
a) Cuando solo debe existir una nica instancia de clase
b) Cuando la instancia solo debe ser accesible mediante un mtodo de clase
c) Ofrece a su vez la posibilidad de utilizar nicamente variables globales
10. Menciona 3 caractersticas del mtodo Singleton`
a) Solo permite una nica instanciacin.
b) Su constructor es privado
c) La instancia solo es accesible mediante un mtodo de la clase Singleton.
11. Menciona ejemplos del uso del patrn Singleton
a) Para hacer una sola conexin a la base de datos, por ejemplo cuando
tenemos 1 campo de distrito y las tablas Clientes y Proveedores que tienen
el mismo campo, se puede crear una clase Distrito que implemente el
patrn Singleton para no hacer la conexin ms de una vez.
b) Otro ejemplo es en el que una dicha clase controla el acceso a un recurso
fsico nico (como puede ser el ratn o un archivo abierto en modo
exclusivo) o cuando cierto tipo de datos debe estar disponible para todos
los dems objetos de la aplicacin.
12. Que es MVC?
Modelo-Vista-Controlador Es un patrn de arquitectura de software que separa los
datos y la lgica de negocio de una aplicacin de la interfaz de usuario y el mdulo
encargado de gestionar los eventos y las comunicaciones.
13. Menciona las capas del MVC y una breve descripcin
a) Modelo: Es la capa donde se trabaja con los datos, por tanto contendr
mecanismos para acceder a la informacin y tambin para actualizar su
estado.(ej. Select, update, insert)
b) Vista: Contienen el cdigo de nuestra aplicacin que va a producir la
visualizacin de las interfaces de usuario.(Ej. http, php)
c) Controlador: Contiene el cdigo necesario para responder a las acciones
que se solicitan en la aplicacin, como visualizar un elemento, realizar una
compra, una bsqueda de informacin, etc. sirve de enlace entre las vistas
y los modelos.


14. Qu es la programacin multicapas?
Es una arquitectura cliente-servidor en el que el objetivo primordial es la
separacin de la lgica de negocios de la lgica de diseo

15. Menciona las capas de la programacin multicapa
a) Capa de presentacin: es la que ve el usuario (tambin se la denomina
"capa de usuario"), presenta el sistema al usuario, le comunica la
informacin y captura la informacin del usuario en un mnimo de proceso.
Solo se comunica con la capa de negocio
b) Capa de negocio: es donde residen los programas que se ejecutan, se
reciben las peticiones del usuario y se envan las respuestas tras el proceso.
Se denomina capa de negocio porque es aqu donde se establecen todas las
reglas que deben cumplirse. Se comunica con la capa de presentacin y
datos.
c) Capa de datos: es donde residen los datos y es la encargada de acceder a
los mismos. Est formada por uno o ms gestores de bases de datos que
realizan todo el almacenamiento de datos, reciben solicitudes de
almacenamiento o recuperacin de informacin desde la capa de negocio
16. Qu es un patrn de Arquitectura?
Ofrecen soluciones a problemas de arquitectura de software en ingeniera de software.
Dan una descripcin de los elementos y el tipo de relacin que tienen junto con un
conjunto de restricciones sobre cmo pueden ser usados.
17. Menciona algunos ejemplos del patrn arquitectnico
a) Programacin por capas
b) Arquitectura orientada a servicios
c) Modelo Vista Controlador

18. Que es un patrones creacional?
Solucionan problemas de creacin de instancias. Nos ayudan a encapsular y abstraer
dicha creacin.

Caractersticas:
Abstraen el proceso de instanciacin.
Hacen al sistema independiente de las creaciones de objetos.
Encapsulan conocimiento sobre las clases concretas usadas por el sistema.
Flexibilizan:
o que se crea
o quien lo crea
o como se crea
o cuando se crea
Ocultan la forma en que se crean y ponen en contacto las instancias


19. Menciona algunos ejemplos de los patrones creacionales
a) Factory Method
b) Abstract Factory
c) Singleton

20. Cul es el objetivo de los patrones de diseo?
a) Proporcionar catlogos de elementos reusables en el diseo de sistemas
software.
b) Evitar la reiteracin en la bsqueda de soluciones a problemas ya conocidos
y solucionados anteriormente.
c) Formalizar un vocabulario comn entre diseadores.
d) Estandarizar el modo en que se realiza el diseo.
e) Facilitar el aprendizaje de las nuevas generaciones de diseadores
condensando conocimiento ya existente.

21. Qu es lo que no pretenden los patrones?
a) Imponer ciertas alternativas de diseo frente a otras.
b) Eliminar la creatividad inherente al proceso de diseo.

22. Menciona 6 razones para usar patrones de diseo
a) Es una solucin estndar para un problema comn de programacin
b) Es una tcnica para flexibilizar el cdigo hacindolo satisfacer ciertos
criterios
c) Es un proyecto o estructura de implementacin que logra una finalidad
determinada
d) Contiene lenguaje de programacin de alto nivel
e) Es una manera ms prctica de describir ciertos aspectos de la organizacin
de un programa
f) Tiene conexiones entre componentes de programas
g) Reutilizacin de cdigo
h) Contiene la forma de un diagrama de objeto o de un modelo de objeto.
i) Acoplamiento

Patrn de construccin : tienen como objetivo organizar la creacin de objetos
Patron de estructuracin : facilita la organizacin de la jerarqua de clases y de sus
relaciones
Patron de comportamiento : proporciona soluciones para organizar las interacciones y
para repartir el proceso entre los objetos

You might also like