👁 В Go ошибки обрабатываются явно, и это важный аспект при разработке
стабильных приложений. Однако иногда обработка ошибок может стать громоздкой,
особенно когда много повторяющихся операций. Для упрощения можно создать свои собственные ошибки с контекстом.
📝Пример для удобного логирования:
package main
import ( "fmt"
"os")
func openFile(filename string) error {
file, err := os.Open(filename) if err != nil {
return fmt.Errorf("failed to open file %s: %w", filename, err) }
defer file.Close() return nil
}
func main() { err := openFile("nonexistentfile.txt")
if err != nil { fmt.Printf("Error: %v
", err)
}}📌 Когда использовать:
- Если ваша команда обрабатывает множество внешних операций (например, работа с файлами, HTTP-запросами)
- В сложных приложениях, где нужно отслеживать, что именно привело к сбою
❗️ Такой подход помогает сохранять читаемость кода и упрощает отладку,
добавляя контекст к ошибкам. Это также полезно для логирования, где важна информация о происхождении ошибки.
tags: #go #разработка
❤️ @recura_tech



