最后,这个问题肯定要看个人喜好了。尽管如此,我还是想大胆尝试找出哪种风格是首选。
我最近注意到我的代码中存在不一致之处。我有一个包含一些字段的结构。现在的问题是当我需要调用一个函数来获取我想要设置的值时,编辑这个字段的惯用方法是什么。我是在函数内部设置值,还是返回它并在我的调用函数中设置它?
type SuperStruct struct {
OneValue string
AnotherValue string
}
func (s *SuperStruct) makeAnotherValue() {
s.AnotherValue = "Hello there"
}
func main() {
superStruct := SuperStruct{}
superStruct.makeAnotherValue()
}
或(具有相同的结构)
func (s *SuperStruct) makeAnotherValue() string {
return "Hello there"
}
func main() {
superStruct := SuperStruct{}
superStruct.AnotherValue = superStruct.makeAnotherValue()
}
我知道在某些情况下,这些方法中只有一种是有意义的。但我经常发现自己处于两者皆有可能的境地。我想第二种方式可以提供更好的保护,但有时这不是问题。
泛舟湖上清波郎朗
相关分类