Exemplo n.º 1
0
        public static int Operation(int firtsOperand, int secondOperand, EnumTypeOperation operation)
        {
            var operationFactory = new OperationFactory();
            var opera            = operationFactory.Fabricate(operation);

            return(opera != null?opera.Calculate(firtsOperand, secondOperand) : 0);
        }
Exemplo n.º 2
0
        public override IOperation Fabricate(EnumTypeOperation operation)
        {
            switch (operation)
            {
            case EnumTypeOperation.Add:
                return(new AdditionOperation());

            case EnumTypeOperation.Substract:
                return(new SubstractionOperation());

            case EnumTypeOperation.Multiplication:
                return(new MultiplicationOperation());

            case EnumTypeOperation.Division:
                return(new DivisionOperation());

            case EnumTypeOperation.None:
            default:
                return(null);
            }
        }
Exemplo n.º 3
0
 public abstract T Fabricate(EnumTypeOperation operation);