Sobes.tech
Middle

Nimetage loovmustrid.

sobes.tech AI

Vastus AI-lt

  • Töötuba meetod (Factory Method): Määrab liidese objektide loomise jaoks, kuid lubab alamklassidel otsustada, millist klassi instantsi luua.
    // Tootja liides
    class Creator {
        factoryMethod() {
            throw new Error("Meetod peab olema alamsuhtes rakendatud");
        }
    
        anOperation() {
            const product = this.factoryMethod();
            return `Looja: sama loogika, mis just töötas koos ${product.operation()}`;
        }
    }
    
    // Konkreetne looja, mis loob ProductA
    class ConcreteCreatorA extends Creator {
        factoryMethod() {
            return new ConcreteProductA();
        }
    }
    
    // Toote liides
    class Product {
        operation() {
            throw new Error("Meetod peab olema alamsuhtes rakendatud");
        }
    }
    
    // Konkreetne toode, mille loob ConcreteCreatorA
    class ConcreteProductA extends Product {
        operation() {
            return "ConcreteProductA tulemus";
        }
    }
    
    // Kasutamine
    const creator = new ConcreteCreatorA();
    console.log(creator.anOperation());