¿Cuándo debería aprender design patterns?

Lo mas tarde que puedas.

Explico por qué en el siguiente artículo

Muchos patterns son soluciones a los problemas que los mismos lenguajes crearon.

Tal vez al momento en que tengas que solucionarlos hayan cambiado ciertas sintaxis de lenguajes o ciertos lenguajes al grado que el problema que el pattern resuelve ya no exista más.

Los design patterns en si mismos fomentan una elite de conocimiento que se torna dogmatica cuando las tecnologías cambian y los que se acostumbraron a ellos quieren seguir aplicandolos para amortizar el tiempo que perdieron aprendiendolos.

La diferencia entre resolver y problema y aplicar un pattern es nada más que a alguien se le ocurrió ponerle un nombre al problema para poder vender un libro. Si no te dedicas a vender libros tal vez no te traigan tantas ventajas conocer los patterns.

Mas bien … trata de aprender a

– identificar los problemas

  • aprender a buscar la solucion

Es cierto que hay unos pocos que se tornan comunes y se aplican.

Pero mucho de lo que se aprendió de design patterns para la era monolítica no eran aplicables para los sistemas distribuidos.. y ahora los microservicios crearon nuevos problemas que hacen que los patterns de diseño previos en muchos casos sean obsoletos.

Mas bien la tendencia hoy se «sell first, fix later» . No podemos detenernos en tecnicismos cuando tenemos que hacer la campaña para la próxima navidad. Si por aplicar y «discutir» los patterns la entregamos el 26 de diciembre la campaña será un fracaso.

Hoy muchos de los cuidados que se tenian cuando se diseñaba una arquitectura se movieron a la nube y son resueltos por proveedores como Google Cloud, AWS o Azzure.

Asi que si tienes un conjunto de amigos nerds… y quieres entrar en el grupo y que te acepten… mientras critican a los que saben bailar…. cualquier momento es bueno para aprender design patterns… porque igual nunca necesitaras aplicarlos.

Si te gusta programar y hacer aplicaciones… solo dedicate a buscar los patterns cuando te encuentres ante un problema que te parezca complejo. y no te aprendas mas que el que necesitas.

Deja un comentario