static void TestaDesconto() //Chain of responsability
        {
            CalculadorDeDescontos calculador = new CalculadorDeDescontos();

            Orcamento orcamento = new Orcamento(500.0);

            orcamento.AdicionaItem(new Item("CANETA", 250.0));
            orcamento.AdicionaItem(new Item("LAPIS", 250.0));

            double desconto = calculador.Calcula(orcamento);

            Console.WriteLine(desconto);
        }
Exemplo n.º 2
0
        private static void TestaTemplateMethodImpostoIHIT()
        {
            var orcamento = new Orcamento(100);

            orcamento.AdicionaItem(new Item("Item", 1));
            orcamento.AdicionaItem(new Item("Itex", 1));

            var calculador = new CalculadorDeImpostos();

            calculador.RealizaCalculo(orcamento, new IHIT());

            Console.ReadKey();
        }
Exemplo n.º 3
0
        private static void TestaChainOfResponsibilityDescontos()
        {
            CalculadorDeDescontos calculador = new CalculadorDeDescontos();

            Orcamento orcamento = new Orcamento(200);

            orcamento.AdicionaItem(new Item("LaPiS", 100));
            orcamento.AdicionaItem(new Item("caneta", 100));

            double desconto = calculador.Calcula(orcamento);

            Console.WriteLine(desconto);

            Console.ReadKey();
        }
Exemplo n.º 4
0
        private static void MostraImpostos2()
        {
            //Imposto iss = new ISS(new ICMS(new IHIT()));
            Imposto   impo      = new ImpostoMuitoAlto(new IKCV());
            Orcamento orcamento = new Orcamento(1000);

            orcamento.AdicionaItem(new Item("Lapis", 1000));
            orcamento.AdicionaItem(new Item("Caneta", 250));
            orcamento.AdicionaItem(new Item("Bolsa", 250));
            orcamento.AdicionaItem(new Item("Lapis", 1000));
            orcamento.AdicionaItem(new Item("borracha", 1000));
            CalculadorDeImpostos calculador = new CalculadorDeImpostos();

            //calculador.RealizaCalculo(orcamento, ikcv);
            //calculador.RealizaCalculo(orcamento, iccp);
            calculador.RealizaCalculo(orcamento, impo);
        }
Exemplo n.º 5
0
        private static void TestaDecoratorIKCVeICPP()
        {
            var impostoComplexo = new D_IKCV(new D_ICPP());

            Orcamento orcamento = new Orcamento(501);

            orcamento.AdicionaItem(new Item("Item", 101));

            Console.WriteLine(impostoComplexo.Calcula(orcamento));

            Console.ReadKey();
        }
Exemplo n.º 6
0
        static void Main(string[] args)
        {
            ////Inicio - Strategy
            //Imposto ISS = new ISS();
            //Imposto ICMS = new ICMS();
            //Orcamento orcamento = new Orcamento(500.0);
            //CalculadorDeImpostos calculador = new CalculadorDeImpostos();

            //calculador.RealizaCalculo(orcamento, ISS);
            //calculador.RealizaCalculo(orcamento, ICMS);

            //Console.ReadKey();
            ////Fim - Strategy
            ///

            //Inicio - Chain of Responsability
            CalculadorDeDescontos calculador = new CalculadorDeDescontos();
            Orcamento             orcamento  = new Orcamento(500);

            orcamento.AdicionaItem(new Item("Videogame", 250));
            orcamento.AdicionaItem(new Item("Controle", 250));
            orcamento.AdicionaItem(new Item("Microondas", 250));
            orcamento.AdicionaItem(new Item("Televisao", 250));
            orcamento.AdicionaItem(new Item("Celular", 250));
            orcamento.AdicionaItem(new Item("Patinete", 250));

            double desconto = calculador.Calcula(orcamento);

            Console.WriteLine(desconto);
            Console.ReadKey();
            //Fim - Strategy
        }
Exemplo n.º 7
0
        static void Main(string[] args)
        {
            /*Imposto iss = new ISS();
             * Imposto icms = new ICMS();
             *
             * Orcamento orcamento = new Orcamento(500.0);
             * CalculadordeImpostos calculador = new CalculadordeImpostos();
             * calculador.RealizaCalculo(orcamento,iss);
             *
             * Console.ReadKey();*/



            CalculadordeDescontos calculador = new CalculadordeDescontos();
            Orcamento             orcamento  = new Orcamento(500);

            orcamento.AdicionaItem(new Item("CANETA", 500));
            orcamento.AdicionaItem(new Item("LAPIS", 500));
            orcamento.AdicionaItem(new Item("XBOX", 500));
            orcamento.AdicionaItem(new Item("CANECA", 500));
            orcamento.AdicionaItem(new Item("GARRAFA", 500));
            orcamento.AdicionaItem(new Item("MICRO", 500));

            double desconto = calculador.Calcula(orcamento);

            Console.WriteLine(desconto);
            Console.ReadKey();
        }
        static void TestaImposto() //Strategy
        {
            Imposto   iss       = new ISS();
            Imposto   icms      = new ICMS();
            Imposto   iccc      = new ICCC();
            Orcamento orcamento = new Orcamento(1500.0);

            orcamento.AdicionaItem(new Item("CANETA", 250.0));
            orcamento.AdicionaItem(new Item("LAPIS", 250.0));
            orcamento.AdicionaItem(new Item("CANETA", 250.0));
            CalculadorDeImposto calculador = new CalculadorDeImposto();

            // Calculando o ISS
            calculador.RealizaCalculo(orcamento, iss);

            // Calculando o ICMS
            calculador.RealizaCalculo(orcamento, icms);

            calculador.RealizaCalculo(orcamento, iccc);

            calculador.RealizaCalculo(orcamento, new ICPP());

            calculador.RealizaCalculo(orcamento, new IHIT());
        }
Exemplo n.º 9
0
        private static void MostraDescontos()
        {
            CalculadorDeDescontos calculador = new CalculadorDeDescontos();

            Orcamento orcamento = new Orcamento(500);

            orcamento.AdicionaItem(new Item("Lapis", 250));
            orcamento.AdicionaItem(new Item("Caneta", 250));
            orcamento.AdicionaItem(new Item("Fogao", 250));
            orcamento.AdicionaItem(new Item("Geladeira", 250));
            orcamento.AdicionaItem(new Item("Penal", 250));
            orcamento.AdicionaItem(new Item("Bolsa", 250));
            orcamento.AdicionaItem(new Item("Ziper", 250));

            double desconto = calculador.Calcula(orcamento);

            Console.WriteLine(desconto);
        }
Exemplo n.º 10
0
        /// <summary>
        /// Conceito de Design Patterns estudado: Chain of Responsibility
        /// </summary>
        public static void ExecutaCalculadorDeDescontos()
        {
            CalculadorDeDescontos calculador = new CalculadorDeDescontos();

            Orcamento orcamento = new Orcamento(500);

            orcamento.AdicionaItem(new Item("Caneta", 250));
            orcamento.AdicionaItem(new Item("Lapis", 250));
            orcamento.AdicionaItem(new Item("Geladeira", 250));
            orcamento.AdicionaItem(new Item("Fogao", 250));
            orcamento.AdicionaItem(new Item("Microondas", 250));
            orcamento.AdicionaItem(new Item("Xbox", 250));

            double desconto = calculador.Calcula(orcamento);

            Console.WriteLine(desconto);
        }
Exemplo n.º 11
0
        static void Main(string[] args)
        {
            CalculadorDeDescontos calculador = new CalculadorDeDescontos();

            Orcamento orcamento = new Orcamento(500);

            orcamento.AdicionaItem(new Item("CANETA", 250));
            orcamento.AdicionaItem(new Item("LAPIS", 250));
            orcamento.AdicionaItem(new Item("GELADEIRA", 250));
            orcamento.AdicionaItem(new Item("FOGAO", 250));
            orcamento.AdicionaItem(new Item("MICROONDAS", 250));
            orcamento.AdicionaItem(new Item("XBOX", 250));

            double desconto = calculador.Calcula(orcamento);

            Console.WriteLine(desconto);

            Console.ReadKey(); /*demorar o tempo um pouco*/
        }