Java 我是否应该使用“;获得-我的方法名称中的前缀?
我有一个用作数据存储库的抽象类Java 我是否应该使用“;获得-我的方法名称中的前缀?,java,naming-conventions,getter,Java,Naming Conventions,Getter,我有一个用作数据存储库的抽象类 public abstract class AbstractDataSource { public abstract DataRow getDataRow(Key key); //or just dataRow(Key key)??? } public class CSVDataSource extends AbstractDataSource { @Override public DataRow getDataRow(Key key)
public abstract class AbstractDataSource {
public abstract DataRow getDataRow(Key key); //or just dataRow(Key key)???
}
public class CSVDataSource extends AbstractDataSource {
@Override
public DataRow getDataRow(Key key) { //or just dataRow(Key key)??
//fetch row from file and return dataRow
//....
return dataRow;
}
}
更具体的类(即该类的子类)实现不同数据源的方法,例如CSV、ARFF和其他格式
我想知道“get”关键字在这里是否合适,因为数据检索不只是返回一个变量,还可能需要文件系统访问或其他方式
那么我是否应该使用“get”-前缀
谢谢我同意使用
get
关键字有时会显得不直观,因为背后有真正的逻辑。在您的情况下,lookup
或find
前缀可能是很好的替代品。还有@Thomas建议的retrieve
这个问题一开始似乎离题了。但至少对我来说,命名是好的应用程序设计不可或缺的一部分 您是否希望此方法成为一个,以便可以将其用于以下情况?考虑到它正在进行繁重的I/O和一些逻辑,可能不会,所以我会给它起不同的名字。我建议使用
retrieve
,因为这表明发生了比仅获取一个值更复杂的事情,我喜欢在本例中检索。+1。不仅是真正的逻辑,还有引发异常的真正机会。布尔getter呢?使用什么来代替is-prefix?如何计算属性,如列表中的大小?它没有get
前缀。