*   >> Lectura Educación Artículos >> science >> programación

Abstract Design Factory Pattern

de producir más de un tipo de objeto. 3. Cada objeto que produce se sabe que el receptor del objeto creado únicamente por la interfaz de ese objeto, no por la aplicación concreta real del objeto. 4. Los diferentes tipos de objetos que la fábrica abstracta puede producir están relacionados con el son de una familia común. 5. Una fábrica abstracta aísla clases concretas. 6. Hace que el intercambio de familias de productos de fácil. 7. Promueve la consistencia entre los productos. 8.

Es compatible con la adición de nuevos tipos de productos y su familiesExample: interfaz pública IComputerFactory {Ucip createCPU (); IMemory createMemory ();} public interface Ucip {GetCPUString string ();} public interface IMemory {GetMemoryString string ();} //hormigón CPUA clase CPUApublic: Ucip {GetCPUString cadena pública () {return "CPUA"; }} //Clase MemoryApublic hormigón MemoryA: IMemory {GetMemoryString cadena pública () {return "MemoryA"; }} public class ComputerFactoryA: IComputerFactory {createCPU Ucip pública () {return nueva CPUA (); } Public IMemory createMemory () {return nueva MemoryA (); }} class Cliente público {//este es un método de plantilla; no depende de la fábrica de hormigón //y la cadena estática clases de hormigón pública BuildComputer (fábrica IComputerFactory) {cpu Ucip = factory.

createCPU (); Memoria IMemory = factory.createMemory (); StringBuilder sb = new StringBuilder (); sb.Append (string.Format ("CPU: {0}", cpu.GetCPUString ())); sb.Append (Environment.NewLine); sb.Append (string.Format ("Memoria: {0}", memory.GetMemoryString ())); volver sb.ToString ();}} Llamando 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 Lectura Educación Artículos,https://lectura.nmjjxx.com All rights reserved.