2008-11-07 3 views

ответ

5

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

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

1

Бизнес-логика должна быть в вашем BLL. Если в вашем BLL вы получите «2 функции линейки», случайно ли вы включили эту бизнес-логику в свой DAL или UI?

4

Если ваш BLL никогда не выполняет валидации или не выполняет какую-либо бизнес-логику и всегда остается 2 лайнера, то да, это довольно глупо. Если вы это сделаете, вы, вероятно, не заметили, что имеете уровень бизнес-логики, и вы, вероятно, делали свою проверку в пользовательском интерфейсе или добавляли бизнес-логику в свой пользовательский интерфейс или свой DAL. Есть очень мало приложений, которые не требуют проверки и не имеют бизнес-логики.

2

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

+0

Хотя я немного с вами Если бы вы потратили время в первую очередь, вам пришлось бы только модифицировать метод BLL. – 2008-11-07 18:47:04

+1

Аналогичным образом, если ваши данные изменяются, вы можете инвестировать время, обновляя и поддерживая объектную модель, которая ничего не делает. Таким образом, любой подход может потратить ваше время в будущем. Я думаю, что есть времена для одного подхода и времени для другого. – 2008-11-07 19:05:57