假设我有一个本地化的结构MyStruct,其主体如下:
struct MyStruct {
myField1 string
myField2 string
myField3 string
...
myFieldN string
}
MyStruct以及一个为外部调用者实例化 new 的函数:
func NewMyStruct(myField1, myField2, myField3, ..., myFieldN string) MyStruct {
return MyStruct{
myField1: myField1,
myField2: myField2,
myField3: myField3,
...
myFieldN: myFieldN,
}
}
问题:我如何最好地处理结构中有太多字段导致NewMyStruct(...函数参数太多的情况?是否有缓解此问题的最佳做法?截至目前,我的代码库中有几个这样的函数:
func NewSuperStruct(myField1, myField2, myField3, myField4, myField5, myField6, myField7, myField8, myField9, myField10, myField11, myField12, myField13, myField14, myField15, myField16, myField17, myField18, myField19, myField20, myField21, myField22) ...
但在属性/字段不属于其中的意义上,结构本身并不一定是无意义的,在我的应用程序中它们确实有意义,结构太大了,仅此而已。
炎炎设计
智慧大石
相关分类