В настоящее время я учился, и некоторые из моих кодов выглядят так:
a, err := doA()
if err != nil {
return nil, err
}
b, err := doB(a)
if err != nil {
return nil, err
}
c, err := doC(b)
if err != nil {
return nil, err
}
... and so on ...
Это выглядит неправильно для меня, потому что проверка ошибок занимает большую часть строк. Есть ли лучший способ обработки ошибок? Могу ли я избежать этого с некоторым рефакторингом?
ОБНОВЛЕНИЕ: Спасибо за все ответы. Обратите внимание, что в моем примере doB зависит от a, doC зависит от b и так далее. Поэтому большинство предлагаемых рефакторингов в этом случае не работают. Любое другое предложение?