static void Main(string[] args)
        {
            TanqueInimigo RX2018 = new TanqueInimigo();
            RoboInimigo   R2D2   = new RoboInimigo();

            // Processo de adaptação
            IAtaqueInimigo roboAdapter = new RoboInimigoAdaptador(R2D2);

            Console.WriteLine(" === ROBO === ");
            R2D2.ReagirContraHumano("Rodrigo");
            R2D2.AndarFrente();
            R2D2.EsmagarComMaos();

            Console.WriteLine(" === TANQUE === ");
            RX2018.Pilotar("João");
            RX2018.Movimenta();
            RX2018.ArmaFogo();

            // O Robo adaptado tem os mesmos metodos do tanque, porem os resultados são iguais os do Robo
            Console.WriteLine(" === ROBO ADAPTADO === ");
            roboAdapter.Pilotar("José");
            roboAdapter.Movimenta();
            roboAdapter.ArmaFogo();

            Console.ReadKey();
        }
예제 #2
0
        static void Main(string[] args)
        {
            TanqueInimigo tanqueRx2021 = new TanqueInimigo();

            RoboInimigo r2d2 = new RoboInimigo();

            IAtaqueInimigo r2d2Adaptado = new RoboInimigoAdapter(r2d2);

            Console.WriteLine(" ===== ROBO ===== ");
            r2d2.ReagirContraHumano("Rodrigo");
            r2d2.AndarFrente();
            r2d2.EsgamarComMaos();

            Console.WriteLine("\n");

            Console.WriteLine(" ===== TANQUE ===== ");
            tanqueRx2021.Pilotar("João");
            tanqueRx2021.Movimenta();
            tanqueRx2021.ArmaFogo();

            Console.WriteLine("\n");

            Console.WriteLine(" ===== ROBO ADAPATDO ===== ");
            r2d2Adaptado.Pilotar("Maria");
            r2d2Adaptado.Movimenta();
            r2d2Adaptado.ArmaFogo();
        }
예제 #3
0
        static void Main(string[] args)
        {
            var rx2018 = new TanqueInimigo();
            var r2d2   = new RoboInimigo();

            var robo_adapter = new RoboInimigoAdapter(r2d2);
        }
        static void Main(string[] args)
        {
            TanqueInimigo tanque = new TanqueInimigo();
            RoboInimigo   robo   = new RoboInimigo();

            IAtaqueInimigo roboAdapter = new RoboInimigoAdapter(robo);

            Console.WriteLine(" ===== ROBO =====");
            robo.ReagirContraHumando("THIAGO NEVES");
            robo.AndarFrente();
            robo.EsmagarComMaos();

            Console.WriteLine(" ===== TANQUE =====");
            tanque.Pilotar("GERO");
            tanque.Movimenta();
            tanque.ArmaFogo();

            Console.WriteLine(" ===== ROBO ADAPTADO =====");
            roboAdapter.Pilotar("THIAGO NEVES ADAPTADO");
            roboAdapter.Movimenta();
            tanque.ArmaFogo();


            Console.ReadKey();
        }
예제 #5
0
        static void Main(string[] args)
        {
            TanqueInimigo tanque = new TanqueInimigo();
            RoboInimigo   robo   = new RoboInimigo();

            //passa o robo criado para o adaptador
            IAtaqueInimigo robo_adapter = new RoboInimigoAdapter(robo);

            Console.WriteLine("===ROBO===");
            robo.ReagirContraHumano("Humano");
            robo.Andar();
            robo.EsmagarComMaos();

            Console.WriteLine("===Tanque===");
            tanque.ArmaFogo();
            tanque.Movimenta();
            tanque.Pilotar("Piloto");

            Console.WriteLine("===RoboAdaptado===");
            robo_adapter.Movimenta();
            robo_adapter.ArmaFogo();
            robo_adapter.Pilotar("Adapter");
        }
예제 #6
0
        static void Main(string[] args)
        {
            TanqueInimigo rx2018 = new TanqueInimigo();
            RoboInimigo   r2d2   = new RoboInimigo();

            IAtaqueInimigo robo_Adapter = new RoboInimigoAdapter(r2d2);

            Console.WriteLine(" ========== ROBO ========== ");
            r2d2.ReagirContraHumano("Rodrigo");
            r2d2.AndarFrente();
            r2d2.EsmagarComMaos();

            Console.WriteLine(" ========== TANQUE ========== ");
            rx2018.Pilotar("João");
            rx2018.movimenta();
            rx2018.ArmaFogo();

            Console.WriteLine(" ========== ROBO ADAPTER ======= ");
            robo_Adapter.Pilotar("Rodrigo");
            robo_Adapter.movimenta();
            robo_Adapter.ArmaFogo();

            Console.ReadKey();
        }
예제 #7
0
        static void Main(string[] args)
        {
            TanqueInimigo rx2019 = new TanqueInimigo();
            RoboInimigo   R2D2   = new RoboInimigo();

            IAtaqueInimigo robo_adapter = new RoboInimigoAdapter(R2D2);

            Console.WriteLine("### ROBO ###");
            R2D2.AtaqueRoboInimigo();
            R2D2.AndarFrente();
            R2D2.ReagirContraHumano("Pedro");

            Console.WriteLine("### TANQUE ###");
            rx2019.Armado();
            rx2019.Movimenta();
            rx2019.Pilota("Carlos");

            Console.WriteLine("### ROBO ADAPTER ###");
            robo_adapter.Armado();
            robo_adapter.Movimenta();
            robo_adapter.Pilota("José");

            Console.ReadKey();
        }
예제 #8
0
        static void Main(string[] args)
        {
            TanqueInimigo tx2019 = new TanqueInimigo();
            RoboInimigo   R2D2   = new RoboInimigo();

            IAtaqueInimigo roboAdapter = new RoboInimigoAdapter(R2D2);

            Console.WriteLine(" ===== ROBO ===== ");
            R2D2.ReagirContraHumano("Bruno");
            R2D2.AndarParaFrente();
            R2D2.EsmagarComMaos();

            Console.WriteLine(" ===== TANQUE ===== ");
            tx2019.Pilotar("Bruno");
            tx2019.Movimenta();
            tx2019.ArmaFogo();

            Console.WriteLine(" ===== ROBO ADAPTADO ===== ");
            roboAdapter.Pilotar("Bruno");
            roboAdapter.Movimenta();
            roboAdapter.ArmaFogo();

            Console.ReadKey();
        }
 //Passar para o construtor o objeto que será adaptado
 public RoboInimigoAdaptador(RoboInimigo novoRobo)
 {
     this.robo = novoRobo;
 }
예제 #10
0
        //Adaper - o adptador do objeto Robo com o Tanque

        public RoboInimigoAdapter(RoboInimigo roboInimigo)
        {
            _roboInimigo = roboInimigo;
        }
예제 #11
0
 public RoboInimigoAdapter(RoboInimigo novoRobo)
 {
     robo = novoRobo;
 }
예제 #12
0
 public RoboInimigoAdapter(RoboInimigo roboInimigo)
 {
     this.robo = roboInimigo;
 }
예제 #13
0
        //passa para o metodo construtor o metodo que sera adaptado

        public RoboInimigoAdapter(RoboInimigo new_robo)
        {
            this.robo = new_robo;
        }
예제 #14
0
 public RoboInimigoAdapter(RoboInimigo robo)
 {
     Robo = robo;
 }