Обробка помилок
Обробка помилок — це процес опрацювання можливості збою. Наприклад, нездатність прочитати файл, а потім продовжувати використовувати ті погані вхідні дані, очевидно, була б проблематичною. Помічати та явно керувати тими помилками — це спосіб уберегти решту програми від різних пасток.
Існують різні способи працювати з помилками в Rust, які описані в наступних підрозділах. Усі вони мають більш-менш тонкі відмінності та різні випадки використання. Як правило:
Явний panic головним чином корисний для тестів і роботи з невідновними помилками. Для прототипування він може бути корисним, наприклад, під час роботи з функціями, які ще не були реалізовані, але в таких випадках більш описовий unimplemented кращий. У тестах panic — це прийнятний спосіб явно зазнати невдачі.
Тип Option використовується тоді, коли значення є необов’язковим або коли відсутність значення не є умовою помилки. Наприклад, у батьківського елемента каталогу — / і C: — його немає. Під час роботи з Options, unwrap підходить для прототипування та випадків, де абсолютно певно гарантовано наявність значення. Однак expect корисніший, оскільки він дає змогу вказати повідомлення про помилку на випадок, якщо щось усе ж піде не так.
Коли існує шанс, що щось піде не так, і викликач має розв’язувати цю проблему, використовуйте Result. Їх теж можна unwrap і expect (будь ласка, не робіть цього, якщо це не тест або швидкий прототип).
Для більш суворого обговорення обробки помилок зверніться до розділу про обробку помилок в офіційній книзі.