Привет, не совсем согласен с тобой насчет примера с транзакциями.
1) Функция validateTransaction может заключать в себе больше логики, чем просто проверку строки "UNKNOWN". Даже в примере она также пробрасывает в себе исключение, см. раздел про ошибки. 2) Даже если функция просто проверяет какое-то условие, как например: transaction.type === 'PAYMENT' - в этом нет ничего плохого. Подобные проверки различных условий повторяются в приложении и удобно просто переиспользовать готовую функцию, а не писать каждый раз заново transaction.type === TransactionsTypes.Payment импортируя enum и т.д. К тому же, это полезный прием рефакторинга, (см. Мартин Фаулер "Рефакторинг Javascript") Замена переменой запросом, чтобы не злоупотреблять локальными переменными
Тема сугубо субъективная и не является призывом писать именно так и никак иначе, просто делюсь размышлениями на этот счет
Привет, не совсем согласен с тобой насчет примера с транзакциями.
1) Функция
validateTransaction
может заключать в себе больше логики, чем просто проверку строки"UNKNOWN"
. Даже в примере она также пробрасывает в себе исключение, см. раздел про ошибки.2) Даже если функция просто проверяет какое-то условие, как например:
transaction.type === 'PAYMENT'
- в этом нет ничего плохого. Подобные проверки различных условий повторяются в приложении и удобно просто переиспользовать готовую функцию, а не писать каждый раз зановоtransaction.type === TransactionsTypes.Payment
импортируя enum и т.д. К тому же, это полезный прием рефакторинга, (см. Мартин Фаулер "Рефакторинг Javascript") Замена переменой запросом, чтобы не злоупотреблять локальными переменнымиТема сугубо субъективная и не является призывом писать именно так и никак иначе, просто делюсь размышлениями на этот счет