powered by simpleCommunicator - 2.0.50     © 2025 Programmizd 02
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Покритикуйте EF code-first
25 сообщений из 245, страница 4 из 10
Покритикуйте EF code-first
    #38977128
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttАлексей КЯ тебе говорю о методах проектирования, об способах описании структуры данных, об учёте физических особенностей СУБД на этапе проектирования. Причём тут программа? UML vs ER при проектировании, может так будет понятнее.

При том, что бизнесу положить большой болт на способы хранения в твой любимой СУБД. Ты же не будешь объяснять пользователю про реляционные связи и что тебе надо все по таблицам раскладывать? Если ты не болен конечно.

А ты идёшь в разработке не от бизнеса, а от СУБД, что крайне глупо и не дальновидно.Я сначала строю концептуальную модель, потом по ней строю структуру БД, потом всё остальное.
...
Рейтинг: 0 / 0
Покритикуйте EF code-first
    #38977130
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttАлексей Кзы: энумы тоже можно сгенерировать по БД. Благо T4 Text Template теперь в комплекте.

фу-фу-фу... какая жесть. Ну строковые константы с ролями системы безопасности генерируются, и все довольны. Но я сразу сказал, что энумы - это уже перебор.
...
Рейтинг: 0 / 0
Покритикуйте EF code-first
    #38977140
Alexey2112
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КhVosttпропущено...


При том, что бизнесу положить большой болт на способы хранения в твой любимой СУБД. Ты же не будешь объяснять пользователю про реляционные связи и что тебе надо все по таблицам раскладывать? Если ты не болен конечно.

А ты идёшь в разработке не от бизнеса, а от СУБД, что крайне глупо и не дальновидно.Я сначала строю концептуальную модель, потом по ней строю структуру БД, потом всё остальное.
А твоя концептуальная модель на чём написана? Если не на C#, то явно это убого. Ну что ещё может быть более удобным, чем описание модели на C#? Я имею ввиду, на нормальном языке программирования, а не эти ваши UML, хреномель и прочие базы данных. Они все какие-то ограниченные, подогнанные под свои узенькие задачки, и при расширении начинают напоминать кучу костылей, слепленных соплями - вот-вот развалятся под напором протекающих абстракций. Выбрали бы с самого начала нормальный программерский язык для моделирования таких вещей - это было бы меньшим из зол. Но зато сразу куча преимуществ - не надо городить всю эту костыльную семантическую обслугу в виде SQL и прочей хрени.
...
Рейтинг: 0 / 0
Покритикуйте EF code-first
    #38977153
Alexey2112
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ещё один минус CF - миграции. На каждый чих писать тонны кода. Вот есть у меня несколько таблиц, сделанных по классам через наследование: так или так . Создал я БД. Теперь хочу поменять эти классы на композицию. Ну, тут надо ручками всё переписывать. Так мало того, что надо все модели в коде переделать, так ещё миграции прописать. Даже для трёх таблиц с полудесятком полей в каждой это будет под два экрана кода миграций. Если в БД данных нет и она небольшая, то проще будет создать новую БД.
...
Рейтинг: 0 / 0
Покритикуйте EF code-first
    #38977155
Alexey2112
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexey2112Если в БД данных нет и она небольшая, то проще будет создать новую БД.
...
Рейтинг: 0 / 0
Покритикуйте EF code-first
    #38977159
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexey2112Алексей Кпропущено...
Я сначала строю концептуальную модель, потом по ней строю структуру БД, потом всё остальное.
А твоя концептуальная модель на чём написана?Когда как. Может быть и простенькая ER-схемка карандашиком на бумаге.
...
Рейтинг: 0 / 0
Покритикуйте EF code-first
    #38977163
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexey2112Ещё один минус CF - миграции. На каждый чих писать тонны кода. Вот есть у меня несколько таблиц, сделанных по классам через наследование: так или так . Создал я БД. Теперь хочу поменять эти классы на композицию. Ну, тут надо ручками всё переписывать. Так мало того, что надо все модели в коде переделать, так ещё миграции прописать. Даже для трёх таблиц с полудесятком полей в каждой это будет под два экрана кода миграций. Если в БД данных нет и она небольшая, то проще будет создать новую БД.Раньше писали миграции на чистом SQL DDL, теперь SQL DDL обёрнут в C#. Кому как больше нравится.

А само оно не напишется, чудес не бывает. Впрочем, есть всякие сравниватели БД, выдающие SQL DDL для дельты схемы, но я им как-то не доверяю.
...
Рейтинг: 0 / 0
Покритикуйте EF code-first
    #38977165
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexey2112Если в БД данных нет, то проще будет создать новую БД.Да.
...
Рейтинг: 0 / 0
Покритикуйте EF code-first
    #38977166
Alexey2112
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КAlexey2112пропущено...

А твоя концептуальная модель на чём написана?Когда как. Может быть и простенькая ER-схемка карандашиком на бумаге.
Как из неё сгенерить БД и ОРМ?

А вот CF могёт. C# - сила!

Алексей КAlexey2112Ещё один минус CF - миграции. На каждый чих писать тонны кода. Вот есть у меня несколько таблиц, сделанных по классам через наследование: так или так . Создал я БД. Теперь хочу поменять эти классы на композицию. Ну, тут надо ручками всё переписывать. Так мало того, что надо все модели в коде переделать, так ещё миграции прописать. Даже для трёх таблиц с полудесятком полей в каждой это будет под два экрана кода миграций. Если в БД данных нет и она небольшая, то проще будет создать новую БД.Раньше писали миграции на чистом SQL DDL, теперь SQL DDL обёрнут в C#. Кому как больше нравится.

А само оно не напишется, чудес не бывает. Впрочем, есть всякие сравниватели БД, выдающие SQL DDL для дельты схемы, но я им как-то не доверяю.
Что с данными происходит, когда вот так мигрируют? Не проще иногда создать новую чистую БД и туда данные из старой перегнать?
...
Рейтинг: 0 / 0
Покритикуйте EF code-first
    #38977172
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexey2112Алексей Кпропущено...
Когда как. Может быть и простенькая ER-схемка карандашиком на бумаге.
Как из неё сгенерить БД и ОРМ?БД создаётся ручками, потому что концептуальная схема не содержит всех необходимых деталей для создания БД. А ORM-обёртка уже генерируется по БД.

Alexey2112А вот CF могёт. C# - сила!Верю. :-)

Alexey2112Алексей Кпропущено...
Раньше писали миграции на чистом SQL DDL, теперь SQL DDL обёрнут в C#. Кому как больше нравится.

А само оно не напишется, чудес не бывает. Впрочем, есть всякие сравниватели БД, выдающие SQL DDL для дельты схемы, но я им как-то не доверяю.
Что с данными происходит, когда вот так мигрируют? Не проще иногда создать новую чистую БД и туда данные из старой перегнать?Ну тут зависит от ситуации. Да, в каких-то случаях возможно проще отдать со следующей версией новую БД + конвертер данных в неё.
...
Рейтинг: 0 / 0
Покритикуйте EF code-first
    #38977199
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexey2112Алексей Кпропущено...
Я сначала строю концептуальную модель, потом по ней строю структуру БД, потом всё остальное.
А твоя концептуальная модель на чём написана? Если не на C#, то явно это убого. Ну что ещё может быть более удобным, чем описание модели на C#? Я имею ввиду, на нормальном языке программирования, а не эти ваши UML, хреномель и прочие базы данных. Они все какие-то ограниченные, подогнанные под свои узенькие задачки, и при расширении начинают напоминать кучу костылей, слепленных соплями - вот-вот развалятся под напором протекающих абстракций. Выбрали бы с самого начала нормальный программерский язык для моделирования таких вещей - это было бы меньшим из зол. Но зато сразу куча преимуществ - не надо городить всю эту костыльную семантическую обслугу в виде SQL и прочей хрени.
не гони
...
Рейтинг: 0 / 0
Покритикуйте EF code-first
    #38977201
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КЯ сначала строю концептуальную модель, потом по ней строю структуру БД, потом всё остальное.

Т.е. по твоей концептуальной модели наследования тупо не рассматриваются, только потому что потом ты будешь всё раскладывать по реляционным таблицам?
...
Рейтинг: 0 / 0
Покритикуйте EF code-first
    #38977211
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КА ORM-обёртка уже генерируется по БД.

1. Как это потом синхронизируется и поддерживается? Я имею в виду миграции.
2. Может ли ОРМ создать схему в пустой БД?
3. Без сгенерированного класса из БД теперь ни чихнуть ни пукнуть? Поясню, с CF мне понадобился новый класс, он не содержит бизнес-данных, поэтому его очевидно нет в концептуальной модели, но содержит данные, нужные для реализации части бизнес-логики. Я создаю класс по ходу написания кода, без отрыва "от производства", сразу пишу тесты и сразу могу протестировать. Запускаю дебаг и оно СРАЗУ работает, так как миграции и все дела.

ORM это уже давным давно больше, чем обёртка над БД. По крайне мере, если говорить об EF. Поэтому генерация из БД это ущёрбный подход. Может только если на первоначальной стадии, а дальше CF.
...
Рейтинг: 0 / 0
Покритикуйте EF code-first
    #38977214
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttАлексей КЯ сначала строю концептуальную модель, потом по ней строю структуру БД, потом всё остальное.

Т.е. по твоей концептуальной модели наследования тупо не рассматриваются, только потому что потом ты будешь всё раскладывать по реляционным таблицам?Наследование описывается ER отношением 1-1, не?
...
Рейтинг: 0 / 0
Покритикуйте EF code-first
    #38977221
Alexey2112
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRosAlexey2112пропущено...

А твоя концептуальная модель на чём написана? Если не на C#, то явно это убого. Ну что ещё может быть более удобным, чем описание модели на C#? Я имею ввиду, на нормальном языке программирования, а не эти ваши UML, хреномель и прочие базы данных. Они все какие-то ограниченные, подогнанные под свои узенькие задачки, и при расширении начинают напоминать кучу костылей, слепленных соплями - вот-вот развалятся под напором протекающих абстракций. Выбрали бы с самого начала нормальный программерский язык для моделирования таких вещей - это было бы меньшим из зол. Но зато сразу куча преимуществ - не надо городить всю эту костыльную семантическую обслугу в виде SQL и прочей хрени.
не гони
Пришёл главный ненавистник CF. А почему, кстати, ненавистник?
...
Рейтинг: 0 / 0
Покритикуйте EF code-first
    #38977223
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttАлексей КА ORM-обёртка уже генерируется по БД.

1. Как это потом синхронизируется и поддерживается? Я имею в виду миграции.Как будто до появления EF миграции никто не делал. Рукописный SQL DDL.
hVostt2. Может ли ОРМ создать схему в пустой БД?Ну EF может это делать? У меня EF.
hVostt3. Без сгенерированного класса из БД теперь ни чихнуть ни пукнуть? Поясню, с CF мне понадобился новый класс, он не содержит бизнес-данных, поэтому его очевидно нет в концептуальной модели, но содержит данные, нужные для реализации части бизнес-логики. Я создаю класс по ходу написания кода, без отрыва "от производства", сразу пишу тесты и сразу могу протестировать. Запускаю дебаг и оно СРАЗУ работает, так как миграции и все дела.Я ничего не понял.
hVosttORM это уже давным давно больше, чем обёртка над БД. По крайне мере, если говорить об EF. Поэтому генерация из БД это ущёрбный подход. Может только если на первоначальной стадии, а дальше CF.Да пожалуйста, мне не жалко. :-)
...
Рейтинг: 0 / 0
Покритикуйте EF code-first
    #38977226
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexey2112ViPRosпропущено...

не гони
Пришёл главный ненавистник CF. А почему, кстати, ненавистник?Смотри шире, он ненавистник РМД и ООП. :-)
...
Рейтинг: 0 / 0
Покритикуйте EF code-first
    #38977236
Alexey2112
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttгенерация из БД это ущёрбный подход. Может только если на первоначальной стадии, а дальше CF.
Не на первоначальной стадии, ты хотел сказать, а на стадии дизайнера. Т. е. нужно просто создать/заиметь визуальный дизайнер таблиц. И чтобы каждое его действие сразу в миграцию отображалось - как в пакетах Офиса каждое действите логируется на VB. Тогда можно будет макросы писать для БД.

Но, если почитать блоги команды EF, редактор у них либо будет нескоро, либо вообще не. Что, конечно, не хорошо. Я вот диаграммами пока удовлетворяюсь - сделал БД на CF, отправил на сервер, смотрю диаграмму получившуюся.
...
Рейтинг: 0 / 0
Покритикуйте EF code-first
    #38977246
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexey2112Но, если почитать блоги команды EF, редактор у них либо будет нескоро, либо вообще не. Что, конечно, не хорошо.В Visual Studio есть Class Diagramm.
...
Рейтинг: 0 / 0
Покритикуйте EF code-first
    #38977419
Alexey2112
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КAlexey2112Но, если почитать блоги команды EF, редактор у них либо будет нескоро, либо вообще не. Что, конечно, не хорошо.В Visual Studio есть Class Diagramm.
Там ключики жёлтенькие и восьмёрки на боку есть?
...
Рейтинг: 0 / 0
Покритикуйте EF code-first
    #38977444
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей ККак будто до появления EF миграции никто не делал. Рукописный SQL DDL.

Я не любитель клавадрочерства ))

Алексей КЯ ничего не понял.

Написал классы, сразу заюзал, затестил, таблицы появились в базе. Сами. Всё само, автоматизация. Гастрабайтеры, у которых просто тяма не развита, пусть дрочат дизайнеры и клаву ))

Алексей КДа пожалуйста, мне не жалко. :-)

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

Мне тоже не жалко, ешь кактусы ))
Ввел метаданные, сразу появилось готовое приложение. Нифига делать не надо (никаких сраных "классов", форм, миграций и т.д.).
...
Рейтинг: 0 / 0
Покритикуйте EF code-first
    #38977522
Alexey2112
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttНаписал классы, ... затестил
А как данные тестить? И зачем? Я думал, только логику тестят.
...
Рейтинг: 0 / 0
Покритикуйте EF code-first
    #38977526
Alexey2112
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRoshVosttНаписал классы, сразу заюзал, затестил, таблицы появились в базе. Сами. Всё само, автоматизация. Гастрабайтеры, у которых просто тяма не развита, пусть дрочат дизайнеры и клаву ))

Мне тоже не жалко, ешь кактусы ))
Ввел метаданные, сразу появилось готовое приложение. Нифига делать не надо (никаких сраных "классов", форм, миграций и т.д.).
Это универсальное приложение, которое имеет одну кодовую базу для мобилок и десктопа, имеет масштабирующийся интерфейс типа Continuity?

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

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


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