Que són los Patrones de diseño del Software
En el mundo de la programación escuchamos bastante a menudo hablar sobre "Patrones de diseño" y la primera vez, las preguntas que nos hemos hecho todos son las mismas. ¿Qué son y para qué sirven?Podemos definir un patrón de diseño, como una base para la búsqueda de soluciones a problemas que encontramos comúnmente durante el desarrollo de software. Para que una solución sea considerada un patrón, debe haberse demostrado en otras ocasiones su efectividad y que esa misma solución es reutilizable para cualquier situación similar.
Podemos encontrar 3 tipos fundamentales de patrones: de creación, estructurales y de comportamiento, además de un cuarto tipo que utilizaremos para aplicaciones concurrentes. Paso a listar los patrones más conocidos.
En futuros posts, iré explicando los patrones uno por uno, con ejemplos de implementación y explicando cuando y porqué los utilizaremos. No lo hago en este post directamente porque se haría demasiado largo y pesado de leer, así que he preferido ir paso a paso y hacer primero una primera introducción.
Relación de Patrones:
- 1 Patrones de creación
- 1.1 Patrón Factory (Factoría)
- 1.2 Patrón Abstract Factory (Factoría Abstracta)
- 1.3 Patrón Builder (Constructor)
- 1.4 Patrón Singleton (Instancia
- Shallow copy
- Deep Copy
- 1.5 Patrón Prototype (Prototipo)
- 1.6 Patrón Lazy initialization
- 1.7 Patrón Multiton
- 1.8 Patrón Object Pool
- 2 Patrones estructurales
- 2.1 Patrón Adapter (Adaptador)
- 2.2 Patrón Bridge (Puente)
- 2.3 Patrón Composite (Composición)
- 2.4 Patrón Decorator (Decorador)
- 2.5 Patrón Facade (Fachada)
- 2.6 Patrón Front Controller
- 2.7 Patrón FlyWeight
- 2.8 Patrón Proxy
- 2.9 Patrón Module
- 3 Patrones de comportamiento
- 3.1 Patrón Blackboard
- 3.2 Patrón Chain of responsibility (Cadena de Responsabilidad)
- 3.3 Patrón Command (Comando)
- 3.4 Patrón Interpreter (Intérprete)
- 3.5 Patrón Iterator (Iterador)
- 3.6 Patrón Mediator (Mediador)
- 3.7 Patrón Memento (Recuerdo)
- 3.8 Patrón Null Object
- 3.9 Patrón Observer (Observador)
- 3.10 Patrón Servant
- 3.11 Patrón Specification
- 3.12 Patrón State (Estado)
- 3.13 Patrón Strategy (Estrategia)
- 3.14 Patrón Template (Plantilla)
- 3.15 Patrón Visitor (Visitante)
- 4 Patrones para aplicaciones concurrentes
- 4.1 Patrón Active Object
- 4.2 Patrón Balking
- 4.3 Patrón Binding properties
- 4.4 Patrón Messaging design pattern (MDP)
- 4.5 Patrón Double-checked locking
- 4.6 Patrón Event-based asynchronous
- 4.7 Patrón Guarded suspension
- 4.8 Patrón Lock
- 4.9 Patrón Monitor object
- 4.10 Patrón Reactor
- 4.11 Patrón Read-write lock
- 4.12 Patrón Scheduler
- 4.13 Patrón Thread pool
- 4.14 Patrón Thread-specific storage
- 4.15 Patrón Unit of Work
2 comentarios:
Hola, el articulo parece muy prometedor si hubiera link explicando cada patron. Algunos me suenan de nombre y sobre el resto me gustaria leer algo. Podrias subir al menos un link de cada uno con alguna explicacion ?
Hola. Este post era el primero de una serie que tenía pensado escribir, pero por falta de tiempo no he podido hacerlo.
Poco a poco lo iré completando explicando cada uno de los patrones.
Gracias por el comentario.
Publicar un comentario