По возможности уменьшите область видимости переменных. Не уменьшайте область видимости, если это противоречит рекомендации "уменьшать вложенность".
Менее удачный пример:
err := ioutil.WriteFile(name, data, 0644)
if err != nil {
return err
}
Более удачный пример:
if err := ioutil.WriteFile(name, data, 0644); err != nil {
return err
}
Если вам нужен результат вызова функции вне if, вам не следует пытаться уменьшить область видимости.
Менее удачный пример:
if data, err := ioutil.ReadFile(name); err == nil {
err = cfg.Decode(data)
if err != nil {
return err
}
fmt.Println(cfg)
return nil
} else {
return err
}
Более удачный пример:
data, err := ioutil.ReadFile(name)
if err != nil {
return err
}
if err := cfg.Decode(data); err != nil {
return err
}
fmt.Println(cfg)
return nil
Читайте также:
- Go style guides: объявления локальных переменных
- Go style guides: nil - это допустимый срез
- Go style guides: встраивание в структуры
Комментариев нет:
Отправить комментарий