Bien, continuamos.
Ahora vamos a crear nuestra clase APTRA Factory.
Le vamos a llamar Pizzería Zona Hattrick Factory.
Una clase abstracta podría ser una pizzería Nueva York.
Como explicaba la clase anterior, una pizzería NÃpoles en Los Ángeles.
En fin, vamos a hacer esta clase.
No va a ser A Factory Nío Yaba Class.
Le vamos a llamar Pizzería Zona Abstract Factory y Letra Factory.
Bueno, sería opcional, pero es para indicar de que se trata de una factoría abstracta.
Bien, como siempre, abstracto.
Por acá comenzamos.
Bueno, en realidad son dos métodos.
Uno concreto para el caso de la pizzería.
Ordenar pizza y un método abstracto crea la pizza.
El método crear la pizza tiene que ser abstracto porque eso va a depender de cada zona.
Casona va a crear sus propias pizzas, su propia familia de producto de pizza con sus ingredientes en
particular.
Bien, entonces primero publi.
Comenzamos primero con ordenar la pizza.
Va a devolver una pizza.
Bien.
Me has dado cuenta de que la clase anterior puse pizza producto con una Z acá pizza producto.
Vamos a renombrar para que quede mejor.
Entonces refractor reunÃan pizza listo a s.
Con todos los Zeta continuamos.
Entonces devuelve una PISA producto.
Recuerden del tipo abstracto acá pisa producto del tipo más genérico ordenar pisa
estric y el tipo el tipo PISA, por ejemplo, si es vegetariana o peperoni, o todas las carnes o cuatro
queso italiana.
Pisa producto, pisa igual y tenemos que crear de alguna forma, pero para eso, para crear esta pieza,
instanciar la vamos a tener acá, un método abstracto que tenemos que crear.
Entonces este método alojamos en el Tanvi acá abstracto va a devolver pieza producto, crear pisÃ y
por supuesto con un string estrellen y el tipo.
Ahora, si invocamos este método acá, crear pisÃ se fijan completamente abstracto.
Acá pasamos tipo completamente genérico.
Entonces el primero va a depender de la zona del lugar o de la fábrica concreta y luego del tipo de
PISA con sus ingredientes.
Por eso colocamos tipo acá.
Bien, ya que comenzamos, primero vamos a imprimir Shout, por ejemplo, fabricando la pisÃ.
Acá podríamos imprimir el nombre, pero creo que no le pusimos el nombre.
A ver, pisÃ.
Punto.
Nombre?
Bueno, acá no podemos acceder porque protected ya estamos dentro del mismo paquete.
Se fijan, pero si tuviéramos un paquete distinto no lo podríamos acceder de otra forma para el nombre,
ya que lo vas a ocupar afuera.
Es mejor tener el metodo yeta.
Entonces, por acá vamos a implementar solamente Liggett Generate.
Getter de nombre nada más que íbamos a utilizar por ahora tonce pisa.
Nombre qué mejor voy a bajar.
Bien, ahí tenemos.
Continuamos pisa.
Punto.
Bueno.
Cuáles son los métodos?
En orden.
Primero preparar, preparar la mesa.
Luego tenemos que punto cocinar.
La cocinamos.
Luego la tenemos que cortar.
C-creo.
Cortas.
Finalmente.
Punto.
Empaquetarlo y faltaría devolver la pizza.
La pizza lista al cliente para consumir.
Bueno, por supuesto, nuestro cliente va a hacer la clase con el método main que le va a ordenar.
La va a requerir.
Se fijan entonces ahora según la zona.
Vamos a ayudar de esta clase abstracta.
Vamos a tener una zona concreta, un factory o fábrica concreta para ordenar su pizza o sus pizza según
su tipo.
Vamos a preparar, cocinar, cortar, empaquetar.
Recuerden que acá tenemos un método preparar, cocinar, cortar.
Ambos métodos abstracto.
Cada pizza concreta la implementa en su forma empaquetar.
Y listo, ya tenemos nuestra fábrica abstracta Pizzería Zona Atrá Factory.
Ahora tenemos que crear nuestras fábricas concretas, que serían tapicerías.
Recuerden, pillerías son las fábricas y el producto es la pizza.
Vamos a crear entonces acá.
Una fábrica para Nueva York.
Entonces Pizzería New York
Factory, una fábrica concreta.
Extends Bueno, tenemos que crear de cual de Abstract Factory Pizzería Zona Atràs Factory que tengo
que implementar métodos el método abstracto uno solo crear la pizza.
Defecan.
Entonces acá vamos a tener una forma para crear los distintos tipos de pizza de esta pizzería.
Por ahora lo dejamos en Nul por ahora, porque todavía no tenemos ninguna pizza concreta.
Entonces, por ahora no podemos crear ninguna pizza.
Pero bueno, vamos a crear esta pizza concreta.
Nos vamos a ir a Factory, incluso en Factory.
Podríamos colocar acá.
Champagnat para que ordenado le vamos a llamar PISA o producto producto mejón OK, llega en producto
vamos a tener nues tro PISA concreta nuestro producto concreto.
Entonces por aca llévatelas la primera cería pisa Nueva York vegetariana.
Pero recuerden, es un producto concreto.
Stents de donde rha bueno, de pisa.
Producto de esta clase tracta una implementación concreta de un producto de una pisa pisa producto.
Acá tengo que inventar dos métodos, por lo menos.
El cocinar.
Y también había otro más.
Vamos a ver, a ver.
Por acá tenemos el método Autre publi, cortás public faltó público, hoy faltó acá el public, a ese
entonces volvemos.
Y ahora si implementa el método cortar los extremos, las dos, cocinar y cortar.
Pero antes vamos a tener un constructor por acá para inicializar los datos de Tapiza con su ingrediente,
con su nombre S, con toda su información.
Entonces vamos a crear acá un constructor generate constructor.
Recuerden que heredamos de pieza a producto, pero episo de producto también tiene constructor acá que
inicializa el ArrayList es importante.
Entonces acá estamos obligado al súper inicializar el constructor del padre para tener la lista de ingredientes.
Bueno, lo primero nombre Pizza Vegetariana Nueva York
y ahí tenemos el nombre.
Acá lo estamos analizando dentro constructor porque es un nombre propio de Tapiza, aunque también se
podría implementar afuera con un método Z.
Es decir, fuera de esta clase y pasar como argumento viene todo.
Pero la idea de este patrón es que los productos estén parametrizar ados en esta fábrica de objeto para
que esté un poco más empaquetado dentro de la clase como un producto final.
Vamos a implementar en el constructor nombre que más.
La masa
masa integral no se gana una masa propia de esta pieza vegetariana de Nueva York.
Qué más?
Salsa
Salsa tomate ingredientes ingredientes punto AB.
Por ejemplo queso vegano
ingredientes
tomate.
Aceitunas.
Espinacas,
berenjenas y listo.
Hoy tenemos el constructor con los datos propio acá Shout cocinando por 25 minutos a 150 grados.
Y cortar Soto cortándola, pisÃ
en rebanada cuadradas.
Ahí tenemos la pizza vegetariana Nueva York.
Podríamos crear otra más en producto.
12 Naidu Llévatelas, te vamos a llamar Pisa Nueva York peperoni,
peperoni, stents, lo mismo de rdad de pisa producto con ambos métodos Atrato ok.
El constructor.
Con el súper importante no olvidarse el súper para inicializar el ingrediente nombre HiguaÃn pizza pepperoni,
Nueva York
más algaba la piedra salsa salsa de tomate.
Ingredientes que somos a.La
creo que con doble l s extra pepperoni,
aceitunas
ven, nos vamos a cocinar shout
40 minutos a por ejemplo 90 grados cortar
cortando la pizza en triángulos.
Y está lista.
Vamos por la pista New York italiana.
Implementamos los métodos.
Okay.
Shout
cortar.
Cortando la pieza en triángulos, grandes triángulos, bien te faltaría el constructor por acá.
Entonces con que derecho nos vamos a constructor?
Super
pizza italiana.
No hay masa.
Masa gruesa, por ejemplo salsa
con carne
que somos Narela.
Otro ingrediente aceitunas.
Jamón.
Yo, Luisillo
y por último champiñones, estamos listo.
Ahora qué faltaría.
Ya tenemos las tres, pisÃ concreta los productos.
Nos vamos a ir al piso Nueva York Fábrica y acá la tenemos que implementar.
Acá la vamos a crear.
Podríamos usar un if preguntar según el tipo y de acuerdo al tipo, retornamos las instancias.
Vamos viendo.
Incluso podríamos usar un switch keys.
Se guardan entonces por acá.
Un switch tipo
viene y comenzamos.
Según el caso.
Según el caso qué es?
Vamos a colocar vegetariana.
2 punto.
Bajamos y acá tenemos que asignar un valor.
Vamos a necesitar acá una variable del tipo pieza producto producto de igual null.
Perfecto.
Acá devolvemos producto.
Perfecto.
Entonces se queda en vegetariana.
Producto es igual a New Lleca.
Bueno sería la pisÃ.
No hay error vegetariana cream alentarse se fijan bratt caso 2 si es peperoni perfecto.
Lo mismo producto igual niu pisÃ Nueva York Peperoni está acá.
Hacemos el break es otro más italiana
producto que igual Niu Pisano York italiana por acá la tenemos Bratt y listo.
Ahí está implementado.
De acuerdo, el tipo va a crear la instancia y también de acuerdo a la fábrica concreta.
Acá tenemos solamente Pisidia ayer Factory, pero también podemos tener Pizzería Nápoles de Italia o
de los Angèle.
Es decir, disten tapicería y cada una con su propia fábrica y sus propios productos.
Bueno, eso por ahora.
Y continuamos la siguiente clase con otra fábrica concreta, por ejemplo una pizzería Puese de Los Angeles
o de Nápoles.
Ahí vamos a ver.
Nos vemos en la siguiente clase.