static void Main(string[] args) { // В клиентском коде могут быть уже созданы некоторые объекты // подсистемы. В этом случае может оказаться целесообразным // инициализировать Фасад с этими объектами вместо того, чтобы // позволить Фасаду создавать новые экземпляры. CourierSubsystem subsystem1 = new CourierSubsystem(); PackingSubsystem subsystem2 = new PackingSubsystem(); PayingSubsystem subsystem3 = new PayingSubsystem(); PostOffice facade = new PostOffice(subsystem1, subsystem2, subsystem3); Client.ClientCode(facade); }
public PostOffice(CourierSubsystem subsystem1, PackingSubsystem subsystem2, PayingSubsystem subsystem3) { this._subsystem1 = subsystem1; this._subsystem2 = subsystem2; this._subsystem3 = subsystem3; }