Чи є найкраща практика визначення власних типів помилок у бібліотеці Ruby (gem) або Ruby on Rails? Конкретно:
- Де вони структурно належать до проекту? Окремий файл, позначений відповідним визначенням модуля / класу, десь ще?
- Чи існує якесь - або угода , які встановлюють , коли до і коли НЕ створити новий тип помилки?
У різних бібліотеках є різні способи роботи, і я не помітив реальних зразків. Деякі бібліотеки завжди використовують спеціальні типи помилок, а інші взагалі не використовують їх; деякі мають усі помилки, що розширюють StandardError, а інші мають вкладені ієрархії; деякі - лише порожні визначення класу, інші - всілякі хитрі хитрощі.
О, і тільки тому, що я відчуваю, що називати ці "типи помилок" - це щось неоднозначно, я маю на увазі це:
class AuthenticationError < StandardError; end
class InvalidUsername < AuthenticationError; end
httparty
: github.com/jnunemaker/httparty/blob/…