使用构造函数来设置值对象类的属性,或者我必须使用点表示法并逐个设置每个属性?
我最近读了一篇文章,说我应该一个接一个地做,因为值对象应该只包含属性,并继续说使用构造函数是不行的(最佳实践明智)。
法典:
("不行")
变量员工=新 员工(名字,姓氏,年龄);
("确定")
var 员工=新员工();
员工.名字=名字;
员工姓氏=姓氏;
员工年龄=年龄;
你对此有何看法?
谢谢。
我从来没有听过有人说使用构造函数来构造对象是一个坏主意。我能想到的唯一情况是,如果要初始化的元素列表可以更改(添加/删除),从而更改对象的API(这很糟糕,尤其是在开发库时)。在这种情况下,我仍然使用构造函数,但我会传入一个初始化对象(包含n
参数),而不是修改函数签名。
"使用构造函数构造对象是一种不好的做法"(释义)这句话对我来说没有意义:P