Какой процент вашей кодовой базы представлен кодом доступа к данным? - PullRequest
1 голос
/ 18 февраля 2009

Сегодня вечером в твиттере возник интересный вопрос, и я решил, что выложу его здесь.

По сути, мне интересно, что вы используете для сохранения данных в вашей базе данных и оценки процента вашей кодовой базы, которая является кодом доступа к данным.

- Правка -
Другие интересные метрики (как отмечено в комментариях) включают количество бизнес-классов и общий размер вашей кодовой базы.

Я только что посмотрел проект, который делал задолго до открытия NHibernate. Быстрый просмотр некоторых кодов доступа к данным показал около 10 строк кода для сохранения / гидратации для каждого персистентного свойства в классе.

Ответы [ 2 ]

1 голос
/ 18 февраля 2009

В одном из наших проектов мы использовали LLBLGenPro в качестве нашего OR / M. Но поскольку мы не хотели засорять наше приложение объектами LLBL, мы сопоставили их с нашими BO, прежде чем они попадут в клиента. Это означает отображение их обратно на объекты LLBL перед повторным попаданием в БД. Код DAL оказался очень большой частью нашего приложения. Не 50%, но значительный.

В проекте, над которым я сейчас работаю, я начал с db40 в надежде минимизировать объем DAL. И это было очень мало, но я столкнулся с проблемами с db40 и пришлось отказаться от него. Я переключился на ADO.NET на несколько дней просто для того, чтобы что-то заработало, и был поражен тем, как много нужно было ADO, чтобы написать простой репозиторий. Это была головная боль, поэтому я наконец выбрал NHibernate.

Мой код DAL с NHibernate (2.0), вероятно, составляет 5% или менее от моей базы кода. Это включает в себя файлы сопоставления XML. Я имею в виду, что след DAL настолько мал, и с ним приятно работать. В прошлом у меня были проблемы с NHibernate 1.2 в распределенной среде, где мне нужно было работать с отсоединенными объектами, но NHibernate 2.0, похоже, решил эту проблему. Я знаю, что теперь я делаю DAL, пока не появится что-то лучшее.

Интересно, что у нас с коллегами был похожий разговор пару месяцев назад. Но наше внимание было сосредоточено не столько на том, сколько кода составлял наш DAL, сколько на том, что наше приложение было просто запросом данных / манипулированием. Мы подсчитали, что, вероятно, 90% нашего приложения было просто вопросом выбора правильного набора данных и предоставления пользователям возможности его редактировать.

0 голосов
/ 18 февраля 2009

Мы используем nHibernate большую часть времени, и он генерируется инструментом, не знаю, если это считается, мы все равно заканчиваем тем, что добавляем много кода в слой nHibernate для каждой из сущностей и да; это продолжает быть большой частью кода.

Кроме того, код DAL увеличивается по мере того, как вы добавляете больше функциональности и больше сущностей в ваше приложение. Так что более или менее, я думаю, около 20% -30% нашей кодовой базы состоит из DAL.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...