UNIVERSIDAD TECNOLGICA DE CAMPECHE
INGENIERA EN TECNOLOGAS DE LA INFORMACIN
UNIDAD III
MATERIA:
PROGRAMACIN DE APLICACIONES
ACTIVIDAD:
PATRN DE DISEO
ALUMNA:
LORENA ELIZABETH VERA PREZ
DOCENTE:
LUIS ALFREDO ISIDRO METELN
CUATRIMESTRE Y GRUPO:
7 A
San Antonio Crdenas, Carmen, Campeche Noviembre de 2015
Introduccin
Los patrones de diseo son muy interesantes para los programadores,
ya que nos ofrecen soluciones a problemas comunes y cuotidianos a la
hora de disear una aplicacin. Existen infinidad de casos en que el
problema sigue el mismo patrn, solo cambia el contexto; un patrn de
diseo te propone una solucin a este tipo de problemas.
La manera de utilizarlos depende de dos factores: comprender
correctamente cuando se pueden usar y tenerlos presentes a la hora de
disear. Lo primero se consigue habindolos estudiado y puesto en
prctica en diferentes contextos. Lo segundo, que tambin incluye su
dificultad, es la capacidad de encontrarse con un problema, y ser capaz
de relacionarlo con un patrn de diseo que conozcas.
Qu son los patrones de diseo?
Los patrones de diseo son soluciones para problemas tpicos y recurrentes que nos podemos encontrar a la hora de desarrollar una aplicacin.
Aunque nuestra aplicacin sea nica, tendr partes comunes con otras aplicaciones: acceso a datos, creacin de objetos, operaciones entre sistemas etc. En lugar de reinventar la rueda, podemos solucionar problemas utilizando algn patrn, ya que son soluciones probadas y documentadas por multitud de programadores.
Por qu usar patrones de diseo?
Como ya vimos en el artculo sobre principios de diseo, si queremos desarrollar aplicaciones robustas y fciles de mantener, debemos cumplir ciertas "reglas". Lo pongo entre comillas porque aunque estas reglas de diseo son recomendables (muy recomendables), no son obligatorias. Siempre podemos decidir no aplicarlas. Aunque si no lo hacemos, hay que ser conscientes de la razn de no aplicarlas y de sus consecuencias.
Los patrones de diseo nos ayudan a cumplir muchos de estos principios o reglas de diseo. Programacin SOLID, control de cohesin y acoplamiento o reutilizacin de cdigo son algunos de los beneficios que podemos conseguir al utilizar patrones.
Cuntos patrones de diseo existen? Tengo qu conocerlos todos?
Patrones de diseo hay muchos. Muchsimos. Y siguen apareciendo patrones nuevos cada poco tiempo. El desarrollo de aplicaciones es una disciplina en constante cambio. Por tanto los problemas a los que nos enfrentamos los desarrolladores tambin cambian. As que las herramientas utilizadas, tambin se van actualizando y mejorando.
Es imposible conocer todos los patrones de diseo. Lo ms til es tener un catlogo de patrones que podamos consultar. A la hora de desarrollar una aplicacin, podremos consultar nuestro catlogo buscando patrones que nos ayuden a solucionar problemas de diseo concretos.
Qu tipos de patrones existen?
Existen diversas maneras de agrupar los patrones de diseo. Quiz la ms extendida es agruparlos segn su propsito. En este caso tendramos las siguientes categoras:
Patrones creacionales: utilizados para instanciar objetos, y as separar la implementacin del cliente de la de los objetos que se utilizan. Con ellos intentamos separar la lgica de creacin de objetos y encapsularla.
Patrones de comportamiento: se utilizan a la hora de definir como las clases y objetos interaccionan entre ellos.
Patrones estructurales: utilizados para crear clases u objetos que incluidos dentro de estructuras ms complejas.
Puedo desarrollar nuevos patrones?
Como ya he dicho antes, cada poco tiempo aparecen nuevos patrones o revisiones de los ya existentes. Es algo lgico si tenemos en cuenta que nuestra forma de programar est evolucionando continuamente. Nuevos frameworks, nuevas plataformas, nuevos tipos de acceso a datos etc.
Por tanto, es factible que cualquiera pueda "descubrir" un nuevo patrn. Lgicamente el supuesto patrn deber ser puesto a prueba por la comunidad de desarrolladores. Para ello deber demostrar que es nuevo, que es correcto y que es til para solucionar problemas comunes de desarrollo. Un patrn no ser tal si solo sirve para solucionar un problema especfico de nuestra aplicacin.
Conclusin
Los patrones de diseo describen la solucin a problemas que se
repiten una y otra vez en nuestros sistemas, de forma que se puede
usar esa solucin siempre que haga falta. Capturan el conocimiento que
tienen los expertos a la hora de disear. Ayudan a generar software
maleable (software que soporta y facilita el cambio, la reutilizacin y la
mejora). Son guas de diseo, no reglas rigurosas.
En este artculo he realizado un pequeo resumen de los principales
patrones de diseo y de algn otro que me ha parecido interesante. En
los siguientes artculos explicar ms en profundidad cada uno de estos
patrones. Si echis en falta alguno o hay alguno que no entendis bien,
no dudis en dejar vuestro comentario.
BIBLIOGRAFIA
http://www.genbetadev.com/metodologias-de-programacion/patrones-
de-diseno-que-son-y-por-que-debes-usarlos
http://arco.esi.uclm.es/~david.villa/pensar_en_C++/vol2/C10.html