Пишу класс Transaction.
Класс про то как деньги переводить с одного счета на другой.
В нем есть два публичных метода allow и perform.
Метод allow предназначен для проверки наличия денег на счете отправителе.
Метод perform предназначен для пересылки.
Во время perform проверяется наличие денег на счете отправителе путем вызова allow.
Так вот, если я вызываю allow отдельно, то в случае нехватки денег он должен генерировать ошибку или исключение?
А если perform?