Que es un Patron
En pocas palabras en 1979 el arquitecto Christopher Alexander aporto un gran significado a este concepto: "Cada patrón describe un problema que ocurre infinidad de veces en nuestro entorno, así como la solución al mismo, de tal modo que podemos utilizar esta solución un millón de veces más adelante sin tener que volver a pensarla otra vez."
Que es un patrón de diseño
(design pattern)
Un Patrón de Diseño es una solución repetible a
un problema recurrente en el diseño de software.
Los patrones de diseño son la base para la búsqueda de soluciones a problemas comunes en el desarrollo de software y otros ámbitos referentes al diseño de interacción o interfaces.
Tipos de patrones
Segun el nivel de abstración basicamente existen los siguientes:
Patrones arquitectónicos
Centrados en la arquitectura del sistema.
Patrones de diseño
Esquemas para refinar los subsistemas o componentes de un sistema de software, o sus relaciones.
Patrones que ayudan a implementar aspectos particulares del diseño en un lenguaje de programación específico.
Patrones de diseño
Un libro clásico de la década de los 90 escrito por the “Gang of Four” describe a detalle un conjunto de 23 patrones de diseño.
Entre los mas conocidos tenemos:
Patrones creacionales
Abstraen el proceso de instanciación de
objetos, ayudando a que el sistema sea independiente de cómo se crean, componen y representan sus objetos.
Patrones estructurales
Se encargan de cómo se combinan clases y objetos parar formar estructuras más grandes.
Patrones de comportamiento
Tienen que ver con algoritmos y asignación de responsabilidades.
Estos patrones se focalizan en el flujo de control dentro de un sistema.
JavaScript Patterns Collection
Bibliografía recomendada
JavaScript Patterns Collection
http://shichuan.github.io/javascript-patterns/
Learning JavaScript Design Patterns
http://addyosmani.com/resources/essentialjsdesignpatterns/book/
Patrones arquitectónicos
Ejemplos de patrones arquitectónicos incluyen los siguientes:
- Programación por capas
- Tres niveles
- Pipeline
- Invocación implícita
- Arquitectura dirigida por eventos, Presentación-abstracción-control
- Peer-to-peer
- Arquitectura orientada a servicios
- Objetos desnudos
- M2M
- Datta Mapper
- Modelo Vista Controlador
Patrón de arquitectura Modelo Vista Controlador (MVC)
El patrón de arquitectura "modelo vista controlador", es una filosofía de diseño de aplicaciones, compuesta por:
Patrón de arquitectura Datta Mapper
Es el patrón que soporta Modelos de Dominios complejos y enormes. Son los famosos ORM (Object Relational Model), como Hibernate o Top Link, que transforman de forma transparente los objetos del dominio en tablas y entidades del mundo relacional de las bases de datos.
Bibliografía recomendada
Martin Fowler - Patterns of Enterprise Application Architecture
http://martinfowler.com/eaaCatalog/dataMapper.html
Copy of Patrones de diseño
By Eder Rafo Jose Pariona Espiñal
Copy of Patrones de diseño
- 1,661