metaclass: (Default)
[personal profile] metaclass
http://tonsky.livejournal.com/275048.html

Если обработаться на жабе и дотнете, то записи в таблицах БД действительно начинают казаться объектами, только заколдованными злыми DBA по чернокнижию дейта и кодда. И нужно использовать специальные магические зелья в виде ORM чтобы объекты расколдовать.

А если работать в основном с СУБД и понимать, что "базе-то не объекты, в базе именно что отношения." то внезапно оказывается, что объекты-то не так часто и нужны, а иногда и вообще вредны.

Оно конечно выглядит просто - "взял из ORM объект, показал в форме, по нажатию ОК отдал его ORM на сохранение". Но подобные решения намертво увязывают структуру БД, результаты запросов и типы объектов в программе. И вынуждают использовать в БД только структуры данных, которые хорошо в такое укладываются.

Date: 2013-04-05 09:59 am (UTC)
From: [identity profile] sergiej.livejournal.com
Вот меня удивляет как вам не надоест всё это обговаривать в сотый раз. Как будто теоретики собрались и делают систему в космосе. В 99,99% выбор между вариантами архитектуры в области БД-ORM полностью продавливается "внешней" ситуацией, будь то уже нафигаченное "предками" в системе, требования клиента, в конце концов отсутствие 100 айседов и присутствие 200 индусов, которые с горем пополам что-то наковыряют, если им дашь готовые объекты и их массивы, но заклинятся наглухо, если им дашь что-либо функцональное.

Date: 2013-04-05 10:09 am (UTC)
From: [identity profile] metaclass.livejournal.com
Так задача внятно до сих пор не решена.
Потому что для ее решения требуются зависимые типы (== никаких 200 индусов, вместо них пару айседов).
А существующие решения - разной степени корявости и индусятины паллиатив.

Date: 2013-04-05 11:03 am (UTC)
From: [identity profile] mikkim08.livejournal.com
Потому что для ее решения требуются зависимые типы

А можно на пальцах показать и рассказать ?

Date: 2013-04-05 01:18 pm (UTC)
From: [identity profile] nivanych.livejournal.com
> вместо них пару айседов

А вот это вы обманываете!
Чтобы яйседы пошли, да начали статическую типизацию пользовать?!

Date: 2013-04-05 10:49 am (UTC)
From: [identity profile] globalhvost.livejournal.com
А если доказать экономическую выгоду от использования нормального подхода (коллекции отношений) относительно метода с набором дешевой рабочей силы?

Date: 2013-04-05 11:05 am (UTC)
From: [identity profile] sergiej.livejournal.com
Ну попробуйте. Средний белорусский айсед минимум в два раза дороже индуса. Средний европейский айсед - в три. Для экономического обоснования надо доказать что айседы минимум в три раза быстрее сделают проект. Получится ли это? Может быть в идеальной конторе (ну не знаю, Гугле например) такое и бывает, в реальном мире "белая" европейская команда делает задачу в лучшем случае на 20%-30% быстрее, добавляется выше качество, что условно экономит ещё 10% на постпродакшн фиксах. В итоге - минус на фоне банды индусов. Если брать только лучших из лучших, которые сделают реально в два раза быстрее, то они будут стоить уже не в 3 раза, а в 5 раз дороже, и утянуть их у тебя будут пытаться все, в итоге гений уйдёт, а его код может поддерживать только он сам, потому что это будет не голимая джава, а что-то читаемое только после ведра вотки. Причём другой гениальный айсед с этим кодом разбираться не станет, он всё перепишет наново, потому что гении они абсолтны, и не используют чужой код, который в любом случае отстой для настоящего гения.

Date: 2013-04-05 12:32 pm (UTC)
From: [identity profile] guamoka.livejournal.com
к этому надо еще присовокупить тот факт, что многие проекты 83% пишутся ради освоения бабла ради самого процесса написания проекта. вывод: выбор исполнителей и технологий самоочевиден:-)

Date: 2013-04-05 12:37 pm (UTC)
From: [identity profile] sergiej.livejournal.com
И это тоже. Но я в таких стараюсь не участвовать. Поэтому приходится терпеть и айседов и всякие аджайлы :)

Profile

metaclass: (Default)
metaclass

April 2017

S M T W T F S
      1
2345678
9101112 131415
16171819202122
23242526272829
30      

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jul. 26th, 2025 01:33 pm
Powered by Dreamwidth Studios