Бизнес-правила в репозитории?

HenryR, вероятно, корректен.

Карта Уменьшает, не играет роль для самого поиска, но только используется для индексации. Проверьте , это видео интервью с Картой Уменьшает изобретателей .

6
задан Mayo 11 December 2009 в 19:24
поделиться

5 ответов

Если вы заботитесь о своих данных, вы поместите необходимые правила там, а не где-нибудь еще. Данные подвергаются влиянию из многих мест, помимо приложений. Ввод правил только на бизнес-уровне недолговечен и приводит к серьезным проблемам с целостностью данных, которые может быть ужасно пытаться исправить. Правила, касающиеся данных, принадлежат базе данных.

6
ответ дан 8 December 2019 в 13:46
поделиться

Бизнес-правило или правило целостности данных?

По моему опыту (в основном это крупная компания, мы не говорим о магазине программного обеспечения или магазине товаров для хобби), ваша база данных прослужит дольше, чем приложение. И, в конце концов, с ним будут разговаривать другие приложения. И кто-то где-то сломает базу данных, если в ней нет правил (любого рода).

5
ответ дан 8 December 2019 в 13:46
поделиться

Обычно вам будет очень трудно поддерживать бизнес-правила в нескольких местах вручную.

Я хорошо использовал генерацию кода в некоторых проектах для генерации некоторых типов правил из моделей требований . Например, у меня может быть требование «Имя не должно превышать 50 символов». Я моделирую это требование в UML структурированным образом, затем генерирую код пользовательского интерфейса, чтобы ограничить ввод 50 символами, бизнес-логику для обеспечения того же ограничения (никогда не доверяйте пользовательскому интерфейсу!) И файл сопоставления DDL / ORM, чтобы указать ширину столбца в БД.

Эту же идею можно было бы расширить для моделирования более сложных правил и создания соответствующего принудительного кода на каждом уровне приложения.

5
ответ дан 8 December 2019 в 13:46
поделиться

Вы сами сказали ... что обеспечивает соблюдение бизнес-правил на заднем ходу (т. Е. Администратор базы данных выказывает данные). Если вы боитесь, что это произойдет, заплатите цену. Если нет, то оставьте его выключенным, чтобы правила, применяемые где-то еще, не были лишними.

1
ответ дан 8 December 2019 в 13:46
поделиться

Зависит от вашего приложения - сохраните логику в коде приложения, если оно предназначено быть независимым от БД. В противном случае бизнес-правила лучше подходят для базы данных.

0
ответ дан 8 December 2019 в 13:46
поделиться
Другие вопросы по тегам:

Похожие вопросы: