Информация об изменениях

Сообщение Re[8]: msbuild поверх xml - была плохая идея? от 23.11.2023 1:34

Изменено 23.11.2023 1:46 Alekzander

Re[8]: msbuild поверх xml - была плохая идея?
Здравствуйте, rosencrantz, Вы писали:

R>>>Да, когда только начинаешь — мышкой может и комфортнее. Но когда начинаешь, обычно нет задачи выстроить специфический процесс сборки.


A>>А те, кто выстраивают специфический процесс сборки — они, конечно же, не люди, и комфорт не любят, ага.


R>Абсолютное большинство инструментов для сборки оформлены как "конфиг + тул для его исполнения". Хоть мы говорим про всякие "локальные" инструменты сборки — Gradle, Maven, MSBuild, Make, хоть мы говорим про CI-решения типа GitHub Actions, GitLab CI, Concourse CI, AWS CodeBuild/CodePipeline. Везде пишется конфиг руками. UI там конечно есть, но он чаще для целей посмотреть билд логи, а не для того, чтобы дизайнить процедуру сборки.


R>Мышко-ориентированные решения это вымирающее меньшинство. Студия — была отличным примером 10-20 лет назад, сейчас вот меня в топике сливают, говорят, что уже всё, можно писать руками и нормально работает. Есть билдсервер TeamCity — там тоже 10 лет назад не было конфигов, была мышка, но за прошедшие 10 лет конфиги появились (с Jenkins аналогичная история).


R>Слово "комфорт" здесь наверно не приведёт к конструктивному разговору, потому что, в зависимости от степени погружения в вопрос, комфорт будет от "слава богу всё свелось к одной галочке" до "слава богу тут внятно видно как устроен процесс и я могу просто написать 10 очевидных строчек XML, чтобы решить свою задачу".


Ещё как приведёт к конструктивному разговору. Было бы желание.

Только для начала надо понять, что мышка тут ни при чём. Это же не Фотошоп, чтобы тыкать в пиксели. В студии можно и с клавы работать. Это не "мышка", это, как я уже написал, "формат документа" + "программа-редактор". То есть, концепт, типичный для классического Майкрософта. У них всюду были документы и редакторы для их обработки. Конечно, студия не совсем обычный редактор, непохожий на Блокнот, но на уровне Save Project / Save Project As... это, всё-таки, редактор.

А что такое редактор? Это, в первую очередь, генерация минимального готового документа. То есть, в данном случае, генерация набора значений по умолчанию для полного работоспособного сценария. То есть, ты создаёшь новый проект, заходишь в свойства — а там всё прописано от и до. Во-первых, ты видишь, какие свойства вообще бывают. Во-вторых, можешь поменять одно, связанное, скажем, с оптимизацией. Классический способ в чём-то разобраться — взять большое заведомо работоспособное и менять по кусочку.

Я, например, специализируюсь в узкой области, и изучать этот ваш Maven мне хочется меньше всего. Студия позволяла мне сосредоточиться на моих задачах, при этом оставляла возможность что-то выборочно поменять в самой сложной схеме сборки, не вникая во все детали. Разделение труда.

Напротив, Java тебя заставит разобраться во всех хитросплетениях, прежде чем ты добьёшься хоть какого-то полезного эффекта. Я говорю сейчас не только о системах сборки, а вообще об их культуре. Два дня эксепшены курить, чтобы только понять, что в таком-то XML-конфиге надо было дописать то-то и то-то, это для них типично. И стоит за этим самая пошлая мотивация в виде борьбы за сохранение ненужных рабочих мест.

Ты, конечно, прав про направление тренда. "Вымирающее меньшинство" это, конечно, сильно сказано, но всё катится в ту сторону. И это деградация.

А студия это мутант, который при лысом разодрали во все стороны люди с разной идеологией и разным уровнем интеллекта (Гейтс-то лично во все программистские тонкости вникал, при нём такой каши не было). По уму если, надо было сделать сборку студией в командной строке из "документа", так же, как печать из Ворда.

A>>Тут обе стороны говно, ИМХО. То, что студия билдит не через свой же msbuild, это, конечно, косячина. Но и то, что конкуренты не мыслят категориями "формат документа", "программа-редактор" и т.п., а следуют концепции "кто настроит файлов пачку, тот и сбилдит водокачку", это хорошим словом тоже никак не назовёшь. Обожаю мир Java, с кучей запутанных конфигов, без документации, без тулзов, без генерации значений по умолчанию. Они изобрели девопсов, когда те ещё не были мейнстримом.


R>В Java конечно есть инструменты, которые даже с ридми не понятно как настраивать, но они не так чтобы мейнстрим.
Re[8]: msbuild поверх xml - была плохая идея?
Здравствуйте, rosencrantz, Вы писали:

R>>>Да, когда только начинаешь — мышкой может и комфортнее. Но когда начинаешь, обычно нет задачи выстроить специфический процесс сборки.


A>>А те, кто выстраивают специфический процесс сборки — они, конечно же, не люди, и комфорт не любят, ага.


R>Абсолютное большинство инструментов для сборки оформлены как "конфиг + тул для его исполнения". Хоть мы говорим про всякие "локальные" инструменты сборки — Gradle, Maven, MSBuild, Make, хоть мы говорим про CI-решения типа GitHub Actions, GitLab CI, Concourse CI, AWS CodeBuild/CodePipeline. Везде пишется конфиг руками. UI там конечно есть, но он чаще для целей посмотреть билд логи, а не для того, чтобы дизайнить процедуру сборки.


R>Мышко-ориентированные решения это вымирающее меньшинство. Студия — была отличным примером 10-20 лет назад, сейчас вот меня в топике сливают, говорят, что уже всё, можно писать руками и нормально работает. Есть билдсервер TeamCity — там тоже 10 лет назад не было конфигов, была мышка, но за прошедшие 10 лет конфиги появились (с Jenkins аналогичная история).


R>Слово "комфорт" здесь наверно не приведёт к конструктивному разговору, потому что, в зависимости от степени погружения в вопрос, комфорт будет от "слава богу всё свелось к одной галочке" до "слава богу тут внятно видно как устроен процесс и я могу просто написать 10 очевидных строчек XML, чтобы решить свою задачу".


Ещё как приведёт к конструктивному разговору. Было бы желание.

Только для начала надо понять, что мышка тут ни при чём. Это же не Фотошоп, чтобы тыкать в пиксели. В студии можно и с клавы работать. Это не "мышка", это, как я уже написал, "формат документа" + "программа-редактор". То есть, концепт, типичный для классического Майкрософта. У них всюду были документы и редакторы для их обработки. Конечно, студия не совсем обычный редактор, он не похож на Блокнот, но на уровне Save Project / Save Project As... это, всё-таки, редактор.

А что такое редактор? Это, в первую очередь, генерация минимального готового документа. То есть, в данном случае, генерация набора значений по умолчанию для полного работоспособного сценария. То есть, ты создаёшь новый проект, заходишь в свойства — а там всё прописано от и до. Во-первых, ты видишь, какие свойства вообще бывают. Во-вторых, можешь поменять одно, связанное, скажем, с оптимизацией. Классический способ в чём-то разобраться — взять большое заведомо работоспособное и менять по кусочку.

Я, например, специализируюсь в узкой области, и изучать этот ваш Maven мне хочется меньше всего. Студия позволяла мне сосредоточиться на моих задачах, при этом оставляла возможность что-то выборочно поменять в самой сложной схеме сборки, не вникая во все детали. Разделение труда.

Напротив, Java тебя заставит разобраться во всех хитросплетениях, прежде чем ты добьёшься хоть какого-то полезного эффекта. Я говорю сейчас не только о системах сборки, а вообще об их культуре. Два дня эксепшены курить, чтобы только понять, что в таком-то XML-конфиге надо было дописать то-то и то-то, это для них типично. И стоит за этим самая пошлая мотивация в виде борьбы за сохранение ненужных рабочих мест.

Ты, конечно, прав про направление тренда. "Вымирающее меньшинство" это, конечно, сильно сказано, но всё катится в ту сторону. И это деградация.

А студия это мутант, который при лысом разодрали во все стороны люди с разной идеологией и разным уровнем интеллекта (Гейтс-то лично во все программистские тонкости вникал, при нём такой каши не было). По уму если, надо было сделать сборку студией в командной строке из "документа", так же, как печать из Ворда.

A>>Тут обе стороны говно, ИМХО. То, что студия билдит не через свой же msbuild, это, конечно, косячина. Но и то, что конкуренты не мыслят категориями "формат документа", "программа-редактор" и т.п., а следуют концепции "кто настроит файлов пачку, тот и сбилдит водокачку", это хорошим словом тоже никак не назовёшь. Обожаю мир Java, с кучей запутанных конфигов, без документации, без тулзов, без генерации значений по умолчанию. Они изобрели девопсов, когда те ещё не были мейнстримом.


R>В Java конечно есть инструменты, которые даже с ридми не понятно как настраивать, но они не так чтобы мейнстрим.