예제 #1
0
파일: Program.cs 프로젝트: alisherKAK/DP
        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);
        }
예제 #2
0
파일: Program.cs 프로젝트: alisherKAK/DP
 // Клиентский код работает со сложными подсистемами через простой
 // интерфейс, предоставляемый Фасадом. Когда фасад управляет жизненным
 // циклом подсистемы, клиент может даже не знать о существовании
 // подсистемы. Такой подход позволяет держать сложность под контролем.
 public static void ClientCode(PostOffice facade)
 {
     Console.Write(facade.SendParcel());
 }