Csharp/C Sharp/Design Patterns/Facade Pattern
Версия от 15:31, 26 мая 2010; (обсуждение)
Facade Pattern Demo
using System;
public class PizzaDelivery {
public void GetDeliveryStuff() {
Console.WriteLine("Pizza Delivery stuff.");
}
public PizzaDelivery() {}
}
public class PizzaFinance {
public void GetPizzaFinanceStuff() {
Console.WriteLine("Pizza Finance stuff.");
}
public PizzaFinance() { }
}
public class PizzaInsurance {
public void GetPizzaInsuranceStuff() {
Console.WriteLine("Pizza Insurance stuff.");
}
public PizzaInsurance() {}
}
public class PizzaOrder {
public void GetPizzaOrderStuff() {
Console.WriteLine("Pizza Order stuff.");
}
public PizzaOrder() { }
}
public class PizzaRegistration {
public void GetPizzaRegistrationStuff() {
Console.WriteLine("Pizza Registration stuff.");
}
public PizzaRegistration() {}
}
public class PizzaCooking {
public void GetPizzaServiceStuff() {
Console.WriteLine("Pizza Service stuff.");
}
public PizzaCooking() { }
}
public class DealerRepresentative {
private PizzaDelivery delivery;
private PizzaFinance finance;
private PizzaInsurance insurance;
private PizzaOrder order;
private PizzaRegistration registration;
private PizzaCooking service;
public void GetPizzaUpdate() {
this.delivery.GetDeliveryStuff();
this.finance.GetPizzaFinanceStuff();
this.insurance.GetPizzaInsuranceStuff();
this.order.GetPizzaOrderStuff();
this.registration.GetPizzaRegistrationStuff();
this.service.GetPizzaServiceStuff();
}
public DealerRepresentative() {
delivery = new PizzaDelivery();
finance = new PizzaFinance();
insurance = new PizzaInsurance();
order = new PizzaOrder();
registration = new PizzaRegistration();
service = new PizzaCooking();
}
}
public class Client {
static void Main(string[] args) {
DealerRepresentative gopher = new DealerRepresentative();
gopher.GetPizzaUpdate();
}
}