
Комментарии 6
Для ошибок можно сделать отдельный канал.
panic("sending email is not implemented")
В целом конечно пример с паникой понятен, но в реальности это уже редко встречается, многие считают это bad practice/антипаттерном, т.к. по сути почти всегда вместо паники можно вернуть ошибку, т.к. не все хотят, чтобы приложение падало из-за внешней либы, например.
Я хотел показать, что если что в функции SendEmail есть паника, не обязательно ее явно вызывать, может быть обращение к nil интерфейсу или что-нибудь такое, то это приводит к падению сервера. Я вызвал явно панику для того, что бы было проще понять почему здесь паника, а не потому что это считается хорошей практикой, может быть нужно это было пояснить в статье.
Но я с тобой согласен, вызывать явно паники считается bad practice в Golang, правильнее возвращать явные ошибки из функции.
Таких ошибок в Golang еще много, ...
Продолжайте, расширяйте, дополняйте списочек. Весьма полезно.
https://www.youtube.com/watch?v=AT_T4z0bnjg
вот тут рассказал примерно это же, но немного дополнил
[Golang] Ошибки, которые нельзя обработать