我正在开发一个 API 供我们的供应商使用来访问我们数据库中的数据,我需要命名我的类。我正在考虑诸如 Retriever、Accessor 和 Controller 之类的名称(例如 TimesRetriever、TimesAccessor、TimesController 等)。这些类将提供对我们数据库中数据(我将对其进行总结)的只读访问。对于我所描述的内容,是否有一个普遍同意的命名约定?
5 回答
Martin Fowler (www.martinfowler.com) 是这类问题的一个很好的来源;因为,你真的在谈论设计模式。
我最好的猜测是存储库模式(http://martinfowler.com/eaaCatalog/repository.html)。
从网站:
从概念上讲,存储库封装了持久化在数据存储中的一组对象以及对它们执行的操作,从而提供了一个更加面向对象的持久层视图。
听起来像你正在尝试做的事情。
一个简单的建议……为什么不叫它“数据库”呢?这是尽可能清楚的。阅读时,您将立即知道所有数据的来源。
我最常看到人们使用“经理”后缀。我还看到人们按照 just_wes 的建议使用数据库。例如:TimesManager 或 TimesDatabase,甚至只是 Database。
在 LLBLGen Pro 中称为“适配器”
在 Delphi DataSnap 和 Java SDO 中称为 Provider
我不认为有一个普遍认可的命名约定。
我倾向于使用 Provider 或 Retriever。
“控制器”用于表示不同的东西。“Accessor”通常用于 DB 访问类。对于这种事情,我一般认为它是一个报告。换句话说,您没有完全访问数据库,您只是根据某些选择(我假设)显示它的报告。因此,如果输出格式允许(尤其是 CSV),我会将整个项目改写为 API 来运行报告。如果那不可能,我会选择“Accessor”。