【最佳实践】多参数,用一个数组还是分开定义?

2024-02-23 09:12:27 浏览数 (2)

现在 PHP、Go 写的比较多,之前常被参数多的问题所困扰,近期 Go 写多了后有一些感悟。

先说结论

分类合并,同类参数合并为数组(Go 中定义为 struct 结构体),不同类分开定义。

例: 参数 school_name,school_address,study_name,study_gender,需调用函数做逻辑处理。

伪代码:

代码语言:javascript复制
函数定义:
function anonymous(school, study);

调用点:
school = [school_name, school_address];
study = [study_name, study_gender];
anonymous(school, study);

以自己过往经历。

PHP 中这个场景都平铺开来,字段很多,参数位会变得难以阅读,字段一多就想定义成数组算了,但都聚合起来又无法直观认识这个数组中可塞什么字段。当然,不用 array 可以定义 Class,但参数这么定义感觉太重了。

Go 用结构体没有数组黑盒烦恼,这点 Go 确实更加优雅!

综上,可按同类合并思维进行处理,就这么办吧 :)

0 人点赞