Не использовал, но уверен, в сложных кейсах замучаешься искать workaround'ы. Например, как быть если надо искать по части строки? И что с контрактом? Есть что-то вроде сваггер-спеки, чтобы фронты легче понимали? По-моему это важные вопросы, не освещённые в докладе.
Есть еще более крутой генератор jhipster он делает посути тоже самое + миграции + фронтенд..но вот беда бизнесу не нужен CRUD даже в админке...а кастомизировать это все боль и страдания. И главное не очевидно, писать кучу когда что бы чтото отключить... должно быть наоборот. В итоге "вау" на поиграться.
Это на самом деле абсолютно не юзабельная тема, которая добавляет и в без того «магию спринга» еще огромный пласт. По сути - целый слой. Все эти “как отключить HAL”(который по задумке то и не надо отключать)- киллер фича, да! Такой подход в слабой команде добавит хаоса, а в сильной вам это и не нужно. Это мы даже не берем то, что сами эндроинты не так может мы хотим, чтобы выглядели. Про валидацию - то, что автор говорит как «упадет при записи в баз - невалидные вещи НЕ должны доходить до слоя бд. Ну и да: эта штука может (если вы не доследили) сгенерировать вам еще и эндпоинты, которые вам вообще не нужны - разумеется, неявно. Не нужно.
@@enjoyit8499 ну смотрите, есть же в мире отвратительно написанные проекты с кучей антипаттернов? Они же работают? Деньги приносят? Да. Надо ли делать как там остальным? Нет. Можно и на руках ходить, даже пройти какое-то расстояние. Будет ли это хорошим выбором? Нет. Когда вы используете технологию и вам ее надо допиливать, отключать что-то и прочее, когда сам даже разработчик этой технологии видит использование ее по другому - это хороший критерий? Я думаю нет. Завтра выйдет новая версия спринга и прочего, ваши костыли на допиливание не будут там работать, надо ли оно? Нужны ли эти риски? Я думаю нет. И это мы еще не говорим про остальные пункты-минусы, которые я написал.
@@enjoyit8499 с её помощью можно создавать только самые простейшие круды. Если приложение имеет хотя бы одну строку логики или несколько точек входа, то всё это великолепие начинает превращаться в конструкцию с непонятной архитектурой. Самый красноречивый критерий в том, что библиотека непопулярна. На практике у нас были другие велосипеды в стиле базовых классов крудсервисов, репозиториев, энтити и т.д. Как только в сущности появлялась бизнес логика, всё это упрощение переставало иметь смысл. Я бы такое тащить к себе в проекты не стал.
хм.... к концу доклада я понял, почему эта библиотека малоизвестна и никто ей не пользуется. это какой то кошмар. магия на магии и всё ради CRUD генерации !? во всех проэктах, где я работал, круд был только малой частью апи, там есть чем заняться и помимо этого.
Не использовал, но уверен, в сложных кейсах замучаешься искать workaround'ы. Например, как быть если надо искать по части строки? И что с контрактом? Есть что-то вроде сваггер-спеки, чтобы фронты легче понимали? По-моему это важные вопросы, не освещённые в докладе.
Экономим на написании копеечных контроллеров и сервисов, огребаем хэндлеры, странную валидацию и неочевидное разделение кода. Не понятно ради чего
тоже не понял главную идею)
как зачем? чтобы джун быстро поднимал сервис, нихера не понимая, что там вообще под капотом :)
@@anton-tkachenko действительно, они итак ничего не понимают
Есть еще более крутой генератор jhipster он делает посути тоже самое + миграции + фронтенд..но вот беда бизнесу не нужен CRUD даже в админке...а кастомизировать это все боль и страдания. И главное не очевидно, писать кучу когда что бы чтото отключить... должно быть наоборот. В итоге "вау" на поиграться.
Интересный и полезный обзор, спасибо
Очень интересно послушать анонсированный лайф-кодинг, где можно ... написать сервис за несколько минут ... " Он вышел?
Это на самом деле абсолютно не юзабельная тема, которая добавляет и в без того «магию спринга» еще огромный пласт. По сути - целый слой.
Все эти “как отключить HAL”(который по задумке то и не надо отключать)- киллер фича, да!
Такой подход в слабой команде добавит хаоса, а в сильной вам это и не нужно.
Это мы даже не берем то, что сами эндроинты не так может мы хотим, чтобы выглядели.
Про валидацию - то, что автор говорит как «упадет при записи в баз - невалидные вещи НЕ должны доходить до слоя бд.
Ну и да: эта штука может (если вы не доследили) сгенерировать вам еще и эндпоинты, которые вам вообще не нужны - разумеется, неявно.
Не нужно.
@@enjoyit8499 ну смотрите, есть же в мире отвратительно написанные проекты с кучей антипаттернов? Они же работают? Деньги приносят? Да. Надо ли делать как там остальным? Нет. Можно и на руках ходить, даже пройти какое-то расстояние. Будет ли это хорошим выбором? Нет.
Когда вы используете технологию и вам ее надо допиливать, отключать что-то и прочее, когда сам даже разработчик этой технологии видит использование ее по другому - это хороший критерий? Я думаю нет. Завтра выйдет новая версия спринга и прочего, ваши костыли на допиливание не будут там работать, надо ли оно? Нужны ли эти риски? Я думаю нет. И это мы еще не говорим про остальные пункты-минусы, которые я написал.
@@enjoyit8499 если прототип накидать какой-то да.
я как то был привлечен к проекту, написанному с этой либой и qdsl .... ой и намучились мы с ними.
@@enjoyit8499 с её помощью можно создавать только самые простейшие круды. Если приложение имеет хотя бы одну строку логики или несколько точек входа, то всё это великолепие начинает превращаться в конструкцию с непонятной архитектурой. Самый красноречивый критерий в том, что библиотека непопулярна. На практике у нас были другие велосипеды в стиле базовых классов крудсервисов, репозиториев, энтити и т.д. Как только в сущности появлялась бизнес логика, всё это упрощение переставало иметь смысл. Я бы такое тащить к себе в проекты не стал.
хм.... к концу доклада я понял, почему эта библиотека малоизвестна и никто ей не пользуется. это какой то кошмар.
магия на магии и всё ради CRUD генерации !?
во всех проэктах, где я работал, круд был только малой частью апи, там есть чем заняться и помимо этого.
Я пытался это все кешировать - это не возможно. Именно по этому это все не подходит для каких-то крупных приложений
О, а еще интересно посмотреть на перформанс спринг-даты и хибернейта когда сущности станут четырёхэтажными :)
Придет DBA и постучит по голове.@@anton-tkachenko
Привязка департамента к организации выглядит как костыль
Ага, и что будет в сущности Document с двумя департаментами, in и out
тяжеловато слушать английский докладчика.. в стиле филе нот фаунд...