|
|
|
Hibernate ...как средство проектирования БД??
|
|||
|---|---|---|---|
|
#18+
Разбираясь с ORM Hibernate в одной конторе поинтересовался давеча, как обстоит дело в "соседнем" проекте той же конторы с дизайном базы данных. (Коллеги юзают nHibernate), какой инструментарий используется. В ответ услыхал, что как такового дизайна БД нет вовсе ибо коллеги прочитали, что необходимы помысливания только в стиле ООП. Наследования/Объекты рулят. нХибернейт генерит во время разработки софт.продукта (который еще заказчик ни один не имеет пока) с.хему базы данных с нуля (Т.е про миграции данных речи нет (пока)). Когда я глянул таки в таблицы, нагенеренные чисто нХибернейтом ( а дотнетсишарп код для сущностей еще не видал), то обратил внимание, что все строковые атрибуты таблиц имеют тип varchar(255). Спросил, почему мол так. В ответ услыхал, что мол длина вводимых строк токма на стороне GUI проверяццно должна. Мол на уровне БД длина должна быть....длинная;-) Вообщем выяснилось, что не парились с определением допустимой длины. Вообще ее не дефинировали, это нХибер по умолчанию взял. Далее продолжен был диалог в стиле "так почему сами не определили возможные длины ?" =>"А это прикладное требование ". "А что было в тех.задании про длины?" => "А ничего не было...Потому решили вот так сделать". Любопытно другое: хотя в Т.З. по разрабатываемому софт.продукту о длинах полей ниче нет, но есть "предыдущий" софт.продукт, "родитель" так сказать нового продукта, где табличечки то имеют сходные строковые атрибуты с реально заданными длинами "не-по-умолчанию". Отдельная история про актуализирование с.хемы БД: коллеги полагают, что хибер сам все у клиентов нагенерит. При этом по "конвенции" в сущности могут только аттрибуты добавляться (т.е. таблицы со временем будут расти). Кроме того коллеги полагают, что де модели у них стройные все в 3НФ и выше. Имхо (Опыт разработок в других проектах сей подход) "помысливания объектами" чреват сюрпризами. Так как как не думай токма объектами как не надейся на хибер, но рано или поздно те же индексы надо будет добавлять. Хотя да, это удобно с одной стороны, но не до такой же степени... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.05.2013, 11:59 |
|
||
|
Hibernate ...как средство проектирования БД??
|
|||
|---|---|---|---|
|
#18+
kamenjahrИмхо (Опыт разработок в других проектах сей подход) "помысливания объектами" чреват сюрпризами. Так как как не думай токма объектами как не надейся на хибер, но рано или поздно те же индексы надо будет добавлять. Хотя да, это удобно с одной стороны, но не до такой же степени...Да это не помысливание объектами, это просто наняли студентов, которые клепают поделку. Тут даже больше ничего не скажешь, это как делать приложение на джаве или C#, в коде которого будут использоваться только тип string. А что, в системе проектирования структуры классов он по умолчанию устанавливается, и не надо париться. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.05.2013, 14:03 |
|
||
|
Hibernate ...как средство проектирования БД??
|
|||
|---|---|---|---|
|
#18+
Полагаю, проект не доживет до проблем с БД. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.05.2013, 18:51 |
|
||
|
Hibernate ...как средство проектирования БД??
|
|||
|---|---|---|---|
|
#18+
kamenjahrИмхо (Опыт разработок в других проектах сей подход) "помысливания объектами" чреват сюрпризами. Так как как не думай токма объектами как не надейся на хибер, но рано или поздно те же индексы надо будет добавлять. Хотя да, это удобно с одной стороны, но не до такой же степени... Дык, ынтерпрайз же! Скажут, что для их СУПЕР-ПУПЕР-ЫНТЫРПРАЗА нужон кластор за мильон лямов. Чтобы было секурно, надежно, 24/7 и пр. Ну и откатоемкость у данного решения будет соответствующая. А то что база тормозит на простом селекте, кто-ж этот селект за гибернейтом увидит. <:o) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.05.2013, 07:25 |
|
||
|
|

start [/forum/topic.php?fid=32&msg=38246008&tid=1541287]: |
0ms |
get settings: |
8ms |
get forum list: |
20ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
69ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
51ms |
get tp. blocked users: |
1ms |
| others: | 244ms |
| total: | 413ms |

| 0 / 0 |
