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] norguhtar.livejournal.com 2013-04-04 05:18 am (UTC)(link)

- Skype

Только под винду и теперь уже не надолго.


- Total Commander
- The KMPlayer
- Light Alloy

А это все еще живое?

- QIP

Уже нет. C# WPF


- Download Master
- FastStone Image Viewer
- FastStone Capture
- Парус Бухгалтерия

О да все это весьма известные программы.


Вы писали на Delphi? :)

Все студенты наших вузов в свое время писали на Delphi


Исходники VCL идут в комплекте с дельфи, кроме самых дешевых и кастрированных комплектаций.

Значит у нас была такая комплектация.


Порядок тот же самый. Где хваленая разница от применения ОРМ?

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