Y>>2)
Y>>bool TryTransfer(int toAccount, decimal amount, out TransferValidationResult transferValidationResult);
TG>Те же коды возврата, вид сбоку. С теми же недостатками.
Да. Иногда приходится жертвовать принципами ради практичности.
TG>TG>X AVOID using out or ref parameters.
AVOID != DO NOT
Не хочу быть неправильно понятым: лично вполне нравятся исключения. Просто они не единственный вариант.
В FDG я вижу некую коллизию: "Не возвращай коды ошибок, используй исключения" и "Не используй исключения для нормального хода выполнения".