|
Начал знакомство со spring. Поругайте код
|
|||
---|---|---|---|
#18+
Valentin Kolesnikov Spring-boot приложение от немецких чиновников. Удивил checkstyle, code civerage и sonar cloud. https://github.com/corona-warn-app/cwa-server Хорошего вам дня! Да все там в порядке. Просто Сонар посчитал слабое тестовое покрытие. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.05.2020, 12:50 |
|
Начал знакомство со spring. Поругайте код
|
|||
---|---|---|---|
#18+
в 2020 да и в последние года 3-4 уже смешно видеть чистый pom.xml. Каменный век. Я согласен что у Грэдла есть недостатки (даже я бы сказал он не очень качественно сделан в плане работы с ним), но по функционалу альтернатив нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.05.2020, 18:55 |
|
Начал знакомство со spring. Поругайте код
|
|||
---|---|---|---|
#18+
dakeiras в 2020 да и в последние года 3-4 уже смешно видеть чистый pom.xml. Каменный век. Я согласен что у Грэдла есть недостатки (даже я бы сказал он не очень качественно сделан в плане работы с ним), но по функционалу альтернатив нет. Сильно удивишся но есть Java-проекты которые ant-ом собирают. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.05.2020, 19:31 |
|
Начал знакомство со spring. Поругайте код
|
|||
---|---|---|---|
#18+
mayton dakeiras в 2020 да и в последние года 3-4 уже смешно видеть чистый pom.xml. Каменный век. Я согласен что у Грэдла есть недостатки (даже я бы сказал он не очень качественно сделан в плане работы с ним), но по функционалу альтернатив нет. Сильно удивишся но есть Java-проекты которые ant-ом собирают. Я недавно скачал нетбинс, так он предлагал собирать каким-то своим сборщиком. Да таже Идея только пару лет назад наконец осознала смерть iml. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.05.2020, 19:50 |
|
Начал знакомство со spring. Поругайте код
|
|||
---|---|---|---|
#18+
Вот. Одна из лучших библиотек для построения текстовых индексов по документам. Где только не используется. И в Elastic-Search. И в различных коробочных веб-приложениях. https://github.com/apache/lucene-solr Собирается ant-ом. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.05.2020, 17:37 |
|
Начал знакомство со spring. Поругайте код
|
|||
---|---|---|---|
#18+
Но наверное было-бы некрасиво просто поругать gradle. Надо и похвалить. Так вот. Он быстро собирает. За счет запуска (в среднем) 4х демонов сборщиков. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.05.2020, 17:42 |
|
Начал знакомство со spring. Поругайте код
|
|||
---|---|---|---|
#18+
mayton Но наверное было-бы некрасиво просто поругать gradle. Надо и похвалить. Так вот. Он быстро собирает. За счет запуска (в среднем) 4х демонов сборщиков. это под 1 проект? А зачем 4 демона под сборку 1 проекта? ... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2020, 10:25 |
|
Начал знакомство со spring. Поругайте код
|
|||
---|---|---|---|
#18+
dakeiras, В maven тоже есть распараллеливание. Команда mvn -T 1C -B clean package Хорошего вам дня! ... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2020, 10:37 |
|
Начал знакомство со spring. Поругайте код
|
|||
---|---|---|---|
#18+
Valentin Kolesnikov dakeiras, В maven тоже есть распараллеливание. Команда mvn -T 1C -B clean package Хорошего вам дня! Так я и спрашиваю - зачем? Что конкретно оно распараллеливает? ... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2020, 11:34 |
|
Начал знакомство со spring. Поругайте код
|
|||
---|---|---|---|
#18+
dakeiras в 2020 да и в последние года 3-4 уже смешно видеть чистый pom.xml. Каменный век. Я согласен что у Грэдла есть недостатки (даже я бы сказал он не очень качественно сделан в плане работы с ним), но по функционалу альтернатив нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2020, 11:56 |
|
Начал знакомство со spring. Поругайте код
|
|||
---|---|---|---|
#18+
dakeiras mayton Но наверное было-бы некрасиво просто поругать gradle. Надо и похвалить. Так вот. Он быстро собирает. За счет запуска (в среднем) 4х демонов сборщиков. это под 1 проект? А зачем 4 демона под сборку 1 проекта? Ну.... если процесс компилляции можно разбить на изолированные фазы (возможно modules) то эти фазы могут исполняться на отдельных java-процессах-демонах). Конфигурируется это где-то здесь. Код: java 1.
Или можно просто в свойствах проекта. Кажется. Не уверен. Вобщем сами проверье. У меня обычно поднят 1 этот демон сразу после любого вызова gradle build. И потом все время висит. Возможно наличие 1 демона в памяти позволяет быстро-быстро прогреть следующий пуск коспилляции за счет ClassDataSharing, но здесь я не готов утверждать. Надо проверять. И тут еще важно что если у вас на борту стоит Java8, Java11 одновременно то и эти кеши будут разными. Вообще тут надо бенчмаркать. Запустить компилляцию крупного проекта и посмотреть как оказывает влияние. Вот как выглядит список процессов во время компилляции Кафки у меня. Видно что 5 os processes чем-то заняты. Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9.
И вот мой конфиг. Код: java 1. 2. 3.
На Windows10 машине я однако эту конфигурацию выключал. Код: java 1.
Т.к. были странные артефакты. После подвисания какого-то gradle-plugin часть файлов в директории /build проекта оказывались заблокированными и следующий clear не проходил успешно. И поскольку мне важна была не скорость а скорее надежность автоматизации я демонов в Windows-10 всегда выключал. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2020, 12:02 |
|
Начал знакомство со spring. Поругайте код
|
|||
---|---|---|---|
#18+
вот и я говорю, не нужно это распараллеливание. По крайней мере на машинах разработчиков. Только оперативу отжирает. (это одна из раздражающих черт gradle - висячие демоны даже когда ничего не компилируется). На CI может и нужно. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2020, 12:05 |
|
Начал знакомство со spring. Поругайте код
|
|||
---|---|---|---|
#18+
Ну.. если у тебя очень сильная и долгоиграющая система модульных и интеграционных тестов то сам бох велел тебе включать параллелизм. Насчет там память отжирает? Ну не знаю. Мы живем уже в 21 веке и кажется уже на все дев-станции ставят по 8-16 Гигабайт памяти и глупо тебе этот ресурс не задействовать. Или тебе память зачем-то другим нужна? В "Контру" шпилишся? Или в танки параллельно? ... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2020, 12:10 |
|
Начал знакомство со spring. Поругайте код
|
|||
---|---|---|---|
#18+
mayton Ну.. если у тебя очень сильная и долгоиграющая система модульных и интеграционных тестов то сам бох велел тебе включать параллелизм. Насчет там память отжирает? Ну не знаю. Мы живем уже в 21 веке и кажется уже на все дев-станции ставят по 8-16 Гигабайт памяти и глупо тебе этот ресурс не задействовать. Или тебе память зачем-то другим нужна? В "Контру" шпилишся? Или в танки параллельно? а, понял насчёт тестов. Тогда понятно согласен, но Гредл мог бы всё равно сделать чтобы эти демоны не висели. 8 это нереально сейчас, 16 маловато, 32 стандарт сейчас для разработчиков должен быть. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2020, 12:24 |
|
Начал знакомство со spring. Поругайте код
|
|||
---|---|---|---|
#18+
mayton Ну.. если у тебя очень сильная и долгоиграющая система модульных и интеграционных тестов то сам бох велел тебе включать параллелизм. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2020, 13:07 |
|
Начал знакомство со spring. Поругайте код
|
|||
---|---|---|---|
#18+
dakeiras а, понял насчёт тестов. Тогда понятно согласен, но Гредл мог бы всё равно сделать чтобы эти демоны не висели. Я же объяснил зачем они висят. Для быстрого старта компилляции. Даже на малых проектах это может быть полезно. Проблема Windows-10 это особенность файловой системы. Файловые дескрипторы - блокируются. В Linux - нет. Линукс позволяет удалить символическое имя при том что дескриптор открыт и используется. Поэтому не нужно переносить этот артефакт как недостаток gradle, тем более что если у вас нормальный CI - проесс - то на сереверах непрерывной интеграции у вас будет стоять Linux. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2020, 13:10 |
|
Начал знакомство со spring. Поругайте код
|
|||
---|---|---|---|
#18+
Андрей Панфилов mayton Ну.. если у тебя очень сильная и долгоиграющая система модульных и интеграционных тестов то сам бох велел тебе включать параллелизм. Я считаю что зависимости между тестами - это зло. И их надо устранять. Хотя конечно для e2e тестов у вас будет некий flow иммитирующий реальную работу вашей системы и здесь уже низкая скорость тестинга - это не НЕДОСТАТОК gradle там или jupiter. Это именно недостаток вашей разрабатываемой системы. Она - медленно процессит (к примеру) JMS сообщения. И соотв. ожидание финала тестирования у вас затягивается в бесконечность. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2020, 13:13 |
|
Начал знакомство со spring. Поругайте код
|
|||
---|---|---|---|
#18+
dakeiras gradle - висячие демоны даже когда ничего не компилируется). Кеширует в собственном удобном формате для компиляции. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2020, 13:14 |
|
Начал знакомство со spring. Поругайте код
|
|||
---|---|---|---|
#18+
dakeiras 8 это нереально сейчас, 16 маловато, 32 стандарт сейчас для разработчиков должен быть. Давайте не будем также нежными и чувствительными. Нужно 32Gb? Должно быть обоснование. Я-бы поинтересовался что находится внутри этих 32Гб во время разработки. Ведь эта ситуация может шаблоном переносится на прод и вам придется заказывать у Амазона EC2 инстанции с 32 Гб оперативы... почему? Потому что нежный разрабочик так захотел? Среда занимает? Выйди из среды. Прогони тесты в консоли. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2020, 13:18 |
|
Начал знакомство со spring. Поругайте код
|
|||
---|---|---|---|
#18+
mayton Я считаю что зависимости между тестами - это зло. И их надо устранять. Хотя конечно для e2e тестов у вас будет некий flow иммитирующий реальную работу вашей системы и здесь уже низкая скорость тестинга - это не НЕДОСТАТОК gradle там или jupiter. Это именно недостаток вашей разрабатываемой системы. Она - медленно процессит (к примеру) JMS сообщения. И соотв. ожидание финала тестирования у вас затягивается в бесконечность. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2020, 13:32 |
|
Начал знакомство со spring. Поругайте код
|
|||
---|---|---|---|
#18+
Ммм.. не знаю с testNG не работал. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2020, 13:39 |
|
Начал знакомство со spring. Поругайте код
|
|||
---|---|---|---|
#18+
mayton Ммм.. не знаю с testNG не работал. В целом же выглядит как-будто ваше мнение о gradle зашорено какими-то второстепенными фичами: инкрементальные сборки и параллельность - это фичи не то что не первой необходимости, так они даже и в первую десятку не входят, у меня, к примеру, среда разработки тупит на гредловских проектах сильнее чем на мавеновских, в итоге негативный импакт от использования гредла превышает все его второстепенные фичи. Кто-то там топит за его псевдодекларативный DSL, в духе а слабо вот такое в maven сделать: Код: java 1. 2. 3.
? А по факту такой креатив в сценарии сборки нафиг не нужен - если что-то поменяется (что происходит крайне редко) можно и руками поправить, однако вот из-за таких мисфич сценарий сборки более-менее крупного проекта ни человек прочесть не может нормально, ни среда разработки (у них же в самом начале были какие-то попытки разбор build.gradle в IDE затащить, а потом остановились на том, что с gradle среда разработки должна работать только через демон). При этом действительно нужных возможностей в gradle толком нет, ну вот пример: есть какой-то срез кода из СКВ, как программно понять какой он версии? В maven это делается универсально через help:effective-pom, а в gradle каждый лепит кто во что горазд. Точно также с релизным воркфлоу: в maven release plugin - это часть экосистемы, а в gradle - какая-то сторонняя поделка, которой пользуются два инвалида (здесь больше похоже релизы в проектах на gradle не принято делать). В maven вообще есть киллер-фича: можно плагины дергать без прописывания их в pom.xml, ее полезность просто зашкаливает, гредлу до нее еще расти и расти. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2020, 15:53 |
|
Начал знакомство со spring. Поругайте код
|
|||
---|---|---|---|
#18+
Я не топлю за gradle если что. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2020, 16:37 |
|
Начал знакомство со spring. Поругайте код
|
|||
---|---|---|---|
#18+
dakeiras Valentin Kolesnikov dakeiras, В maven тоже есть распараллеливание. Команда mvn -T 1C -B clean package Хорошего вам дня! Так я и спрашиваю - зачем? Что конкретно оно распараллеливает? Компиляцию, сборку, запуск unit тестов. Я у себя использую эту настройку. Хорошего вам дня! ... |
|||
:
Нравится:
Не нравится:
|
|||
01.06.2020, 13:37 |
|
Начал знакомство со spring. Поругайте код
|
|||
---|---|---|---|
#18+
Valentin Kolesnikov dakeiras пропущено... Так я и спрашиваю - зачем? Что конкретно оно распараллеливает? Компиляцию, сборку, запуск unit тестов. Я у себя использую эту настройку. Хорошего вам дня! Да, уже выше понял. Спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.06.2020, 17:29 |
|
|
start [/forum/topic.php?fid=59&msg=39964637&tid=2120791]: |
0ms |
get settings: |
8ms |
get forum list: |
5ms |
check forum access: |
1ms |
check topic access: |
1ms |
track hit: |
35ms |
get topic data: |
3ms |
get forum data: |
1ms |
get page messages: |
410ms |
get tp. blocked users: |
1ms |
others: | 5ms |
total: | 470ms |
0 / 0 |