static ILoanCalculator AskForLoanCalculator(IGui gui) { LoanType loanType = gui.AskForLoanType("Quale tipo di mutuo desideri?"); ILoanCalculator calculator = null; decimal initialAmount = gui.AskForDecimal("Quanti soldi si desidera richiedere?"); bool isClient = gui.AskForBool("Sei giĆ cliente della banca?"); switch (loanType) { case LoanType.Fixed: calculator = new FixedLoanCalculator(); break; case LoanType.Variable: calculator = new VariableLoanCalculator(); break; } calculator.InitialAmount = initialAmount; calculator.IsClient = isClient; return(calculator); }