Главная Юзердоски Каталог Трекер NSFW Настройки

Программирование

Ответить в тред Ответить в тред
Check this out!
<<
Назад | Вниз | Каталог | Обновить | Автообновление | 512 31 98
Java Thread №258 /java/ Аноним 16/11/23 Чтв 15:40:05 2924175 1
image 110Кб, 1024x1024
1024x1024
image 128Кб, 1024x1024
1024x1024
image 88Кб, 1024x1024
1024x1024
image 70Кб, 1024x1024
1024x1024
Приглашаем вас на увлекательное событие - Java-шоу! 🚀 Мы - эксперты в мире абстракций и оптимизации, где каждая строка кода - ключ к галактике Java, полной приключений! 💫

🔮 LOOM: Революционные потоки.
🧩 Pattern Matching: Усовершенствованные проверки данных.
📚 Sequenced Collections: .getLast() теперь у всех!

Превью:
🌟 Structured Concurrency - контроль асинхронности.
🔑 Scoped Value - гибкий ThreadLocal.
✨ String Interpolation - вставка переменных как ABC.
🚀 Unnamed Classes и Instance Main Methods - хелло-ворлд в одну строчку!

Java 21 - праздник для программистов, вкусно без торта, но с мороженым! 🍰🍦💻🎉

Вики по вкатыванию в джаву🎓: https://github.com/java2ch/java-thread/wiki

Предыдущий: >>2905153 (OP)
Аноним 16/11/23 Чтв 15:49:05 2924190 2
>>2924175 (OP)
Ну че, там сделали перфоманс тесты лума и корутин? Кто-то уже заюзал новые свитчи и кейсы к ним придумал?
Аноним 16/11/23 Чтв 16:08:07 2924216 3
>>2924190
>Кто-то уже заюзал новые свитчи и кейсы к ним придумал
Придумал вкатиться в скалу
Аноним 16/11/23 Чтв 16:13:39 2924224 4
Аноним 16/11/23 Чтв 17:29:53 2924321 5
>>2924224
Слишком хардкорно.
Аноним 16/11/23 Чтв 18:28:03 2924382 6
>>2924175 (OP)
Нововведения 21 джавы до самой 22 будешь постить?
Аноним 16/11/23 Чтв 18:31:58 2924395 7
>>2924382
Если что-то не устраивает, лучше просто пойти на прогулку и подумать об этом в спокойной обстановке. 😉
Аноним 16/11/23 Чтв 18:33:11 2924402 8
Аноним 16/11/23 Чтв 18:36:37 2924410 9
>>2924402
Ну да, ведь на прогулке идеи лучше приходят, чем сидя дома! 😉 Так что, может, и вправду лучше всем на улицу? 🌳
Аноним 16/11/23 Чтв 18:37:41 2924414 10
>>2924410
Так мне отличная идея пришла и так. Хочешь сказать, может быть лучше?
Аноним 16/11/23 Чтв 18:51:10 2924450 11
>>2924414
О, вот это, конечно, шедевр! Да что ты там со своими идеями придумал? Ну давай, расскажи свой шедевр, интересно же посмотреть, что тут такого "отличного" пришло в голову.
Аноним 16/11/23 Чтв 19:30:21 2924513 12
>>2924450
Написать "Нововведения 21 джавы до самой 22 будешь постить?".
Аноним 16/11/23 Чтв 19:33:00 2924516 13
>>2924513
Конечно, буду держать в курсе всех нововведений Java 21 до самой 22! Это как раз мой стиль – быть на гребне волны инноваций! 🚀😎
Аноним 16/11/23 Чтв 20:36:47 2924602 14
>>2924516
Че там по луму, эту хуйню уже включили в вебфлюксе и спринг веб?
Аноним 16/11/23 Чтв 20:49:28 2924614 15
Как работают эмуляторы java me? Похоже, там не эмулируется какое-либо железо или arm архитектура, просто делают свою реализацию phoneME?


А вообще есть смысл в низкоуровневом эмуляторе микро джавы?
Ведь в JAR-приложении не содержатся инструкции для процессора, только байт-код для вм java.
Аноним 16/11/23 Чтв 21:10:10 2924638 16
>>2924614
Тя ебет? Ты еще про апплеты спроси.
Аноним 16/11/23 Чтв 23:36:16 2924809 17
>>2924614
>А вообще есть смысл в низкоуровневом эмуляторе микро джавы?
Хочешь вернуть 2007?
Аноним 17/11/23 Птн 00:19:48 2924845 18
image 527Кб, 1000x750
1000x750
Аноним 17/11/23 Птн 00:48:00 2924880 19
image.png 161Кб, 628x331
628x331
>>2924845
Какие отсылки, однако. Это от авторов рюка?
Аноним 17/11/23 Птн 00:59:05 2924881 20
>>2924880
хз я дальше заголовка не читал, вот еще голову ХУЙНЕЙ БЛЯДЬ забивать
Аноним 17/11/23 Птн 01:17:16 2924885 21
Нахуя нужны новые версии жабы, если все жаба проекты - это поддержка легаси кала, и никакие лумы хуюмы вам не светят. Новые проекты на жабе начинать не будут, так в чем прикол?
Аноним 17/11/23 Птн 04:52:32 2924927 22
>>2924885
для срачей в шарпотредах что лучше лум или асинк/авейт
Аноним 17/11/23 Птн 09:21:04 2924977 23
Аноним 17/11/23 Птн 10:09:28 2925028 24
Как же заебало стирание типов, вы не представляете
Аноним 17/11/23 Птн 10:25:52 2925049 25
>>2925028
Блять, ну вы хотя б раз расскажите, что вы такое делаете, что вам типы нужны в рантайм?
Тем более, что существуют способы передать тип, вроде котлин и скала это скрыто делают.
Аноним 17/11/23 Птн 10:29:00 2925055 26
>>2925049
Это шарполахта работает, после того как их в очередной раз попустили.
Аноним 17/11/23 Птн 14:00:43 2925400 27
Посоветуйте иде попроще для вкатуна и чтоб тема тёмная.
Аноним 17/11/23 Птн 14:18:11 2925414 28
Аноним 17/11/23 Птн 14:21:54 2925421 29
>>2924614
Обычно AOT компиляция, как на современном Андроиде. То есть JAR архив с байт-кодом при установке преобразуется в машинный код. Конкретно надо смотреть, как например, в Symbian устроено.

>>2924809
JavaME еще иногда используется в embedded, в основном в DIY проектах. Есть например реализации для Raspberry Pi.
Там можно легко делать 2D игры, есть простой движок со спрайтами и тайлами, как в старых консолях вроде Донди/Sega/SNES. Unity, например, гораздо сложнее в освоении.
Аноним 17/11/23 Птн 14:36:53 2925454 30
Сап, двач. Я тянPHPшник и пруфов не будет. Вопрос, кто-нибудь делал свич в Java? Как прошел, как ощущения?
Аноним 17/11/23 Птн 14:59:12 2925482 31
>>2925421
А причем тут симбиан? Нативные симбиановские проложухи на плюсах писались.
Аноним 17/11/23 Птн 17:49:57 2925804 32
>>2925421
>Есть например реализации для Raspberry Pi.
На малинке можно и обычную JDK завести.

>Там можно легко делать 2D игры, есть простой движок со спрайтами и тайлами, как в старых консолях вроде Донди/Sega/SNES. Unity, например, гораздо сложнее в освоении.
А ещё на нем можно заставки блюрей дисков программировать.

Ну нету сейчас у JME практического применения. Нету.
Аноним 17/11/23 Птн 18:33:23 2925857 33
>>2924845
Блэт, жыдбрейнс скатилось. Может и к лучшему что они съебали.
Аноним 17/11/23 Птн 20:28:35 2925999 34
>>2924845
Ого, ну хоть кто-то в джава мире заботиться о UX для разработчиков. После ноды/дотнета/го/раста сборщики проектов для JVM кажутся злой шуткой из 90ых.
Аноним 17/11/23 Птн 21:06:01 2926025 35
>>2925999
орунах
все в курсе что мейвен лучший сборщик, да еще и может собирать проект на любом языке
Аноним 17/11/23 Птн 22:38:25 2926113 36
>>2924885
А на чём будут начинать новые проекты?
Аноним 18/11/23 Суб 00:29:48 2926269 37
>>2925999
После мавена пользоваться нпм/ярном просто пиздец как больно.
Аноним 18/11/23 Суб 02:11:29 2926348 38
Аноним 18/11/23 Суб 02:13:07 2926349 39
Аноним 18/11/23 Суб 02:55:42 2926355 40
Аноним 18/11/23 Суб 02:57:44 2926356 41
>>2926025
> все в курсе что мейвен лучший сборщик
мусора
Аноним 18/11/23 Суб 06:10:48 2926385 42
>>2926356
Дегенерадлщик, плиз.
Аноним 18/11/23 Суб 06:11:50 2926386 43
>>2926269
Да после мавена чем угодно больно пользоваться. Эти вечные фейлы на скриптах и скачки говна у дегенерадла просто вымораживают.
Аноним 18/11/23 Суб 06:41:58 2926389 44
Неназванные классы превратили в неявно объявленные. То есть то, о чём я писал пару тредов назад исправили (вроде бы, ведь джеп не перечитывал).

https://openjdk.org/jeps/463
Аноним 18/11/23 Суб 09:36:25 2926456 45
>>2924885
Какой потешный клоун.
Хуй будешь?
Аноним 18/11/23 Суб 09:37:47 2926457 46
>>2926386
Это ты еще с кастомными плагинами не работал...
Градл это максимально дегенератский высер
Аноним 18/11/23 Суб 13:17:48 2926620 47
>>2925421
>JavaME
Умерла 15 лет назад окончательно.
Аноним 18/11/23 Суб 15:50:46 2926838 48
>>2925421
>AOT компиляция
В чем отличие от динамической рекомпиляции?
Аноним 18/11/23 Суб 17:43:33 2927055 49
>>2926838
>В чем отличие от динамической рекомпиляции?
В том, что она случается один раз до первого запуска, а не каждый раз при исполнении.
Аноним 18/11/23 Суб 18:05:22 2927074 50
>>2927055
И какой подход для эмуляции лучше?
Аноним 18/11/23 Суб 18:14:03 2927079 51
>>2926356
Евгений Ваганович?
Аноним 18/11/23 Суб 20:04:52 2927216 52
Подскажите пожалуйста, какой сборщик мусора используется по дефолту в java 8, 11 и 21 ?
Аноним 18/11/23 Суб 20:05:34 2927217 53
Подскажите пожалуйста, какой сборщик мусора используется по дефолту в java 8, 11 и 21 ?
Аноним 18/11/23 Суб 20:17:59 2927226 54
Screenshot20231[...].jpg 139Кб, 1080x1390
1080x1390
Аноним 19/11/23 Вск 01:10:38 2927500 55
>>2924977
А говорили в спринге поддержка виртуальных потоков появится дай бог лет через 5!
Аноним 19/11/23 Вск 01:11:19 2927502 56
Подскажите пожалуйста, какой сборщик мусора используется по дефолту в java 8, 11 и 21 ?
Аноним 19/11/23 Вск 01:13:14 2927503 57
>>2927216
8 - parallel
11+
для одноядерных - Serial
для многоядерных - G1
Аноним 19/11/23 Вск 07:03:40 2927575 58
Аноны, а вкатуну не стыдно самописный модульный веб-сервер показывать в качестве портфолио?
Я просто для себя некоторые вещи написал, которые по сей день использую и чтобы добру не пропадать решил их в портфолио вложить.
Из написанного, собственно, сам веб-сервер, генератор статических html страниц на основе .md заметок, поисковый движок по этим страницам и модуль виртуальных хостов.
Аноним 19/11/23 Вск 09:01:54 2927637 59
Аноним 19/11/23 Вск 09:07:02 2927641 60
>>2927575
Всем похуй. Веб сервер пишется за час по книжке хорстманна
Аноним 19/11/23 Вск 09:47:03 2927658 61
Какой мощности нужно иметь пекарню, чтобы дегенерадл не лагал?
Аноним 19/11/23 Вск 10:01:07 2927662 62
>>2927658
Хотя я думаю тут больше проблема в моём узком интернет канале. Но с мавеном даже самые большие проекты не выкачивают половину интернета.
Аноним 19/11/23 Вск 10:31:23 2927681 63
>>2927637
Деанон, тгавля.

>>2927641
Похуй, не похуй, но что-то же должно быть у вкатуна.
Аноним 19/11/23 Вск 10:31:55 2927682 64
Возможно сделать свою реализацию jvm?
Аноним 19/11/23 Вск 10:33:20 2927683 65
>>2927682
Это называется "сборка jvm". С нуля тоже в принципе можно, т.к. есть спецификация и тесты спецификации, но сложно.
Аноним 19/11/23 Вск 10:55:13 2927710 66
>>2927683
зачем тогда нужна проприетарная джава, если можно свою запилить?
Аноним 19/11/23 Вск 10:58:37 2927717 67
>>2927710
Может быть за тем, что шарподебилов слушать надо меньше и джава не проприетарная?
Аноним 19/11/23 Вск 11:48:25 2927770 68
Какие же разработчики дегенерадла дауны... Почему разработчики мавена смогли в команду clean, и после введения неё у меня за 0,5 секунд весь проект очищается до состояния написанных ручками сурсов, а при введении этого же в дегенерадле я как смотрел на 25 тысяч файлов и 800 мегабайт всяких кэшей, которые блядь должны храниться в папке-аналоге .m2, так и смотрю? И ведь после такой тотальной очистки всего на мавене ничего серьёзного не теряется, следующий билд как делался за 20 секунд, так и будет делаться, а если папку проекта на дегенерадле самостоятельно очистить до состояния ручных сурсов, то ты при следующей сборке 2 часа будешь качать и билдить всякую хуйню.
Аноним 19/11/23 Вск 15:15:50 2928184 69
Аноним 19/11/23 Вск 16:13:50 2928357 70
>>2927074
Это зависит...
В мобилках делали AOT потому что ресурсов мало и важна скорость запуска. У тебя же на компе мощностей дофига, а вот сил на реализацию полноценного эмулятора наоборот мало. Так что тебе проще будет взять JDK и писать свой эмулятор на базе JDK. Для начала можешь посмотреть https://habr.com/ru/articles/504682/
Аноним 19/11/23 Вск 22:08:30 2928962 71
Аноним 19/11/23 Вск 23:19:57 2929076 72
Чем заменить атомик референс? Нужен контейнер для значения для лямбд.
Аноним 20/11/23 Пнд 01:51:24 2929166 73
Аноним 20/11/23 Пнд 02:14:21 2929168 74
>>2927770
> Какие же разработчики дегенерадла дауны...
Даун здесь только ты

> а при введении этого же в дегенерадле я как смотрел на 25 тысяч файлов и 800 мегабайт всяких кэшей, которые блядь должны храниться в папке-аналоге .m2, так и смотрю?
Кэши зависимостей в градле по дефолту отдельно хранятся в папке-аналоге .m2 - в .gradle/caches в юзер директории.

Причем тут разработчики градла, если ты хуйню какую то наделал с конфигурацией?
Аноним 20/11/23 Пнд 02:17:57 2929169 75
>>2929076
У тебя проблема XY похоже, что изначально ты пытаешься решить?
Аноним 20/11/23 Пнд 11:41:27 2929297 76
В чем прикол делать приватные методы статическими?
Аноним 20/11/23 Пнд 11:55:17 2929325 77
>>2929297
Ну типа они будут чистыми, хотя вроде по POJO такое не принято.
Аноним 20/11/23 Пнд 11:55:46 2929326 78
>>2929325
С не статические будут грязными?
Аноним 20/11/23 Пнд 11:56:57 2929332 79
>>2929326
Будут не pure. Типа чистая функция, все дела. Хотя можно и статику написать так, чтобы она сайд эффекты делала.
Аноним 20/11/23 Пнд 11:59:13 2929338 80
>>2929332
Впервые слышу такое понятие,надо будет погуглить
Аноним 20/11/23 Пнд 12:01:40 2929342 81
Аноним 20/11/23 Пнд 15:30:24 2929635 82
>>2929168
О, копротивленкец за соевое говно вылез. Вот хуйня https://github.com/granny/Pl3xMap , собери её и попробуй потом очисти корневую директорию до состояния того, что было получено после git clone.
Аноним 20/11/23 Пнд 15:38:11 2929645 83
>>2929342
Чистота функции определяется по фактическому содержанию, а не по потенциальным возможностям содержания. Если this не используется, то функция чистая. Только смысла мало конечно делать в таком случае метод нестатическим нет.
Аноним 20/11/23 Пнд 16:04:49 2929682 84
>>2928962
>почему сил мало?
А ты прям такой убер программист, который выдает сотни LOC в день? Или ты думаешь, что AOT это прям такая простая задача? И кстати под какую платформу ты собрался AOT писать, уже решил?
Аноним 20/11/23 Пнд 16:05:24 2929684 85
>>2927575

>Я просто для себя некоторые вещи написал, которые по сей день использую

Если не пиздишь, и реально сам им пользуешься, и сможешь адекватно обьяснить, почему ты пользуешься им а не мейнстримным решением, я бы посмотрел, встреться мне твое резюме. Но тут уже - как в суде. Твой пет может играть в равной степени как в твою пользу, так и в твой вред.
Аноним 20/11/23 Пнд 16:09:06 2929688 86
>>2929342
>Не статические функции в качестве аргумента всегда содержат this

И что? Делай иммутабельные классы, тогда this не будет привносить сайд эффектов в твою нестатичкескую функцию.
Аноним 20/11/23 Пнд 16:35:36 2929759 87
>>2929688
Ну это если воспринимать филды как еще одни аргументы в функции тащемта. Еще тестировать проще вроде.
>>2929645
Йеп йеп.
Аноним 20/11/23 Пнд 18:49:29 2929995 88
Аноним 20/11/23 Пнд 18:51:46 2930002 89
Аноним 20/11/23 Пнд 20:31:33 2930181 90
>>2929635
Кидай этот же проект, но с мавеном.
Аноним 20/11/23 Пнд 21:06:57 2930232 91
Как же заебало падать легасно пердящее, контекстошвайное, параметерно-ноль-миссингнутое, аннотациезависимое, тормознутое спрингоуебище.
Аноним 20/11/23 Пнд 21:10:13 2930240 92
>>2930232
Можем вместе пет проектик для души написать...
Аноним 20/11/23 Пнд 22:14:58 2930346 93
image.png 20Кб, 335x217
335x217
Аноним 20/11/23 Пнд 23:13:29 2930392 94
>>2930232
Это ты еще servletContext.getAttribute не ебал...
Аноним 21/11/23 Втр 03:54:54 2930447 95
>>2924175 (OP)
Есть 500к пикч.
Хочу искать среди них пикчи имеющие ~100% совпадение с пикчей B, где:
>пикчи A и B имеют одинаковый размер и пикчи A и B имеют одинаковое содержание
>пикчи A и B имеют разный размер, но имеют содержание выше определенного коэффициента идентичности.
Кейс такой, что A и B это по сути одна и та же пикча (по содержанию), но картинка B проходит через кучу микросервисов, и поэтому может быть слегка отшакалена или переформатирована из одного формата в другой и оттуда обратно в оригинальный. Однако визуально это одна и та же пикча - без вотермарок и т.д., но мб с едва заметным глазу перекодированием, и в немного другом размере. Разрешение по идее меняться не должно.
Пишу на Джаве, потому что остальную часть сервиса писал на ней. Но также рассмотрю линуксовую консольку и утилитки, бгг)
Аноним 21/11/23 Втр 04:18:24 2930448 96
>>2930447
Это нп полная задача. Я хуй знает как ты это решать будешь, конечно.
Аноним 21/11/23 Втр 06:16:43 2930459 97
>>2930447
поищи уже готовые решения и зареверси, сами программы поспрашивай в /s
Аноним 21/11/23 Втр 07:53:59 2930468 98
>>2930447
Это говно делается нейросеточками.
Аноним 21/11/23 Втр 08:12:11 2930475 99
>>2930447
Я не ебу, как это делается на джаве, но суть такова:
Приведи изображения к одному разрешению. Лучше то, которое побольше, сжимать. Алгоритмов полно, выбери любой.
Затем просто попиксельно вычитаешь в каждом из трёх каналов (r,g,b) из одной картинки другую модуль не забудь взять.
Разность картинок тоже будет картинкой. Из-за сжатий у тебя не везде будут нули, могут контуры объектов быть видимы, и внутренности тоже не абсолютно чёрные.
Поэтому теперь надо придумать как отличить разницу разных картинок от одинаковых. Мне кажется, можно взять квадраты всех пикселей поканально, сложить и поделить на количество пикселей.
Посчитай результат для разных и одинаковых картинок, там должны будут получаться ооочень разные числа. Выбери границу и решай по ней.

Алгоритм линейный получается. Каждую с каждой сравнивать конечно будет долго, надо хэш-функцию какую-нибудь, чтобы точно разные картинки сразу отсекать.
Например, средний арифметический цвет попиксельно.
Аноним 21/11/23 Втр 08:14:38 2930476 100
>>2930475
Алсо возможно может помочь преобразование Фурье, оно в каждом втором алгоритме для обработки изображений используется, но это уже чуть выше моих знаний. Я универ 10 лет назад закончил, ничего не помню уже.
Аноним 21/11/23 Втр 08:32:38 2930480 101
>>2930181
Нет, не так. Ты мне кинь хоть один проект на мавене, который вот так серет.
Аноним 21/11/23 Втр 08:40:00 2930481 102
>>2930475
>линейный
Так наоборот квадратичный же.
Аноним 21/11/23 Втр 10:06:58 2930529 103
Аноним 21/11/23 Втр 11:25:10 2930600 104
>>2930529
У тебя душа лежит к дилдакам? Ну я вот визуализацию конкурентности хочу написать, там ни спринга, ни вообще хттп и прочей чуши не будет.. Пока вот базу подтягиваю.модем вместе, воот
Аноним 21/11/23 Втр 14:32:00 2930979 105
Как написать сверточный алгоритм на java без использования библиотек ?
Аноним 21/11/23 Втр 14:37:32 2930984 106
image.png 54Кб, 164x308
164x308
>>2929995
>Здесь своя используется jvm?
У чувака энтерпрайз мозга в терминальной стадии. Например он создал интерес aot.Backend который должен компилировать классы. Реализовал код main класса, который парсит параметры командной строки, ищет доступный aot.Backend через сервисы и пытается всё скомпилировать. Но ссука, единственная реализация aot.Backend не реализована и выкидывает эксепшн. Т.е. этот дятел написал вагон вспомогательного кода, но даже не начал реализовать непосредственно AOT. Всё что этот код делал это выдаёт ошибку, что не реализовано.
А ещё эти __ебучие __подчеркивпния __перед __каждой __переменной.

Весь код в комментариях капитана
// Find the backend to use
Backend backed = Main.findBackend();
Как же понять, что тут происходит?!

Я не хочу разбираться в этом говне, но судя по тем исходникам что там есть эмулятор работает в JVM, но этот мудак был бы не он если бы не заебенил нативных функций. Причём большинство можно спокойно сделать на чистой джаве.
Аноним 21/11/23 Втр 18:37:39 2931419 107
Как в тестах правильно замокать @CreatedDate и @LastModifiedDate аннотации спринга?
Аноним 21/11/23 Втр 18:53:56 2931433 108
>>2930984
Значит говно проект?
Аноним 21/11/23 Втр 19:28:05 2931468 109
>>2931419
when(zalupaMock.setMeshokSDannbIMi(anyMeshok()).doAnswer(pohuy4toTam -> {lastModifiedDate = Instant.now()) }
Аноним 21/11/23 Втр 19:49:09 2931500 110
Программистоблядки сосут у ИБшников.
Аноним 21/11/23 Втр 20:26:17 2931562 111
Аноним 21/11/23 Втр 20:39:21 2931594 112
Аноним 21/11/23 Втр 21:54:58 2931745 113
Аноним 21/11/23 Втр 22:15:01 2931780 114
>>2931562
Вот бы магию спринга на коболе.
Аноним 21/11/23 Втр 22:18:47 2931788 115
>>2931562
Вот бы тяночку обнять
Аноним 21/11/23 Втр 23:21:56 2931963 116
Аноним 21/11/23 Втр 23:23:12 2931964 117
Аноним 21/11/23 Втр 23:49:49 2931989 118
>>2931562
Вот бы все гнойные псины сдохли разом.
Аноним 22/11/23 Срд 00:01:07 2931997 119
>>2931964
Эээ. Почему не меня?
Аноним 22/11/23 Срд 00:19:04 2932009 120
Аноним 22/11/23 Срд 01:09:17 2932030 121
>>2927770
>>2929635
>>2930480

Т.е. ты высрался про то, что градл якобы много мусорит, сравнивая при этом два совершенно разных проекта?
Аноним 22/11/23 Срд 05:37:44 2932076 122
>>2932009
Че нихуя-то? Он работает через этот бин. Тебе надо или спринговый конфеги сделать тестовый или мокать. И гугли сам, пидор.
Аноним 22/11/23 Срд 12:53:01 2932343 123
>>2931433
>Значит говно проект?
Смотря какие у тебя цели.

Если писать энтерпрайз код - проект топ. Куча нахуй не нужных абстракций, код аккуратно отформатирован в кодстайле из 90-х, везде комментарии которые просто пересказывают название метода, но нихера не говорят о сути, куча документации в которой хер разберёшься и в которой минимум содержания.

А если тебе нужен проект который просто будет выполнять мидлеты на современном пк, то проект говно.
Аноним 22/11/23 Срд 13:01:26 2932353 124
>>2932343
>энтерпрайз код - проект топ
Неужели невозможно, чтобы опенсорсные проекты больших корпораций не имели перечисленные недостатки?
Аноним 22/11/23 Срд 14:32:32 2932456 125
>>2932076
Нет, не работает он через бин. Только если в аннотации параметр указывать с именем бина. Но это кринж, ради тестов такое менять.
Аноним 22/11/23 Срд 14:34:54 2932458 126
Integer parse(String s) {...}
Long parse(String s) {...}
Long l = parse("1");

Почему так нельзя?
Аноним 22/11/23 Срд 14:36:20 2932461 127
>>2932030
Всё просто. На мавене ни одного срущего проекта, на дегенерадле каждый второй.
Аноним 22/11/23 Срд 14:36:34 2932463 128
>>2932458
Чем тебя методы в wrapped классах не устраивают?
Аноним 22/11/23 Срд 14:37:16 2932464 129
>>2932463
Integer и Long просто для примера.
Аноним 22/11/23 Срд 14:38:58 2932468 130
>>2932458
Потому что усложняется понимание кода и разрушается хрупкий принцип возврата значения.
Аноним 22/11/23 Срд 14:39:59 2932469 131
>>2932458
Можно.
import static java.lang.Long.parseLong;
Аноним 22/11/23 Срд 14:41:15 2932470 132
>>2932469
Я в ахуе с таких дегенератов. Спрашивают про оверлоадинг по возвращаемому значению - отвечают на вопросы по точкам и запятым блядь.
>>2932468
А на уровне jvm ограничения есть?
Аноним 22/11/23 Срд 14:41:26 2932471 133
>>2932469
Он имел в виду чтобы выбирался метод parse в зависимости от того, какой переменной присваивается возвращаемое значение.
Аноним 22/11/23 Срд 14:42:29 2932474 134
>>2932470
>а на уровне jvm ограничения есть
Так такое если и делать, то только через компилятор. JVM тут ни причём.
Аноним 22/11/23 Срд 14:46:19 2932477 135
>>2932470
Тупые тролле вопросы = тупые тролле ответы. Гори.
Аноним 22/11/23 Срд 14:48:05 2932478 136
>>2932477
А может ты просто тупой тролль сам по себе?
Аноним 22/11/23 Срд 15:00:28 2932487 137
image.png 7Кб, 463x97
463x97
>>2932474
Выглядеть он будет так. Реализация +- похожа на это >>2915718 →
Нахуя это нужно - а вот хуй знает.
Аноним 22/11/23 Срд 15:07:03 2932497 138
>>2932478
Ну конечно тролль. Как можно считать по-другому?

>>2932487
Ну удачи после этого вызвать статический метод из класса. Тут можно было бы для простоты ставить вместо класса Function<String, T> parseFunction, но тогда вообще зачем городить этот огород?
Аноним 22/11/23 Срд 15:16:32 2932515 139
Аноним 22/11/23 Срд 15:21:36 2932528 140
create Long as long_ by parse from "1";

long_ — имя локальной переменной
Аноним 22/11/23 Срд 15:49:57 2932593 141
>>2930481
Ну, линейный от количества пикселей, лол.
А так, O(wh), конечно.
Аноним 22/11/23 Срд 16:57:50 2932681 142
Всем привет, подскажите возможна ли удаленка на джаве на рф компанию из европы??
Аноним 22/11/23 Срд 17:10:44 2932707 143
Аноним 22/11/23 Срд 18:18:45 2932797 144
>>2930447
Какой-то эмбеддинг изображения надо получать и сравнивать расстояние между векторами. Но это нейросетки надо юзать и весьма накладно по ресурсам. Это по-современному. Возможно подойдет более простой и менее прожорливый дедовский метод.
Можешь тут глянуть предложения, м.б. какой-то сработает.
https://stackoverflow.com/questions/11541154/checking-images-for-similarity-with-opencv
Аноним 22/11/23 Срд 18:36:49 2932821 145
Заметили, насколько в джава треде более интеллектуальное обсуждение, чем в сишорпе? Это говорит о многом.
Аноним 22/11/23 Срд 18:41:20 2932831 146
>>2932821
Чем же тут интеллектуальные-то?
Аноним 22/11/23 Срд 18:43:33 2932836 147
>>2932831
Чем в сишорп треде.
Аноним 22/11/23 Срд 19:03:40 2932864 148
Есть рест контроллер в спринге. Я хочу один из квери параметров превращать из строки в объект. У метода контроллера я указываю параметр с типом этого объекта. В WebMvcConfigurer я добавляю нужный конвертер. Чтобы провалидировать какие-то поля объекта я могу добавить аннотацию над параметром метода. Но эта валидация произойдет уже после конвертации. А как мне провалидировать ту строку, которая приходит в квери параметре в оригинальном реквесте, до вызова конвертера?
Аноним 22/11/23 Срд 21:50:00 2933110 149
>>2932593
Квадратичный от количества всех изображений. Ты же сравниваешь каждую картинку с каждой.
Аноним 22/11/23 Срд 21:52:24 2933114 150
>>2932864
Не понял, ты хочешь какой то сложный объект засунуть в @RequestParams что ли?
Засунь все в тело запроса и валидируй как вздумается.
А если там просто одна строка - енум твой выбор.
или дай больше контекста нахуя и главное зачем
Аноним 22/11/23 Срд 22:05:24 2933125 151
>>2932461
Так блять надо сравнивать один и тот же проект, с чего ты взял, что это вина градла? Там плагины кастомные, деобфускация, декомпиляция и прочее дерьмо нужно сделать. Сделай такое на мавене и посмотрим.
Аноним 22/11/23 Срд 22:13:12 2933128 152
>>2933114
Уже нашел, HandlerMethodArgumentResolver.
Аноним 22/11/23 Срд 23:48:55 2933257 153
>>2932353
>Неужели невозможно, чтобы опенсорсные проекты больших корпораций не имели перечисленные недостатки?
Джава опенсорсный проект нескольких больших корпораций, а SquirrelJME проект энтузиаста одиночки.

Меня эта тема не интересует, но например https://github.com/eiroca/microemu по коду выглядит сильно адекватней. Чистая джава, просто эмулирует классы из JME делегируя вызовы к десктопной версии джавы. Все просто и прямолинейно.
Аноним 22/11/23 Срд 23:50:13 2933259 154
>>2933125
>надо сравнивать один и тот же проект
Тыскозал? Чем тебя не устраивает сравнение всех проектов сразу со всеми проектами сразу? Не так удобно получается?
Аноним 23/11/23 Чтв 01:05:06 2933279 155
Обьясните тупому почему жабе не прикрутят генератор машинного кода? Ведь, по сути сама жаба компилируется в байт-код, который потом скармливается jvm и средствами виртуальной машины на лету представляется в машинные коды. Насколько я понимаю, llvm работает так же, но только создает бинарник, а не выполняет код в реальном времени. Так почему к жабе до сих пор не прикрутили генератор бинарников?
Аноним 23/11/23 Чтв 01:15:11 2933282 156
>>2933279
Вроде гралвм нативно компелируется. Но там траблы с класслоадерами есть энивей. Только зачем это все, если жабовский жит тупа лучше большинства аот?
Аноним 23/11/23 Чтв 01:16:13 2933283 157
Возможно сделать JVM не на языке джаве, а на си например?
Аноним 23/11/23 Чтв 01:23:51 2933288 158
>>2933283
Почему нет? JVM же на плюсах написана, разве нет? Это всего лишь программа, которая получает на вход байткод и интерпретирует его описанным в спецификации образом.

> JVM не на языке джав
Это как? Мы вам встроили виртуальную машину в виртуальную машину, чтобы вы выполняли код в виртуальной машине, пока ваша виртуальная машина выполняется в другой виртуальной машинне?
Аноним 23/11/23 Чтв 01:24:42 2933289 159
>>2933282
> Только зачем это все, если жабовский жит тупа лучше большинства аот?
В сферу байтоебинга залететь. На те же мобилки, микроволновки, симки как-то же писали софт. Чому бы не развивать это направление?
Аноним 23/11/23 Чтв 01:34:51 2933291 160
>>2933288
просто товарищ выше аппелировал к чисто джаве
Аноним 23/11/23 Чтв 01:42:00 2933293 161
>>2933289
Додик, ты тред-то почитай. Буквально эта тема обсуждалась последние 50 постов.
Аноним 23/11/23 Чтв 01:45:53 2933294 162
>>2933288
>Это как? Мы вам встроили виртуальную машину в виртуальную машину, чтобы вы выполняли код в виртуальной машине, пока ваша виртуальная машина выполняется в другой виртуальной машинне?
Примерно так. В граальвм (за хотспот не шарю) только самые базовые части написаны на плюсах, всё остальное, кроме того, что необходимо для интерпретации синтаксиса, написано уже на джаве. Компилятор вообще полностью на джаве, а сам он компилируется предыдущей версией себя, с надеждой на то, что какой-то критичный баг, мешающий компиляции багфикса, внезапно не вылезет.
Аноним 23/11/23 Чтв 01:59:49 2933297 163
>>2933293
Чего злой такой? Ты тоже читаешь последние 50 постов в треде, когда заходишь, чтобы запостить?
Ну и прошу линкануть пост с обсуждением этой темы.

>>2933294
Интересно, конечно.
Аноним 23/11/23 Чтв 04:21:46 2933328 164
>>2933259
Потому что проекты РАЗНЫЕ, отсюда твое сравнение двух систем сборок таким образом является необъективным.

Это блять как обвинять архитекторов джавы за то, что язык плохой, ссылаясь на говнопроекты рандомных кодеров. А вот петушарп лучше, потому что я не видел там плохих проектов!
Аноним 23/11/23 Чтв 04:24:39 2933330 165
>>2933289
Ну так будут те же проблемы, что и в GraalVM.
Аноним 23/11/23 Чтв 04:41:38 2933334 166
>>2933328
> отсюда твое сравнение двух систем сборок таким образом является необъективным.
Тыскозал? Мань, ты на вопрос про сравнение всего со всем не ответил.

>Это блять как обвинять архитекторов джавы за то, что язык плохой, ссылаясь на говнопроекты рандомных кодеров. А вот петушарп лучше, потому что я не видел там плохих проектов!
Если на джаве каждый второй проект будет говном, а на петушарпе ни одного говнопроекта, это заставит задуматься.
Аноним 23/11/23 Чтв 06:15:06 2933338 167
>>2933328
>>петушарп лучше, потому что я не видел там плохих проектов!
Из того что видел - там с серьезным ебалом обмазываются IInterface и Impl, дробят на трехстрочные методы и дрочат на клин код ункл боба, которого выпиздили из джавы. Когда в джаве уже избавятся от геттеров, те все еще будут писать свои интерфейсы на каждый пук.
Аноним 23/11/23 Чтв 06:28:39 2933340 168
>>2933338
>с серьезным ебалом обмазываются IInterface и Impl, дробят на трехстрочные методы и дрочат на клин код ункл боба

Как будто в джаве по-другому. 1-2 смузи проекта не в счет. Такие есть и на шарпе.

>Когда в джаве уже избавятся от геттеров

Никогда.
Аноним 23/11/23 Чтв 06:42:18 2933345 169
Аноним 23/11/23 Чтв 09:28:48 2933392 170
Какой же уебищный синтаксис в Go

Давайте сделаем по ключевому слову на каждый вид и подвид операций.
make - это вообще пушка

// это объявление стракта
type gopher struct {
size int64
exist boolean
visible boolean
}

//конструктор
func newGopher(s size, v visible) {
return gopher {
size: s
exist: true
visible: v,
}
}

// это объявление функции
func (g gopher) canYouSee() reply boolean {
if exist != visible // тут можно нарисовать залупу exist :=&visible
reply := false
return
}
reply := true
return
}

// main
func main() {
ocheBolshoSuslik := newGopher(4, true)
vidishSuslika boolean := ocheBolshoSuslik.canYouSee()
func nietPidoraOtvet() {
if vidishSuslika != true {
fmt.PrintLn("Не ")
return
}
fmt.PrintLn("Вижу")
}
defer nietPidoraOtvet()

nuChtoVasya := "Ну, что, Вася \n"
fmt.PrintLn("[%v], видишь суслика? \n", nuChtoVasya)
}
Аноним 23/11/23 Чтв 10:30:37 2933429 171
>>2933392
//конструктор
func newGopher(s size, v visible) gopher {

пидорский синтаксис
Аноним 23/11/23 Чтв 10:50:56 2933449 172
>>2933338
> там с серьезным ебалом обмазываются IInterface и Impl, дробят на трехстрочные методы и дрочат на клин код ункл боба

Трусторе шо пиздец. Эти блядские IJopaEntityToJopaDTOMapper и JopaEntityToJopaDtoMapperImpl, которыми забиты 50%+ проектов на шарпе, мне теперь в кошмарах снятся.

> Когда в джаве уже избавятся от геттеров
Когда на меня упало блядское легаси на сервлетах, которое почти полностью писалось ещё во времена ~6 джавы, там и то в большинстве файлов был кем-то заботливо проставлен волшебный @Getter.
Вы только про котлин шарпистам не рассказывайте, они лопнут.


>>2933340
>Как будто в джаве по-другому

Конечно есть и такое, вопрос же в соотношении. Я это в основном на гитхабе у джунов видел, которые нихуя объяснить не могли, зачем они этой херней страдают. Ещё был один проект у нас на пару тысяч строк, написанный джуном, который насмотрелся лекций про clean architecture и заоверинжинирил перекладывание джсонов. Пришлось его переписать по-человечески потом почти с нуля.
В массовых масштабах на жабе последние годы я эту болезнь не наблюдаю, но и на статистическую достоверность не претендую.

> 1-2 смузи проекта не в счет.
Их не 1-2, а десятки процентов из тех, что начали писаться в наши годы (спасибо микросервисам, это случается весьма часто). В легаси всё бывает, конечно.
Аноним 23/11/23 Чтв 12:28:56 2933535 173
>>2933334
> Потому что проекты РАЗНЫЕ
> на вопрос про сравнение всего со всем не ответил
В глаза долбишься или тролль?
Аноним 23/11/23 Чтв 12:39:33 2933551 174
>>2933257
>делегируя вызовы к десктопной версии джавы
А чем это лучше?
Можно ли сделать эмулятор, не требующий джаву?
Аноним 23/11/23 Чтв 14:13:31 2933689 175
Аноним 23/11/23 Чтв 14:30:56 2933702 176
DCIF7-2W0AEAv9c.jpeg 58Кб, 770x478
770x478
>>2933392
>>уебищный синтаксис в Go
У меня больше всего недоумение вызывает пикрил. В джаве чекед эксепшены признали ошибкой, а тут решили что проверять ошибки в каждой строке - охуенная идея.
Щас и в джаву некоторые тащат идею что надо также делать ответ+еррор (в котлине емнип это есть).
Ведь глобал эксепшен хендлер это так медленно в приложухе на 1000 чел пикового онлайна.
Аноним 23/11/23 Чтв 14:33:38 2933708 177
>>2933702
В сбере например не 1000 человек онлайна
Аноним 23/11/23 Чтв 14:34:45 2933710 178
>>2933702
Я слышал в этом треде, что эксепшены, используемые для бизнес логики, можно оптимизировать, отключив сбор стектрейса. Не знаю, правда это или нет и как это делать. Реквестирую у анонасов пояснение.
Аноним 23/11/23 Чтв 14:41:58 2933721 179
>>2933708
Это было к тому что ебучие каргокультисты воют про медленные эксепшены даже не понимая что в большинстве случаев на это похуй.

>>2933710
Охуенно наверное потом чинить баги, когда у тебя в логах вместо стектрейса "пук среньк, что то пошло не так".
Аноним 23/11/23 Чтв 14:43:00 2933722 180
Аноним 23/11/23 Чтв 14:43:47 2933723 181
Аноним 23/11/23 Чтв 14:47:10 2933725 182
>>2933710
Правда, у эксепшена есть протектед конструктор, с флагом writeStackTrace.

>>2933721
>Охуенно наверное потом чинить баги, когда у тебя в логах вместо стектрейса "пук среньк, что то пошло не так".
Ты чо пёс, это же говей!
Аноним 23/11/23 Чтв 14:53:50 2933732 183
>>2933551
>А чем это лучше?
Тем что это проще. Такой проект реально реализовать силами 1-2х человек.

>Можно ли сделать эмулятор, не требующий джаву?
Конечно. Нужно всего-то реализовать VM+стандартную библиотеку или AOT+runtime+стандартную библиотеку.
Аноним 23/11/23 Чтв 15:00:45 2933739 184
Подскажите пожалуйста, какие документы нужно отправить в google play console что бы их приняли ? Я живу в Польше, документы соответственно отправляю польские. Уже 4-ая попытка.
Аноним 23/11/23 Чтв 15:03:39 2933744 185
>>2933739
Можно я погуглю за тебя?
Аноним 23/11/23 Чтв 15:09:13 2933748 186
>>2933739
- kurwa bober
- ja pierdolę
- jakie bydle
Аноним 23/11/23 Чтв 15:11:34 2933752 187
Что легче - андроид или бекенд?
Аноним 23/11/23 Чтв 15:13:56 2933755 188
Аноним 23/11/23 Чтв 15:14:50 2933758 189
>>2933721
> Охуенно наверное потом чинить баги, когда у тебя в логах вместо стектрейса "пук среньк, что то пошло не так".
Так можно на время дебага включить сбор стека.
Аноним 23/11/23 Чтв 15:20:12 2933765 190
>>2933752
Бекенд. У него хотя бы всякую порашу не нужно пересоздавать, если перевернуть сервер.
Аноним 23/11/23 Чтв 15:42:12 2933792 191
Анончики, там VMware (которые в том числе делают спринг) купил Broadcom, не начинайте новые проекты на спринге пока они не прояснят свою позицию по опенсорсу - Broadcom знаменит своей дойкой клиентов, могут лицензию сменить спокойно.
Аноним 23/11/23 Чтв 15:43:26 2933794 192
Аноним 23/11/23 Чтв 15:51:14 2933817 193
>>2933765
А если 0 вакансий в городе ?
Аноним 23/11/23 Чтв 15:54:57 2933829 194
>>2933758
>Так можно на время дебага включить сбор стека.
Во время дебага, тебе стектрейс не нужен. Можно поставь бекпоинт на конкретный тип эксепшена.
Стектрейс тебе нужен, чтобы понять почему Ерохин смог снять в банкомате 100к, хотя у него на счету 21₽.
Аноним 23/11/23 Чтв 15:56:35 2933832 195
>>2933829
> Стектрейс тебе нужен, чтобы понять почему Ерохин смог снять в банкомате 100к, хотя у него на счету 21₽
Если он сможет снять, стектрейса не будет.
Аноним 23/11/23 Чтв 15:59:33 2933838 196
>>2933732
Я бы хотел разработать типа qemu, эмулирование ARM.
Аноним 23/11/23 Чтв 16:32:35 2933907 197
>>2933110
Ну да, я и писал, что надо хэш-функцию. Всё равно будет квадратик, но квадратик сравнения чисел всё же явно быстрее будет, чем квадратик попиксельного сравнения.
Ну и его можно в среднем ускорить, если изначально упорядочить по хешу, много вариантов сразу отсечётся.
Аноним 23/11/23 Чтв 18:55:06 2934101 198
>>2933832
ауф

>>2933794
quarkus лучше

>>2933792
На уже вышедшие версии спринга задним числом версию сменят? Или без гарантий дальнейших обновлений до Spring Boot 5.0 проект теперь не начинают?

>>2933817
Если водка мешает работе - ну её нахуй эту работу
Аноним 23/11/23 Чтв 23:04:40 2934527 199
>>2933838
>Я бы хотел разработать типа qemu, эмулирование ARM.
Тебе надо написать
- JmVM
- стандартную библиотеку + телефонные расширения
VM можно просто интепретатор написать, можно JIT.
Аноним 23/11/23 Чтв 23:26:22 2934564 200
Ребят, я написал первую свою программу
Я так счастлив
Аноним 23/11/23 Чтв 23:36:37 2934583 201
Вы все пупуни дурацкие
Аноним 23/11/23 Чтв 23:41:04 2934594 202
>>2934583
А я вот стараюсь, новенькие концепции для себя осваиваю, я же молодец и не дурацкая, а вообще любимая, да?
Аноним 23/11/23 Чтв 23:41:37 2934598 203
Аноним 23/11/23 Чтв 23:44:53 2934606 204
Аноним 23/11/23 Чтв 23:45:47 2934609 205
Аноним 23/11/23 Чтв 23:47:59 2934612 206
Аноним 23/11/23 Чтв 23:50:59 2934620 207
>>2934598
Фп штучки всякие. Начиная с карринга, который я вообще никак не мог осознать ну года пол назад, заканчивая топовой системой типов, до которой жабке расти и расти... А еще книжечку читаю по многопоточке, но там ниче нового пока что...
>>2934606
>>2934612
Вот чево началось-то... Мы знакомы...?
Аноним 23/11/23 Чтв 23:52:28 2934625 208
>>2934620
Ого работать не пробовал?
Аноним 23/11/23 Чтв 23:53:32 2934626 209
>>2934625
Нууу, не смотря на мои причитания по поводу стажерства, оказывается стоит лишь захотеть... Но бляя, тут такие интересные концепции, да и стажировку в шарп предложили, лол.
Аноним 23/11/23 Чтв 23:54:25 2934627 210
>>2934626
Короче не пробовал F
Аноним 23/11/23 Чтв 23:55:24 2934630 211
>>2934627
Ну пограмистом не пробовал, да. Чево ты фкать начал-то сразу, а? Похвалить вот сложно что ли... Вредина
Аноним 23/11/23 Чтв 23:57:57 2934637 212
>>2934620
Знакомы заочно, наблюдаю за тобой много лет.
Аноним 24/11/23 Птн 00:05:15 2934643 213
>>2934637
Слов нет и чево ж ты не написал, няш? Поближе б пообщались. Обсудили бы там jmm нинаю, как гонки безопасные писать, по кишочкам жабы полазали бы... Эх, романтишно.
Аноним 24/11/23 Птн 00:07:13 2934648 214
>>2934643
Я так стесняюсь, я так раскраснелся от этого поста. Жесть...
Аноним 24/11/23 Птн 00:21:14 2934657 215
>>2934648
Блиин, как же это мило звучит. Ну тогда это, продолжай наблюдение.
Аноним 24/11/23 Птн 00:25:38 2934659 216
>>2934637
>Знакомы заочно
Я в столовой видел вас, вы пили сок, я ждал камаз.
Аноним 24/11/23 Птн 00:26:03 2934660 217
>>2934643
>по кишочкам жабы полазали бы
Только джавы или друг друга тоже?..
Аноним 24/11/23 Птн 00:36:15 2934663 218
>>2934660
Заинтересовался и хочешь на себе проверить...? Пиши :3
Аноним 24/11/23 Птн 00:55:16 2934669 219
>>2934663
Куда писать, солнышко
Аноним 24/11/23 Птн 01:09:28 2934677 220
>>2934669
Да я в прошлых кидал гит с сервисом, у меня тг с ним совпадает. Найдешь думаю. Пока что я один тут такой уникальный
Аноним 24/11/23 Птн 07:24:22 2934720 221
Аноним 24/11/23 Птн 09:41:25 2934761 222
Кстати, я слышал, что JIT может быть быстрее AOT за счёт того, что он может на основе собранных в рантайме данных применять эмпирически выведенные оптимизации. А ещё можно прикинуть оверхед на компиляцию в рантайме просто представив, сколько времени будет длиться компиляция всего приложения полностью, общий оверхед будет гарантированно меньше или равен этому.
Аноним 24/11/23 Птн 09:56:39 2934770 223
image.png 277Кб, 1920x1080
1920x1080
Когда эта мерзкая хуйня уже полностью загнется как скала?
Аноним 24/11/23 Птн 10:03:14 2934772 224
>>2934770
Есть вероятность, что позже или в одно время с джавой. Улучшения мира ждать не стоит, а петухлин поддерживается жидами.
Аноним 24/11/23 Птн 10:05:15 2934775 225
>>2934772
меня корежит от этой подделки
Аноним 24/11/23 Птн 10:06:14 2934777 226
пускай вместо петухлина на раст перепишут. Хоть он на порядок лучше гойтлина
Аноним 24/11/23 Птн 10:07:43 2934781 227
>>2934777
Раст среддитом поддерживается, соевее хуйни сложно придумать. Вот хаскель совсем другое дело
Аноним 24/11/23 Птн 10:12:17 2934783 228
>>2934781
А чем он соевый, помимо банального объявления типа переменных после имени? Так-то идея языка отличная.
Аноним 24/11/23 Птн 10:12:37 2934785 229
image.png 294Кб, 460x662
460x662
>>2934781
ну согласись, всем в этом мире было б лучше еслиб не было котлина. А в случае с итогом суда лучше б гугл и дальше пользовался джавой и не выебывался. Котлин как гниющая, умирающая, убогая хуета, от которой пара бы уже давно избавиться, лол
Аноним 24/11/23 Птн 10:13:12 2934786 230
пора*
Аноним 24/11/23 Птн 10:17:17 2934790 231
>>2934783
Какая там идея? Меня просто вымораживает его поддержка комунити. Это как религия уже. Как можно про плохо про сраст говорить. Ну и идеи из реддита берутся, это вообще маразм. Сравнить с jcp...
>>2934785
Энивей даже в нем система типов лучше жабовской. До тех пор, пока не будет ее переработки, а это связывают с пришествием местого божества, ака вальхаллы, нихуя не изменится.
Аноним 24/11/23 Птн 10:19:45 2934791 232
>>2934790
> Какая там идея?
Ставка на производительность по возможности без потери выразительности кода. Zero-cost abstraction, полуручное управление памятью, оптимизации при компиляции. Невиданная свобода в эпоху полупроводниково-софтварного сговора.
Аноним 24/11/23 Птн 10:20:26 2934792 233
>>2934791
> оптимизации при компиляции
вычисления на этапе компиляции*
Аноним 24/11/23 Птн 10:20:31 2934793 234
>>2934791
Ну это и c++ постулирует. Он еще больше свободы дает, настолько много, что это мусорка идей, а не язык.
Аноним 24/11/23 Птн 10:22:54 2934795 235
>>2934793
Плюсы не смогли в оптимизацию и их по производительности уделала даже джава, которая при выборе между перформансом и выразительностью кода выбирает последнее, оставляя перформанс на "по возможности".
Аноним 24/11/23 Птн 10:27:06 2934797 236
>>2934795
>которая при выборе между перформансом и выразительностью кода выбирает последнее, оставляя перформанс на "по возможности".
Бля, вот как не слушал експертов, по моему у них выразительность вообще где-то на последнем месте. Главное, обратное совместимость. И перфоманс выше, поскольку если в каких-то частях будет деградация, хуяк и у миллионов пользователей -100500% по перфомансу с нихуя. Ебало воображать не стоит. Да и жит жабовский лучший оптимизатор из существующих. Вот может сраст в Lock Elision? Или вообще в escape анализ?
Хуйню несешь в общем.
На счет плюсов, они где-то пишут, мол мы не должны быть медленнее си. Поэтому там такие убогие массивы.
Аноним 24/11/23 Птн 10:28:39 2934800 237
>>2934797
Ну точнее сишный код не должен претерпевать деградацию по перфомансу.
Аноним 24/11/23 Птн 10:31:31 2934801 238
Пишу сервер для получения и обработки данных от модулей wifi d1 mini, кто-нибудь может посоветовать хороший материал по написанию низкоуровневого брокера сообщений? Сам хеллоуворлдщик, в многопоток не умею.
Аноним 24/11/23 Птн 10:32:34 2934803 239
>>2934801
>в многопоток не умею.
Ну и не лезь блять, если не умеешь. Не твоего ума дела, умные люди напишут.
Аноним 24/11/23 Птн 10:35:46 2934805 240
>>2934797
Есть експерты, а есть Джеймс Гослинг, который ещё на заре джавы сделал выбор в пользу выразительности, добавив сборщик мусора и продекларировав принцип write once со всеми вытекающими из него. Это уже делает выбор в пользу простоты написания кода и его выразительности за счёт перформанса, но более того, кроме Джеймса Гослинга есть ещё и Брайан Гётц, который только и делает, что дрочит свой проект амбер. Любая оптимизация в джаве отталкивается от решений этих двух людей. Обратная совместимость да, имеет тоже очень высокий приоритет, но я и не сравнивал с ней.
Аноним 24/11/23 Птн 10:37:10 2934807 241
>>2934797
> escape анализ
Вообще не нужен на расте, там как там по дефолту классы бесплатные.
24/11/23 Птн 10:37:31 2934808 242
>>2934803
>не лезь блять, если не умеешь
Ты родился сразу сеньором?
Аноним 24/11/23 Птн 10:37:58 2934809 243
Аноним 24/11/23 Птн 10:38:15 2934810 244
>>2934808
Ну похоже, что да, раз ты меня им считаешь.
Аноним 24/11/23 Птн 10:42:24 2934813 245
>>2934810
Я тебя ебланом считаю, как я тебя назвал не суть важно.
>>2934809
Блять, сажа то отваливается, то приклеивается, заебала.
Аноним 24/11/23 Птн 11:32:19 2934874 246
>>2934770
Скала наоборот,все популярнее становится
Аноним 24/11/23 Птн 11:36:16 2934878 247
Аноним 24/11/23 Птн 11:39:00 2934883 248
>>2934770
Мать ебал того пидора который тянет это говно на проект, я блять только только джаву со спрингом осилил а уже в требованиях знания котлина. ВЫ ЕБНУЛИСЬ НАХУЙ?!
Аноним 24/11/23 Птн 11:39:41 2934886 249
>>2934878
Ты че так дерзко бля базаришь,цифры урони свои
Аноним 24/11/23 Птн 11:40:31 2934887 250
image.png 113Кб, 1280x800
1280x800
Когда эта мерзкая раковая опухоль обанкротится нахуй, чтобы и котлин сдох обоссавшись и обосравшись, так еще и не приходилось каждый месяц с почтой ебаться. Хочется, чтобы потом кто нить запилил аналог Intelij idea, который будет красив, легок и прекрасен во всем... Боже как же хочется...
Аноним 24/11/23 Птн 11:43:57 2934890 251
>>2934886
нет! Скала сдохла! Попробуй доказать обратное
Аноним 24/11/23 Птн 11:44:34 2934891 252
>>2934887
И конечно же бесплатен
Аноним 24/11/23 Птн 11:45:40 2934892 253
>>2934891
НЕТ
ХОЧУ, ЧТОБ ЕЩЕ ДОПЛАЧИВАЛИ ЗА ИСПОЛЬЗОВАНИЕ
Аноним 24/11/23 Птн 11:46:19 2934893 254
>>2934892
А я вот тяночку няшную хочу,даааа
Аноним 24/11/23 Птн 11:47:57 2934897 255
16991105565000.jpg 76Кб, 421x468
421x468
>>2934893
не надо тебе тянку. От них проблемы и вонь
Аноним 24/11/23 Птн 11:51:57 2934898 256
Аноним 24/11/23 Птн 11:54:58 2934903 257
image.png 47Кб, 300x244
300x244
Аноним 24/11/23 Птн 11:57:33 2934906 258
>>2934903
Хуй отдашь анону с вложенными дто
Аноним 24/11/23 Птн 12:23:53 2934919 259
Аноним 24/11/23 Птн 12:26:47 2934921 260
Аноним 24/11/23 Птн 12:41:17 2934924 261
>>2934921
Котлинопетух закукарекал заместо "Авроры".
Аноним 24/11/23 Птн 12:55:18 2934932 262
>>2934720
>Почему не JIT?
JIT в первом варианте
>VM+стандартную библиотеку
Аноним 24/11/23 Птн 14:43:31 2935063 263
image 11Кб, 575x128
575x128
Срочно проверьте, можно ли у вас включить подсветку синтаксиса jsonpath в строках в комьюнити идее?
Аноним 24/11/23 Птн 15:43:34 2935154 264
>>2933907
По хэшу разницу не получишь. Только бинарный ответ "эквивалентно/не эквивалентно".
Аноним 24/11/23 Птн 15:57:42 2935176 265
Аноним 24/11/23 Птн 17:43:53 2935308 266
>>2935154
Так это от хэша зависит. Близкие картинки должны преобразовываться в близкие хэши. Я приводил самый банальный пример - средний арифметический цвет пикселя. Ресайзинг, например, не окажет особого влияния, сохранение в жипег из пнг тоже. Но есть подозрение, что будет дохуя коллизий, потому что получится нормальное распределение.
Аноним 24/11/23 Птн 18:43:58 2935399 267
Что лучше AOT или SBT?
Аноним 24/11/23 Птн 19:58:45 2935523 268
Аноним 24/11/23 Птн 19:59:07 2935524 269
>>2935308
>Близкие картинки должны преобразовываться в близкие хэши.
Ты ЕБЛАН?
Аноним 24/11/23 Птн 20:11:56 2935528 270
Аноним 24/11/23 Птн 20:43:53 2935585 271
>>2935308
>Близкие картинки должны преобразовываться в близкие хэши.
Проиграл. Почитай на досуге как оценивается качество/совершенство алгоритмов хеширования
Аноним 24/11/23 Птн 21:51:22 2935765 272
>>2935585
Посмотрел ветку, там не про криптографический хэш речь. Ладно, похуй
Аноним 24/11/23 Птн 22:44:36 2935806 273
download (1).png 8Кб, 253x199
253x199
download.png 7Кб, 254x199
254x199
что вы видите на этих картинках?
Аноним 25/11/23 Суб 00:01:45 2935860 274
image.png 431Кб, 600x449
600x449
>>2934887
>Хочется, чтобы потом кто нить запилил
Рака жопы тебе!
Аноним 25/11/23 Суб 00:06:40 2935863 275
Аноним 25/11/23 Суб 07:00:18 2936050 276
C# сделана индусами для индусов. Жабка белыми людьми для белых людей
Аноним 25/11/23 Суб 10:52:55 2936173 277
Аноним 25/11/23 Суб 10:59:39 2936176 278
Аноним 25/11/23 Суб 11:21:38 2936196 279
>>2936176
>2022
И как успехи? У меня чувство, что раст это язык мем. На него все хотят переписать, но в итоге нихуя не делают.
Аноним 25/11/23 Суб 11:31:10 2936204 280
Вот если бы у пидораста был синтаксис как у джавы...
Аноним 25/11/23 Суб 11:50:36 2936230 281
Аноним 25/11/23 Суб 11:57:43 2936242 282
А ВОТ НА ДЖАВЕ ХЕЛЛО ВОРЛД ДЛИННЫЙ!
@
@
@
IF __NAME__ == "__MAIN__"
IF __NAME__ == "__MAIN__"
IF __NAME__ == "__MAIN__"
IF __NAME__ == "__MAIN__"
Аноним 25/11/23 Суб 12:41:27 2936281 283
17009039813510.png 212Кб, 630x694
630x694
>>2936196
но ведь переписывают потихоньку... а новые вещи очень даже активно. язык реально хороший...
Аноним 25/11/23 Суб 12:43:47 2936283 284
пишутся
Аноним 25/11/23 Суб 13:27:22 2936314 285
>>2924175 (OP)
Так бля, уважаемые господа джависты. У меня есть к вам важный вопрос, а именно. Как разрабатываются реальные рест сервисы?
Вот вопросы которые у меня за день созрели

Уровень контроллера
1. Должна быть валидация полей
К примеру если длина пароля меньше 12 символов вернуть 404 и сказать что пароль короткий
А что ещё должно быть в контроллере?

Уровень сервиса
Что здесь должно быть помимо логики проекта?
И как поступать если, мой сервис1 работает с репозиторием1, но вдруг нужно из сервиса1 вызвать репозиторий2, мне вызывать этот репозиторий из сервиса2 или напрямую к нему обращаться?
И что такое миддлтваре, где они должны быть и вообще нужны ли они?

Как работать с БД через репозиторий?
Считаю это абсолютным рудиментом и хуйней наличие spring data jpa, сука я блять не поверю что на реальном проекте люди пишут sql запросы к базе в аннотации, ну я просто не поверю. Как вы общаетесь с базой? Хибернейт? JDBC?

Остальное
Что такое graceful shutdown? И нужен ли он в спринге?
Как и где хранить пароли и токены? Вот у меня есть пароль от юзера в БД который прописан в yml файле, как мне его захешировать?

Если вы считаете себя благородным сеньором, то вы должны ответить на вопрос и не проходить мимо, это ВАШ ДОЛГ!!!
Аноним 25/11/23 Суб 13:59:11 2936358 286
download (1).png 8Кб, 253x199
253x199
>>2936314
сеньоры тут не сидят... ходят легенды, что удачные вкатуны либо сходят с ума от разгребания индусского легаси и умирают навсегда, либо же потом восстают из мертвых и растут по карьерной лестнице, где впоследствии заводят трактор со своей еотовой в солнечную Калифорнию, проходят собес на Team Lead в AWS и живут ни в чем себе не отказывая и, соответственно, у них пропадает потребность в двощах...
Аноним 25/11/23 Суб 14:28:32 2936388 287
>>2936314
>>К примеру если длина пароля меньше 12 символов вернуть 404 и сказать что пароль короткий
Это делается через глобал эксепшен хендлер. В контролере нет кода валидации, там просто аннотация @Valid / @Validated

>>А что ещё должно быть в контроллере?
у меня это тонкие клиенты всегда, никакой логики, просто передает то что пришло в сервисы, иногда собирая в более удобном виде.

>>И как поступать если, мой сервис1 работает с репозиторием1, но вдруг нужно из сервиса1 вызвать репозиторий2, мне вызывать этот репозиторий из сервиса2 или напрямую к нему обращаться?
Обычно как техлид/тимлид решит. У меня на проекте в репу напрямую вызов идет мимо сервиса. Но у меня жук - если что я могу просто без задней мысли скопипастить код из репо2 и в репо1.

>>пишут sql запросы к базе в аннотации
jooq набирает популярность, но многие все еще ебутся с хибером

>>Что такое graceful shutdown? И нужен ли он в спринге?
В спринге эта хуйня вроде пытается завершить всякие очереди и текущие запросы перед выключением. Если у тебя stateless приложение то можно не париться.

>>Как и где хранить пароли и токены?
В секретах кубера. В само приложение добавляются через параметры при запуске самим кубером.
В ямле у меня хранятся только пароли и конфиги для локальной среды, а все тестовые/продовые идут через helm chart.

>>вы считаете себя благородным сеньором
бля, я только мидол, но похуй, уже ответил, стирать не буду.
Аноним 25/11/23 Суб 15:55:38 2936484 288
>>2936314
>А что ещё должно быть в контроллере?
Ничего. В контроллере вообще всего должно быть по минимуму. Миссия контроллера - это описать контракт API твоего сервиса: какие в нем эндпойнты, какие реквесты-респонзы в нем разрешены; и связать эндпойнты с тем, что надо делать при их вызове

>И как поступать если, мой сервис1 работает с репозиторием1, но вдруг нужно из сервиса1 вызвать репозиторий2, мне вызывать этот репозиторий из сервиса2 или напрямую к нему обращаться?

В теории, ничто не мешает тебе заинжектить два репозитория в один сервис. На практике, все зависит от душноты конкретного тимлида. Проверяй на месте.


>Считаю это абсолютным рудиментом и хуйней наличие spring data jpa, сука я блять не поверю что на реальном проекте люди пишут sql запросы к базе в аннотации

А чем тебе так претит эта мысль? SQL тащемто - база, лучше него для работы с реляционными данными не существует ничего. И обмажься ты хоть хибером, хоть джуком, в том или ином виде он у тебя неизбежно будет: в случае хибера - в лице нативных запросов и jpql, в случае джука - в виде куска сильнотипизированного кода. И просто напомню, что spring data jpa - тащемто обертка над хибером как самой популярной референс имплементацией JPA - пользуясь оным ты уже априори пользуешься хибером.

>Как и где хранить пароли и токены?
Есть такая штука как spring config - обьявляя пропертю в спринговом конфиге, ты можешь ее потом при запуске оверрайдить через аргументы командной строки, окружение, spring config server, и.т.д. А дальше - ты заводишь переменную в конфиге для пароля, сеттишь туда какую нить дефолтный пароль, с которым тебе будет удобно локально сервис гонять, а когда сервис попадет на прод, реальный пароль будет где то в недрах продового окружения, например в секретах кубера.
Аноним 25/11/23 Суб 16:20:48 2936540 289
Аноним 25/11/23 Суб 16:29:51 2936551 290
>>2936314
По поводу контроллеров уже ответили,что касается репозитория2,то тебе нужно не репо2 вызывать а гет метод сервиса, который работает с репо2
Аноним 25/11/23 Суб 18:41:57 2936779 291
>>2936484
>>2936388
Раз уж вы отозвались на мой пост, давайте я вам ещё вопросы задам
1. Вот к вам пришел разраб и сказал что он мидол, какие вопросы конкретно по спрингу вы зададите чтобы удостоверится в его словах. Потому что я до сих блять не понимаю где кончается этот ваш спринг, миллион модулей, миллиард классов с интерфейсами. Все что я пока знаю по спрингу, это то что на нем можно писать такой код, при помощи которого можно общаться только через интерфейсы, и так же то, что жизненным циклом объектов управляет спринг. В чем я не прав и как мне глубоко ещё окпать?

2. А что ещё включает в себя промышленная разработка? Ну бля, до того как вы устроились на работу, вы наверняка писали пет проекты и наверняка у вас был ахуй от реального проекта. Что вас удивило? Только не пишите что количеством кодовой базы различается, это и ежу понятно

3. Как писать юнит тесты в спринге? Как это выглядит в реале? Типа я в директории test создаю такую же иерархию директорий как в main? И вот есть service1, то и в test будет serviceTest1? Так штоле?


А так, исходя из ваших ответов я чот ещё не могу понять, а чем это отличается от той хуйни что я пишу? Если spring data jpa поменять на jooq и добавить валидаторы в контроллере, то вприницпе норм
Аноним 25/11/23 Суб 20:17:31 2936957 292
>>2935063
Короче какого-то хуя этот функционал теперь в отдельном плагине, у которого версии насинаются с 23.2: https://plugins.jetbrains.com/plugin/22044-jsonpath/versions
А упоминание этого плагина есть в блоге в посте за 21 год: https://www.jetbrains.com/guide/java/tips/evaluate-json-path-expressions/
А сам плагин появился полгода назад: https://github.com/JetBrains/intellij-community/commit/09003c4c66e13d344f06d4384681d489e70ba7f7
И ни в одном ченджлоге я этого изменения не видел. Какая-то подозрительная хуйня.
Аноним 25/11/23 Суб 21:17:52 2937079 293
>>2936957
Ты реально думаешь, что кому-то не похуй?
Аноним 25/11/23 Суб 22:38:11 2937249 294
>>2937079
Ну, я бы сказал, что каждому своё, но вот тебе, кажется, действительно так похуй, что не похуй. 😄
Аноним 25/11/23 Суб 22:44:27 2937264 295
>>2937249
Да ты просто 5 пост пишешь, чтоб ну хоть кто-то обратил внимание
Аноним 25/11/23 Суб 23:00:24 2937293 296
>>2937264
Я просто в шоке от урезания функционала для комьюнити версии был бы, если бы оно было так.
Аноним 26/11/23 Вск 00:13:10 2937392 297
>>2937293
Найди себе парня и пиши ему свои впечатления....
Аноним 26/11/23 Вск 03:02:30 2937489 298
>>2936314
>К примеру если длина пароля меньше 12 символов вернуть 404 и сказать что пароль короткий
Это можно сделать как через @Valid и @Size так и ручной логикой практически где угодно. Но все таки не в контроллере. Фронту будет наверное удобнее получать через первый метод, потому что там и поле приходит и что там не так им так удобнее подсветить на фронте по идее.

>А что ещё должно быть в контроллере?
Если у тебя какая-то дтоха, то обычно конвертация в контроллере происходит чтобы не засорять дтохами сервисы.

>Что здесь должно быть помимо логики проекта?
Ее можно еще сделать на уровне сущности. Хотя выглядит конечно ужасно.

>мне вызывать этот репозиторий из сервиса2 или напрямую к нему обращаться?
Напрямую лучше. Меньше будет сайд-эффектов.

>Как вы общаетесь с базой? Хибернейт? JDBC?
Шпринг дата с HQL и иногда нативщиной. А хуйли?

>Вот у меня есть пароль от юзера в БД который прописан в yml файле, как мне его захешировать?
Сейчас вроде везде bcrypt использует. Там и хэш и соль и все говно.
Аноним 26/11/23 Вск 03:33:01 2937492 299
>>2936779
>Все что я пока знаю по спрингу, это то что на нем можно писать такой код, при помощи которого можно общаться только через интерфейсы
Это неправильное понимание спринга. И контроллеры и сервисы и сущности это чисто свои классы никак не привязанные к спрингу. Исключение - репозитории.

>Как писать юнит тесты в спринге? Как это выглядит в реале?
Там сначала конфиги должны быть чтобы запустить спринг в контексте тестов. Дальше @MockBean и уже через мокито тестишь.
Аноним 26/11/23 Вск 10:06:08 2937554 300
>>2936779
>>какие вопросы конкретно по спрингу вы зададите чтобы удостоверится в его словах
Хз что тебе ответить - читай доки, пиши пет проект на спринге. Весь его ты не выучишь никак без практики. Да и с практикой есть вероятность что некоторые части никогда не затронешь.

>>код, при помощи которого можно общаться только через интерфейсы
Бин можно спокойно инжектить и без интерфейса. Интерфейсы понадобятся только если у тебя 2+ реализации. Не надо городить всю эту хуету с Impl на ровном месте как учит шарпомух Р.Мартин

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

>>Как это выглядит в реале?
Как говно.
>>Как писать юнит тесты в спринге?
Как и обычный юнит, только через мокито мокаешь зависимости. Для крудов их писать смысла нет, но тебе придется, если только не попадется адекватный лид. Мнение джуна тут спрашивать не будут само собой.

>>я в директории test создаю такую же иерархию
в идее alt-enter по классу - создать тест - она сама все нагенерирует

>>в test будет serviceTest1?
для класса UserService создаст UserServiceTest. Но название не важно, главное аннотации @Test от junit

>>Если spring data jpa поменять на jooq
не обосрись с кодогенерацией

>>чем это отличается от той хуйни что я пишу?
просто читай baeldung - там примерно так и пишут, а потом уже на проекте прикинешь обстановку и внесешь коррективы
Аноним 26/11/23 Вск 10:35:04 2937571 301
>>2937492
>Дальше @MockBean и уже через мокито тестишь
Удачи замокать репозитории и написать кучу хрупких тестов, которые своими моками по-сути дублируют твой продакшен код, лул
Аноним 26/11/23 Вск 12:41:58 2937679 302
>юнит тест
>ну короче контекст поднимем, замокаем 1 бин и проверим что залупа.помыть().equals(чистаяЗалупа())
>ну и что что тест 15 секунд расперживается
>я в базу не лезу значит юнит скозал!!!
Аноним 26/11/23 Вск 12:50:00 2937682 303
>>2937679
А я вот докладик смотрел, если правильно все сделать, то можно поднять один раз контекст и кучу кучу тестов пробежать.
Аноним 26/11/23 Вск 13:15:45 2937709 304
>>2937682
А я вот сегодня сок ананасовый в кб купил,раньше 200 рублей стоил,а сейчас 150. Так то
Аноним 26/11/23 Вск 13:17:16 2937717 305
>>2937709
Вкусный хоть? Поделишься?
Аноним 26/11/23 Вск 13:17:50 2937719 306
>>2937717
Вкусный,уже весь выпил
Аноним 26/11/23 Вск 13:19:44 2937721 307
Аноним 26/11/23 Вск 13:21:00 2937723 308
Аноним 26/11/23 Вск 13:27:29 2937740 309
Молодцы пупуни,прод не падал уже две недели
Аноним 26/11/23 Вск 14:20:12 2937836 310
>>2937709
>сок ананасовый
Это намек?
Аноним 26/11/23 Вск 15:12:16 2937940 311
Аноним 26/11/23 Вск 15:18:58 2937948 312
Аноним 26/11/23 Вск 15:20:31 2937953 313
Аноним 26/11/23 Вск 15:21:53 2937960 314
Аноним 26/11/23 Вск 16:16:16 2938031 315
>>2937571
Репозитории элементарно мокаются. Нужно ковырять сложный кейс - интеграционные.
Аноним 26/11/23 Вск 22:33:18 2938537 316
Ну так что там по требованиям к джунам/стажерам? Соевым статьям с хабра не верю. Анальное дрочево или норм? Студент, интересно ваше мнение
Аноним 26/11/23 Вск 22:44:23 2938552 317
А вас не заебал местный гомофорсер? Ладно бы просто пупунь постил.
Аноним 26/11/23 Вск 22:46:07 2938556 318
Аноним 26/11/23 Вск 22:47:55 2938558 319
Аноним 26/11/23 Вск 22:48:28 2938560 320
>>2938552
А как выглядят пупуни?
Аноним 26/11/23 Вск 22:50:09 2938565 321
>>2938537
Откуда мне знать, я ж не хожу по джуновым собесам и не собеседую. Могу сказать что вот недавно в команду взяли джуна без опыта курсового. Щас сидит пердолится с партициями в постгресе. Я такого не умею, хз насколько это сложная задача.
Аноним 26/11/23 Вск 23:52:14 2938619 322
>>2938552
А вы про кого? Посты хоть выдели
Аноним 27/11/23 Пнд 02:25:43 2938702 323
>>2936779
Юнит тесты чаще всего не нужны.
Нужны тесты на весь бизнес процесс. Чаще всего называются интеграционными.
От входа в твоем сервисе до выхода. Чаще всего от апи до бд в тестконетейнере. А вызовы внешних сервисов и всяких кафок - мокаются.
Аноним 27/11/23 Пнд 05:48:08 2938738 324
Мотаем на ус, коллеги. Тесты на весь бизнес процесс от входа до выхода называются интеграционными.
Аноним 27/11/23 Пнд 07:20:56 2938744 325
>>2938702
>>2938738
>>От входа в твоем сервисе до выхода.
Как такое нормально тестить?

Вот у меня распределенная архитектура и сервис помимо базы лезет еще в 2 других сервиса. Как это все мокать?
Сидеть и рисовать скрипты миграции с согласованными данными?

Вот надо вывести список людей подписанных на канал. У меня есть uuid канава, по нему я достаю данные из бд и запрашиваю подписки в другом сервисе, потом по uuid пользователей из подписок запрашиваю их имена в третьем сервисе
А значит везде надо забить правильный uuid пользователей чтоб они находились и нормально связывались. А таких запросов там много. Как эти данные согласовать, чтоб не накатывать миграции на каждый тест отдельно?

Дамп тестовой базы тож не вариант - там полчаса на моей машине, а в ci это часа 3 минимум. Да и не все кейсы там могут быть, это только для смоука.
Аноним 27/11/23 Пнд 14:46:57 2939296 326
>>2938738
От входа до выхода всей системы - это e2e.
От входа до выхода отдельного сервиса, если он не единственный сервис в системе - интеграшка.
В чем я неправ?
Аноним 27/11/23 Пнд 15:04:08 2939322 327
Интеграционные тесты это тесты которые выполняются на запущенном сервисе, и всё, вы че, ебанулись? Какие ещё входы и выходы?
Аноним 27/11/23 Пнд 15:17:13 2939356 328
>>2939322
Что значит на запущенном? Тест с бд в тестконтейнере или на специальной тестовой полщадке он юнит тест что-ли? А если мы тестируем еще при этом тестируем апи и бизнеслогику?
Интеграционный тест это любой тест, который работает с несколькими компонентами(юнитами). В контексте спринга это обычно сервисы с бизнес логикой.
А в строгом понимании тест с поднятием спрингового контекста уже не юнит.
И когда я сказал, что интеграционный тест от входа до выхода из сервиса я имел ввиду, что может быть еще более мелкий интеграционный тест.
Аноним 27/11/23 Пнд 15:24:45 2939371 329
>>2938744
>Как это все мокать? Сидеть и рисовать скрипты миграции с согласованными данными?
Да, тестовые скрипты с данными бд должны быть согласованы с теми данными, что ты возвращаешь из замоканных вызовов других сервисов.
>Как эти данные согласовать, чтоб не накатывать миграции на каждый тест отдельно?
Для тестовых скриптов не нужны миграции через системы миграции. Есть @Sql в спринг тестах.

>Дамп тестовой базы тож не вариант - там полчаса на моей машине, а в ci это часа 3 минимум.
Для некоторых тестом можно данные из тестовой базы подергать отдельными запросами. А для остальных самому выдумывать данные.
Аноним 27/11/23 Пнд 17:48:45 2939689 330
>>2939371
>>Для тестовых скриптов не нужны миграции через системы миграции. Есть @Sql в спринг тестах.
Я к тому что заполнить надо данными, каким инструментом не так важно. Просто эти данные сидеть подгонять пиздец муторно будет. Еще и их бы протестировать как-нибудь, а то впишу хуйню..

>>А для остальных самому выдумывать данные.
Это печально, ладно пойду выдумывать. А то без тестов уже совсем пиздец какой то.
Аноним 27/11/23 Пнд 23:22:12 2940256 331
>>2936779
>Вот к вам пришел разраб и сказал что он мидол, какие вопросы конкретно по спрингу вы зададите чтобы удостоверится в его словах.

Так мы тебе и ответили. Охуенно устроился. Неее, чел, в век волчар, сидящих одной жопой на двух работах, и вкатунов, вкатывающихся на миддловые вакухи с фейковым резюме, крутись уж как нить сам. А то заебало новые тактики собесов изобретать.

>Ну бля, до того как вы устроились на работу, вы наверняка писали пет проекты и наверняка у вас был ахуй от реального проекта. Что вас удивило? Только не пишите что количеством кодовой базы различается, это и ежу понятно

Хз. Я вкатывался в 2009м. Тогда всем было похуй на петы, и вкатиться можно было просто с базовыми универскими знаниями и горящими глазами. Эпоха ушла.

>Как писать юнит тесты в спринге? Как это выглядит в реале?

Как кромешный пиздец. Персонально я считаю, что писать юнит тесты на спринге таким образом, чтобы они приносили реальную пользу, и не были лишь тупорылой бюрократией, на спринге невозможно. Но с другой стороны, на спринг-тесте пишутся вполне сносные integration тесты, а если testcontainers прикрутить, то и api/e2e-тесты.

>Типа я в директории test создаю такую же иерархию директорий как в main?

Да

>И вот есть service1, то и в test будет serviceTest1? Так штоле?

Да, но это по вершкам. Тестинг - глубокая тема, одним тредом всех деталей не объяснить. Там есть свои тулы, свои практики, свои косяки, паттерны и антипаттерны, это отдельный мир.

>А так, исходя из ваших ответов я чот ещё не могу понять, а чем это отличается от той хуйни что я пишу?

Не комплексуй. За свои года я насмотрелся всякой хуеты в проде, так что если я тебе отвечу что "ничем", не буду далек от истины. Просто наращивай экспертизу, пробуй разное, а мимикрировать под коллектив будешь на первой работе.

Если ты практикуешься на петах, стремись довести дело до конца. Чтоб пет был прям рабочий продукт, а не просто хуета скопипащенная с мурзилок и stackoverflow. Попробуй найти и получить обратную связь от какого нить практикующего чела, который проревьювит твой пет. Помимо пета - читай книги, статьи, развивайся.

>Если spring data jpa поменять на jooq

Однохуйственно. Что Spring Data JPA, что Jooq - вполне котируемые тулы. Освой хотя бы один из них как следует, не распыляй усилия.
Аноним 27/11/23 Пнд 23:38:00 2940274 332
>>2926456
>Хуй будешь?
Нет, я же не ты.
Аноним 28/11/23 Втр 00:53:52 2940354 333
16894586159633.png 398Кб, 512x600
512x600
>>2924614
А мне вот интересно: что благородные доны могут сказать про Java Card?
Аноним 28/11/23 Втр 13:27:23 2940700 334
Аноним 28/11/23 Втр 13:39:51 2940731 335
>>2940700
Лень читать,давай выжимку
Аноним 28/11/23 Втр 14:50:25 2940855 336
>>2940700
При чем тут Spring, если там речь идет про VMware и Broadcom?
Аноним 28/11/23 Втр 15:49:41 2940936 337
>>2940855
VMWare щас типа основной мэйнтейнер весны. Но один хуй ТС - шарпист-либераха, сосущий хуи, поэтому похуй.
Аноним 28/11/23 Втр 16:22:14 2940996 338
Что не так с JavaFx, почему не взлетело?
Аноним 28/11/23 Втр 16:23:21 2940999 339
>>2940996
Десктоп на жабе никому не всрался
Аноним 28/11/23 Втр 16:28:05 2941011 340
Аноним 28/11/23 Втр 16:51:23 2941080 341
>>2940731
Установи яндекс браузер.
Аноним 28/11/23 Втр 16:52:58 2941085 342
Аноним 28/11/23 Втр 18:09:33 2941257 343
>>2940700
Ну наконец-то эта хуйня загнётся. Спасибо, Броадком!
Аноним 28/11/23 Втр 18:10:12 2941259 344
>>2940996
Взлетело, так-то. Аналогов в мире нет и не поедвидится.
Аноним 28/11/23 Втр 18:13:45 2941266 345
Микронавт это говно? Почему не взлетел? На хайпе называли убийцей спринга
Аноним 28/11/23 Втр 20:03:48 2941447 346
>>2941266
Это просто спринг на минималках, мало где нужен.
Аноним 28/11/23 Втр 20:24:13 2941470 347
>>2941266
Лично я в рот ебал ставить отдельно какую-то микрописечную cli-ку чтобы билдить и ворочать конкретно этот кал. Это подход js хипстеров.
Аноним 28/11/23 Втр 21:50:18 2941584 348
>>2941470
В смысле? Разве жопаскриптеры не те кому приходиться пользоваться только тем, что запихнули в копролитное апи?
Аноним 28/11/23 Втр 22:26:26 2941610 349
>>2941470
Ты хочешь сказать что микронавт проект нельзя собрать мавеном?
Аноним 28/11/23 Втр 23:38:24 2941678 350
>>2940354
>что благородные доны могут сказать про Java Card?
Технология более живая чем JME. Используется во всяких чипах типа платежнвх карт, сим карт и прочего ИоТ https://javacardforum.com/
Но если ты не разработчик чипов, то тебе с ней делать особо нечего. Максимум скачать эмулятор, закодить апплет и попробовать в него байтики попихать. Можешь почитать немного тут https://forum.vingrad.ru/forum/forum-485.html но сайт старый и не обновляется
Аноним 28/11/23 Втр 23:41:46 2941680 351
Аноним 29/11/23 Срд 00:04:53 2941694 352
С java можно в фриланс податься?
Аноним 29/11/23 Срд 00:11:28 2941699 353
Аноним 29/11/23 Срд 04:09:56 2941757 354
>>2941680
Ну это ЕЕ на минималках.
Гавной пахнет
Аноним 29/11/23 Срд 06:38:52 2941766 355
>>2941678
как что, тестировать взлом прошивок на эмуляторе
Аноним 29/11/23 Срд 07:41:30 2941784 356
>>2941699
Очень грустно, очень жаль
Аноним 29/11/23 Срд 11:49:39 2941965 357
>>2941470
Не ставь. Cli-шки не для тебя и писались.

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

>>2941610

Мавеном можно собрать литералли все.
Аноним 29/11/23 Срд 11:50:55 2941968 358
>>2941266
Потому что спрингокульт. И этим все сказано.
Аноним 29/11/23 Срд 12:07:22 2942000 359
>>2941968
Спринг когда то тоже был говном уровня асп нет
Аноним 29/11/23 Срд 13:50:48 2942167 360
image.png 967Кб, 1611x821
1611x821
Почему в джаве одни скуфы?
Аноним 29/11/23 Срд 13:56:41 2942171 361
>>2942167
А зачем зумерам поддерживать легаси когда вокруг полно гринфилд проектов на питоне, го, шарпе?
Аноним 29/11/23 Срд 14:00:41 2942176 362
>>2942167
Если на твоем языке могут писать зумеры это повод задуматься
Аноним 29/11/23 Срд 14:02:38 2942177 363
Аноним 29/11/23 Срд 14:04:36 2942179 364
>>2942171
>питон
Оч прикладной. Калькулятор на максималках

>го
бесполезная хуита

>шарп
пародия на джаву

>зачем зумерам поддерживать легаси
лутать шекели на зрелом проекте, особо нихуя не делая
Аноним 29/11/23 Срд 14:14:25 2942190 365
>>2942177
Ураааа, как хорошо.

и кто пиздит?
Аноним 29/11/23 Срд 14:28:31 2942210 366
>>2942167
Это глыбы с 25летним опытом только на джаве.
Ну и это скорее какие то архитекторы/лиды, которые не разгребают код, а рисуют квадратики со стрелочками.
Аноним 29/11/23 Срд 15:34:13 2942368 367
>>2942000
А потом он деградировал?
Аноним 29/11/23 Срд 16:43:25 2942538 368
Аноним 29/11/23 Срд 19:51:54 2942977 369
>>2941968
Спрингокультошиз ты то сам хоть что-то сделал, чтобы выбирать что-то кроме спринга было не так больно?
Может ты написал какие-то библиотеки, коннекторы или обертки для микронавта или кварткуса, которых у самих альтернатив спринга нет, но есть для спринга?
Аноним 29/11/23 Срд 20:57:30 2943040 370
Аноним 29/11/23 Срд 20:58:41 2943042 371
>>2942977
А нахуя ему всё это писать, господин спрингокультист?

мимо
Аноним 29/11/23 Срд 22:05:16 2943090 372
>>2943042
Чтобы когда я буду писать свои тырпрайз круды мне надо было писать только пару велосипедов, очень специфичных для проекта, а не десятки и сотни внутренних библиотек, потому что из коробки нихуя нету.
Аноним 29/11/23 Срд 22:12:18 2943097 373
Яву Яву взял я на халяву
Аноним 29/11/23 Срд 22:24:50 2943118 374
>>2942538
Тогда почему asp.net в 10 раз быстрее, чем spring?
Аноним 29/11/23 Срд 22:30:58 2943130 375
>>2943118
Вообще то минимум в сто,плюс на джаве нет чистого бека,а только фулстэк и легаси,в отличии от шарпа
Аноним 29/11/23 Срд 22:38:36 2943148 376
Аноним 29/11/23 Срд 22:45:38 2943156 377
>>2943090
Ты как сингл тёрн гпт только на последнее сообщение отвечаешь, или что?
Аноним 29/11/23 Срд 22:46:33 2943158 378
>>2943130
Да что уж там, аспнет сам обновляет старый ксеон до 15900к при его установке.
Аноним 29/11/23 Срд 22:50:58 2943166 379
Спринг объективно охуенный.
Аноним 29/11/23 Срд 23:12:00 2943205 380
Начал пол года назад учить жабу и понял, что хочу жаба-друга, чтобы говорить о жабе, иначе совсем не с кем. Где искать? Желательно феминного и нежного, но вообще любого
Аноним 29/11/23 Срд 23:17:38 2943215 381
>>2943205
>Желательно феминного и нежного, но вообще любого
Ты зашел туда, у нас все такие.
Аноним 29/11/23 Срд 23:22:10 2943228 382
>>2943215
>у нас все такие
Я скуф который начинал на JDK 1.3
Аноним 29/11/23 Срд 23:37:33 2943251 383
>>2943228
Ну вот, он про это и говорил. Все такие
Аноним 29/11/23 Срд 23:46:58 2943266 384
JDK 22 будет охуительной.
Аноним 29/11/23 Срд 23:48:10 2943268 385
>>2943228
Привет.
Тоже итерировал векторы в вайле, бгг?
Аноним 30/11/23 Чтв 00:32:22 2943304 386
Аноним 30/11/23 Чтв 00:52:27 2943313 387
>>2943304
StreamEx в JDK, наконец-то.
Аноним 30/11/23 Чтв 02:35:29 2943370 388
Когда уже добавят свитч по сравнению?

switch (a) compare (b) {
case < -> {}
case == -> {}
case > -> {}
}
Аноним 30/11/23 Чтв 02:35:58 2943371 389
Ну или просто тройное сравнение.

compare (a, b) {
> {}
== {}
< {}
}
Аноним 30/11/23 Чтв 03:00:58 2943373 390
>>2941965
> Мавеном можно собрать литералли все.
Всё кроме фордж модов.
Аноним 30/11/23 Чтв 05:39:40 2943393 391
Помните весь этот вой против дабл брейс инициализации? Я провёл бенчмарк, и вот результаты:

Benchmark Mode Cnt Score Error Units
DBBench.doubleBrace avgt 2 65,674 ns/op
DBBench.simple avgt 2 57,134 ns/op
Аноним 30/11/23 Чтв 08:48:32 2943426 392
Аноним 30/11/23 Чтв 10:49:21 2943504 393
>>2943304
А, не, хуйня ебаная.
>.gather(selectOne(Math::max))
Кто так будет писать?
>return Gatherer.Integrator.ofGreedy
Неймингом походу занимался тот же уебан, что для HexFormat.
А так в целом неплохо, хотя и хуйня. Но пойдет.
Аноним 30/11/23 Чтв 14:42:19 2943797 394
Аноним 30/11/23 Чтв 15:21:21 2943832 395
Аноним 30/11/23 Чтв 17:26:57 2944032 396
>>2943268
>Тоже итерировал векторы в вайле, бгг?
В 1.3 уже ArrayList завезли, а итерировать было проще через for так хоть итератор был виден только в цикле.
Аноним 01/12/23 Птн 01:07:47 2944681 397
Аноним 01/12/23 Птн 13:43:48 2945015 398
>>2942977
Спрингопидорас свой рот открыл

Больно блять ему. Вы, суки, не приспособлены ни к чему, кроме как зеркалить. Вам все что не ваш синдром утенка - то говно. А глянешь в кишки вашей параши - там рефлексия на рефлексии, которая тянет всю джаву на дно ебаное. Заюзать JPMS чтобы сократить размер дистрибутива через jlink? Сколько лет уже фиче? А хуй там, из-за спрингопараши изволь открыть пол системы через uses, иначе класспаф-сканнинг нихуя не найдет, но никто конечно этогро делать не будет, ибо "больно". Про AOT я вообще молчу - в то время как кваркус, который слеплен литералли на хтонических EEшных референс имплементациях, которым сто лет в обед, поддерживает AOT со старта, какой там статус поддержки AOT в спринге? Сколько времени его туда везли, и довезли ли, нука?

Но ладно спринг, хуй с ним, не к спрингу на самом деле претензия. Типичная реация спрингопидораса на вышеперечисленое обычно - "AOT не нужен, JPMS не для нас писан". Поэтому закрой ка нахуй свой ебальник, пидор переможный. Вы - ебаный рак сообщества.
Аноним 01/12/23 Птн 14:11:33 2945034 399
>>2945015
Мы и есть сообщество,дегенерат,с нами одного мнения создатели языка,создатели экосистемы и создатели фреймворка,а ты просто нитакуся-деревенщина,поцелуй мою залупу,гной
Аноним 01/12/23 Птн 14:13:59 2945038 400
>>2945034
Дохуя мнишь о себе, чмо. С вами "одного мнения" лишь евангелисты, задача которых - скормить вам говно.
Аноним 01/12/23 Птн 14:48:30 2945107 401
>>2945015
Говноед, не забывай, что практика это критерий истины. А твои вскукареки это только твое необоснованное мнение.
>рефлексия на рефлексии, которая тянет всю джаву на дно ебаное.
Полная хуйня шизика. Для 80% задач фреймворов, забитых под завязку рефлексией достаточно. Да, на каких-то задачах перфоманс ниже в разы, да, куча всего на компиляции не отловишь. Зато количество бойлерплейта скрытого под "магией" максимально. И это ускоряет скорость разработки. Если бы рефлексия была бы проблемой из-за нее бы отказывались от спринга, хибера и других фреймворков.
>AOT не нужен, JPMS не для нас писан
Ну так они действительно не нужны большинству. Сиди на кваркусе, микронафте, на еще чем то более экзотичном, на самописных фреймворках и не бухти. Тебе же никто не запрещает. Ни разу не видел, чтобы кто-то рвался от неиспользования спринга. Спрингопараша инструмент для большинства, но так вышло, что у тебя есть редкие требования. Почему ты так рвешься?
Аноним 01/12/23 Птн 14:52:37 2945119 402
>>2945038
Так ты и есть евангелист, которое пытается нам скормить говно, типа аот и JPMS, чтобы кто-то ушел от дефолтного спринга.
Те кого ты называешь евангелистами спринга это просто надроченные копатели в его кишках. На данном этапе спринг не нуждается в евангелистах, это дефолт.
"Эксперты" не популяризируют спринг. Все кто их слушают и так уже пишут на спринге.
Аноним 01/12/23 Птн 15:23:13 2945162 403
>>2945107
Хуев ты переможник, разуй глаза!

Я по твоему на практику чтоли гнал? Нет, пидор. Гнал я на тебя и таких как ты пидарасов. Я выше с самого начала отметил что не к спрингу на самом деле претензия, и не к его рефлексии. Рак ебаный - это не спринг, спринг - следствие, а причина - именно ты, и твои спринговые перемоги. Ты как хохол-либераха сразу кидаешься перемогать своим парашным: "ыыыыы, как писать на квакусе чтоб не было больно". Ты даже не пытаешься смотреть на вещи объективно - сразу бросаешься перемогать какими то общими евангелистскими штампами типа "коннекторов спринга, не имеющих альтернатив". Ты - спрингокульт, потому что повадки у тебя - как у типичного культиса, и ты рак не потому что спринг - говно. А потому что перемогая за говно, ты блокируешь развитие платформы, из-за чего вас хуесосят в хвост и гриву даже шарпеи.

Зато когда я поссал тебе на ебало, ты начал крутиться, строить из себя целочку, "сиди", мол, "на кваркусе, микронафте, на еще чем то более экзотичном, нмкто", мол, "не запрещает". Так и я вам-червепидорам не запрещал сидеть на спринге, это вы везде лезете со своими дурацкими перемогами.
Аноним 01/12/23 Птн 15:30:54 2945172 404
>>2945119
В каком месте я их продать пытался? Все что я сделал - это отметил что несмотря на то, что есть такие фичи, поиметь с них профит на спринговой экосистеме нихуя не просто, и это - факт, который говорит не в пользу спринга и его кишок.
Аноним 01/12/23 Птн 21:00:24 2945841 405
У кого-то опять JPMS.
Аноним 01/12/23 Птн 21:34:32 2945906 406
Аноним 01/12/23 Птн 22:50:16 2946021 407
JPMS же кал ебаный. На нем даже петики на кор-джаве пилить невозможно.
А у говноеда то, что это говно не используют это аргумент что кто-то хуевый.
Аноним 01/12/23 Птн 23:01:49 2946035 408
>>2946021
>На нем даже петики на кор-джаве пилить невозможно.

Да что ты говоришь. А может проблема - между клавиатурой и сиденьем?

>JPMS же кал ебаный

Ты можешь думать о фиче все что угодно. Объективный факт в том, что на основе модулей работает jlink, а jlink - весьма неплохой способ порезать размеры приложух и сделать их дистрибуцию самодостаточной.

Но культисты же терпилы - вместо того чтобы сесть, разобраться с новой фичей, настрогать под нее тулов, будут сидеть, ждать пока им новую джаву в спринг завезут и жрать тонны постыронии от шарпеев о том, что джава - жирная а новые релизы никому не всрались.
Аноним 01/12/23 Птн 23:30:06 2946111 409
>>2946021
>А у говноеда то, что это говно не используют это аргумент что кто-то хуевый.

А может хуев поешь?

Ты мог бы апеллировать к ненужности AOT или jlink если бы спринг оные технологии поддерживал, но всем было насрать. Но несмотря на то, что спринг по обьективным причинам, заключающимся в его корявой легасятной рефлективной архитектуре, поддержать эти технологии не может; несмотря на то, что у спринга есть альтернативы в лице кваркуса и микронавта, которые в AOT умеют из коробки; пизданутые спринговые фанатики будут до посинения перемогать за своего утенка вопреки здравому смыслу, хуесося все остальное высерами в стиле бабки из того мема - где "не нужон нам ваш инторнет". Ты - хуесос не потому, что тебе модульность неинтересна. Ты - хуесос, потому, что переможник и в залупу залез.
Аноним 01/12/23 Птн 23:30:30 2946113 410
>>2946035
Всем похуй на шарпеев. А JPMS параша, надо было сразу нормально делать.
Аноним 01/12/23 Птн 23:33:49 2946116 411
>>2946113
Ты щас сам звучишь как шарпей.
Аноним 02/12/23 Суб 09:16:09 2946293 412
А кто сказал, что AOT вообще нужен? В рф не используются облака практически.
Аноним 02/12/23 Суб 17:08:32 2946827 413
>>2946293
>В рф не используются облака практически.
На безамазонье и яндекс облако.
Аноним 02/12/23 Суб 18:06:13 2946919 414
Ну давай дальше о jigsaw дальше поговорим. Кто кроме jlink поддерживает jpms?
Культошиз, расскажи что и зачем ты через jlink и jpms обрезал? Это круды с хттп и кафками в облаках или что-то более специфическое? Какой набор библиотек был?
Что jpms дал? Время деплоя и старта?
С аот на условном микронавте понятно - если сложных интеграций нет и действительно есть нефункциональные требования(если ты их не из головы выдумал, а это требования бизнеса) по большим рпсам, по количеству памяти, по времени старта это норм решение.
А вот с модулями не ясно нахуя это нужно в реальном приложении. Пока в треде было мнение, что jpms нужен был только разработчикам стандартной библиотеки.
Аноним 02/12/23 Суб 19:00:26 2946976 415
>>2946827
Я б этой пидорской конторе ничего не довепил. Они ж каргокультиты, накрутят ценник как в амазоне, а качество оставят свое. Особенно порадуют, когда сольют все персональные данные и заплатят 60к рублей штрафа.
Аноним 02/12/23 Суб 19:18:31 2947007 416
image.png 941Кб, 1613x983
1613x983
Как же спринг ебет.
Аноним 02/12/23 Суб 19:41:33 2947045 417
16714776413563.jpg 106Кб, 600x691
600x691
>>2947007
>Как же спринг ебет.
Аноним 02/12/23 Суб 21:06:20 2947203 418
Дано: сущность с полями типа
State state = INITIAL_STATE;
boolean isProcessed = false;
Нужно сделать апи которое возвращает сущности с заданным набором полей, пусть например оно будет задаваться через параметр запроса fields=id,name. Грузить из базы поля не заданные в запросе смысла нет. При этом при маппинге в доменную сущность эти поля автоматически заполнятся значениями по умолчанию. Что делать?
Аноним 02/12/23 Суб 21:22:09 2947226 419
>>2947203
На чистом jdbc написать динамический запрос. На уровне сервиса сделать определение что и как заполнять дефолтами и заполнение дефолтами.
Аноним 02/12/23 Суб 21:27:16 2947237 420
>>2947226
>На чистом jdbc написать динамический запрос.
Это как помогает?
>На уровне сервиса сделать определение что и как заполнять дефолтами и заполнение дефолтами.
То есть рефакторить весь код, который полагался на то что дефолты заполняются при явном или неявном создании объекта?
Аноним 02/12/23 Суб 21:35:40 2947255 421
>>2947237
>который полагался на то что дефолты заполняются при явном или неявном создании объекта?
Что это значит? Контекста вопросу добавь.
Аноним 02/12/23 Суб 21:38:39 2947264 422
>>2947255
Написал же. В классе есть такие поля:
>State state = INITIAL_STATE;
>boolean isProcessed = false;
При создании нового объекта они заполняются. Причем второе поле даже обнулить нельзя так как оно примитив. В запросе к базе указано что эти поля грузить не надо, поэтому когда оттуда приходит row и из него создается объект, они заполняются дефолтами. И наружу дальше возвращаются с ними, хотя пользователь их не запрашивал.
Аноним 02/12/23 Суб 21:43:33 2947278 423
>>2947264
Ну да. И не рефакторить код, а переписывать. Ведь логика изменилась. А зачем тебе динамически дергать разные поля?
Для такого говна graphql используют.
Аноним 02/12/23 Суб 21:51:31 2947300 424
>>2947264
>И наружу дальше возвращаются с ними, хотя пользователь их не запрашивал.
Эта проблема решается на:
уровне реп -- проекциями спринг даты из энтити в дтоху без 2 полей
или на уровне домена -- новый контекст, новая сущность без 2 полей
или уровне контроллера -- разными профилями джексона, @JsonIgnore
или на уровне кха-кха коллеги вы там игнорируйте поле1 поле2 прыг скок мхем коллеги спасибо! жду обратной связи

Выбирай
Аноним 03/12/23 Вск 00:02:25 2947515 425
>>2946919
Ебаный ты кусок дегенерате, не наелся дерьма?

С хуя ли ты вообще решил что на твою жалкие набросы на мой персональный опыт мне не должно быть поссать, как и на прочие отзеркаливания и виляния жопой культистов? Когда мне приспичить выбрать фреймворк для поделки, ты - последняя аватарка, с которой я это буду обсуждать, и кому я буду чето доказывать. По существу, тред был о двух вещах:
1. Ваш фетиш не умеет в то,что кваркус и микронафт дает из коробки, и это - факт.
2. Ты и твоя братия - переможники ебаные, лезущие в залупу чуть стоит тронуть ваш фетиш

И вот в разрезе этих двух топиков я и буду с тобой говорить. А твои потуги сместить акценты на персональный опыт я буду обоссывать. Не нравится - иди нахуй.

>А вот с модулями не ясно нахуя это нужно в реальном приложении.

Если тебе не ясно, нахуя нужны модули и AOT, я не тот человек, кому всралось тебя - хама ебаного - менторить забесплатно. Я тебе уже выше сказал - мне похуй что ты думаешь об этих фичах.
Аноним 03/12/23 Вск 00:21:02 2947539 426
>>2947515
Ясно, ты совсем больной.
Аноним 03/12/23 Вск 00:27:55 2947553 427
>>2947539
Ну вот и иди нахуй, залупный спрингокультист. Никто тебя не звал впрягаться в защиту ебучей секты - сам впрягся так и соси хуи.
Аноним 03/12/23 Вск 00:37:38 2947561 428
>>2947553
Я хотел услышать аргументы, и какие-то новые кейсы где спринг не нужон а из тебя только поток говна льется с минимумом полезной нагрузки.
То что он ряде сфер спринг не нужон или его оверхед в каких-то случаях слишком дорог это и так всем понятно.
И с чего ты взял, что я только с тобой разговариваю? Может другие аноны пояснят.
Аноним 03/12/23 Вск 01:25:47 2947590 429
>>2947561
>вот аргументы
>ррррря, хочу новые услышать! это услышать не хочу!
Аноним 03/12/23 Вск 02:22:07 2947640 430
>>2947561
Если б ты хотел услышать аргументы, ты бы не начинал диалог (>>2942977) с персональной атаки на меня, и сраной демагогии в стиле "сперва добейся". Ты сам задал тон диалогу - чем недоволен?
Аноним 03/12/23 Вск 02:33:02 2947647 431
>>2947640
Так расскажешь про кейс с модулями или дальше будешь ныть и выебываться?
Аноним 03/12/23 Вск 02:36:45 2947650 432
>>2947647
Пошел нахуй. Хуй пожри а не кейс. Не бывает второй оказии создать первое впечатление: ты - культист, а культистов я хуями кормлю а не аргументами. С вами, пидарасами, иначе диалог невозможно вести, вы любую аргументацию к перемоге сведете.
Аноним 03/12/23 Вск 08:14:33 2947711 433
>>2943832
А хуй тебе не пососать? Не нравятся бенчмарки — делай свои.
Аноним 03/12/23 Вск 08:15:32 2947713 434
>>2943504
> >.gather(selectOne(Math::max))
А что не так?
Аноним 03/12/23 Вск 09:37:13 2947741 435
А ВЫ ЗНАЛИ, ЧТО В 20 ДЖАВЕ СЛОМАЛИ ОБРАТНУЮ СОВМЕСТИМОСТЬ?

Но не ту, от поломки которой больно и не так, чтобы это нельзя было легко обойти. Код 7 джавы больше не компилируется на новых JDK.
Аноним 03/12/23 Вск 10:40:20 2947791 436
Сап ананасы. Я де
Аноним 03/12/23 Вск 12:09:19 2947851 437
Аноним 03/12/23 Вск 12:10:34 2947855 438
>>2947851
Укажи в мавене в source и target 7 и увидь.
Аноним 03/12/23 Вск 14:02:22 2947987 439
>>2947713
Слишком громоздко. Хочу писать .selectMax
Аноним 03/12/23 Вск 14:02:58 2947989 440
>>2947741
Почему? Если из-за var то похуй.
Аноним 03/12/23 Вск 16:10:16 2948160 441
>>2947711
>А хуй тебе не пососать?
Можешь. Но обычно енто я сосу членик, но раз тебе так хочеца :3
Аноним 03/12/23 Вск 16:12:14 2948163 442
Книга про канкаренси с поездами на обложке прикольная или говно?
Аноним 03/12/23 Вск 16:13:15 2948164 443
Аноним 03/12/23 Вск 16:15:55 2948167 444
Чет нихуя не понял что такое Stream Gatherers,какие нахуй кастомные операторы,нахуя это нужно?
Аноним 03/12/23 Вск 16:16:30 2948168 445
Аноним 03/12/23 Вск 16:17:27 2948171 446
>>2948168
Главная няша треда. А вот ты кто такой?
Аноним 03/12/23 Вск 16:18:39 2948173 447
Аноним 03/12/23 Вск 16:21:59 2948177 448
Аноним 03/12/23 Вск 17:27:43 2948239 449
>>2948177
видос длинный, в чем там суть вкратце?
Аноним 03/12/23 Вск 17:28:54 2948243 450
Аноним 03/12/23 Вск 18:14:37 2948306 451
>>2947855
Че ты мелешь? Source и target семерки никогда не были однознаковыми, однознаки пошли начиная с девятки. Для седьмой джавы source и target всегда были 1.7.
Аноним 03/12/23 Вск 19:36:35 2948496 452
>>2948306
>однознаки пошли начиная с девятки
С 8-ки.
Аноним 03/12/23 Вск 19:42:00 2948501 453
Ифы антипаттерн?
Аноним 03/12/23 Вск 22:08:27 2948806 454
>>2948501
Ага, иф сбивает бранч предишен.
Аноним 04/12/23 Пнд 01:22:38 2949224 455
>>2948168
Смотря кто спрашивает
Аноним 04/12/23 Пнд 07:16:57 2949294 456
Аноним 04/12/23 Пнд 07:17:54 2949295 457
>>2948806
Так ведь бранч предикшен это как раз оптимизация ифов.
Аноним 04/12/23 Пнд 08:08:33 2949307 458
>>2948163
Её написал Брайан Скуфц ещё до того, как стал заправлять джавой.
Аноним 04/12/23 Пнд 08:41:17 2949317 459
>>2948163
Если тебя угораздило поддерживать легаси на джаве - пойдет. Новые проекты на джаве не стартуют, кста. Именно из-за того, что написано в этой книге
Аноним 04/12/23 Пнд 08:44:02 2949318 460
>>2949317
> Новые проекты на джаве не стартуют, кста.
> ВСЕ СЛЫШАЛИ???
> НЕ СТАРТУЙТЕ!
> МАМ НУ ПОЧЕМУ ОНИ СТАРТУЮТ!!!! Я ЖИ СКАЗАЛ ИМ!!
Аноним 04/12/23 Пнд 09:23:17 2949336 461
>>2949317
А че ядро канкаренси в жабе сильно изменилось с того времени? Или ты из лагеря шарпушек, которые вообще не ебут как оно там работает, а просто используют async/await?
Аноним 04/12/23 Пнд 09:35:31 2949343 462
>>2949295
Нет бранчей - предикшен 100% верный. Есть бранчи - появляются ошибки.
Аноним 04/12/23 Пнд 09:39:43 2949347 463
>>2949343
>100% верный
Нет, его просто нет.
Аноним 04/12/23 Пнд 11:22:20 2949426 464
>>2947650
Как обосновать использование например микронавта в банке?
Например у меня в будущем будет задача переписывания с нуля легасевой хуиты на спринге и прочего некрокала деплоемого в томкат.
Сервис достаточно высоконагруженый. Море интеграций. Кафка jms и rest с соапом.

Заливать про то что это дерьмо хорошо в попеншифт будет деплоить и что кластироваться будет хорошо?
Что метрики норм отдавать будет.
Аноним 04/12/23 Пнд 13:45:39 2949629 465
>>2949336
>ты из лагеря шарпушек, которые вообще не ебут как оно там работает, а просто используют async/await?

Скорее всего this.

Но вообще, шарпей пиздит и придумывает сказки на ходу. Потому что если бы на другие языки переходили бы исключительно из-за тягот поддержки конкарренси, то переходили бы не на шарп, и не на прочий императивный хлам, сама суть которого и порождает тяготы конкарренси. А переучивались бы на фукнкциональную парадигму и какой нить хаскель или F#.

Мимо
Аноним 04/12/23 Пнд 13:54:19 2949644 466
>>2949629
>А переучивались бы на фукнкциональную парадигму
Ха-ха-ха-ха-ха-ха.
Я как раз работал в проекте где купились на эту хуету и написали всё на Скала и Акка. Самоё правильное решение в этом проекте было: выкинуть всё нахуй и переписать на джаву и экзекуторы.
Аноним 04/12/23 Пнд 13:57:38 2949647 467
>>2949644
Все верно.

Поэтому считать, что конкарренси джавы - это шоустоппер, это мягко говоря делать из мухи слона.
Аноним 04/12/23 Пнд 13:59:38 2949651 468
>>2949347
Бранч предикшен говорит какой код будет исполняться, а не какая ветка условия выполниться. В общем случае он может предсказывать ситуации когда происходит исключение доступа к памяти, с.м. Spectre.
Аноним 04/12/23 Пнд 14:12:40 2949665 469
Аноним 04/12/23 Пнд 14:48:36 2949690 470
Ебануться, уже 21 Java вышла. В 2011 же только 11 была LTS.
Сильно язык поменялся с тех пор?

мимо шел кодил на Java в универе
Аноним 04/12/23 Пнд 15:02:10 2949696 471
>>2949690
>в 2011 же только 11 была
В 2011 7 джава была новшеством. 11 вышла пять лет назад.
Аноним 04/12/23 Пнд 15:02:59 2949697 472
Аноним 04/12/23 Пнд 17:16:10 2949882 473
>>2949651
что за бред.
иди посмотри байткод который собирает javac это раз.
как он форы ифы и прочие свитчи разбирает.
а во вторых какой нахуй спектр в жвм?

а ты точно прогромист?
Аноним 04/12/23 Пнд 17:26:54 2949897 474
>>2949882
>байткод который собирает javac это раз
Ты же в курсе, что жвм этот байткод как мясорубка перерубит и изменит просто пиздец как?
Хороший способ узнать, что действительно там будет - это через jmh https://psy-lob-saw.blogspot.com/2014/08/disassembling-jmh-nano-benchmark.html
>а во вторых какой нахуй спектр в жвм?
А это уже оптимизации процессора. Не останавливается же все на жвм.

Мима
Аноним 04/12/23 Пнд 17:43:26 2949934 475
>>2949897
по ссылке какая то хуита. ничего там про джапмы которые генерятся байткодом из условных операторов нет

а вот байткод очень близок к асемблерному коду. с переходами по меткам
Аноним 04/12/23 Пнд 18:09:03 2949977 476
>>2949934
>а вот байткод очень близок к асемблерному коду. с переходами по меткам

Наивный)
Аноним 04/12/23 Пнд 18:24:35 2949993 477
>>2949934
>а вот байткод очень близок к асемблерному коду
Ты долбоеб? Компилятор никаких оптимизаций не делает практически. Хуйню несешь какую-то.
>по ссылке какая то хуита
Хрен знает, там написано как получить асм, то что реально передается процу, а не твои маняфантазии.
Аноним 04/12/23 Пнд 19:07:25 2950063 478
Аноним 04/12/23 Пнд 19:13:45 2950074 479
>>2950063
Бля, там шарписты одни в комментах
Аноним 04/12/23 Пнд 22:14:51 2950320 480
>>2950063
>Здесь есть немного магии, так как библиотека используется reflection, но это чисто технический, не особо принципиальный момент.

пук
Аноним 04/12/23 Пнд 23:14:29 2950403 481
>>2949882
>а ты точно прогромист?
Пиздец ты даунич, лучше бы молчал.

>иди посмотри байткод который собирает javac это раз.
>как он форы ифы и прочие свитчи разбирает.
>а во вторых какой нахуй спектр в жвм?
1. Речь шла об if-ах, пиздоглазый ты наш.
2. Spectre это уязвимость в Intel процессорах которая основана на особенностях бранч предиктора. Я специально написал по английски, но ты все равно умудрился обосраться https://meltdownattack.com
3. Байткод напрямую может исполнять только какой нибудь picoJava или JOP но это экхотика которой почти никто не пользуется. А в реальности у тебя или интерпретатор - где свич-через-свич независимо от кода. Или JIT который уже генерирует условные переходы процессора, даже для свитча, собственно про которые и шла речь. И где Spectre как раз актуально в полный рост
хотя конкретно про
>он может предсказывать ситуации когда происходит исключение доступа к памяти
это скорее Meltdown
.
Аноним 04/12/23 Пнд 23:30:52 2950418 482
>>2949690
Как будто не Овер сильно поменялся, в любом случае у жабы один закон который прост, все меняется но так что работает и с прошлыми версиями, так что ничего грубого не случилось. Имхо
Аноним 05/12/23 Втр 04:00:31 2950571 483
Хуйня ваш бранч предиктор. Я/мы поддерживаем глобального предиктора.
Аноним 05/12/23 Втр 05:21:36 2950576 484
Шоб вкатится в Scala, сколько надо учить Java?
Аноним 05/12/23 Втр 09:34:48 2950654 485
Аноним 05/12/23 Втр 09:40:12 2950661 486
>>2950063
>Язык запросов в виде цепочки объектов и методов читается хуже, чем SQL
Нихуя себе.

>по сути это — особый язык, который надо учить.
НИХУЯ СЕБЕ. Это мне, джава программисту, для того, чтобы использовать ORM придётся учить лишнюю джаву?
Аноним 05/12/23 Втр 11:04:44 2950725 487
Аноним 05/12/23 Втр 11:39:21 2950756 488
image.png 6Кб, 238x277
238x277
Сап двач. Как вывести на консольку вот? Я заебался искать уже, нихуя не получается, одно косое и кривое недоразумение выводит на экра
Аноним 05/12/23 Втр 11:40:27 2950758 489
>>2950756
Куда нужно гуглить? Класс console, метод printf(), что нужно использовать для этого?
Аноним 05/12/23 Втр 11:41:36 2950761 490
>>2950756
>>2950758
За сегодня могу такую штуку сделать. Скок заплатишь?
Аноним 05/12/23 Втр 11:44:42 2950762 491
Аноним 05/12/23 Втр 13:15:46 2950876 492
>>2950654
Для 8ки поддерживаются оба типа обозначений 1.8 и 8.
Аноним 05/12/23 Втр 13:48:32 2950935 493
>>2950063
Meh. Такая жа аргументация, как в статье, в сообществе джавистов циркулировала десятилетие, и это не мешало JPA здравствовать и процветать всю дорогу. Смешной будет пранк, если гоферы таки поступятся своими принципами и затащат ORM-кал себе по самые гланды. Меняются языки, меняются тренды - промытки не меняются никогда.
Аноним 05/12/23 Втр 14:40:41 2951038 494
Аноним 05/12/23 Втр 15:11:44 2951071 495
Пупунечки все хорошо?
Аноним 05/12/23 Втр 17:29:50 2951222 496
>>2951071
Я недавно зашел в дев и нашел там расшифровку термина "пупуни". Это типа ласковый аналог слову "мышь". Типа "серая мышь".
Причем тут жабка-тред?
Аноним 05/12/23 Втр 17:54:55 2951261 497
>>2951071
Угум. Только ты как-то рано/поздно пишешь. Вторник все таки. У тебя что-то случилося?
Аноним 05/12/23 Втр 19:40:05 2951395 498
Аноним 05/12/23 Втр 20:33:49 2951491 499
>>2950935
> в сообществе джавистов циркулировала десятилетие, и это не мешало JPA здравствовать и процветать всю дорогу
у меня теория что это из-за галер. Галерам чисто написать по тз, сдать демонстрацию и забыть. Оптимизациями и поддержкой галеры редко занимаются. В таком случае да, хибернейт сможет немножко съэкономить времени, которое потом надо будет тратить на копание в кишочках хибернейта или его выпиливание. Но делать это будут уже другие чуваки
Аноним 05/12/23 Втр 23:44:16 2951733 500
>>2950576
>Шоб вкатится в Scala, сколько надо учить Java?
>учить Scala в 2к23
Сеансов 15 у психиатора.
Аноним 06/12/23 Срд 01:39:52 2951795 501
>>2951491
Не знаю. Эта хрень весьма хтонична, ОРМы существуют наверное столько же времени, сколько ООП как таковой. Интернет грит, первый ORM вообще в smalltalk появился (toplink). Потом в 90х его переписали на джаву, а еще позже придумали стандарт JPA (вошел в Java EE 5 в 2006м). Хз какие тогда существовали галеры и чем они руководствовались, все очевидцы давно вымерли от старости.
Аноним 06/12/23 Срд 02:22:32 2951818 502
>>2951795
эксперименты всегда были. Они же не знали что это будет неудачный эксперимент
Аноним 06/12/23 Срд 05:29:20 2951847 503
Аноним 06/12/23 Срд 05:31:11 2951848 504
>>2951491
О, вот и промытка-культистка вылезла. Эта гнида совершенно нихуя не понимает по теме, но обсирает, руководствуясь стадным инстинктом.
Аноним 06/12/23 Срд 07:27:36 2951862 505
Аноним 06/12/23 Срд 11:01:39 2952018 506
image 898Кб, 1024x1024
1024x1024
image 404Кб, 925x925
925x925
image 813Кб, 1024x1024
1024x1024
image 1938Кб, 1024x1024
1024x1024
тест
Аноним 06/12/23 Срд 11:39:59 2952084 507
Как с mapstruct'ом unit тестить? В тестируемом методе используется FirstMapper, тот в свою очередь через uses использует SecondMapper, но при запуске теста в FirstmapperImpl внедрённый SecondMapper оказывается null.
Пробовал указать так, но нихуя:
@SpringBootTest(classes = {SecondMapper.class}) и так @SpringBootTest(classes = {SecondMapperImpl.class})
Аноним 06/12/23 Срд 11:42:26 2952093 508
>>2951862
Это тебе нужно обосновать свой высер.
Аноним 06/12/23 Срд 11:43:14 2952094 509
>>2952084
Обычно если не подходит юнит тестирование используется мок-тестирование.
Аноним 06/12/23 Срд 11:46:39 2952104 510
Аноним 06/12/23 Срд 12:33:22 2952161 511
Аноним 06/12/23 Срд 22:22:53 2953227 512
Ответить в тред Ответить в тред

Check this out!

Настройки X
Ответить в тред X
15000
Добавить файл/ctrl-v
Стикеры X
Избранное / Топ тредов