命名是相当主观的,但在我看来,有两件事情跟随有“好名字”。
- 准确。
- 按照principle of least astonishment。
这两个原则对维护很重要;如果你有一堆名为GetData
的方法,人们就不会知道会发生什么,并且会浪费时间阅读文档以找到适当的过载。
您还想要具有代表您所处抽象级别的名称。假设您想获得一些名为Page
的实体。在DAO级别,它很容易被public DataTable GetPagesTable();
,因为你正在处理表格。在更高的抽象层次上,使用List,可以将其更改为public List GetPages();
(从名称中删除表)。你距离数据库很远,所以名称应该反映这一点。
如果你传递一个对象或ID,说清楚的方法名称,以避免任何意外,像public DataTable GetPagesFromId(int id);
从你的例子,我可能会落得这样的事情:
public DataTable Get<TableName>Table() - returns the data from a given table
public List Get<ObjectName>s() - returns the data in the form of List of objects
public DataSet Get<ComposedObjectName>() - returns the data when there are multiple data tables associated with queries
public objectx Get<ObjectName>(objecty) - returns selected object
public DataSet Get<ObjectName>AsMasterChild(objecty) - returns selected object (ex: in case of master-child)
我同意你关于Data的具体名称的观点。但在我的情况下,这些是接口方法。 –