*   >> Leitura Educação Artigos >> science >> programação

Abstract Factory Design Pattern

ra o receptor do objeto criado apenas pela interface que o objeto, não de uma aplicação concreta real do objeto. 4. Os diferentes tipos de objetos que a fábrica pode produzir resumo estão relacionados, eles são de uma família comum. 5. Uma fábrica abstrata isola classes concretas. 6. Faz fácil trocar famílias de produtos. 7. Ela promove a consistência entre os produtos. 8.

Suporta a adição de novos tipos de produtos e sua familiesExample: interface pública IComputerFactory {ICPU createCPU (); IMemory createMemory ();} {interface pública ICPU GetCPUString string ();} {interface pública IMemory GetMemoryString string ();} //Betão CPUA classe CPUApublic: ICPU {GetCPUString cadeia pública () {return "CPUA"; }} //Classe MemoryApublic Betão MemoryA: IMemory {GetMemoryString cadeia pública () {return "MemoryA"; }} classe pública ComputerFactoryA: IComputerFactory {createCPU ICPU pública () {return new CPUA (); } Public IMemory createMemory () {return new MemoryA (); }} Cliente classe pública {//este é um método de modelo; não depende da Fábrica de Concreto //ea corda estática classes concretas público BuildComputer (fábrica IComputerFactory) {cpu ICPU = factory.

createCPU (); Memória IMemory = factory.createMemory (); StringBuilder sb = new StringBuilder (); sb.Append (string.Format ("CPU: {0}", cpu.GetCPUString ())); sb.Append (Environment.NewLine); sb.Append (string.Format ("Memory: {0}", memory.GetMemoryString ())); retornar sb.ToString ();}} Chamando Clientprivate anular button2_Click (object sender, EventArgs e) {fábrica Abstract_Factory.IComputerFactory = new Abstract_Factory.ComputerFactoryA();MessageBox.Show(Abstract_Factory.Client.BuildComputer(factory));}

Page   <<  [1] [2] 
Copyright © 2008 - 2016 Leitura Educação Artigos,https://artigos.nmjjxx.com All rights reserved.