powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / EF работа с code first или database first?
25 сообщений из 88, страница 1 из 4
EF работа с code first или database first?
    #38372190
Фотография yardie
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет всем! Работаю с базой данных MS SQL при помощи EF database first, слышал про то, что есть и ещё один подход code first, слышал много хорошего))) Очень хочеться перейти на него уж больно он разрекламирован, и кажеться более удобным для меня. Но пержде чем это сделать ни как не магу найти ответы на интересующие меня вопросы
1- что же быстрее работает database first или code first? у какого подхода производительность больше?
2- читал что есть некоторая проблема в случае code first, что если необходимо поменять схему бд, добавить или изменить поле, то просто на просто дропаеться вся бд и пересоздается, есть ли такое и как с этим боряться?

спасибо)
...
Рейтинг: 0 / 0
EF работа с code first или database first?
    #38372258
bazile
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
yardie, 1) у обоих подходов одинаковая производительность; 2) читай про migrations
...
Рейтинг: 0 / 0
EF работа с code first или database first?
    #38372594
Фотография lbppb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
yardie,

Прежде чем впрягаться во все тяжкие. Вас чем именно не устраивает database first?
...
Рейтинг: 0 / 0
EF работа с code first или database first?
    #38373170
Фотография yardie
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
lbppbyardie,

Прежде чем впрягаться во все тяжкие. Вас чем именно не устраивает database first?

Я просто хочу уйти от тех времен когда мне постоянно приходилось лезть в бд, писать скрипты и прочее, хочу создавать, изменять и удалять таблицы более привычным мне C#. Такой подход позволяет очень сильно сократить время разработки на начальном этапе.
...
Рейтинг: 0 / 0
EF работа с code first или database first?
    #38373311
Фотография lbppb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
yardielbppbyardie,

Прежде чем впрягаться во все тяжкие. Вас чем именно не устраивает database first?

Я просто хочу уйти от тех времен когда мне постоянно приходилось лезть в бд, писать скрипты и прочее, хочу создавать, изменять и удалять таблицы более привычным мне C#. Такой подход позволяет очень сильно сократить время разработки на начальном этапе.

Database First и встроенный дизайнер как ни на есть лучшим образом, за исключением некоторых тонкостей (Code First их впрочем не решает), позволяют проектировать базу и ни какие скрипты писать не нужно. Более того, все необходимые классы также создаются автоматически. Более того, Database First позволяет легко обновлять модель из базы, если такое нужно в последствии, а также легко и удобно работать с Stored Proceudres и Views.
...
Рейтинг: 0 / 0
EF работа с code first или database first?
    #38373385
Фотография yardie
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
lbppb,

Спасибо, поизучаю database first по подробнее, вполне вероятно что, что-то недоглядел.
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
EF работа с code first или database first?
    #38964132
Alexey2112
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тогда почему МС активно двигает code-first в массы?

Вообще, переход на C# в проектирование БД, в проектирование инсталляторов и т. д. считаю хорошей затеей. Может быть, наконец-то разработчику не надо будет знать целую кучу несовместимых и непохожих языков (C#, SQL, T-SQL, чего-то там в сборщике установщиков Windows Installer или набор тегов XML в WiX), чтобы делать продукты даже не для кроссплатформы, а для одной платформы, или, лучше сказать, для платформ одного вендора (МС).

Почему пихать javascript везде, который гораздо хуже подходит для разработки, можно, а C# - нет?


Что будет с таблицами связей при подходе code-first? Неужели их занесут в красную книгу и разработчики БД на C# забудут о их существовании? На мой взгляд, таблицы связей в проектировании БД выглядят как жирный такой и заметный костыль. То, для чего C# использует просто коллекций сущностей внутри других сущности, SQL должен придумывать новую сущность (каждая таблица связей - такая вполне себе новая сущность), нарушая принцип Оккама.
...
Рейтинг: 0 / 0
EF работа с code first или database first?
    #38964177
Alexey2112
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexey2112Вообще, переход на C# в проектирование БД, в проектирование инсталляторов и т. д. считаю хорошей затеей. Может быть, наконец-то разработчику не надо будет знать целую кучу несовместимых и непохожих языков (C#, SQL, T-SQL, чего-то там в сборщике установщиков Windows Installer или набор тегов XML в WiX), чтобы делать продукты даже не для кроссплатформы, а для одной платформы, или, лучше сказать, для платформ одного вендора (МС).
Можно ещё добавить, что запросы к БД уже нормальные люди пишут на C# (LINQ).

Итого имеем:

- разработка приложений (мобильных, десктопных, серверных) - C#
- запросы к БД - C# (LINQ)
- разработка инсталляторов - C# (WiX#)
- игры, трёхмерная графика - C# (Unity3D, SlimDX, SharpDX)
- микроконтроллеры, интернет вещей - C# (ардуины и прочие)

в будущем:

- разработка БД - C# (EF code-first)
- веб-разработка - C# (Silverlight 2, web-WPF)
- виртуальная реальность - C# (Hololens API)


А? Ну? Чё?
...
Рейтинг: 0 / 0
EF работа с code first или database first?
    #38964181
Alexey2112
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexey2112- микроконтроллеры, интернет вещей - C# (ардуины и прочие)
Забыл про интелловские low-power x86 процессоры и Windows 10 IoT.
...
Рейтинг: 0 / 0
EF работа с code first или database first?
    #39094203
Артем G
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Одназначно Code first. В EF7 уберут Database first по моему.
...
Рейтинг: 0 / 0
EF работа с code first или database first?
    #39094362
kmaw
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
"code first" - не правильное название. надо было назвать "сделали нормальную ОРМ". миграции при групповой разработке, когда у каждого своя тестовая БД, в том или ином виде, всегда были, есть, будут (и связанный с этим геморой, независимо от ОРМ или её отсутствия).

DB-first - это теперь лучше забыть
...
Рейтинг: 0 / 0
EF работа с code first или database first?
    #39094403
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kmaw,

было модель first - забили, так как не вытянули
...
Рейтинг: 0 / 0
EF работа с code first или database first?
    #39094404
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
что дб что код ферст- все это жесткий хардкод
а в модель ф можно было без кода обойтись (вернее код был бы в динамике)
...
Рейтинг: 0 / 0
EF работа с code first или database first?
    #39094408
kmaw
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRosкод ферст

это обычная нормальная ОРМ, какой стал EF
...
Рейтинг: 0 / 0
EF работа с code first или database first?
    #39094410
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kmaw,

ну я и говорю, что не вытянули
а ведь было в начале CSDL, а не код
...
Рейтинг: 0 / 0
EF работа с code first или database first?
    #39094498
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRosчто дб что код ферст- все это жесткий хардкод

код фёрст -- норм. никакого хардкода, сразу решаешь задачи.


ViPRosа в модель ф можно было без кода обойтись (вернее код был бы в динамике)

не снискало за десятилетия этот динамик популярности... унылые сложные, не тестируемые, глючные решения, нафиг не упали.

как кодили с типизированной моделью, так и кодят, и будут кодить.
...
Рейтинг: 0 / 0
EF работа с code first или database first?
    #39094501
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kmawViPRosкод ферст

это обычная нормальная ОРМ, какой стал EF

ya ya
...
Рейтинг: 0 / 0
EF работа с code first или database first?
    #39094571
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt,

чей то я не видел 10летиями кто динамил, попытки и ляля видел
...
Рейтинг: 0 / 0
EF работа с code first или database first?
    #39094742
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRoshVostt,

чей то я не видел 10летиями кто динамил, попытки и ляля видел

ну по логике вещей, уже давно должно было выстрелить что-то типа ВИПРОСа и захватить рынок. но либо все такие тупые в этом мире, пипец тупари, от Майкрософт — стадо бездарностей, до Оракла — вообще обезьяны... ну или нахрен никому не упало :) выбирай, что тебе по душе.
...
Рейтинг: 0 / 0
EF работа с code first или database first?
    #39094778
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt,

есть 3-е
после такого дальнейшее обновление "технологий" никто не поймет :)
реально не нужны толпы "программистов"
и т.д. экономические вопросы
...
Рейтинг: 0 / 0
EF работа с code first или database first?
    #39094813
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRoshVostt,

есть 3-е
после такого дальнейшее обновление "технологий" никто не поймет :)
реально не нужны толпы "программистов"
и т.д. экономические вопросы

вопросом изобретения серебряной пули занимаюс я, подаван

лично я вижу, что применение подхода описания метамодели данных, вместо "хардкодного" программирования — это качественный шаг вперёд, по крайне мере для типовых задач энтерпрайза.

вот только вменяемой реализации подобного я не встречал. всё что видел -- писец какое сложное в применении, монструозное, неповоротливое, и самое главное -- мееееееееееееееееееееееееееееедленное.
...
Рейтинг: 0 / 0
EF работа с code first или database first?
    #39095324
carrotik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Артем GОдназначно Code first. В EF7 уберут Database first по моему.

.. в EF7 это (DatabaseFirst) теперь выполняется командой dnx ef dbcontext scaffold .. и вполне себе работает под Виндой ... вот под Linux-ом иль пока еще лыжи не едут, иль я сам понимаете какой - но не выпиливается .. Хотя сам проект (мигрированный WebApi) билдится и работает
...
Рейтинг: 0 / 0
EF работа с code first или database first?
    #39095552
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttвот только вменяемой реализации подобного я не встречал. всё что видел -- писец какое сложное в применении, монструозное, неповоротливое, и самое главное -- мееееееееееееееееееееееееееееедленное.

это все не так, во всяком случае не должно быть так
интерпретация модели налету не такая дорогая операция, особенно если хорошо продумано кеширование результатов интерпретации
...
Рейтинг: 0 / 0
EF работа с code first или database first?
    #39095923
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRosэто все не так, во всяком случае не должно быть так
интерпретация модели налету не такая дорогая операция, особенно если хорошо продумано кеширование результатов интерпретации

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

пока что пришёл к выводу, что нужен компромисс: гибрид, где часть системы выполнена на метамодели (где это реально уместно), в основном тупые реестры без сложных обработок, отчётов, кубов. а боевая лошадка по старинке. и это работает довольно хорошо. вот сейчас именно такой подход применяется по моей инициативе, пока полёт нормальный.
...
Рейтинг: 0 / 0
EF работа с code first или database first?
    #39095937
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt,

почему большая база? что там содержится?
скорее всего неправильная метамодель
все эти одномерные амебные ер, юмл и т.д. не являются инструментом метамоделирования
...
Рейтинг: 0 / 0
25 сообщений из 88, страница 1 из 4
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / EF работа с code first или database first?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]