Entity Framework - Code First - Действительно ли это хороший подход для больших проектов? - PullRequest
2 голосов
/ 13 декабря 2011

Я немного читал о подходе, основанном на коде, структуры сущностей и других подходах (сначала модель, сначала база данных).

1.) Причина, по которой в большинстве блогов в первую очередь используется поддержка кода структуры сущностей, заключается в том, что разработчики довольны тем, что им не приходится работать с дизайнерами.Я удивлен этим аргументом, потому что вы разрабатываете проект, чтобы ваши клиенты были довольны, а не ваши разработчики.У скольких проектов есть счастье разработчика в плане проекта.Еще один аргумент - избегать много отображений на xml.Что ж, если не xml, мы в конечном итоге делаем это в OnModelCreating и добавляем атрибуты [Key] в доменные модели.Так что картирование не исключено.

2.) Кроме того, когда вы генерируете базу данных из кода (модель предметной области), модель предметной области проектируется с использованием ОО, и сгенерированная структура базы данных может быть неоптимальной, что заставляет меня думать, чтоэтот код первый подход подходит только для небольших проектов.

Правильны ли аргументы?

1 Ответ

1 голос
/ 13 декабря 2011

1) Причиной первой парадигмы кода является экономия времени на разработку за счет уменьшения количества утомительной повторяющейся работы, которую должны выполнять разработчики (что, в свою очередь, делает их счастливее). Сначала код позволяет разработчикам по большей части забыть о SQL (иногда вам все равно придется писать хранимые процедуры) и сосредоточиться на модели данных и бизнес-логике. Версию вашей базы данных гораздо проще (особенно во время разработки), поскольку каждому разработчику нужно только изменить свои модели c #, а не писать новый сценарий SQL, проверить его и убедиться, что все остальные в команде знают, как его запускать. Что касается XML-файлов в прошлом в других ORM, мне было неудобно постоянно искать соответствующий XML-файл при изменении классов домена. Лично я нахожу свободные интерфейсы быстрее при внесении изменений в мою модель данных. Кроме того, структура сущностей xml-файлов, используемая в v1.0, стала настолько большой, что редактировать / управлять ею было очень трудно, когда размер вашей базы данных достигал реального размера.

2) Я не могу представить себе сценарий, в котором схема данных может быть создана только с помощью SQL и не выражена в виде c # с кодом структуры сущности вначале.

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