Многие используют исключения для управления потоком и быстрого фейла. Но в C# метод не сообщает, какие именно исключения он может выбросить — это не видно в сигнатуре.
🔍 Мой подход: Исключения — только для исключительных ситуаций.
Если метод может ожидаемо провалиться, пусть это будет явно.
✅ Используйте Result-паттерн:
— Метод возвращает Result<T> вместо выбрасывания исключения — Caller обязан проверить IsSuccess и обработать ошибку — Код становится предсказуемее и легче тестируется — Дополнительно: пропускная способность может быть выше, чем при throw/catch
Пример:
Result<User> result = userService.FindById(id); if (!result.IsSuccess) return Error(result.Error);
Многие используют исключения для управления потоком и быстрого фейла. Но в C# метод не сообщает, какие именно исключения он может выбросить — это не видно в сигнатуре.
🔍 Мой подход: Исключения — только для исключительных ситуаций.
Если метод может ожидаемо провалиться, пусть это будет явно.
✅ Используйте Result-паттерн:
— Метод возвращает Result<T> вместо выбрасывания исключения — Caller обязан проверить IsSuccess и обработать ошибку — Код становится предсказуемее и легче тестируется — Дополнительно: пропускная способность может быть выше, чем при throw/catch
Пример:
Result<User> result = userService.FindById(id); if (!result.IsSuccess) return Error(result.Error);
Ng was convicted in April for conspiracy to incite a riot, public nuisance, arson, criminal damage, manufacturing of explosives, administering poison and wounding with intent to do grievous bodily harm between October 2019 and June 2020. The creator of the channel becomes its administrator by default. If you need help managing your channel, you can add more administrators from your subscriber base. You can provide each admin with limited or full rights to manage the channel. For example, you can allow an administrator to publish and edit content while withholding the right to add new subscribers. ZDNET RECOMMENDS End-to-end encryption is an important feature in messaging, as it's the first step in protecting users from surveillance. Done! Now you’re the proud owner of a Telegram channel. The next step is to set up and customize your channel.
from us