Los patrones de diseño son técnicas las cuales nos resolverán problemas en especifico.
Estas técnicas están basadas en el paradigma de programación orientado a objetos, haciendo uso de herencia e implementación de interfaces.
Hay dudas sobre si los patrones de diseño pueden utilizarse en otro paradigma, por ejemplo la programación funcional.
En el siguiente video te muestro la equivalencia de prácticas de patrones de diseño en programación funcional.