Exceptional Ruby: Master the Art of Handling Failure in Ruby
Книга посвящена глубокому изучению обработки ошибок и исключений в языке Ruby. Автор рассматривает жизненный цикл исключений, начиная с оператора raise и заканчивая перехватом исключений, а также альтернативные подходы к обработке сбоев, такие как возврат нескольких значений, глобальные переменные и стратегии резервного поведения.
В книге подробно разбираются внутренние механизмы Ruby, включая реализацию методов exception, set_backtrace и работу с глобальной переменной $!. Особое внимание уделяется практическим аспектам: использованию ensure, rescue, retry, else, а также обработке исключений в потоках и вопросам производительности.
Отдельная часть книги посвящена стратегиям реагирования на сбои: от простого вывода сообщений в консоль до удаленного мониторинга и применения паттернов проектирования, таких как Circuit Breaker. Автор предлагает читателю задуматься о том, когда действительно стоит использовать исключения, а когда лучше применить альтернативные методы.
Книга будет полезна разработчикам Ruby, стремящимся писать надежный и устойчивый код. Она помогает выработать осознанный подход к обработке ошибок, избегая распространенных антипаттернов и улучшая общее качество программного обеспечения.
