metaclass: (Default)
[personal profile] metaclass
Каждый раз когда я использую DSL и кодогенерацию, у меня возникает мозговой ступор от ощущения, что я занимаюсь чем-то постыдным и греховным. Как будто у ребенка конфету отнимаю, или там толкаю хромого деда с палочкой на льду, чтобы он упал.

Это при том, что реально альтернативы нет, т.к. вариант "все то же самое сделать вручную" не масштабируем на мои задачи - нету 10 людей, которым можно было бы поставить задачу "садишся и в лоб делаешь таблицу из 20 полей, запросы для нее, валидаторы, GUI и печатную форму". А есть очень много повторяющихся кусков кода и общая структура, которая просто располагает к тому, чтобы это все сгенерить из модели.

Но ощущение неадекватности не пропадает.

Date: 2010-03-24 10:26 am (UTC)
From: [identity profile] lionet.livejournal.com
Cпроси [livejournal.com profile] plumqqz, у него богатый опыт. Он подскажет, как правильно [относиться].

Date: 2010-03-24 10:39 am (UTC)
From: [identity profile] metaclass.livejournal.com
Ну, вот он и использует эпитеты типа "рукоблудие". Но в данном случае, рукоблудие это обычная реализация, а DSL и кодогенерация - это мозговая похоть :)
From: [identity profile] plumqqz.livejournal.com
Ну генерится и генерится, почему бы и нет? Что тут рукоблудного, собственно?
From: [identity profile] metaclass.livejournal.com
Функциональщина и демонстративное нежелание делать то что требуется по заданию. Стыдно! :)
From: [identity profile] plumqqz.livejournal.com
Функциональщина - действительно стыдно. Собственно генерация - ни капельки.
From: [identity profile] plumqqz.livejournal.com
Что почему? Почему не вижу ужаса, почему функциональщина - это стыдно или почему генерация?
From: [identity profile] plumqqz.livejournal.com
Потому что это хамство по отношению к тому человеку, который будет поддерживать фунциональную софтинку после автора. "Я тут поразвлекался, а что ты заебешься - мне похуй". Вроде как нассать в чужом лифте, примерно то же самое.
From: [identity profile] metaclass.livejournal.com
Это хамство по отношению к клиентам и начальству, которых душит жаба купить 10 обычных программистов. Будут покупать психов, поиском через мой ЖЖ. Ну или купят таки 20-30 и перепишут заново.

Date: 2010-03-24 10:33 am (UTC)
From: [identity profile] jamhed.livejournal.com
Аналогичное ощущение. Может быть оно и верное.

Date: 2010-03-24 10:38 am (UTC)
From: [identity profile] aamonster.livejournal.com
Перечитать Александреску, попытаться сделать то же самое на темплейтах. После появления убежденности "они все сумасшедшие" - полчасика отдохнуть и заняться простой кодогенерацией, она будет приносить радость.

Date: 2010-03-24 10:39 am (UTC)
From: [identity profile] alexott.livejournal.com
при этом ты этим 10 людям будешь все рассказывать до мелочей...
нафиг-нафиг такое, я лучше напишу DSL :-)

Date: 2010-03-24 10:41 am (UTC)
From: [identity profile] metaclass.livejournal.com
И таки да, все нужно расписывать до мелочей.
Но: потом когда звонят юзера - разбираться будут эти люди, а я буду хаскель спокойно дрочить в отдельном изолированном помещении. А с DSL - разбираться придется мне, отрываясь от хаскеля :)

Date: 2010-03-24 10:48 am (UTC)
From: [identity profile] alexott.livejournal.com
ну никто не мешает научить народ DSL'ю - это часто проще, чем склеивать работу 10 человек в один продукт

Date: 2010-03-24 10:50 am (UTC)
From: [identity profile] metaclass.livejournal.com
DSL резко становится сложнее, если его подгонять под обычных разработчиков.

Date: 2010-03-24 10:54 am (UTC)
From: [identity profile] alexott.livejournal.com
ну это от предметной области зависит...

Date: 2010-03-24 12:09 pm (UTC)
From: [identity profile] permea-kra.livejournal.com
Сделайте eDSL в хаскеле...

Date: 2010-03-24 12:14 pm (UTC)
From: [identity profile] metaclass.livejournal.com
Оно на F#, в целях интеграции с внешним миром )

Date: 2010-03-24 12:49 pm (UTC)
From: [identity profile] permea-kra.livejournal.com
Дык какая разница, откуда код генерить? Или оно обязательно должно в рантайме должно работать?

Date: 2010-03-24 12:32 pm (UTC)
ext_659950: (Default)
From: [identity profile] perplexed-bear.livejournal.com
А ты скорми DSL программе-читалке голосом, и пусть она отвечает пользователям.

Date: 2010-03-24 12:31 pm (UTC)
From: [identity profile] norian.livejournal.com
сделать дсл генератор - достойная задача, использовать его самому - нет, лучше отдать какому-нть студенту

Date: 2010-03-24 07:00 pm (UTC)
From: [identity profile] komarov.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 Sep. 21st, 2025 05:45 pm
Powered by Dreamwidth Studios