3. Tabla de contenidos
01. Patrones de Diseño
02. Historia de los patrones
03. Ventajas de los patrones
04. Crítica de los patrones
05. Clasificación
06. Catálogo de patrones
4. PATRONES de DISEÑO
Los patrones de diseño (design patterns) son soluciones
habituales a problemas comunes en el diseño de
software. Cada patrón es como un plano que se
puede personalizar para resolver un problema de
diseño particular de tu código.
5. No se puede elegir un patrón y
copiarlo en el programa como si se
tratara de funciones o bibliotecas ya
preparadas. El patrón no es una
porción específica de código, sino un
concepto general para resolver un
problema particular. Puedes seguir
los detalles del patrón e implementar
una solución que encaje con las
realidades de tu propio programa.
6. Historia de los patrones
¿Quién inventó los patrones y cuándo?
¿Se pueden utilizar los patrones fuera del
desarrollo de software?
7. Ventajas de los patrones
Los patrones son un juego de herramientas
que brindan soluciones a problemas
habituales en el diseño de software.
Definen un lenguaje común que ayuda a tu
equipo a comunicarse con más eficiencia.
8. Crítica de los patrones
¿Son tan buenos los patrones como se dice?
¿Es siempre posible utilizarlos?
¿Pueden los patrones ser dañinos en alguna ocasión?
9. Clasificación
Los patrones de diseño varían en su complejidad,
nivel de detalle y escala de aplicabilidad.
Además, pueden clasificarse por su
propósito y dividirse en tres grupos.
10. Patrones Creacionales
Proporcionan mecanismos de
creación de objetos que
incrementan la flexibilidad y la
reutilización de código
existente.
Patrones Estructurales
Explican cómo ensamblar
objetos y clases en estructuras
más grandes a la vez que se
mantiene la flexibilidad y
eficiencia de la estructura.
Patrones de
Comportamiento
Se encargan de una
comunicación efectiva y la
asignación de
responsabilidades entre
objetos.
Clasificación
de los
patrones
Los patrones de diseño varían en su
complejidad, nivel de detalle y escala
de aplicabilidad al sistema completo
que se diseña.
13. Patrón Singleton
Ejemplo typescript
Singleton es un patrón de diseño
creacional que nos permite
asegurarnos de que una clase
tenga una única instancia, a la vez
que proporciona un punto de
acceso global a dicha instancia.
14. Patrón Builder
Ejemplo typescript
Builder es un patrón de diseño
creacional que nos permite
construir objetos complejos paso a
paso. El patrón nos permite
producir distintos tipos y
representaciones de un objeto
empleando el mismo código de
construcción.
17. Patrón Proxy
Ejemplo typescript
Proxy es un patrón de diseño
estructural que te permite
proporcionar un sustituto o
marcador de posición para otro
objeto. Un proxy controla el acceso
al objeto original, permitiéndote
hacer algo antes o después de que
la solicitud llegue al objeto original.
19. Patrón Observer
Ejemplo typescript
Observer es un patrón de diseño de
comportamiento que te permite
definir un mecanismo de suscripción
para notificar a varios objetos sobre
cualquier evento que le suceda al
objeto que están observando.
20. M E J O R A M O S L A V I D A D E L A G E N T E
T R A N S F O R M A N D O E M P R E S A S
Referencias
https://refactoring.guru
https://docs.google.com/document/d/19EVDBe73tL3N30m-N3
zdH6zLjRfcnT0dh118sMgvKkU/edit#
https://github.com/hammer92/design-patterns-typescript