metaclass: (Default)
metaclass ([personal profile] metaclass) wrote2013-04-03 01:06 am

В Советской Белоруссии SQL разжигает айседа

http://theiced.livejournal.com/238346.html
Собственно, про кобол я не знаю, на дельфи пишу уже 15 лет и никак избавится от него не могу (слишком много легаси кода), а вот про SQL я с ним не согласен.
Сам по себе SQL очень хорошо подходит для генерации отчетов. Если отчет сводится к фильтрации-сортировке-группировке множеств - идеально. С рекурсивными CTE - еще и деревья можно обрабатывать, не особо включая мозг. Всунув поверх этого минимальных размеров постобработку на какой-нибудь функциональщине, можно сделать почти любой отчет, пришедший в голову свихнувшимся на Excel выпускникам нархоза, работающим в минстате, минфине и МНС.

Но когда доходит до процедурных расширений, API между СУБД и клиентскими приложениями или каких-нибудь вещей, которые забыли вовремя добавить в стандарт - начинается полная, немыслимая жопа.
Например, проклятая тема - генерация автоинкрементных ключей и возвращение значений автоматически заполненных полей. Кто во что горазд - identity, генераторы, sequence, функции (в каждой СУБД названные по разному), returning, заебы на тему "вызывать в той же транзакции и сессии" и прочая и прочая. Про вариации на тему "вернуть поле, которое заполняется автоматически, но не является ключом/identity" лучше даже не думать.
Неудивительно, что люди при первой же возможности сбегают в ORM (которые являются уже второй производной от всего этого маразма и несут на себе его неизгладимый след).

[identity profile] fraks-nsk.livejournal.com 2013-04-03 05:03 am (UTC)(link)
А я не только про запросы, я про их количество и таскание ненужных данных во имя заполнения полей

[identity profile] norguhtar.livejournal.com 2013-04-03 05:11 am (UTC)(link)
Ну извиняйте, но людям нужны более простые интерфейсы. А то так выяснится что во имя передвижения мы вместо того чтобы ходить ногами ездим на весьма сложном с технической стороны автомобиле.

[identity profile] fraks-nsk.livejournal.com 2013-04-03 05:25 am (UTC)(link)
В каком месте ОРМ стал проще чем без него?

[identity profile] norguhtar.livejournal.com 2013-04-03 05:34 am (UTC)(link)
У вас был софт с превалированием CRUD операций? Это там где есть оператор и он что-то заносит в базу.

[identity profile] fraks-nsk.livejournal.com 2013-04-03 05:36 am (UTC)(link)
Не только был но и есть. Я классический складописатель :)

[identity profile] norguhtar.livejournal.com 2013-04-03 05:37 am (UTC)(link)
В таком случае ответьте мне чем плох в этом контексте ORM? Он на CRUD операциях как раз таки очень даже удобен.

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-03 06:00 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-03 06:09 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-03 06:13 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-03 06:21 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-03 06:31 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-03 06:36 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-03 06:53 (UTC) - Expand

(no subject)

[identity profile] metaclass.livejournal.com - 2013-04-03 06:59 (UTC) - Expand

(no subject)

[identity profile] theiced.livejournal.com - 2013-04-03 07:06 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-03 07:08 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-03 07:16 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-03 07:18 (UTC) - Expand

(no subject)

[identity profile] vp.livejournal.com - 2013-04-03 09:32 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-03 09:48 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-03 13:39 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-03 13:43 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-03 15:03 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-03 15:22 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-03 15:35 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-03 15:43 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-03 15:57 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-03 16:09 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-03 16:18 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-03 17:19 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-03 17:46 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-04 02:27 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-04 02:46 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-04 03:08 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-04 03:21 (UTC) - Expand

...

[identity profile] norguhtar.livejournal.com - 2013-04-04 03:30 (UTC) - Expand

...

[identity profile] fraks-nsk.livejournal.com - 2013-04-04 04:13 (UTC) - Expand

...

[identity profile] norguhtar.livejournal.com - 2013-04-04 04:36 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-03 16:04 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-03 16:20 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-03 16:31 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-03 17:29 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-03 17:47 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-04 02:28 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-04 02:48 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-04 03:09 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-03 06:43 (UTC) - Expand

(no subject)

[identity profile] vp.livejournal.com - 2013-04-03 07:09 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-03 07:18 (UTC) - Expand

(no subject)

[identity profile] vp.livejournal.com - 2013-04-03 09:31 (UTC) - Expand

(no subject)

[identity profile] theiced.livejournal.com - 2013-04-03 07:23 (UTC) - Expand

(no subject)

[identity profile] vp.livejournal.com - 2013-04-03 09:38 (UTC) - Expand

(no subject)

[identity profile] theiced.livejournal.com - 2013-04-04 02:13 (UTC) - Expand

(no subject)

[identity profile] woldemar kuchelbeker - 2013-04-03 09:48 (UTC) - Expand

(no subject)

[identity profile] jakobz.livejournal.com - 2013-04-03 20:19 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-03 15:05 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-03 15:45 (UTC) - Expand

(no subject)

[identity profile] prepor.livejournal.com - 2013-04-03 19:09 (UTC) - Expand

(no subject)

[identity profile] theiced.livejournal.com - 2013-04-03 19:15 (UTC) - Expand

(no subject)

[identity profile] prepor.livejournal.com - 2013-04-03 19:17 (UTC) - Expand

(no subject)

[identity profile] vp.livejournal.com - 2013-04-04 07:01 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-04 08:17 (UTC) - Expand

(no subject)

[identity profile] vp.livejournal.com - 2013-04-04 08:37 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-04 08:45 (UTC) - Expand

(no subject)

[identity profile] berezovsky.livejournal.com - 2013-04-04 08:48 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-04 08:53 (UTC) - Expand

(no subject)

[identity profile] vp.livejournal.com - 2013-04-04 09:04 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-05 01:16 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-05 09:11 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-04 08:22 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-03 06:19 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-03 06:25 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-03 06:57 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-03 07:13 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-03 07:20 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-03 07:22 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-03 07:22 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-03 07:25 (UTC) - Expand

(no subject)

[identity profile] metaclass.livejournal.com - 2013-04-03 08:34 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-03 08:45 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-03 13:46 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-03 13:48 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-03 15:16 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-03 15:25 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-03 15:48 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-03 15:54 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-03 16:21 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-03 17:23 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-03 17:49 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-03 17:54 (UTC) - Expand

(no subject)

[identity profile] theiced.livejournal.com - 2013-04-03 19:10 (UTC) - Expand

(no subject)

[identity profile] theiced.livejournal.com - 2013-04-03 19:34 (UTC) - Expand

(no subject)

[identity profile] theiced.livejournal.com - 2013-04-03 19:35 (UTC) - Expand

(no subject)

[identity profile] theiced.livejournal.com - 2013-04-04 00:56 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-04 00:31 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-04 01:43 (UTC) - Expand

(no subject)

[identity profile] theiced.livejournal.com - 2013-04-04 02:08 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-04 02:24 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-04 02:43 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-04 03:07 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-04 03:17 (UTC) - Expand

...

[identity profile] norguhtar.livejournal.com - 2013-04-04 03:29 (UTC) - Expand

...

[identity profile] fraks-nsk.livejournal.com - 2013-04-04 04:08 (UTC) - Expand

...

[identity profile] norguhtar.livejournal.com - 2013-04-04 04:34 (UTC) - Expand

...

[identity profile] fraks-nsk.livejournal.com - 2013-04-04 04:55 (UTC) - Expand

...

[identity profile] norguhtar.livejournal.com - 2013-04-04 05:47 (UTC) - Expand

...

[identity profile] metaclass.livejournal.com - 2013-04-04 05:59 (UTC) - Expand

...

[identity profile] norguhtar.livejournal.com - 2013-04-04 06:01 (UTC) - Expand

...

[identity profile] evil-invader.livejournal.com - 2013-04-04 06:41 (UTC) - Expand

...

[identity profile] metaclass.livejournal.com - 2013-04-04 06:46 (UTC) - Expand

...

[identity profile] evil-invader.livejournal.com - 2013-04-04 07:24 (UTC) - Expand

...

[identity profile] metaclass.livejournal.com - 2013-04-04 07:27 (UTC) - Expand

...

[identity profile] fraks-nsk.livejournal.com - 2013-04-04 08:34 (UTC) - Expand

...

[identity profile] berezovsky.livejournal.com - 2013-04-04 08:35 (UTC) - Expand

...

[identity profile] fraks-nsk.livejournal.com - 2013-04-04 08:42 (UTC) - Expand

...

[identity profile] norguhtar.livejournal.com - 2013-04-04 08:42 (UTC) - Expand

...

[identity profile] fraks-nsk.livejournal.com - 2013-04-04 08:47 (UTC) - Expand

...

[identity profile] norguhtar.livejournal.com - 2013-04-04 08:56 (UTC) - Expand

...

[identity profile] fraks-nsk.livejournal.com - 2013-04-04 09:03 (UTC) - Expand

...

[identity profile] norguhtar.livejournal.com - 2013-04-04 09:18 (UTC) - Expand

...

[identity profile] fraks-nsk.livejournal.com - 2013-04-04 05:05 (UTC) - Expand

...

[identity profile] norguhtar.livejournal.com - 2013-04-04 05:18 (UTC) - Expand

...

[identity profile] metaclass.livejournal.com - 2013-04-04 05:52 (UTC) - Expand

...

[identity profile] norguhtar.livejournal.com - 2013-04-04 05:54 (UTC) - Expand

...

[identity profile] anonim-legion.livejournal.com - 2013-04-04 08:02 (UTC) - Expand

...

[identity profile] norguhtar.livejournal.com - 2013-04-04 08:08 (UTC) - Expand

...

[identity profile] anonim-legion.livejournal.com - 2013-04-04 08:19 (UTC) - Expand

...

[identity profile] norguhtar.livejournal.com - 2013-04-04 08:22 (UTC) - Expand

...

[identity profile] Дмитрий Васильев - 2013-04-04 08:18 (UTC) - Expand

...

[identity profile] norguhtar.livejournal.com - 2013-04-04 08:23 (UTC) - Expand

...

[identity profile] fraks-nsk.livejournal.com - 2013-04-04 08:36 (UTC) - Expand

...

[identity profile] berezovsky.livejournal.com - 2013-04-04 08:37 (UTC) - Expand

...

[identity profile] norguhtar.livejournal.com - 2013-04-04 08:40 (UTC) - Expand

...

[identity profile] evil-invader.livejournal.com - 2013-04-04 11:53 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-04 08:10 (UTC) - Expand

...

[identity profile] anonim-legion.livejournal.com - 2013-04-04 08:17 (UTC) - Expand

...

[identity profile] norguhtar.livejournal.com - 2013-04-04 08:21 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-04 08:00 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-04 08:38 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-04 08:46 (UTC) - Expand

...

[identity profile] fraks-nsk.livejournal.com - 2013-04-04 08:52 (UTC) - Expand

...

[identity profile] norguhtar.livejournal.com - 2013-04-04 08:54 (UTC) - Expand

...

[identity profile] fraks-nsk.livejournal.com - 2013-04-04 09:01 (UTC) - Expand

...

[identity profile] norguhtar.livejournal.com - 2013-04-04 09:03 (UTC) - Expand

...

[identity profile] fraks-nsk.livejournal.com - 2013-04-04 09:04 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-04 08:06 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-04 08:19 (UTC) - Expand

...

[identity profile] anonim-legion.livejournal.com - 2013-04-04 08:22 (UTC) - Expand

...

[identity profile] norguhtar.livejournal.com - 2013-04-04 08:25 (UTC) - Expand

(no subject)

[identity profile] prepor.livejournal.com - 2013-04-03 19:35 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-04 00:23 (UTC) - Expand

(no subject)

[identity profile] prepor.livejournal.com - 2013-04-04 09:03 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-04 09:15 (UTC) - Expand

(no subject)

[identity profile] metaclass.livejournal.com - 2013-04-03 06:27 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-03 06:28 (UTC) - Expand

(no subject)

[identity profile] metaclass.livejournal.com - 2013-04-03 06:52 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-03 07:04 (UTC) - Expand

(no subject)

[identity profile] nivanych.livejournal.com - 2013-04-03 17:47 (UTC) - Expand

(no subject)

[identity profile] metaclass.livejournal.com - 2013-04-03 19:11 (UTC) - Expand

(no subject)

[identity profile] theaspect.livejournal.com - 2013-04-05 06:42 (UTC) - Expand

(no subject)

[identity profile] theiced.livejournal.com - 2013-04-03 06:51 (UTC) - Expand

[identity profile] fraks-nsk.livejournal.com 2013-04-03 06:10 am (UTC)(link)
Между прочим, без отношения к обсуждаемому вопросу эта фраза - истина.

"мы вместо того чтобы ходить ногами ездим на весьма сложном с технической стороны автомобиле."

[identity profile] vp.livejournal.com 2013-04-03 07:02 am (UTC)(link)
Не, тут речь о разумности. Чтобы действительно не было, что я выбираю одну запись, а оно качает на клиента 100500 других

[identity profile] norguhtar.livejournal.com 2013-04-03 07:28 am (UTC)(link)
Вы же отлично знаете, что это все отлично крутится в ORM. А так же выявляется довольно просто и чинится так же.

[identity profile] henu3detb.livejournal.com 2013-04-03 11:35 am (UTC)(link)
выявляется часто на продакшне, когда данных почему-то стало много.

[identity profile] fraks-nsk.livejournal.com 2013-04-03 01:49 pm (UTC)(link)
Не. Не так.
На SQL оптимизация выполняется в процессе написания, и гавно видно сразу, кроме кривых планов на возросших данных.
А на ОРМ приложив усилие можно тоже написать гладко, но по дефолту легко получить гавно и не заметить этого.

[identity profile] norguhtar.livejournal.com 2013-04-03 01:53 pm (UTC)(link)

На SQL оптимизация выполняется в процессе написания, и гавно видно сразу, кроме кривых планов на возросших данных.

Ну рассказывайте, рассказывайте. Что ни разу индекс не забывали?


А на ОРМ приложив усилие можно тоже написать гладко, но по дефолту легко получить гавно и не заметить этого.

На ORM не надо прикладывать усилий чтобы написать гладко. Там точно так же как и в случае SQL мы знаем тут будет много надо сразу сделать оптимизацию. Опять же такая оптимизация туда вносится ровно так же как и в SQL. У меня есть большой проект на ORM JPA и если бы я использовал SQL то усилий я бы затрачивал местами даже больше. Так-как местами пришлось бы выкручиваться а тут как а там как.

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-03 17:12 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-03 17:28 (UTC) - Expand

(no subject)

[identity profile] metaclass.livejournal.com - 2013-04-03 17:38 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-03 17:52 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-04 00:51 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-04 00:55 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-04 01:13 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-04 02:15 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-04 02:18 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-04 02:31 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-04 02:50 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-04 03:11 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-04 03:25 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-04 03:35 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-04 04:21 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-04 04:44 (UTC) - Expand

(no subject)

[identity profile] metaclass.livejournal.com - 2013-04-04 05:56 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-04 06:01 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-04 02:55 (UTC) - Expand

(no subject)

[personal profile] develop7 - 2013-04-04 09:19 (UTC) - Expand

(no subject)

[identity profile] berezovsky.livejournal.com - 2013-04-04 09:21 (UTC) - Expand

(no subject)

[personal profile] develop7 - 2013-04-04 12:42 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-05 01:18 (UTC) - Expand

(no subject)

[personal profile] develop7 - 2013-04-07 17:48 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-08 01:12 (UTC) - Expand
(deleted comment)

(no subject)

[identity profile] metaclass.livejournal.com - 2013-04-07 06:29 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-07 12:45 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-03 18:01 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-03 18:15 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-03 18:22 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-04 00:22 (UTC) - Expand

(no subject)

[identity profile] theiced.livejournal.com - 2013-04-03 18:06 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-03 18:22 (UTC) - Expand

(no subject)

[identity profile] metaclass.livejournal.com - 2013-04-03 18:26 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-03 18:39 (UTC) - Expand

(no subject)

[identity profile] theiced.livejournal.com - 2013-04-03 18:48 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-04 02:32 (UTC) - Expand

(no subject)

[identity profile] theiced.livejournal.com - 2013-04-04 02:34 (UTC) - Expand

(no subject)

[identity profile] metaclass.livejournal.com - 2013-04-04 05:46 (UTC) - Expand

[identity profile] norguhtar.livejournal.com 2013-04-03 05:24 am (UTC)(link)
Ну извиняйте, но людям нужны более простые интерфейсы. А то так выяснится что во имя передвижения мы вместо того чтобы ходить ногами ездим на весьма сложном с технической стороны автомобиле.

[identity profile] fraks-nsk.livejournal.com 2013-04-03 05:34 am (UTC)(link)
Вы не путайте людей которые пользуются софтиной с людьми которые эту софтину пишут.

[identity profile] norguhtar.livejournal.com 2013-04-03 05:39 am (UTC)(link)
А я не путаю. Более простой интерфейс нужен не для тех кто софтину пишет, а для тех кто ее будет использовать.

[identity profile] fraks-nsk.livejournal.com 2013-04-03 05:46 am (UTC)(link)
Как будет выглядеть интерфейс программы - совершенно не зависит от того на чем и как она написана.
На любом инстументе можно написать любую программу.

[identity profile] norguhtar.livejournal.com 2013-04-03 05:58 am (UTC)(link)
Это вы к чему? Основная цель программиста в любом случае написать ПО которое автоматизирует тот или иной аспект.

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-03 06:04 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-03 06:10 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-03 06:22 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-03 06:27 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-03 06:45 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-03 06:49 (UTC) - Expand

(no subject)

[identity profile] theiced.livejournal.com - 2013-04-03 07:09 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-03 07:17 (UTC) - Expand

(no subject)

[identity profile] theiced.livejournal.com - 2013-04-03 07:25 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-03 06:24 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-03 06:31 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-03 06:41 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-03 06:47 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-03 07:00 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-03 07:14 (UTC) - Expand

(no subject)

[identity profile] metaclass.livejournal.com - 2013-04-03 06:54 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-03 07:11 (UTC) - Expand

(no subject)

[identity profile] metaclass.livejournal.com - 2013-04-03 07:21 (UTC) - Expand

(no subject)

[identity profile] metaclass.livejournal.com - 2013-04-03 20:18 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-03 13:53 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-03 13:57 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-03 15:28 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-03 15:33 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-03 16:09 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-03 16:14 (UTC) - Expand

[identity profile] vp.livejournal.com 2013-04-03 06:51 am (UTC)(link)
Давайте определимся с целями и задачами, а то так далеко зайдем.
Цель - не "сгенерить по имеющимся классам какую-то базу и какой-то ДАО". Получится херня.
Должна нормально вдумчиво проектироваться база, под нее писаться на ОРМе прослойка. Цель прослойки - упрощение работы с базой и простота будушего рефакторинга. Но мозг это не отменяет, и то, что он генерирует, нужно смотреть глазами.

[identity profile] fraks-nsk.livejournal.com 2013-04-03 07:03 am (UTC)(link)
Со всем согласен, кроме того что прослойка должна писаться на ОРМ.
И вообще, толщина прослойки начинается от нуля.

[identity profile] norguhtar.livejournal.com 2013-04-03 03:59 pm (UTC)(link)
Использование ORM позволяет мне эту прослойку банально по базе сгенерить. Я обычно сначала проектирую СУБД, потом генерю по нему ORM и все. Дальше мне только DAO добавлять нужное. А это я делаю через spring-data http://static.springsource.org/spring-data/data-jpa/docs/current/reference/html/repositories.html

В результате создание слоя для работы с СУБД у меня занимает весьма мало времени по сравнению с другими методами. И причем я сразу получаю код который могу отдать другому человеку.

[identity profile] fraks-nsk.livejournal.com 2013-04-03 04:27 pm (UTC)(link)
У вас наверное проблема в том что кодинг занимает много времени. Вы наверное делаете по приложению в неделю. Может быть да, в вашем случае выпекание пирожков на потоке имеет смысл.
Моей программке начиная от первых версий лет наверное 15 уже, можете прикинуть как часто мне приходится писать новые привязки к полям.

Каждому инструменту - свое место.

[identity profile] norguhtar.livejournal.com 2013-04-03 05:21 pm (UTC)(link)

У вас наверное проблема в том что кодинг занимает много времени. Вы наверное делаете по приложению в неделю. Может быть да, в вашем случае выпекание пирожков на потоке имеет смысл.

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

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-03 18:02 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-03 18:09 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-03 18:03 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-03 18:08 (UTC) - Expand

(no subject)

[identity profile] metaclass.livejournal.com - 2013-04-03 18:17 (UTC) - Expand

(no subject)

[identity profile] metaclass.livejournal.com - 2013-04-03 20:41 (UTC) - Expand

(no subject)

[identity profile] metaclass.livejournal.com - 2013-04-03 20:46 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-04 00:21 (UTC) - Expand

[identity profile] vp.livejournal.com 2013-04-03 05:20 pm (UTC)(link)
>Я обычно сначала проектирую СУБД, потом генерю по нему ORM и все

Генерите ОРМ по базе? Или как?

[identity profile] norguhtar.livejournal.com 2013-04-03 05:24 pm (UTC)(link)
Да по базе. Для JPA есть отличный инструментарий в Eclipse. Открываешь соединение говоришь сгенери мне отсюда классов. Далее максимум надо сделать доводку по месту.

(no subject)

[identity profile] vp.livejournal.com - 2013-04-03 17:32 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-03 17:37 (UTC) - Expand

[identity profile] evil-invader.livejournal.com 2013-04-03 08:20 pm (UTC)(link)
Можно наоборот. Набросал энтитей - оно сгенерило таблицы в базе. Но это в простом случае. А так конечно по базе оно очень чётко генерит нужные классы.