ð ÂĄNos encantarÃa saber tu opiniÃģn! ð Tus ideas son valiosas: ÂŋQuÃĐ temas o contenidos te gustarÃa que explorÃĄramos? ÂĄComparte tus sugerencias! Tu voz cuenta: ÂŋQuÃĐ te ha parecido este vÃdeo? DÃĐjanos tu opiniÃģn y conversemos. ð Sigue aprendiendo con nosotros: ð Explora nuestras series especializadas para profundizar en tus temas favoritos: ðĨ JavaScript Bites: Descubre trucos y consejos prÃĄcticos th-cam.com/video/eemazs4qfac/w-d-xo.html ð Angular Bites: Aprende Angular desde cero hasta avanzado th-cam.com/video/ibTe8VR7hMk/w-d-xo.html ðĄ IngenierÃa del Software: Mejora tus habilidades en ingenierÃa de software th-cam.com/video/d1EVlXoWKbw/w-d-xo.html ð§Đ Patrones de DiseÃąo: Domina los patrones de diseÃąo con ejemplos prÃĄcticos th-cam.com/video/eemazs4qfac/w-d-xo.html ð SuscrÃbete y activa la campanita para no perderte ningÚn contenido nuevo. ÂĄTu apoyo es esencial para nosotros!
Buen dÃa, tremendo video y explicaciÃģn, gracias por este tipo de contenido. Tengo una duda en la parte del CLIENTE, el cual en cualquier momento tendrÃa que afectarse si se agregase un nuevo producto, rompiendo el principio OPEN-CLOUSE, sÃĐ que con la estructura de FONDO queda perfecto todo, pero en esta parte del cliente que se haga ya sea desde Consola o Grafica se tendrÃa que tener una sentencia SWITCH para crear la instancia CONCRETA del producto, podrÃa alguien ILUMINARME en esta parte?, muchas gracias.
En esta parte tienes que tener una acciÃģn que dispare la creaciÃģn. PodrÃa ser totalmente declarativo, por ejemplo en una interfaz grÃĄfica tendrÃas botones que seleccionan en concreto que necesitas y podrÃas inferir la selecciÃģn de creaciÃģn. Si procediera de otro sistema, se deberÃa pensar el problema concreto y se podrÃa inferir la decisiÃģn a travÃĐs de una estrategia concreta seleccionada por otro sistema.
La verdad no me quedo claro que creator elegir, entiendo que en el ejemplo que das decis con una terminal o una aplicacion grafica y me hace mucho sentido, pero en el caso que levantes los datos desde una BD no se me ocurre otra opcion que aplicar un simple factory aunque eso me lleve a romper el principio de OCP
Hola @leow375 gracias por comentar, Creo que el problema no estÃĄ en el patrÃģn factory-method, sino en el switch de selecciÃģn de la operaciÃģn a realizar, el desconocimiento de la operaciÃģn a priori nos hace tener un switch o una serie de if-else para determinar quÃĐ Creator concreto usar, y ahà es donde rompemos el OCP. No obstante, tenemos algunas maneras de evitar atarnos al switch (habrÃa que tener cÃģdigo y problema concreto y ver todo el conjunto de la aplicaciÃģn) pero podrÃamos intentar aplicar algunas de estas tÃĐcnicas: 1. Crear un mapa/diccionario de Creators. De esta manera tendrÃamos un mapa donde la clave podrÃa ser un tipo de registro (por ejemplo userType) y el valor es una instancia del Creator concreto correspondiente. 2. Puedes usar reflexiÃģn/introspecciÃģn para instanciar el Creator correcto (creo que esto serÃa lo mÃĄs fÃĄcil a priori para solucionar el problema). No obstante, si este mismo problema que planteas te aparece en otros patrones o circunstancias no es un problema de usar ese patrÃģn concreto, sino de una etapa previa de "interacciÃģn con el usuario del sistema" que en este caso serÃa la base de datos. Un saludo y muchas gracias !
ð ÂĄNos encantarÃa saber tu opiniÃģn! ð
Tus ideas son valiosas: ÂŋQuÃĐ temas o contenidos te gustarÃa que explorÃĄramos? ÂĄComparte tus sugerencias!
Tu voz cuenta: ÂŋQuÃĐ te ha parecido este vÃdeo? DÃĐjanos tu opiniÃģn y conversemos.
ð Sigue aprendiendo con nosotros: ð
Explora nuestras series especializadas para profundizar en tus temas favoritos:
ðĨ JavaScript Bites: Descubre trucos y consejos prÃĄcticos th-cam.com/video/eemazs4qfac/w-d-xo.html
ð Angular Bites: Aprende Angular desde cero hasta avanzado th-cam.com/video/ibTe8VR7hMk/w-d-xo.html
ðĄ IngenierÃa del Software: Mejora tus habilidades en ingenierÃa de software th-cam.com/video/d1EVlXoWKbw/w-d-xo.html
ð§Đ Patrones de DiseÃąo: Domina los patrones de diseÃąo con ejemplos prÃĄcticos th-cam.com/video/eemazs4qfac/w-d-xo.html
ð SuscrÃbete y activa la campanita para no perderte ningÚn contenido nuevo. ÂĄTu apoyo es esencial para nosotros!
Gracias por el vÃdeo Carlos!
Gracias a ti por comentar! Nos seguimos viendo en mÃĄs vÃdeos, esperando que sean Útiles a la comunidad ðŠðŠ
Que buen video. Me lo apuntoð..Esperando el siguiente..
Gracias Carmen! Pues el siguiente serÃĄ un poco mÃĄs prÃĄctico y, posteriormente continuaremos con los patrones creacionales ðŠ
Gran vÃdeo! Gracias por vuestro contenido! Siempre de 10!
Gracias! Nos vemos en el prÃģximo ðŠðŠ
Gran video y gran aporte ðŠ esperando ya el siguiente vÃdeo!
Gracias por el comentario, ya estamos trabajando en el siguiente video! ðŠ
Genial como siempre. Muchas gracias por compartirðĪĐ
Muchas Gracias @drojom por estar ahÃ, esperamos seguir creando mÃĄs contenido para compartirlo con todos!
Buen dÃa, tremendo video y explicaciÃģn, gracias por este tipo de contenido. Tengo una duda en la parte del CLIENTE, el cual en cualquier momento tendrÃa que afectarse si se agregase un nuevo producto, rompiendo el principio OPEN-CLOUSE, sÃĐ que con la estructura de FONDO queda perfecto todo, pero en esta parte del cliente que se haga ya sea desde Consola o Grafica se tendrÃa que tener una sentencia SWITCH para crear la instancia CONCRETA del producto, podrÃa alguien ILUMINARME en esta parte?, muchas gracias.
En esta parte tienes que tener una acciÃģn que dispare la creaciÃģn. PodrÃa ser totalmente declarativo, por ejemplo en una interfaz grÃĄfica tendrÃas botones que seleccionan en concreto que necesitas y podrÃas inferir la selecciÃģn de creaciÃģn. Si procediera de otro sistema, se deberÃa pensar el problema concreto y se podrÃa inferir la decisiÃģn a travÃĐs de una estrategia concreta seleccionada por otro sistema.
La verdad no me quedo claro que creator elegir, entiendo que en el ejemplo que das decis con una terminal o una aplicacion grafica y me hace mucho sentido, pero en el caso que levantes los datos desde una BD no se me ocurre otra opcion que aplicar un simple factory aunque eso me lleve a romper el principio de OCP
Hola @leow375 gracias por comentar,
Creo que el problema no estÃĄ en el patrÃģn factory-method, sino en el switch de selecciÃģn de la operaciÃģn a realizar, el desconocimiento de la operaciÃģn a priori nos hace tener un switch o una serie de if-else para determinar quÃĐ Creator concreto usar, y ahà es donde rompemos el OCP. No obstante, tenemos algunas maneras de evitar atarnos al switch (habrÃa que tener cÃģdigo y problema concreto y ver todo el conjunto de la aplicaciÃģn) pero podrÃamos intentar aplicar algunas de estas tÃĐcnicas:
1. Crear un mapa/diccionario de Creators. De esta manera tendrÃamos un mapa donde la clave podrÃa ser un tipo de registro (por ejemplo userType) y el valor es una instancia del Creator concreto correspondiente.
2. Puedes usar reflexiÃģn/introspecciÃģn para instanciar el Creator correcto (creo que esto serÃa lo mÃĄs fÃĄcil a priori para solucionar el problema).
No obstante, si este mismo problema que planteas te aparece en otros patrones o circunstancias no es un problema de usar ese patrÃģn concreto, sino de una etapa previa de "interacciÃģn con el usuario del sistema" que en este caso serÃa la base de datos.
Un saludo y muchas gracias !