Существует ли общее имя для объекта, который получает данные из базы данных? - PullRequest
2 голосов
/ 16 декабря 2009

Я разрабатываю API для использования одним из наших поставщиков для доступа к данным в наших базах данных, и мне нужно назвать свои классы. Я думаю о таких именах, как Retriever, Accessor и Controller (например, TimesRetriever, TimesAccessor, TimesController и т. Д.). Эти классы обеспечат доступ только для чтения к данным (которые я буду обобщать) в нашей базе данных. Существуют ли общепринятые правила именования для того, что я описал?

Ответы [ 5 ]

2 голосов
/ 16 декабря 2009

Мартин Фаулер (www.martinfowler.com) - хороший источник для подобных вопросов; с тех пор вы действительно говорите о шаблонах проектирования.

Моим лучшим предположением будет шаблон Repository (http://martinfowler.com/eaaCatalog/repository.html).

С сайта:

Концептуально, хранилище инкапсулирует множество объектов сохранились в хранилище данных и тому операции над ними, предоставление более объектно-ориентированного представления персистентного слоя.

Похоже, что вы пытаетесь сделать.

1 голос
/ 16 декабря 2009

Простое предложение ... почему бы не назвать его "База данных"? Это так ясно, как вы можете получить. Читая это, вы сразу узнаете, откуда поступают все данные.

0 голосов
/ 16 декабря 2009

«Контроллер» используется для обозначения чего-то другого. «Accessor» часто используется для классов доступа к БД. Для такого рода вещей я обычно рассматриваю это как отчет. Другими словами, вы не предоставляете полный доступ к БД, вы просто показываете отчет из нее на основе определенных выборов (я полагаю). Итак, если формат вывода позволяет (особенно если это CSV), я бы перефразировал весь проект как API для запуска отчетов. Если это невозможно, я бы выбрал «Accessor».

0 голосов
/ 16 декабря 2009

В LLBLGen Pro это называется "Адаптер"

Это называется провайдером в Delphi DataSnap и Java SDO

Я не думаю, что существует общепринятое соглашение об именах.

Я склонен использовать провайдера или ретривера.

0 голосов
/ 16 декабря 2009

Я чаще всего видел, чтобы люди использовали суффикс "Manager". Я также видел, как люди используют базу данных, как это было предложено just_wes. Например: TimesManager или TimesDatabase или даже просто Database.

...