No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

¿Qué sigue sobre patrones de diseño?

27/27
Recursos

Nombre del curso: Curso de Patrones de Diseño Creacionales en JavaScript

Dean: Sebastián Delmont

School Owner: Oscar Barajas

Profesor: Daniel Basulto

Dirección: Jeniffer Cruz y Juan David Castro

Producción OPS: Lizeth Cáceres y Rocío Martínez

Creación audiovisual: Candela Ocaranza

Edición de video: Diana Capote

Postproducción de audio: Santiago Guarín Suárez

Diseño gráfico: Romi Lavín y Amelia Amórtegui

Coordinación General: Andrés Arizmendy, Daniel Gutiérrez, Carol Baquero, Carlos Céspedes y Sura Cedeño

Revisión: Rodrigo Goitia y Belman Marin

Aportes 13

Preguntas 1

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

  • Dani: “Sé que el camino no ha sido sencillo”
  • Inmediatamente yo después de caer en cuenta que no estuvo nada fácil el curso:

Ya tenía rato que no tomaba un curso aquí en Platzi con tan buenos ejemplos y un excelente profesor.
PD: Todavia seguimos esperando los siguientes cursos de esta serie de Patrones de Diseño.

Excelente curso, en espera de los próximos dos como recomendación me gustaria que explicara mas ejemplos, si esta bien centrarse en uno para mantener el foco en el código por que no muestras otros casos de uso o en los mismos retos en vez de ser retos relacionados con el ejemplo dado por que no que los retos sean random sean otras situaciones y con eso no pensamos en extender lo que se explico sino en como lo puedo aplicar a esta situación,
Más cursos como este porfavor, en donde se explica con código y ejemplos claros el uso de patrones de diseño.
queremos más cursos de patrones jjj! Excelente curso

Excelente serie de cursos, me los recomendaron y fue un tip muy bueno.

A la espera de los siguientes cursos, y probablemente, le daré un repaso extra a estas clases para poder reafirmar mejor estos conocimientos.

Aprendí muchísimo, lo único es que me gustaría otro curso práctico, este tuvo buenos ejemplos pero me gustaría profundizar con ejemplos que pudieramos usar y asi continuar mejorando. FABULOSO es el profesor Daniel
```js class baseCar{ showCosts(){ throw new Error('method not implemented'); } } class ElectricCar extends baseCar{ showCosts(){ console.log('Costos de un coche eléctrico 150,000 us'); } } class HybridCar extends baseCar{ showCosts(){ console.log('Costos de un coche híbrido 30,000 us'); } } class Car extends baseCar{ showCosts(){ console.log('Costos de un coche convencional 25,000 us'); } } class factoryCar { makeCar(){ throw new Error('method not implemented'); } } class ElectricCarFactory extends factoryCar{ makeCar(){ return new ElectricCar(); } } class HybridCarFactory extends factoryCar{ makeCar(){ return new HybridCar(); } } class SingleCarFactory extends factoryCar{ makeCar(){ return new Car(); } } function appCarFactory(factory){ const car = factory.makeCar(); car.showCosts(); //... otros métodos y propiedades del coche } //appFactory(new HybridCarFactory()); //appFactory(new ElectricCarFactory()); //appFactory(new SingleCarFactory()); function CreateFactory(type){ const factories = { Electric: ElectricCarFactory, Hybrid: HybridCarFactory, Default: SingleCarFactory }; const Factory = factories[type]; return new Factory(); } appCarFactory(CreateFactory('Electric')); appCarFactory(CreateFactory('Hybrid')); appCarFactory(CreateFactory('Default' ```class baseCar{    showCosts(){    throw new Error('method not implemented');    }} class ElectricCar extends baseCar{    showCosts(){        console.log('Costos de un coche eléctrico 150,000 us');    }} class HybridCar extends baseCar{    showCosts(){        console.log('Costos de un coche híbrido 30,000 us');    }} class Car extends baseCar{    showCosts(){        console.log('Costos de un coche convencional 25,000 us');    }} class factoryCar {    makeCar(){        throw new Error('method not implemented');    }} class ElectricCarFactory extends factoryCar{    makeCar(){        return new ElectricCar();    }} class HybridCarFactory extends factoryCar{    makeCar(){        return new HybridCar();    }} class SingleCarFactory extends factoryCar{    makeCar(){        return new Car();    }} function appCarFactory(factory){    const car = factory.makeCar();    car.showCosts();    //... otros métodos y propiedades del coche} //appFactory(new HybridCarFactory());//appFactory(new ElectricCarFactory());//appFactory(new SingleCarFactory()); function CreateFactory(type){    const factories = {        Electric: ElectricCarFactory,        Hybrid: HybridCarFactory,        Default: SingleCarFactory    };     const Factory = factories\[type];     return new Factory();} appCarFactory(CreateFactory('Electric'));appCarFactory(CreateFactory('Hybrid'));appCarFactory(CreateFactory('Default'
```js class singletons{ static instance = undefined; //Atributo estático para almacenar el valor, llamado para la validación de getInstance() constructor(version){ this.version = version; } static getInstance(version){ //Si no existe el atributo instance... if(!singletons.instance){ singletons.instance = new singletons(version); //...lo crea. } return singletons.instance; } } function appSingletons(){ /*Todas las variables tienen la misma referencia al mismo objeto. 1 sola instancia a lo largo de la aplicación:*/ const singleton1 = singletons.getInstance('singletons-v1'); const singleton2 = singletons.getInstance('singletons-v2'); const singleton3 = singletons.getInstance('singletons-v3'); console.log(singleton1 === singleton2); console.log(singleton1 === singleton3); } appSingletons(); ```class singletons{    static instance = undefined;    //Atributo estático para almacenar el valor, llamado para la validación de getInstance()     constructor(version){        this.version = version;    }     static getInstance(version){           //Si no existe el atributo instance...        if(!singletons.instance){            singletons.instance = new singletons(version); //...lo crea.         }        return singletons.instance;    }} function appSingletons(){      /\*Todas las variables tienen la misma referencia al mismo objeto. 1 sola instancia       a lo largo de la aplicación:\*/    const singleton1 = singletons.getInstance('singletons-v1');    const singleton2 = singletons.getInstance('singletons-v2');    const singleton3 = singletons.getInstance('singletons-v3');       console.log(singleton1 === singleton2);      console.log(singleton1 === singleton3);} appSingletons();
Bien el curso! Seria genial tambien en C# comparando con JAVA :-)
![](https://static.platzi.com/media/user_upload/image-19170e4a-8838-415c-a04e-8b33f53a88cf.jpg)

Excelente curso! 😄
Fueron temas muy interesantes y el contraste con TS ha sido increíble.
.
Espero con entusiasmo la continuación. Hasta una próxima ocasión 👋.

Esperando a los próximos cursos, espero sobre todo a los observer.