我设计了一个自定义类(或组件?),该类别扩展了其构造函数的Sprite,该构造器具有15个参数。仅需要第一个参数,而其余14个则分配了默认值。一切都是必要的。

除第一个必需的参数外,每个参数实际上是属性设置器。该类还包含公共设置器和GETETER功能,允许在施工后运行时进行属性更改。

我已经在桌面上写了课(27英寸屏幕),并意识到当我在13英寸笔记本电脑上使用课程时,我可能会遇到问题 - 代码提示延伸了屏幕的边缘,因为它太长了。

当设置器函数可用时,将可选的设置器作为构造函数中的参数包括在构造方中是正常/最佳实践,还是应该始终与构造函数分开?

有帮助吗?

解决方案

我认为,这归结为易于使用,该类实例化了代码的一部分。如果您有14个参数,则所有设置或全部跳过,则可能是最好的解决方案。

var defaultRectangle:Rectangle = new Rectangle(); //square of 1 x 1)    
var customRectangle:Rectangle = new Rectangle(0,0,  2,0  2,2,  0,2);

但是,如果14个参数中的某些参数是可选的,那么它就很难读取,那么我认为使用单独的getter/setter的使用更可读,或者是paramater对象(模仿命名参数)

//which parameter means what?
var girlfriend:Girl = new Girl("Blue", 0, 0, "", "", 1.8, 0, "", 140); 

//named parameters 
var girlfriend:Girl = new Girl({eyeColor: "Blue", height:1.8, iq:140});

//setters
var girlfriend:Girl = new Girl();
girlfriend.eyeColor = "Blue";
girlfriend.height = 1.8;
girlfriend.iq = 140;

我个人尝试在使用“视图”时尽可能多地使用模型,因此,如果您的对象是精灵,则是视图。也许最好的方法可能是:

var friend:Person = new Person({name: "Ford Prefect"});
var profileView:ProfileView = new ProfileView(friend);
addChild(profileView);
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top