Robert C. Martin写的“清洁代码”一书说,一种方法应该做一件事.现在举个例子,我有两个方法initialize()和play().
initialize() should be called just before play() is called.
在我的代码中,play()方法将被调用数百次.我可以看到三种方法:
方法1:
在play()之前调用initialize(),这可以重复数百次.
initialize();
play();
...
initialize();
play();
...
方法2:
将initialize()放在play()方法中.但这会违背“做一件事”的做法.
void play() {
initialize();
...
}
方法-3:
我应该编写另一个名为initializeAndPlay()的方法.
void initializeAndPlay() {
initialize();
play();
}
还有其他更好更清洁的方法吗?
解决方法:
如果在初始化后通常调用play,我会选择第三个,因为它是最清晰的.
如果没有初始化就无法进行游戏,请选择第二个.
另一方面,我会考虑提供方法的类的设计.在大多数情况下,初始化是在构造函数中完成的.
标签:java,methods
来源: https://codeday.me/bug/20190623/1268010.html