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

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

Ответить в тред Ответить в тред
Check this out!
<<
Назад | Вниз | Каталог | Обновить | Автообновление | 1130 72 225
Java Thread #249 /java/ Аноним 29/04/23 Суб 11:57:49 2684226 1
image 703Кб, 1000x1000
1000x1000
image 286Кб, 700x438
700x438
image 4865Кб, 1920x1406
1920x1406
Программирование — это не столько про анальное крудошлёпство, сколько про стиль мышления. Высокоуровневая абстракция, поиск сходных черт, оптимизация — всё это высшие интеллектуальные способности, что образуют такой прочный симбиоз с программированием на Java.

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

Предыдущий: >>2651134 (OP)
Аноним 29/04/23 Суб 12:04:03 2684231 2
>>2684226 (OP)
>3 пик
Жаль, что ИРЛ наоборот все
Аноним 29/04/23 Суб 12:14:04 2684235 3
Кто-то пишет на котлине на спринге?
Недавно нужно было прочитать код с гитхаба, а там котлин. И не понял многие моменты сахара. Also, with, apply всякие.
Думаю поучить котлин. А потом можно и в один из сервисов запулить.
В чем цимес котлина на спринге? Во многих вакансиях втречаю котлин. Наверно в 20% вакух на спринге указывают кроме джавы котлин.
Но на работе никто на котлине не писал.
Аноним 29/04/23 Суб 12:15:22 2684237 4
>>2684235
Петухлин это петухон для петухонщиков, которых заебала динамикодрисня.
Аноним 29/04/23 Суб 12:20:18 2684241 5
>>2684235
Он учится один день. Основная проблема с котлином в том, что ты становишься привязан к IDEA
Аноним 29/04/23 Суб 12:23:30 2684242 6
>>2684237
Тимлид у нас с гошкой играется после работы. Говорит, что с жабы кроме нее на что-то переходить не имеет смысла. Но мы на спринг и жвм сильно завязаны. Гошку даже он не сможет в наши проекты затащить, хотя он умеет разводить менеджеров, что ему нужна всякая хуйня типо noSql-баз.
А котлин, если в нем есть толк можно протащить.
>>2684241
Мы и так на идею завязаны, это не проблема. Проблема разве что, что ci придется менять под это дело, но оно решаемое.
Только вот хочется узнать в чем плюс котла. Ну null-safety слышал, сахар, укорачивающий код - видел. Но в чем прикол - не прочувствовал.
Аноним 29/04/23 Суб 12:26:09 2684244 7
Аноним 29/04/23 Суб 12:34:55 2684248 8
>>2684242
Говно это вообще хуйня от соевых даунов, которые хотят показать, как они сильно готовы лизать очко жидопассу и гуглу, что аж про наличие эксепшенов и дженериков ради барина готовы забыть.
Аноним 29/04/23 Суб 12:49:06 2684260 9
>>2684231
Подрывом первым постом удовлетворен. Гимн джава треда это вой горящих пердаков шарпошколотв
Аноним 29/04/23 Суб 13:28:30 2684302 10
>>2684241
>Он учится один день
Проиграл с тебя, чел. На одни корутины и понимание как это устроено под капотом и как писать идиоматичный код уйдет минимум год. И нет, ставить suspend в сигнатуры методов - это не понимать корутины. Вообще заметил, что помойные джавамухи до последнего сидят на своей гнойной жаве и отказываются учить что-то новое. А когда их палками гонят изучать Scala или хотя бы ко-котлин, то у них происходит разрыв шаблона и они срут на котле как на джаве. Даже на реддите был пост как джавадебилов посадили писать на гоулэнге и те и там успели насрать неидиоматичным кодом "как на джаве".
Аноним 29/04/23 Суб 13:35:06 2684315 11
>>2684302
Деформация везде бывает. Есть в команде выпускник, бывший олимпиадник, который хотел на плюсах писать, но не смог устроиться на норм зепку и вкатился в джаву.
Есть бывший питонист.
Есть несколько бывших 1-сников.
У всех их бывший стек оставил отпечаток. И они пишут/писали на жабе, как на своих предыдущих языках.
Аноним 29/04/23 Суб 13:36:59 2684319 12
>>2684302
Вспомнился спригодебил, который пару десятков тредов назад затирал, что на изучение спринга уйдут годы. Это не ты ли был? А то по уровню интеллекта похож, раз ты то, что учится за час раскуривал год.
Аноним 29/04/23 Суб 13:37:47 2684322 13
Бля пизда читаю одно и то же по десятому кругу, когда уже за практику сяду, ёбана в рот.
Аноним 29/04/23 Суб 13:51:02 2684331 14
>>2684322
>за практику сяду
это не проблема. Много таких практик, за которые можно сесть.
Аноним 29/04/23 Суб 14:02:10 2684341 15
>>2684331
Это будет связано с машинами и с дележом.
Аноним 29/04/23 Суб 14:21:14 2684352 16
>>2684342
Если говорить о интересующих меня вакухах - более менее современный стек - жава 11/17, микрочелики, кафки, куберы, то наверно даже треть имеют упоминание котлина.
Аноним 29/04/23 Суб 14:45:34 2684378 17
>>2684352
>более менее современный стек - жава 11/17, микрочелики, кафки, куберы
Это буквально 1-2% всех вакансий на помойной жабе. В основном это Java 8, монолит где насрано. Никаких тебе куберов - все деплоится руками на виртуалки. Докеров нет и разворачивают прямо в томкате или джейбоссе варки
Аноним 29/04/23 Суб 14:50:04 2684379 18
>>2684226 (OP)
А нужно ли образование, чтобы найти работу Java-программистом?
Аноним 29/04/23 Суб 14:54:31 2684383 19
>>2684379
Образование здесь только повредит
Аноним 29/04/23 Суб 14:58:30 2684386 20
>>2684383
Да? А как сильно и каким образом?
Аноним 29/04/23 Суб 15:01:16 2684388 21
>>2684378
Не выдумывай. Я сам на жаба 17 и микрочеликами работаю. И когда устраивался еще тоже половина вакух такая была.
Легаси с варками и внешним томкамом это тоже процентов 20. А жаба 8 и старше ну дай бог 40.
Аноним 29/04/23 Суб 15:18:52 2684403 22
>>2684388
Может чел на загнивающую европу работает, там и 6-7 джава есть
Аноним 29/04/23 Суб 15:20:18 2684406 23
>>2684403
А почему не обновляются?
Аноним 29/04/23 Суб 15:22:43 2684407 24
>>2684406
Бюрократия и похуизм хозяина и работников, но это и у нас есть
Аноним 29/04/23 Суб 15:38:57 2684423 25
>>2684418
Лум не появился по факту. Появление - это выход в лтс + год на впиливание в нужные либы.
Лум появится для прикладного разраба в конце 24 года. Причем только для тех, кто быстро переходит на новые версии либ и жабы.
Аноним 29/04/23 Суб 15:47:08 2684427 26
>>2684423
>+ год на впиливание в нужные либы
>+ год
Ну-ну, попустись! Лет 20-30 - и это ми-ни-мум. В целом, лум ничего не решает. Это попытка догнать C# с его async/await. Но время уже упущено. Помойные разработчики Java только и делают, что тащат всякий сахарок, не забыв при этом обильно полить его говном. Ведь по другому в джава-мире нельзя.
Аноним 29/04/23 Суб 15:54:20 2684429 27
>>2684427
Догнать в чем? Рынок шарпов, как был 20-30% от рынка жабы 15 лет назад, так и остался.
Большие конторы сильно и плотно завязаны на жвм. У многих есть своя жвм. У очень многих если собственные хаки опенжвм.
Нахуя им на мыло с дотнетовской виртуальной машиной переходить? Ты вот за последний год как попугай про какой-то переход на шарп пишешь. А примеры то есть, кроме ооо залупец на 10 калек?
Аноним 29/04/23 Суб 16:08:11 2684436 28
>>2684429
>А примеры то есть, кроме ооо залупец на 10 калек?
Проиграл с блаженного, лол. Тем временем тиньк сворачивает проекты на жабе и растит команду C#. Озон выгнал на мороз всех джавистов и скалистов и пишет онли на гоулэнге и сишарпе.
Аноним 29/04/23 Суб 16:09:01 2684437 29
Аноним 29/04/23 Суб 16:13:17 2684444 30
>>2684436
Ну на гошку иногда имеет смысл поменять, гошка это другая парадигма.
А уж замена жявы на шарп это или выдумки или кодовая база на жяве была микрокопическая.
Аноним 29/04/23 Суб 16:19:56 2684452 31
>>2684444
>гошка это другая парадигма.
Все так. Гоулэнг - это парадигма скорости разработки, надежности и простоты понимания кодовой базы. Парадигма жабы - это раздутый штат говнокодеров, дерьмовый код, постоянные баги, жор ресурсов и просранные сроки.
Аноним 29/04/23 Суб 16:24:49 2684456 32
>>2684452
Это частично так. Но это обусловлено, что на джаве уже реализовано куча всего. Для почти любого тырпрайз проекта можно найти готовый код, собрать его вместе, сконфигурировать и написать столько бизес-логики поверху сколько тебе надо.
И куча багов известна, потому что кодом на жабе пользуются в продакшене и находят баги.
Аноним 29/04/23 Суб 16:29:44 2684461 33
>>2684456
В Java есть баги???!!! :O
Аноним 29/04/23 Суб 16:34:27 2684464 34
>>2684436
Тем временем тиньк сворачивает проекты на жабе и растит команду C#
пруфы? хх тинька. java - 59 вакух, scala - 15, .net - 23, golang - 14.
>Озон выгнал на мороз всех джавистов
А там было серьезное количество джавистов? В каком году?
Аноним 29/04/23 Суб 16:39:12 2684471 35
Аноним 29/04/23 Суб 16:41:10 2684474 36
>>2684242
>Тимлид у нас с гошкой играется после работы.
А я с писькой играю после работы, но никому об этом не рассказываю же.
Аноним 29/04/23 Суб 16:42:57 2684477 37
Гуглю дальше про озон.
Что я вижу. Они распилили помойный монолит на сишарпе на микросервисы на гошечке.
https://youtu.be/eJ5RB2QFy8Q?t=187
Аноним 29/04/23 Суб 16:51:57 2684484 38
Оказывается шарпер-евангелист еще и откровенный пиздобол. Ожидаемо.
Потом окажется, что и про сам язык и экосистему он так же врал, что шарповская орм не волшебная пилюля, а такая же залупа, как и орм в других языках.
Но в этом разбираться само собой никто не будет и ловит шизика на лжи соответственно тоже. Это реально нужно пописать на шарпах, никто на это время тратить не будет.
Аноним 29/04/23 Суб 16:53:01 2684485 39
>>2684474
А мог бы на проект ее затащить.
Аноним 29/04/23 Суб 16:55:36 2684486 40
Ребятки, везде хвалят шарп, а джава говорят всё. Я вот думаю свичаться в модный молодежный язык, чтоб коболом не провоняться. Шарп и правда выглядит получше, на нем можно писать всё: игры, бэкенд, фронтэнд, десктоп, машин лёрнинг и искусственный интеллект. Прям чудо-язык, от самой продвинутой корпорации в мире. Плюс еще очень быстрый. А джава прям вообще застыла в прошлом.
Аноним 29/04/23 Суб 17:10:14 2684494 41
>>2684242

>Только вот хочется узнать в чем плюс котла.

Обьективно - только в корутинах и ФПшности.
Аноним 29/04/23 Суб 17:13:10 2684497 42
>>2684494
А на спринге эти фичи применимы?
Аноним 29/04/23 Суб 17:14:23 2684499 43
>>2684497
Что за спринге? Хайповая тема?
Аноним 29/04/23 Суб 17:16:08 2684501 44
>>2684497
Всмысле - в связке спринг+котлин? Смотря как и в каком объеме.
Аноним 29/04/23 Суб 17:17:29 2684502 45
>>2684501
А как смотреть, чтоб применимо?
Аноним 29/04/23 Суб 18:06:39 2684533 46
Как сделать так, что бы при использовании аннотации для метода
что-то происходило ?
То есть, аннотация должна менять поведение метода. Как это сделать ?
Аноним 29/04/23 Суб 18:16:16 2684540 47
>>2684533
переходить на Пайтон
Аноним 29/04/23 Суб 18:29:56 2684543 48
Аноним 29/04/23 Суб 18:33:56 2684545 49
>>2684533
Нужно реализовать обработчик с помощью рефлексии.
Аноним 29/04/23 Суб 18:34:09 2684546 50
>>2684543
А мне пик 2 нравится.
Аноним 29/04/23 Суб 18:45:11 2684554 51
>>2684546
А мне письку дрочить нравится, но я же никому об этом не говорю.
Аноним 29/04/23 Суб 20:24:49 2684587 52
.jpg 52Кб, 720x720
720x720
А мне нравится сосать хуи!
Аноним 29/04/23 Суб 20:37:23 2684597 53
>>2684587
Ты ни разу не сосал, как ты можешь говорить?
Аноним 29/04/23 Суб 20:38:54 2684599 54
image.png 89Кб, 259x195
259x195
Сап, двач. Мимо PHP макака, работаю в фитнехе и получаю 220к в наномесяц. У меня следующие вопросы:

1) Имеет ли для меня смысл переката в java? Постоянно мучают комплексы неполноценности будто пишу не на настоящем языке. К тому же у нас go в некоторых микропенисах, который как бы намекает что пыха не справляется

2) Возможно ли вкотиться не потеряв в зэпке, или пиздос-пиздос не возьмут перекатчика и только в джуны? Опыта работы с либами нет, разве что делал в spring'е петпроджект как-то.

3) Вы вообще на джаве довольны джавой, мыслей что надо упрыгивать нет?
Аноним 29/04/23 Суб 20:41:15 2684600 55
>>2684599
1) С любого языка имеет смысл перекатываться в божественный жаба-мир.

2) Хуя манямирок. Ты бы надеялся, чтобы тебя вообще джуном после полугода дроча джавы по 12 часов в сутки взяли.

3) Нет, обожаю джаву, на все остальные языки смотрю как на легаси/кастрированное говно.
Аноним 29/04/23 Суб 20:48:29 2684602 56
>>2684600
> Ты бы надеялся, чтобы тебя вообще джуном после полугода дроча джавы по 12 часов в сутки взяли

Не ну пиздец =(
Аноним 29/04/23 Суб 21:00:25 2684610 57
>>2684599
> 1)
Может, тебе ближе Go?
> 2)
Сложно. Перекатиться на миддла конечно же можно, но с сохранением зепки будет сложнее, хотя тоже возможно.
> 3)
Доволен только работой на джаве. Для себя на ней вообще ничего не пишу. Поглядываю на плюсы (оч сложно перекатиться) и шарп (меньше работы).
Аноним 29/04/23 Суб 21:11:50 2684620 58
>>2684610
>Может, тебе ближе Go?

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

Причем причина по которой на го пишут микросервисы выглядит примерно так:

1) Большие проекты на го хуйня и ебаный в рот, фреймворков нет.

2) Очень пиздатая и большая стандартная библиотека. У тебя 3.5 зависимости будет в проекте. Мэйнтенетса считай 0.
Аноним 29/04/23 Суб 21:24:17 2684625 59
>>2684620
>Очень пиздатая и большая стандартная библиотека
Не пиздаче и не больше, чем в яве.
Аноним 29/04/23 Суб 21:26:55 2684627 60
>>2684625
Не знаю про GOвно, но в джаве очень маленькая стандартная библиотека.
Аноним 29/04/23 Суб 21:44:41 2684641 61
>>2684600
>на все остальные языки смотрю как на легаси/кастрированное говно.
А как же c++ ?!
Аноним 29/04/23 Суб 21:45:23 2684643 62
Аноним 29/04/23 Суб 21:47:14 2684644 63
>>2684627
Там есть все что необходимо для написания микросервисов.
Аноним 29/04/23 Суб 21:48:57 2684646 64
>>2684587
Зачем облизывать кожу другого человека ? Лол.
Аноним 29/04/23 Суб 21:57:25 2684650 65
>>2684599
>Постоянно мучают комплексы неполноценности будто пишу не на настоящем языке.

Так жаба тож неполноценный язык. Единственный полноценный язык - это Си Шарп. На нём можно писать абсолютно всё. В жабе ты ограничен спринг бут бэкендом
Аноним 30/04/23 Вск 00:28:54 2684750 66
>>2684627
А что должно быть в стандартной библиотеке?
Аноним 30/04/23 Вск 00:29:23 2684751 67
Аноним 30/04/23 Вск 00:30:38 2684752 68
>>2684751
В Java есть всё. Даже поговорка есть: что написано Javом, не перепишешь и шарпом.
Аноним 30/04/23 Вск 00:31:21 2684754 69
>>2684752
Но не в стандартной библиотеке. А я хочу всё и сразу и чтобы без зависимостей!
Аноним 30/04/23 Вск 00:32:03 2684756 70
>>2684754
А чего тебе не хватает в стандартной библиотеке?
Аноним 30/04/23 Вск 00:39:41 2684760 71
Аноним 30/04/23 Вск 00:41:56 2684763 72
Аноним 30/04/23 Вск 00:43:07 2684764 73
Аноним 30/04/23 Вск 00:45:15 2684765 74
>>2684764
Да всё-всё, не трясись.
Аноним 30/04/23 Вск 00:46:21 2684767 75
>>2684765
Да нихуя не всё. Я постоянно допиливаю новыми классами свою копротеку с общими классами (что должно быть в стандартной либе).
Аноним 30/04/23 Вск 00:47:46 2684768 76
Аноним 30/04/23 Вск 00:49:06 2684769 77
image 23Кб, 1132x249
1132x249
Аноним 30/04/23 Вск 00:51:53 2684770 78
Аноним 30/04/23 Вск 00:52:28 2684771 79
Аноним 30/04/23 Вск 00:52:32 2684772 80
>>2684770
Шарподаун, не влезай.
Аноним 30/04/23 Вск 00:53:36 2684773 81
>>2684769
Почему у тебя <ALTERNATIVE_TYPE> и <METHOD_TYPE> перед возвращаемым типом? Что это такое?
Аноним 30/04/23 Вск 00:53:37 2684774 82
Аноним 30/04/23 Вск 00:54:26 2684775 83
>>2684773
Это типы метода. В отличии от типов объекта, определяются в момент вызова метода, а не создания объекта.
Аноним 30/04/23 Вск 00:55:41 2684777 84
>>2684774
Consumer наоборот это же Supplier, нет? Или под наоборот ты имел в виду через жопу?
Аноним 30/04/23 Вск 00:57:41 2684778 85
>>2684775
Это точно чистая Java 17? Как на английском называется такая штучка? Что-то я такое не встречал за все те 2 дня что учу джаву.
Аноним 30/04/23 Вск 00:57:51 2684779 86
>>2684777
Это зависит от того, в какой момент нужно дёргать. Если у тебя Supplier, то ты определяешь, когда происходит supply. Иногда могут появляться ситуации, когда момент поставки может определяться тем, кто получает объект, а не тем, кто отдаёт его.
Аноним 30/04/23 Вск 00:59:01 2684780 87
>>2684779
Ого!.. Пока что сложно для меня... Жесть ты умный, получается.
Аноним 30/04/23 Вск 00:59:17 2684781 88
>>2684779
>>2684780
Блять, наоборот, определяться не тем, кто получает объект (Supplier и вызов .get() в методе, получившем этот Supplier), а тем, кто отдаёт объект.
Аноним 30/04/23 Вск 01:00:11 2684782 89
Аноним 30/04/23 Вск 01:01:49 2684783 90
>>2684779
Приведи пример или хуйня без задач.
Аноним 30/04/23 Вск 01:02:42 2684784 91
Аноним 30/04/23 Вск 01:05:25 2684787 92
Аноним 30/04/23 Вск 01:06:29 2684788 93
>>2684784
Пример кода, а не твоих тупых слов.
Аноним 30/04/23 Вск 01:09:12 2684790 94
image 20Кб, 707x314
707x314
Аноним 30/04/23 Вск 01:15:15 2684793 95
Аноним 30/04/23 Вск 01:16:58 2684794 96
image 12Кб, 393x218
393x218
>>2684793
Согласен, хуйня, писал после полутора суток без сна. Вот так получше.
Аноним 30/04/23 Вск 01:28:21 2684799 97
Аноним 30/04/23 Вск 13:12:24 2684939 98
>>2684769
Нинужна. В жаве функциональной параши ровно столько, чтобы такие деды как я могли в ней разобраться. Хотя даже в ней можно переусложнить до полной нечитаемости.
Как делать ревью на языках, где функциональны много я вообще хз.
Аноним 30/04/23 Вск 14:37:12 2685005 99
image.png 72Кб, 946x656
946x656
Control flow == Управляющее течение / Перетекание / Порядок выполнения
Stream API == Струя / Струмень
Thread & Runnable == Поток

Всё верно понял?
Аноним 30/04/23 Вск 14:42:34 2685010 100
image.png 65Кб, 849x644
849x644
Аноним 30/04/23 Вск 15:16:31 2685040 101
>>2684939
Это не классическая функциональщина, которую с жиру лепят, кстати. Instructor это вынужденная мера, так как в императивном стиле оригинальная задача в принципе нерешаема.
Аноним 30/04/23 Вск 15:25:19 2685049 102
>>2685010
Хотя эта хуйня только запутывает ещё больше и звучит смешно.
Аноним 30/04/23 Вск 20:57:50 2685313 103
>>2685040
хуйню без задач написал и рад
Аноним 30/04/23 Вск 21:03:44 2685322 104
Книга "Head First Паттерны проектирования" актуальна ?
Аноним 30/04/23 Вск 21:06:44 2685325 105
>>2685322
Книга "Head First Паттерны проектирования" была выпущена в 2004 году и была обновлена в 2020 году. Хотя основные принципы проектирования остаются неизменными, новые технологии и требования рынка могут привести к изменению некоторых паттернов и подходов к проектированию.

Тем не менее, книга "Head First Паттерны проектирования" по-прежнему считается одной из лучших книг по этой теме. Она предлагает уникальный и интерактивный подход к изучению паттернов проектирования, используя практические примеры и головоломки для помощи в понимании теории.

Таким образом, книга "Head First Паттерны проектирования" по-прежнему актуальна и может быть полезной как для начинающих, так и для опытных разработчиков, желающих улучшить свои знания в области проектирования.
Аноним 30/04/23 Вск 21:08:19 2685328 106
>>2685322
малыш это джава
здесь даже книга 1996 года будет актуальна
Аноним 30/04/23 Вск 21:31:17 2685344 107
Аноним 01/05/23 Пнд 15:54:17 2685755 108
Интересно откуда сайт Hyperskill знает, что у меня на компьютере запущена JUDEA, и каким он образом он с ней связывается.

Может, он как-то через Windows вызывает по какому-то своему протоколу. А почему браузер разрешает такую хуйню?

Или JUDEA какой-то сервер открывает что ли. Тогда какого хуя Windows позволяет такое делать?
Аноним 01/05/23 Пнд 16:10:21 2685766 109
>>2685755
я те щас страшную тайну открою но магаз плагинов идеи тож знает че у тебя зопущено...
Аноним 01/05/23 Пнд 16:20:46 2685770 110
>>2685766
Пиздец... Это везде так или только на Windows?
Аноним 01/05/23 Пнд 17:01:56 2685800 111
>>2685755
Пользуйся эклипсом, нечего всякую малварь ставить. Странно, что на IDEA не ругается антивирус.
Аноним 01/05/23 Пнд 17:04:37 2685801 112
>>2685800
И подсветка синтаксиса в Eclipse лучше.
Аноним 01/05/23 Пнд 17:50:53 2685849 113
>>2684756
>А чего тебе не хватает в стандартной библиотеке?
isEmptyString(str)
Аноним 01/05/23 Пнд 18:15:29 2685881 114
>>2685849
Такая штучка есть в классе String.

boolean String.isEmpty() {
return this.length == 0;
}
Аноним 01/05/23 Пнд 18:36:59 2685909 115
>>2685881
это хуйло про нуллы
Аноним 01/05/23 Пнд 18:49:38 2685919 116
>>2685849
Перекатывайся в шарп, в нём есть string.IsNullOrEmpty().
Аноним 01/05/23 Пнд 19:13:57 2685936 117
>>2685755
Если ты не знаешь про хуки то тебе еще рано вкатываться в профессию. Почисть мне сапоги.
Аноним 01/05/23 Пнд 19:48:29 2685965 118
>>2685936
Хук это то, чем я сломаю тебе челюсть.
Аноним 01/05/23 Пнд 19:58:27 2685974 119
>>2685965
У меня нет челюсти, я круглолицый скуф.
Аноним 01/05/23 Пнд 20:00:05 2685979 120
>>2685936
Я почищу свои ботинки твоим ебалом.
Аноним 01/05/23 Пнд 20:07:31 2685983 121
>>2685982
>Какой громоздкий язык.
Как написать то же на Java?
Аноним 01/05/23 Пнд 20:19:27 2685997 122
>>2685983
string == null || string.isEmpty()

тупо просто и понятно
Аноним 01/05/23 Пнд 20:20:48 2685998 123
>>2685997
Не петушарпер, но это контринтуитивно, так как часть логики совершенно незаметно спрятана в ||. Если заменить на | (зачем-то), то будет нулл пойнтер эксепшон.
Аноним 01/05/23 Пнд 20:21:09 2685999 124
.png 34Кб, 826x205
826x205
>>2685982
> Какой громоздкий язык
Не джавистам на это жаловаться.
Аноним 01/05/23 Пнд 20:22:01 2686000 125
>>2685999
Тебя весной в детстве выебали, что-ли, что ты с этим тыщу раз обоссаным спрингом носишься постоянно?
Аноним 01/05/23 Пнд 20:23:41 2686003 126
>>2685998
если для тебя это незаметно то программирование это не твое в принципе
Аноним 01/05/23 Пнд 20:25:34 2686006 127
>>2686003
Объясни мне, мань, нахуя мне думать о разнице || и |, когда я хочу выяснить, является ли переменная null'ом или пустой строкой?
Аноним 01/05/23 Пнд 20:27:31 2686009 128
>>2686006
>нахуя мне думать о разнице || и |
ебланище, никто не использует |
Аноним 01/05/23 Пнд 20:27:42 2686010 129
Аноним 01/05/23 Пнд 20:29:31 2686013 130
Аноним 01/05/23 Пнд 20:29:59 2686014 131
Аноним 01/05/23 Пнд 20:37:52 2686019 132
>>2685997
>тупо просто и понятно
Тупо - да, все остальное хуета. Половина проектов пишет свои StringUtils из-за того, что Браен Гёц занят экспериментами с Sequenced Collections и прочей хуетой. Так блять сложно добавить пару методов в String и Collections? Весь Commons Lang существует только потому, что аффтары JDK не могут добавить пару полезным методов которые нужны в 99% проектов.
Аноним 01/05/23 Пнд 20:38:04 2686020 133
>>2685997
подтягиваешь в зависимости apache common utils и получаешь StringUtils.isEmpty
Аноним 01/05/23 Пнд 20:49:11 2686023 134
>>2686019
Да просто аффтары жабы пытаются сохранить прямую совместимость, т.е. чтобы код на Java 20 после минимальных правок компилировался и запускался на Java 8.
Аноним 01/05/23 Пнд 20:51:01 2686024 135
>>2686023
Не-а, они не просто так добавляют в каждую версию всякие приколюхи типа List.of() и stream#toList(). Их убирать максимально больно, да и писать на старой джаве, когда знаешь, что они есть, без них, тоже больно.
Аноним 01/05/23 Пнд 21:02:23 2686034 136
>>2686020
Вот только тянуть commons lang ради одного метода не все хотят, многие предпочитают написать сами.
В Котлине или Go инстанс метод может работать с null объектом не выкидывая NPE.
Аноним 01/05/23 Пнд 21:07:23 2686038 137
>>2686000
Так spring требуется во всех Java-вакансиях.
Аноним 01/05/23 Пнд 21:09:49 2686039 138
Аноним 01/05/23 Пнд 21:45:19 2686059 139
>>2686039
Ну давай, спиздани про микронавт
Аноним 01/05/23 Пнд 21:52:08 2686065 140
Java требуется во всех Spring-вакансиях.
Аноним 01/05/23 Пнд 21:52:41 2686067 141
>>2686059
Спизданул по ебалу твоей мамки, проверяй.
Аноним 02/05/23 Втр 07:32:29 2686212 142
Аноны, правильно понимаю, что сейчас без опыта уже не вкатишься? Есть шанс попасть на стажировку в какой-нибудь Яндекс, если ты выпыскник/учащийся тех. вуза, но если нет тебя хуй куда возьмут? Единственный шанс, это нарисовать себе годик опыта и все усилия направить на то чтобы закосить по уже работавшего, правильно ведь? Я прав ведь, аноны, или нет?

Потратил год на обучение, сейчас в расстройстве от рынка вакансий
Аноним 02/05/23 Втр 08:02:26 2686217 143
>>2684769
Паблик интерфейс....

Иди кор учи, смузихлеб мамкин
Аноним 02/05/23 Втр 08:14:26 2686218 144
>>2686217
Что сказать-то хотел?
Аноним 02/05/23 Втр 09:18:05 2686234 145
>>2684769
Ух бля, какогото неведомого ебаного интерфейса, нужного одному анону, нет в стандартной либе. Все - стандартная либа неполная.

Сука, рофл, в стдлибе джавы столько очевидных мест, до которых можно было бы доебаться. Анон как всегда доебался до ебанины какой то никому не нужной.
Аноним 02/05/23 Втр 09:20:25 2686236 146
>>2685040
И в чем заключается оригинальная задача?
Аноним 02/05/23 Втр 09:21:21 2686239 147
>>2686218
Он хотел сказать, что не отличает публичный интерфейс от публичного метода.
Аноним 02/05/23 Втр 09:22:59 2686245 148
>>2684784

Чем WeakHashMap не зашел?
Аноним 02/05/23 Втр 09:48:18 2686257 149
>>2686236
Выше в треде было. Надо, чтобы мапа очищалась сама, а не срала в кучу неубирающимися записями. И всё это с приемлемым уровнем абстракции.
Аноним 02/05/23 Втр 09:51:12 2686259 150
Аноним 02/05/23 Втр 09:51:24 2686260 151
>>2686245
Да по сути ничем, на самом деле и его можно было бы использовать до этой задачи. Просто я привык всегда решать задачи без костылей (надо сделать X — значит сделаю X), и мне в голову не пришёл WeakHashMap.
Аноним 02/05/23 Втр 09:55:00 2686263 152
>>2686260
Хули тогда хулу на стдлиб джавы разводишь, если ты - сам себе злобный буратино, и открыто признаешь свою ориентацию?
Аноним 02/05/23 Втр 09:55:54 2686267 153
>>2686263
Ну как минимум потому что WeakHashMap это не идеальное решение проблемы.
Аноним 02/05/23 Втр 10:01:08 2686271 154
>>2686267
Ты жопой то не крути. Выше ты уже признал что его "можно было бы использовать для этой задачи", и что тебе "в голову не пришёл WeakHashMap", что уже в сумме со всем тобой вышесказанным выдает в тебе клоуна-пустобреха. Грош цена после этого твоему мнению, дешевка.
Аноним 02/05/23 Втр 10:03:12 2686272 155
image 484Кб, 1536x1060
1536x1060
>>2686271
Применение WeakHashMap для моей оригинальной задачи выглядит как пикрил.
Аноним 02/05/23 Втр 10:11:21 2686276 156
>>2686272
Какая у тебя была оригинальная задача?
Аноним 02/05/23 Втр 10:12:26 2686278 157
>>2686272
>я у мамы - нитакусик
Аноним 02/05/23 Втр 10:16:55 2686279 158
>>2686278
Я сейчас подумал, WeakHashMap на самом деле бы и не подошёл тут, даже если очень сильно захотеть. Здесь важно, чтобы данные сохранялись в хешмапе ровно столько, сколько они валидны (или как можно ближе к этому), а не когда попало очищались.
Аноним 02/05/23 Втр 10:18:30 2686280 159
>>2686276
Откатывать позицию игроков на N секунд назад.
Аноним 02/05/23 Втр 10:19:43 2686281 160
>>2686280
пиздос
про системы слышал что-нибудь?
Аноним 02/05/23 Втр 10:21:45 2686282 161
image 35Кб, 1200x800
1200x800
image 192Кб, 1472x748
1472x748
Аноним 02/05/23 Втр 10:23:55 2686284 162
>>2686279
Ну тыж, клоун, нормально обьяснить суть задачи то не в состоянии, способен только гнать своим языком гнилым на то, в чем сам не сведущ. Говоришь "garbage collector для Map" - тебе дали. А теперь вдруг надо другое - какой то откат игроков который к термину GC отношения имеет - ноль.

Короче - страдай, тебе полезно.
Аноним 02/05/23 Втр 10:27:12 2686285 163
>>2686284
Так GC и не откатывает непосредственно. Я задачу решил через Map<Player, CircularFifoQueue<Location>>. GC тут имеет опосредованное отношение, его задача удалять вышедших игроков из этой карты, чтобы не было утечки памяти.
Аноним 02/05/23 Втр 10:34:08 2686286 164
>>2686285
Все клещами надо вытаскивать блять.

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

И че тогда ты выдумываешь? Игрок выходит с карты - перехватываешь событие выхода и дропаешь его с мапы. Все. А если ты такой упертый, что хочешь делегировать чистку этого игрока джавовому GC (хз нахуя - такая постановка задачи априори - говно, но похуй), то все равно неясно хули ты доебался до WeakHashMap, потому что под кейс "удалять тех игроков, что попали под каток GC" WeakHashMap самым лучшим образом из возможных подходит.

Или ты растовый? Ждешь что за тебя все подчистят при выходе из контекста?
Аноним 02/05/23 Втр 10:42:20 2686290 165
Жабисты, а вот признайтесь, вы на работе используете ПАТТЕРНЫ вот прям чтоб ПАТТЕРНЫ БЛЯТЬ, чоб вот сами обзерверы делали, мосты, хуясты?
Аноним 02/05/23 Втр 10:43:20 2686292 166
>>2686286
>Игрок выходит с карты - перехватываешь событие выхода и дропаешь его с мапы.
Недостаточно ООП-шно. Я хочу просто создать карту и чтобы она чистилась сама.
>что хочешь делегировать чистку этого игрока джавовому GC
Так это ты мне предложил использовать WeakHashMap зачем-то, потому я тебе и кинул пикчу с хлебным троллейбусом.
Аноним 02/05/23 Втр 10:44:07 2686293 167
>>2686212
О, анон! Какие проекты сделал?
Аноним 02/05/23 Втр 10:48:06 2686294 168
>>2686282
перепутал, это компоненты называется
Аноним 02/05/23 Втр 10:48:39 2686295 169
>>2686294
Всё ещё не пынямаю.
Аноним 02/05/23 Втр 10:49:15 2686297 170
НЕ ОБНОВЛЯЙТЕСЬ НА ИДЕЮ 2023.1 ОНИ СЛОМАЛИ НАВИГАЦИЮ К ПОТОМКАМ В КЛАССАХ ИЗ ЛИБ И ТАК И НЕ ПОЧИНИЛИ В 2023.1.1
Аноним 02/05/23 Втр 10:50:41 2686299 171
В прекрасном светлом мире будущего будет две или три конкурирующих среды разработки, все полные функционала, а не платное говно из жопы с багами против notepad++++.
Аноним 02/05/23 Втр 10:59:13 2686305 172
>>2686292
>Недостаточно ООП-шно. Я хочу просто создать карту и чтобы она чистилась сама.

Че у тебя за каша в бошке? При чем тут ООП? Парадигма с наличием/отсутствием GC не связана никак. То что ты рисуешь - твои локальные хотелки, не имеющие никакого отношения ни к ООП, ни к джаве, ни к ее стандартной либе.

>Так это ты мне предложил использовать WeakHashMap зачем-то

Ёб твою мать, кусок ты хлебушка... Ты сам выше (>>2684784) формулировал свою цель как "Garbage collector для Map", дополнив (>>2686257), что "надо чтобы мапа сама очищалась", а теперь я еще и виноват оказался. Короче - обоссал тебя. Учись нормально и связно диалог с людьми вести, клоун.
Аноним 02/05/23 Втр 11:04:22 2686309 173
>>2686305
В смысле причём? Когда ты связываешь глобальный контекст событий и мапу напрямую, это нихуя не по ООП.

>ни к ее стандартной либе
Ясен хуй не имеет отношения, ведь того, что я делал, в стандартной либе нет, лол. А стандартная либа должна включать в себя абсолютно всё неспецифичное для конкретного проекта.

>Ты сам выше
Я говорил, что мне нужно присоединиться именно к тому общему GC, что объекты без ссылок удаляет? GC разные бывают.
Аноним 02/05/23 Втр 11:17:50 2686316 174
>>2686309
>В смысле причём? Когда ты связываешь глобальный контекст событий и мапу напрямую, это нихуя не по ООП.

Бляяя, пиздец тебе в бошку насрали, я ебал... Хз даже с чего начать обоссывать этот стейтмент бредовый... Это даже не Бугаенко, это какие то совсем уж локальные маняфантазии.

>А стандартная либа должна включать в себя абсолютно всё неспецифичное для конкретного проекта.

А вот хуй те в рот, не должна. Не нравится - пиздуй нахуй. В джаве без тебя хватает проблем с жирностью стдлибы, когда из-за того что надо держать обратную совместимость на косяки предков, приходится держать в апи всякий бред до победного. Из-за стдлибы все-в-одном с десяток лет уже внедряют лум, хотя все могло бы окончиться за релиз, если бы джавовое конкарренси с его Object::wait/notify и прочими хуйнями не было бы частью стдлибы. И новые языки типа Котлина со старта учитывают этот косяк, вынося свои корутины в отдельную зависимость.

>GC разные бывают.

Я не ебу какие у тебя в бошке GC разные бывают. В джавовом рантайме GC работает один на процесс.
Аноним 02/05/23 Втр 11:20:49 2686320 175
>>2686316
>А вот хуй те в рот, не должна.
А я хочу всё и сразу и чтобы удобно!

>Я не ебу какие у тебя в бошке GC разные бывают. В джавовом рантайме GC работает один на процесс.
Расшифруй аббревиатуру и удивись.
Аноним 02/05/23 Втр 11:24:05 2686322 176
>>2686320
>А я хочу всё и сразу и чтобы удобно!

Тебя чатгпт заменит. У нее нет бредовых хотелок.

>Расшифруй аббревиатуру и удивись.

Поучи меня еще, щенок
Аноним 02/05/23 Втр 11:25:31 2686323 177
Аноним 02/05/23 Втр 11:29:56 2686325 178
>>2686290
Нет.

Раньше по молодости казалось что паттерны - маст-хэвная хрень, но с опытом пришло понимание что это просто каргокульт.
Аноним 02/05/23 Втр 11:30:59 2686326 179
>>2686290
Паттерны это очень лампово.
Аноним 02/05/23 Втр 12:21:55 2686369 180
>>2686362
Нет. Цитируя джавадоку:

>Like most collection classes, this class is not synchronized. A synchronized WeakHashMap may be constructed using the Collections.synchronizedMap method.
Аноним 02/05/23 Втр 13:00:47 2686398 181
Аноним 02/05/23 Втр 13:04:16 2686402 182
>>2686295
Ну лох, че, если кодишь в геймдеве и не знаешь про компоненты. Это азбука.
Аноним 02/05/23 Втр 13:04:52 2686403 183
>>2686398
Жидбрейнзы ссучились, забей. Щас ответят ченить в духе "мы идентифицировали вас как пользователя из РФ и поэтому ничем не можем вам помочь", и закроют таску. Прецеденты были.
Аноним 02/05/23 Втр 13:26:27 2686415 184
>>2686398
Жидбрейнзы ссучились, забей. Пометят как дубликат и забьют хуй. Прецеденты были.
Аноним 02/05/23 Втр 13:35:08 2686420 185
>>2686218
Иди jls почитай про модификаторы доступа.

>>2686239
Нахуй пошел клоун. Тебя забыли спросить.
Аноним 02/05/23 Втр 13:48:09 2686429 186
image.png 66Кб, 783x425
783x425
Аноним 02/05/23 Втр 13:52:06 2686432 187
image.png 76Кб, 783x425
783x425
>>2686429
вот в догонку и свой потомок
Аноним 02/05/23 Втр 13:55:00 2686433 188
image.png 7Кб, 270x120
270x120
Аноним 02/05/23 Втр 13:55:42 2686434 189
>>2686420
Я знаю, что такое "паблик интерфейс". Что сказать-то ты этим хотел?
Аноним 02/05/23 Втр 14:03:43 2686442 190
Аноним 02/05/23 Втр 14:04:54 2686443 191
>>2686442
Ну и? Я всё описанное там тоже прекрасно знаю. Что ты сказать-то хотел?
Аноним 02/05/23 Втр 14:09:01 2686446 192
>>2686443
Тем что твоему костылю вполне достаточно package(или никакого) модификатора.

Только не говори что ты эту хуйню еще и в отдельный артифакт вынес потому тебе и нужен паблик доступ.
Аноним 02/05/23 Втр 14:11:37 2686451 193
Аноним 02/05/23 Втр 14:14:52 2686457 194
image.png 142Кб, 500x341
500x341
>>2686451
Ебтваюмать.
Да ты точно поехавший, выносящий свое говно в отдельный артифакт.
Начальник, блядь, хули вы меня с поехавшим посадили.

Пили вилкой ГЦ для мапа, сука, пили-пили-пили
Аноним 02/05/23 Втр 15:29:53 2686525 195
>>2686457
Для тебя артефакт и пакет - это одно и то же?
Аноним 02/05/23 Втр 15:55:07 2686570 196
Аноним 02/05/23 Втр 17:13:22 2686648 197
>>2686433
>Ultimate
Баг только в комьюнити.
Аноним 02/05/23 Втр 17:14:51 2686653 198
java.util.Map.GC += () -> "мам я долбоеб";
Аноним 02/05/23 Втр 17:18:28 2686655 199
>>2686648
В ультимейте пофиксили, а в коммунити решили оставить.
Аноним 02/05/23 Втр 18:30:39 2686696 200
Залетел на первую работу в конце прошлого года и какой же кайф, нихуя не делаю, таски на уровне поменять поля в дтохе, сижу двачик листаю почти весь день, завидуйте, рабы.
Аноним 02/05/23 Втр 19:47:44 2686745 201
>>2686696
Ну и сколько тебе платят?
Аноним 02/05/23 Втр 20:03:59 2686768 202
Аноним 02/05/23 Втр 20:09:39 2686771 203
Аноним 02/05/23 Втр 20:23:48 2686782 204
>>2686771
Даже если 100.01 для ждуна это норм
Аноним 02/05/23 Втр 21:04:01 2686811 205
>>2686768
Ебануться,у меня в городе джуны сорокет в среднем получают
Аноним 02/05/23 Втр 21:10:21 2686814 206
Аноним 02/05/23 Втр 21:10:26 2686815 207
>>2686811
В ДС это МРОТ для разраба.
Аноним 02/05/23 Втр 22:42:43 2686877 208
>>2686814
>Я не в рашке живу
У тебя 4 опечатки в слове выживаю.
Аноним 02/05/23 Втр 22:43:41 2686879 209
>>2686570
>Желтый фон ?
когда объелся желтого снега.
Аноним 02/05/23 Втр 22:55:49 2686890 210
>>2686570
Соларизед лайт. Топ темка.
Свои черные говнотемы уносите - нахуй нинужно.
Аноним 02/05/23 Втр 23:24:19 2686897 211
>>2686890
Попробуй 1С, тебе понравится.
Аноним 02/05/23 Втр 23:42:28 2686909 212
>>2686897
Там 350к платят?
Готов перекатиться, заебала жява.
300к жявапидор
Аноним 02/05/23 Втр 23:43:28 2686911 213
>>2686909
Нет, зато там всё жёлтое.
Аноним 03/05/23 Срд 00:28:19 2686927 214
Если я в тесте сервиса сделаю
Service s = new Service();
Потом у s вызову метод и результат запихну в assertEquals это норм? Впадлу ебучие when писать
Аноним 03/05/23 Срд 00:38:59 2686932 215
>>2686927
Если в твоем сервисе нет инжектов то да.
Аноним 03/05/23 Срд 00:45:27 2686934 216
>>2686932
Бля,репозиторий есть,сука
Аноним 03/05/23 Срд 00:50:16 2686937 217
>>2686934
Ну если в методе который тестируешь они не иапользуются то похуй.
Иначе нпе получишь
Аноним 03/05/23 Срд 00:54:00 2686939 218
>>2686937
Используется к сожалению,сук ненавижу тесты,говнокодер звучит гордо
Аноним 03/05/23 Срд 00:56:45 2686941 219
В догонку.
Для этого кстати и рекомендуется не использовать инжект через сеттер с автовайред. А инжектить в конструктор.

Потому что в тесте ты можешь подсунуть свой экземпляр в конструктор.

Например у тебя есть интерфейс Hui и имплементация HuiImpl.
Если ты делаешь конструктор
Service(Hui hui) то у себя в тесте ты можешь сделать HuiTestImpl и засунуть его в конструктор.
И никаких моков не нужно.
Аноним 03/05/23 Срд 01:15:41 2686945 220
>>2686941
Можно написать интеграционный юнит-тест.
Аноним 03/05/23 Срд 07:22:05 2686991 221
>>2686939
Делой как я.
Как только нужно создать новый метод или бин - сразу на него делой тест.
Получил задачу. Спроектировал новое дерево классов.
Создал интерфейсы бинов, описал их апи.
Сразу на интерфейс накидал тесты.

Это не совсем тдд но лично я всегда так делою.
Аноним 03/05/23 Срд 07:29:26 2686992 222
>>2686945
Разные уровни и разные инструменты.
Чистый юниттест можно сделать без всяких моков на одном junit/testng
Юниттест с методами других классов - добавляем mockito.
Нужны интеграции - добавляем wiremock.
Аноним 03/05/23 Срд 11:49:57 2687104 223
>>2686941

>Если ты делаешь конструктор Service(Hui hui) то у себя в тесте ты можешь сделать HuiTestImpl и засунуть его в конструктор.
>И никаких моков не нужно.

Видал я такие тесты. Такие тесты - одна из причин почему я не признаю сервисный спрингодизайн, сорян.

Типа, как оно обычно происходит? Имеем какой нибудь сервис-интерфейс, в нем обычно несколько десятков методов. И какой нибудь второй сервис-интерфейс, с имплементацией, зависящей на первый сервис. Надо протестить имплементацию. И вот теперь перед тобой два стула:

- Или сиди по чесному пиши фейковую имплементацию на первый интерфейс и все его несколько десятков методов, как будто тебе больше делать нечего. Причем честный фейк накатать (если честно учитывать важные для тестируемого класса инварианты) - не всегда тривиально и компактно по коду, а логика фейка в свою очередь тестами не покрывается (ну кто же тестит тестовые классы, что за оксюморон, да?), следовательно, является источником багов уже в тестовом коде. Как раз в этом месте у новичков и возникает идея - "а может ну ее, эту писанину? И просто вместо юнитов тестировать сразу интеграционно? Так будет даже честнее, как будто..."

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

Если бы вместо спрингосервисов практиковались компактные компоненты с публичным контрактом не больше одного двух-методов, написать на такой контракт фейк было бы плевым делом. Но в спринге так не принято, в спринге что ни класс - то сервис, а сервис - тупо сборник процедур, с автоварью как аналогом сишного инклюда.
Аноним 03/05/23 Срд 11:58:30 2687115 224
>>2687104
Че ты несешь, быдло? В чем проблема просто моки заинжектить и прописать перед тестами, что им делать в зависимости от ситуации
Аноним 03/05/23 Срд 12:01:53 2687121 225
>>2686525
>>2686457
Нахуй ты сам с собой разговариваешь? Настолько неприятно, что не ответили на твою жирноту?
Аноним 03/05/23 Срд 12:10:22 2687131 226
>>2687115

>быдло
Хуя пичот. Че подорвался то? Я оскорбил твоего Бога?

>В чем проблема просто моки заинжектить и прописать перед тестами, что им делать в зависимости от ситуации

В том, что моки - просто костыль пиздабольский. Твой сервис оригинально скаплен не на конкретные методы которые ты мочишь в тесте или тест кейсе, а на контракт другого сервиса, который ты инжектишь. И он вправе юзать этот контракт по полной. О чем ты никогда не вспомнишь тащя в тесты моки. Сегодня ты замочил один метод, а завтра импелементация поменяется и дернет другой - тест фейл. Сегодня ты заложил в мок одни ожидания, а завтра сервис на них работать перестанет - тест фейл. Итог - как в сценарии номер 2: ломучий никому не нужный ничего не тестящий парашный тест.
Аноним 03/05/23 Срд 12:14:52 2687132 227
>>2687131
>о чем ты никогда не вспомнишь
>дернул и получил тест фейл
)))
Аноним 03/05/23 Срд 12:17:50 2687134 228
>>2687132
Че лыбишься дурачок? Тест фейл выше - 0один хер не про багу не в твоем приложении, а про багу в твоем говносьюте. Поэтому кабаны вам-дуракам и режут человекочасы на юнит тесты - хули от них толку если они баги в приложении не ищут?
Аноним 03/05/23 Срд 12:28:52 2687155 229
>>2687104
интересная мысль. Т.е. вместо OrderService с 2к+ строками кода делать CreateOrderService, UpdateOrderService, ChangeOrderTimeOrderService с 1-2 методами внутри?
Аноним 03/05/23 Срд 12:44:31 2687174 230
>>2687155
Сделать Order с 300 строками кода максимум.
Аноним 03/05/23 Срд 12:50:21 2687179 231
>>2687155

Типа того.

Но тут мало просто побить сервисы на такие микросервисики, нужно по пути еще пересмотреть несколько догм. К примеру, первое с чем ты столкнешься на этом пути - инжектить такие компоненты спрингом станет люто неэффективно и неудобно. Гораздо проще и эффективней их просто композить друг в друга в точках входа (и в тестах), а спринг оставить лишь для того, чтобы он заведовал репозиториями и контроллерами. Для спрингокульта подобные откровения невыносимы, поэтому я не уверен что хочу обсуждать детали. Выше я просто попытался обьяснить, почему юниттестинг имеет тенденцию вырождаться в какую то дичь.
Аноним 03/05/23 Срд 12:57:03 2687187 232
>>2687179
Уже все давно знают, что единственные правильные тесты, это те, в которых ты поднимаешь весь контекст вместе с базой и прикидываешь эндпоинты, остальное нахуй не нужно, только чтобы покрытием повыебываться
Аноним 03/05/23 Срд 13:01:30 2687197 233
>>2687187
Ну кстати претензий к такой позиции у меня вообще ноль, без иронии. Она хотя бы честная.

Типа - "ну не умеем мы писать юнит тесты, и не видим в них смысла - и хуй с ними. Сосредоточим усилия на API или E2E тестах". Деды двадцать лет назад так делали, и все работало - хайрили отдельную QA команду, и та им мейнтейнила какой нить жирный регрессионный сьют. До сих пор много где такое практикуют.
Аноним 03/05/23 Срд 13:04:17 2687200 234
>>2687187
Я вот так и делаю. Пишутся раз в 10 быстрее юнит-хуюнит-мок-тестов, но некоторые недовольны тем, что якобы такая хуйня только для детекта факта бага годна, а местоположение бага не подскажет. Как контрить?
Аноним 03/05/23 Срд 13:09:55 2687209 235
>>2687200
Контри отсутствием логики в утверждении. Если юнит тест способен задетектить баг, до фейла в интеграционных тестах дело бы априори не дошло бы. А если дело дошло до интеграционных/API/E2E тестов, то это уже предполагает что юнит тесты ничего не нашли, а следовательно ничего не подскажут.
Аноним 03/05/23 Срд 13:19:31 2687219 236
>>2687179
> просто композить друг в друга в точках входа
не понял.
Вот есть OrderController, получается его тоже надо делить на кучу мелких контроллеров. Ты про это?
Аноним 03/05/23 Срд 13:24:15 2687228 237
>>2687219
Нет, не про это.

Контроллер - это и есть набор точек входа. Исполнение запросов начинается и заканчивается там (всякие фильтры-аспекты - не в счет). Его делить особо смысла нет, равно как нет смысла юнит-тестить его в изоляции.
Аноним 03/05/23 Срд 13:37:34 2687236 238
>>2687230
>Звучит так, будто ты из какого то другого культа, раз спринг так ненавидишь.

Я хз к какому культу я принадлежу. Я просто набил много шишек и сделал для себя выводы.

>Ты объяснил почему моки - хуйня, но не объяснил почему моковая имплементация - тоже хуйня.

Моковая имплементация? Ты про что? Кинь цитату где я говорю про моковую имплементацию?

>абзац с иронией про дидов
Да не, почему? Вообще без иронии. Я ж сказал - даже по сей день практикуют отдельные QA команды с E2E-сьютом. Эта метода обкатана за десятилетия, проста, понятна всем без исключения, и результативна. Ноу оффенс к дидам.
Аноним 03/05/23 Срд 14:03:40 2687257 239
>>2687252
Кто конкретно пишет - не столь уж и важно в контексте разговора.

>Поднять базу тестконтейнерами или контекст через спринг тест не сложно.

Согласен.

>Нахуй ты их приплел - не понятно.

Непонятно? Ну и хуй с ним. Проехали.
Аноним 03/05/23 Срд 14:31:59 2687280 240
>>2687255
А, ты про фейки?

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

>И что ты имел ввиду тут, я тож нихуя не понял. Перефразируй, а лучше пример приведи.

Это надолго. Приведу попозже.
Аноним 03/05/23 Срд 14:38:05 2687288 241
>>2687275
>интеграционные
>Мокают только взаимодействие с внешними системами
И что ты там проверять собрался?
Аноним 03/05/23 Срд 14:39:42 2687290 242
>>2687275
>Для крудов полезнее интеграционные. Они и баги найдут надежнее и писать их немногим сложнее. Обратная связь такая же. Мокают только взаимодействие с внешними системами

Думаю что соглашусь. На самом деле спринг обьективно сам по себе хорош для написания крудов. Правда проблема которую я извечно среди джаванов наблюдаю, заключается в том, что у джаванов зачастую всё - круд. А что не круд, то надо подогнать под круд.

>Юнитами покрывают сложную логику, желательно отделенную от колабораторов и выделенные в чистые функции, чтоб мокать ничего не пришлось

Все верно. Но джава - не хаскель. Чистых функций в ней не существует. Максимум что есть - лямбды и стейтлесс-методы. Более того, в джаве не особо принято лабать программы методов функциональной композиции. Наверно поэтому юнит-тесты настолько ситуативны?
Аноним 03/05/23 Срд 14:40:34 2687291 243
Аноним 03/05/23 Срд 15:17:21 2687355 244
>>2686909
Ты мидл или сеньёр ?
Аноним 03/05/23 Срд 15:25:29 2687372 245
Аноним 03/05/23 Срд 17:22:59 2687480 246
>>2687355
Старший програмист, лол.
Никаких сеньеров в ТК нету. Это все хуйня для порриджей.
Бывают ведущие, старшие и просто программисты.
Аноним 03/05/23 Срд 17:39:33 2687504 247
Аноним 03/05/23 Срд 17:56:05 2687520 248
>>2687504
У нас ещё главные есть.

мимо из Сбера
Аноним 03/05/23 Срд 18:20:36 2687541 249
Что такое полиморфизм в целом ?
Аноним 03/05/23 Срд 18:27:09 2687548 250
>>2687541
Это очень удобный способ создать абстракцию. Правда, профиты от использования полиморфизма прямо пропорциональны сложности его использования для конкретного кейса.
Аноним 03/05/23 Срд 19:26:41 2687599 251
>>2687541
Это когда много мономорфизмов.
Аноним 03/05/23 Срд 20:08:20 2687630 252
>>2687520
Да. И старший разраб = джун без опыта
Аноним 03/05/23 Срд 21:38:10 2687700 253
Аноним 03/05/23 Срд 23:09:29 2687765 254
>>2687630
Ну тебе виднее.
Мимо старший програмист 300к
Аноним 04/05/23 Чтв 08:29:34 2687884 255
Аноны, когда претендуешь на вакансию, где требуется опыт, какой-нибудь пет-проект нужно показывать если код над которым работал нет возможности показать?
Аноним 04/05/23 Чтв 08:32:09 2687886 256
>>2687765
Ты сделал 9 ошибок в слове пиздабол
Аноним 04/05/23 Чтв 09:14:03 2687892 257
Аноним 04/05/23 Чтв 12:39:13 2687969 258
>>2687884
Да, это прописано в трудовом законодательстве
Аноним 04/05/23 Чтв 13:49:16 2688035 259
>>2687884
Где требуется опыт, требуют опыт. А не пет.
Аноним 04/05/23 Чтв 13:59:27 2688049 260
Через 4 дня иду на собеседование на позицию java джуна. В данный момент работаю около года на питоне немного мл, немного бэка.
Сказали, что знать спринг не надо, от меня требуются хорошие знания джавы, sql и общая алгоритмическая подготовка. Если с алгосами и sql у меня все окей, то что бы вы мне посоветовали почитать/повторить по джаве и по sql? Sql юзаю постоянно, но что-то сложнее вложенных запросов и джойнов не писал.
Аноним 04/05/23 Чтв 15:39:19 2688140 261
>>2688049
группировки, explain analyze, оконные функции можешь посмотреть. Уже 2 раза у меня спрашивали что делает HAVING
Аноним 04/05/23 Чтв 15:43:31 2688148 262
>>2688140
Спасибо большое.
>Уже 2 раза у меня спрашивали
Если ты недавно пусть даже давно был на собесе, можешь ещё что-нибудь по джаве написать?
Аноним 04/05/23 Чтв 15:59:16 2688167 263
>>2688148
ну классическое - методы класса Object, зачем нужны equals и hashCode, зачем нужно volatile, что делает synchronized, какие коллекции существуют, какие исключения существуют и в какой иерархии, что такое дедлок, что такое куча и стек.

По гиту - чем merge отличается от rebase
Аноним 04/05/23 Чтв 16:15:37 2688178 264
Аноним 04/05/23 Чтв 17:29:50 2688257 265
Screenshot20230[...].png 165Кб, 1080x2400
1080x2400
Аноним 04/05/23 Чтв 20:22:37 2688473 266
Есть класс который хранит Supplier<T> и поле типа T. Есть список так классов, но с wildcard, потому что надо хранить разные типы. Мне надо в какой то момент взять эту пару и присвоить в поле get от Supplier. Но Java ругается, что я присваиваю ? в ?
Аноним 04/05/23 Чтв 20:37:37 2688485 267
>>2688257
скрин профиля в пульсе кидай, твоя хуйня ничего не доказывает. Да и на сколько я помню в сбере зп приходит не в таком соотношении
Аноним 04/05/23 Чтв 20:40:43 2688491 268
>>2688485
Да, 65% 5 числа, остальное 20.
Аноним 04/05/23 Чтв 20:54:45 2688507 269
>>2688485
Кто тебе сказал что я в сбере.
Я старший програмист в другом банке.
Аноним 04/05/23 Чтв 21:03:57 2688516 270
Аноним 04/05/23 Чтв 21:04:18 2688518 271
>>2688507
Разговор шел про сбер, дебил тупой
Аноним 04/05/23 Чтв 21:26:45 2688539 272
>>2688518
Ты такой грубый потому что безработный?
Или ты главный програмист ИП Говнов за 25к в месяц?
Аноним 04/05/23 Чтв 21:43:13 2688556 273
>>2688539
Да не рвись ты так, Старший Программист. Анон прав.
мимо
Аноним 04/05/23 Чтв 23:38:08 2688649 274
>>2688473
Кидай код, раскурим
Аноним 05/05/23 Птн 01:23:04 2688706 275
По количеству вакансий phyton дишит java в затылок, а с# и с++ в конце списка. Ваши мысли ?
Аноним 05/05/23 Птн 01:30:01 2688711 276
>>2688706
Нам похуй. Проблема в чем?
Аноним 05/05/23 Птн 10:32:40 2688818 277
https://habr.com/ru/articles/733400/
Признавайтесь, кто писал? Я бы подумал на бугаенку, т.к. он алгоритмы не знает, но крудошлеп и паттерны не любит. А бугаенка только рад для каждого метода в классе стринг создавать декоратор
Аноним 05/05/23 Птн 11:40:52 2688872 278
>>2688818
более менее правильно пишет. Очередной наевшийся говна от дяди боба
Аноним 05/05/23 Птн 12:12:20 2688887 279
>>2686814
Тогда нахера ты в сотыгах измеряешь, говна кусок?
Аноним 05/05/23 Птн 12:35:15 2688908 280
Ауфентикацию/авторизацию микросервисного приложения где лучше делать, прямо в API gateway или отдельный микрач под ауф/авто?
Аноним 05/05/23 Птн 12:41:34 2688916 281
Аноним 05/05/23 Птн 12:55:00 2688924 282
>>2688908
И так и эдак делают, оба способа имеют свои достоинства-недостатки. Второй способ - сложнее в реализации, но каноничнее за счет того что гейтвей остается чистым от логики. Как по мне - в жопу такие каноны - они не всегда себя окупают.
Аноним 05/05/23 Птн 12:58:58 2688925 283
>>2688924
>Второй способ - сложнее в реализации
Вот я потому и спрашиваю. Сейчас загуглил как это делается - какое-то перекидывание жвт-токена между сервисами, какие-то фильтры блять, я нихуя даже не смогу понять толком с первого раза. А если в апи-гейтвее все сделать, то все просто как в каком-нибудь монолите.

На рабочей практике какой способ преобладает?
Аноним 05/05/23 Птн 13:01:31 2688926 284
>>2688818
Сука, что за говно... пост выглядит как филиал шизов с этого треда. Я ебал - какой же дегенерат бляяяя.

>Обожаю вот такой код:
>Class Animal{String type, voice(){
>if (type==dog) -> gav,
>elseif(type==cat)->myau
>else->not}
>}

Этот вот кусок - какой то особенный вид самоопозора блять. Челик слишком молод чтобы знать, что именно такой стиль кодинга диды еще в 2000х называли "индусским кодом".
Аноним 05/05/23 Птн 13:03:40 2688929 285
>>2688925
В моей практике - первый. Но у меня своя кухня - в каких нить банках может быть и иначе. Поэтому я и ответил - и так и эдак делают.
Аноним 05/05/23 Птн 16:30:54 2689153 286
>>2688887
Опять подорвало у путинской подстилки
Аноним 05/05/23 Птн 16:31:58 2689154 287
Подскажите пожалуйста, у меня в поле обьявлены ссылоченые переменные, инициализируются они в теле конструктора. Когда сборщик мусора проведёт очистку обьектов в теле конструктора ?
После того как все методы класса выйдут из стека (завершат свою работу) ?
Аноним 05/05/23 Птн 16:33:09 2689155 288
JPA или JDBC?
Аноним 05/05/23 Птн 16:34:07 2689156 289
Аноним 05/05/23 Птн 16:46:59 2689160 290
>>2689154
Ты все неправильно сформулировал, из-за чего у тебя каша в голове.

У тебя - класс. В классе обьявлены поля (аттрибуты) ссылочного типа. У класса - конструктор. У конструктора - агрументы (переменные) ссылочного типа. Переменные и поля - две разные вещи.

Переменные сидят на стеке. Все переменные - и ссылочные, и примитивные. Соответственно, когда вызов конструктора или метода закончится, переменные дропнутся вместе со стекфреймом. Ссылочные переменные - тоже.

Поля сидят в обьектах. И дропаются вместе с обьектом, когда за ним GC придет.

Еще важно понимать, что значение ссылочной переменной/поля - не обьект. Значение ссылочной переменной/поля - ссылка на обьект. Когда ссылочная переменная дропнется, дропнется ссылка на обьект, а не сам обьект.

У GC задача простая - среди всех обьектов в памяти найти те, на которые не указывает ни одна ссылка, и дропнуть. GC насрать на конструкторы, методы и фреймы, он работает на графе обьектов, параллельно и независимо от самой программы.

>Когда сборщик мусора проведёт очистку обьектов в теле конструктора ?

Если ты понял все вышеописанное, должен понимать теперь, что в конструкторе нет никаких обьектов. Есть только ссылки на обьекты.Сами же обьекты, на которые ты ссылаешься из конструктора, дропнуться тогда же, когда и все остальные. Когда на них не останется ни одной ссылки.
Аноним 05/05/23 Птн 16:47:06 2689161 291
Аноним 05/05/23 Птн 16:49:42 2689165 292
>>2689154
>Когда сборщик мусора проведёт очистку обьектов в теле конструктора ?

Тебя это ебать не должно. Если хочешь попердолиться с памятью, выбирай другой язык. Это во-первых. Во-вторых, очищается не тело конструктора, а хип(куча), где хранятся все объекты. А объект оттуда удаляется, когда на него нет ссылок при обходе графа объектов от вершины.
Аноним 05/05/23 Птн 17:06:14 2689185 293
Аноним 05/05/23 Птн 17:12:39 2689195 294
Аноним 05/05/23 Птн 17:14:17 2689197 295
Если здесь сидят люди, которые знаю С++. Ваши мысли ?
Аноним 05/05/23 Птн 17:31:54 2689217 296
>>2689197
Моя мысль - очередной залетыш не может сформулировать вопрос
Аноним 05/05/23 Птн 17:32:07 2689219 297
>>2684226 (OP)
>Программирование — это не столько про анальное крудошлёпство, сколько про стиль мышления
Это ковыряние в конфигах, статьях, туториалах и документации. Всё.
Аноним 05/05/23 Птн 17:35:18 2689224 298
Аноним 05/05/23 Птн 17:49:24 2689234 299
>>2688257
Что за убогий дизайн приложения? Напомни банк, чтобы я им никогда не пользовался
Аноним 05/05/23 Птн 17:50:13 2689235 300
>>2689197
>Ваши мысли
Трахаться трахаться трахаться
Эх щас бы тяночку...
Дрочить дрочить дрочить


Весна хуле
Аноним 05/05/23 Птн 18:09:17 2689254 301
Призываются диды, которые писали на джаве ещё до появления дженериков. Вы пользовались коллекшен фреймворком без дженериков?
Аноним 05/05/23 Птн 18:25:13 2689269 302
>>2689254
Нет здесь иаких дедов. Они кастовали Object в нужные типы, очевидно.
Аноним 05/05/23 Птн 18:51:55 2689288 303
>>2689254
в настолько далекие времена жаба была слишком хипстерской и сырой, типа го на взлёте. В те времена были делфи, плюсы, фокспро, визуал бейсик, файрберд
Аноним 05/05/23 Птн 19:09:13 2689324 304
Есть тут те, кто писал на джаве еще до появления jvm?
Аноним 05/05/23 Птн 19:10:43 2689326 305
Есть тут те, кто писал на джаве еще до появления кроссплатформенного дотнета?
Аноним 05/05/23 Птн 19:11:10 2689327 306
>>2689324
>>2689326
Не смешно, уёбывай туда, откуда припёрся.
Аноним 05/05/23 Птн 19:13:53 2689329 307
>>2689327
Я всегда тут был, ещё до появления джава-треда.
Аноним 05/05/23 Птн 19:14:12 2689330 308
Есть тут те, кто писал на джаве?
Аноним 05/05/23 Птн 19:15:07 2689332 309
>>2689288
Ну я слышал от одного пердуна, что во времена появления 8 жабы он попал на легаси с 1.4. Но охуительных историй не припомню.
Аноним 05/05/23 Птн 19:15:54 2689334 310
>>2689330
Я какал на джаве. Прямо в репозиторий проекта. И что ты мне сделаешь?
Аноним 05/05/23 Птн 19:19:28 2689339 311
>>2689332
5 жаба всегда была стандартом. Потом еле еле переползли на 8. На 11 сейчас только самые модные молодежные сидят
Аноним 05/05/23 Птн 19:21:01 2689341 312
>>2689339
Я сижу на 20 жабе. Каждую новую версию посщу отчёт в этом треде о переносе всей галеры на новую жабу.
Аноним 05/05/23 Птн 19:24:19 2689346 313
>>2689339
Перевели с 11 на 17 почти год назад. После выхода 21 тоже дадут где-то через месяц все перевести.
Вот со спрингбутом 3 есть некоторые сложности.
Аноним 05/05/23 Птн 19:55:20 2689388 314
Сталкивались ли вы с плохой аналитикой на проекте?
Аноним 05/05/23 Птн 20:02:13 2689395 315
>>2689388
да. Когда спрашиваешь аналитика, а он говорит что смотри в документации (неизвестно какой, какой версии и где находится). Или говорит что не отвлекайте меня
Аноним 05/05/23 Птн 20:07:27 2689404 316
>>2689395
Повезло, у тебя хотя бы есть документация
Аноним 05/05/23 Птн 20:08:48 2689408 317
А я всегда пишу документацию для своего кода. Каждый коммит с новой фичей = правка в вики.
Аноним 05/05/23 Птн 20:09:42 2689409 318
Есть тут те, кто писал в штаны?
Аноним 05/05/23 Птн 20:16:41 2689416 319
>>2689388
Если приходится напрямую задавать вопросы кабану в обход аналитиков, рисовать блок-схемы и строчить письма с подробным описанием процессов, и всё в довесок к написанию кода, это считается?
Аноним 05/05/23 Птн 20:33:49 2689429 320
>>2689346
>Перевели с 11 на 17 почти год назад
>После выхода 21 тоже дадут где-то через месяц все перевести.

>>2689341
>Я сижу на 20 жабе

JAVA 20
@
КОД ПРОЕКТА НА JAVA 8
@
НИКАКИХ НОВЫХ ФИЧ ЯЗЫКА
@
ТЕБЕ ЧТО-ТО НЕ НРАВИТСЯ, СЫЧЕВ?
@
ВОН ЖЕ ДВАДЦАТАЯ ЖАВА!
@
И ЧТО, ЧТО ТОЛЬКО ВЕРСИЯ JVM ИЗМЕНИЛАСЬ?
Аноним 05/05/23 Птн 20:37:11 2689435 321
>>2689416
Мне кабаныч наоборот говорит по процессам уточнять у аналитиков, тип он сам хз как правильнее в некоторых моментах с точки зрения бизнеса
Аноним 05/05/23 Птн 20:37:52 2689437 322
Аноним 05/05/23 Птн 20:39:04 2689438 323
>>2689339
>сейчас только самые модные молодежные сидят
в местах не столь отдаленных?
Аноним 05/05/23 Птн 20:40:35 2689440 324
>>2689429
Ты ёбнутый? Активно пользуюсь плюшками новых жаб.
Аноним 05/05/23 Птн 20:45:06 2689443 325
>>2689440
Да брось. Ну какие там плюшки? В основном какие-то локальные улучшения самой JVM, а сам синтаксис языка практически не изменился с Java 8. Большинство вакансий заманивает Java 17-20, а на деле там JVM 17-20, а синтаксис Java 8.
Аноним 05/05/23 Птн 20:50:28 2689445 326
>>2689443
Многострочники, рекорды, Stream.toList().
Фич мало, но юзаю активно
Хотел еще паттерн матчинг заюзать но он в превью. На 21 заюзаю.
Аноним 05/05/23 Птн 20:52:20 2689448 327
>>2689443
Че ты до челика доебался, болезный, че доказать то пытаешься? Да большинство джаванов если и стремятся переехать на джаву 17+, то только ради того, чтобы varы лабать, что уже нифига не Java 8 экспириенс

мимо
Аноним 05/05/23 Птн 21:04:17 2689455 328
>>2689448
>varы лабать
А зачем? Везде где я работал/проходил собеседование прямо говорили, что эта фича (и еще несколько других) запрещены на уровне линтера/чекстайла, т.к. команда поддерживает старую версию своего говна на доисторической жаве куда регулярно льет фиксы. Либо из-за личных предпочтений эти фичи банятся в проекте.
Аноним 05/05/23 Птн 21:28:53 2689472 329
Аноним 05/05/23 Птн 21:53:06 2689499 330
>>2689478
пишу в общий чат что дескать аналитик отказывается отвечать и подскажите кто знает
Аноним 05/05/23 Птн 22:01:27 2689507 331
>>2689485
Зато функционально написано! Бугаенко лайк поставит. А так вообще хватит отсутствия реактивного драйвера jdbc, чтоб вебфлакс похоронить по производительности
Аноним 05/05/23 Птн 22:15:06 2689515 332
Когда нахуй val введут.
Хуле var сделали а val нет.
Аноним 05/05/23 Птн 22:16:30 2689517 333
Аноним 05/05/23 Птн 22:19:03 2689518 334
>>2689517
А хуле не сделали на уровне языка то блядь?
Никаких сложностей добавить val нет. Но хуй.
Аноним 05/05/23 Птн 22:35:57 2689523 335
В андроид треде не отвечают вечно, пишу здесь. Почему когда я запускаю Android studio, память на диске C:/ падает на 2 гигабайта ?
Аноним 05/05/23 Птн 22:51:13 2689537 336
>>2689523
Думаешь, это проблема самого андроид-треда, что андроид-разрабы там не сидят? А вот хуй, в /pr/ андроид вообще никому не всрался, в каком треде ни спрашивай.
Аноним 05/05/23 Птн 22:57:13 2689545 337
>>2689537
Точно не в жяватреде это спрашивать надо.
Ведропидоры давно на кокотлине, реакте или флуттере.
Жява это бекенд онли.
Аноним 05/05/23 Птн 23:00:47 2689548 338
>>2689545
Не пизди, ведройд на 60% это жаба.
Аноним 05/05/23 Птн 23:15:51 2689555 339
>>2689548
Ну тебе знатоку виднее
Аноним 05/05/23 Птн 23:27:45 2689563 340
>>2689555
Ну тебе пидорасу тоже
Аноним 06/05/23 Суб 00:24:31 2689593 341
>>2689507
Бля, вот че меня перманентно забавляет в бугаенко-фагах (похуй - флюродросеры, хейтеры...) - они так любят пиздеть за бугаенку, до слюней иной раз, но при этом нихуяшеньки не знают, о чем он был.

Бугаенко лайк поставит, ага. Да он хейтит все что больше 4х методов, считает флюент-апи антипаттерном. Какой в жопу вебфлакс, лол.
Аноним 06/05/23 Суб 00:25:23 2689594 342
>>2689518
Каждое новое ключевое слово - риск сломать обратную совместимость. Если можно ключевое слово не вводить, его не будут вводить. Вот и все.
Аноним 06/05/23 Суб 00:38:04 2689605 343
>>2689455
>Везде где я работал/проходил собеседование
>Либо из-за личных предпочтений эти фичи банятся в проекте.

Ты - банкир-амстердамец что ли? Где ты нашел такую концентрацию пердунов на квадратный метр?
Аноним 06/05/23 Суб 08:03:51 2689712 344
Вопрос опытным джавистам, желательно тем, кто понимает в архитектуре и принимает решения по ней для новых проектов. Возник спор и нужно объективное мнение незаинтересованных в споре лиц.

Есть задача написать прогу для хранения данных, для исследовательского сервиса для краткости буду называть её просто база данных или ява. Основная цель сохранять измерения с разных приборов. Вторая задача по этим замерам можно создавать исследования, которые хранят в себе выбранные замеры и результат. Расчёт результата исследования данной бд не предусмотрен, предполагается его загрузка извне (не важно откуда, хоть из текстового файла). Есть и более специфический вид исследования, результат которого можно получить из сторонней программы написанной на питоне.

Дано несколько вариантов взаимодействия базы ява и приложения на питоне.

1. Использовать питон приложение как апи, которое вообще ничего не знает о ява базе данных, а ява часть как клиент этого апи, т.е. ява из бд собирает все необходимые данные и отправляет в питон апи, а из апи отправляется ответ, который база данных сохраняет как результат. Возможный минус - перегонка данных между базой и апи, насколько критично? Какие объемы пересылаемых данных будут тормозить систему?

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

3. Питон не просто забирает данные для расчетов по ид исследования из базы. А сам формирует это исследование, при этом ява уже не умеет создавать исследования и по сути умеет только загружать замеры. Как в этом случае меняется связанность?

Какой из этих трёх вариантов вы бы выбрали и почему? Какие плюсы-минусы видите в каждом из них? Выбрать нужно так чтобы можно было сделать масштабируемое приложение под разных бизнес клиентов. Важный нюанс - специфическое исследование по которому результат считает питон, для некоторых вообще может не пригодиться, а вот базовые более универсальные исследования могут быть нужны почти всем.
Аноним 06/05/23 Суб 08:28:12 2689714 345
>>2689485
>У НАС WEBFLUX
Проиграл в голосину с команды, где один "сеньор" нарыдал у лида и затащил в проект вебфлукс. Старательно переписывал проект на протяжении полугода. В конце даже презентовал свои жалкие потуги. Я его спросил про нагрузку и мотивацию, а тот сказал, что не тестировали производительность до и после, а сам сервис вообще не нагруженный и туда ходит полтора анонимуса.
Аноним 06/05/23 Суб 09:15:50 2689728 346
>>2689712
Перечитал два раза.
И нихуя не понял причем тут жява. То что ты описал можно сделать на любом нормальном языке.

Твое жяваприложение звучит как обычное олап хранилище.

Есть стрим пишуший входные данные. Есть пайплайн берущий эти данные, обрабатывающий в стороннем приложении и пересохраняющий в ту же базу.

То есть бд может быть любой(у тебя явно не террабаты входных данных). Коннектор входящего стрима можно сделать на чем угодно(если у тебя прогружаются csv с приборов измерения). А ETL можно сделать в любом ETL инструменте.

Хоть у тебя и явно обьемы не большие, советую разделить хранилища сырых и обработанных данных.
Аноним 06/05/23 Суб 09:19:36 2689734 347
>>2689728
Бля. Недописал про разделение.

Короче сырые данные хранишь в колоночной БД.
Обработанные в обычной реляционке.
Аноним 06/05/23 Суб 09:35:50 2689741 348
>>2689734
Спасибо за ответ, но вопрос был другой.

Есть база данных, пишется приложение ява со своей бизнес логикой, которое изначально являлось единственным пользователем бд сохраняло в нее измерения и создавало исследования. Имеется питон приложение делающее расчёты для специфического исследования в том ява приложении. Возник вопрос на каком уровне из трёх выбранных наладить взаимодействие между явой и питоном, и почему.
Аноним 06/05/23 Суб 10:25:48 2689766 349
>>2689741
Тогда по пунктам.
1. У тебя настолько большие входные данные для расчета чтоб об этом париться? Делаешь асинхронный апи у питона. Интеграцией из жявы его дергаешь.
2 и 3. Давать доступ стороннему приложению в основную бд? Ну хуй знает. Если бизопаснеги разрешают - то 3 вариант. Скинул тип расчета и параметры одним запросом и пусть оно считает.
Аноним 06/05/23 Суб 10:31:34 2689772 350
А вариант переписать питухонокод на жявку и добавить в основное приложение не вариант?
Аноним 06/05/23 Суб 10:35:06 2689773 351
помню делал чтение бинарных данных в жабе. ОЧЕ напрягает что нет беззнаковых типов, приходилось брать следующий тип.
И свой собственный сервер через сокеты, тоже прикольно
Аноним 06/05/23 Суб 11:08:19 2689784 352
>>2684226 (OP)
https://www.youtube.com/watch?v=ZhWOlaMqppM

Егорке нужно отдать должное. По сути это микрочелик без какого-то реального опыта, но с раздутым ЧСВ. При этом он как-то пролез в хуавей на позицию менеджера и даже смог пропихнуть свой язык программирования. Временами пишут херочки из хуавея и зовут либо пилить Apache Flink, либо разрабатывать плагин для IDE к внутреннему языку программирования.
Аноним 06/05/23 Суб 12:08:52 2689817 353
Аноним 06/05/23 Суб 13:21:01 2689876 354
>>2689766
Получается что это питон приложение оно стороннее в плане обособленности, но пишется той же командой разрабов, так что безопасники не проблема, вопрос лишь в том в какой из этих трех вариантов завиимость между явой и питоном становятся выше и насколько это хорошо или плохо.

>>2689772
Да, думали переписать код с питона на яву, но по некоторым оценкам это лишний головняк, да питон как я понимаю под такие задачи лучше заточен. Ну и изначально он должен был быть как апи, но вот поступили предложения по изменению взаимодествия между ними.
Аноним 06/05/23 Суб 13:40:40 2689887 355
Аноны, как правильно напиздеть, что у тебя уже был года опыта для вката на джунскую вакансию? Я думаю сказать, что делал интернет-магазы для пары-тройки местных кабанов не вкатит, так как нет микросервисов и всяких кафок. Сказать что работал на галере? Они будут проверять существование несуществующей галеры? Создать телегу тим-лида и дать ее в случае чего и с нее если что давать себе рекомендации?

Что вообще должен знать вкатун, пытаясь влезть на вакансию с опытом, чего он скорее всего не знает? Ну типа там, как происходит общение в команде, через какой мессенджер... Какие-нибудь такие вопросы. Подскажите, аноны, уже на днях буду выдумывать себе резюме.
Аноним 06/05/23 Суб 14:11:41 2689906 356
>>2689887
Тебя обоссут на собесе за такое.
Лучше не пытайся наебывать.

Я например бы просто спросил - как деплоил приложение. И тут у тебя полные портки.
Аноним 06/05/23 Суб 14:15:40 2689909 357
>>2689906
>как деплоил приложение
Нас было трое, я отвечал за бэк, другой чел за фронт, третий, главный типа у нас, кабан был его знакомым, он и деплоил. Как - я хз. На галере тоже не я деплоем занимался.

Такой не прокатит ответ? Если нет, в каком направлении правильно врать?
Аноним 06/05/23 Суб 14:16:15 2689910 358
>>2689906
>>2689909
Не врать смысла нет. Джуны без опыта нахуй не нужны, вот и все.
Аноним 06/05/23 Суб 14:18:42 2689913 359
>>2689909
Не прокатит.
От типа деплоя зависят конфиги да и сам стек/либы.
>>2689910
Если они не требуют сотку то их берут и без опыта
Аноним 06/05/23 Суб 14:40:37 2689934 360
>>2689913
Я прошу 25к, и что-то почти месяц уже нихуя, ни разу никуда не пригласили, вакансий без опыта практически нет.
Аноним 06/05/23 Суб 15:06:15 2689947 361
Аноним 06/05/23 Суб 16:12:36 2689993 362
Аноним 06/05/23 Суб 16:14:19 2689997 363
>>2689906
>как деплоил приложение
заходил в админку томката и загружал варник. Пойдёт? Я так и делал боевую приложуху с несколькими тысячами онлайн
Аноним 06/05/23 Суб 16:17:23 2690000 364
>>2689934
я у себя знаю помойную контору, у них лимит 50к и соответственно работать к ним идут только нулевые джуны. Работа в офисе, с 9 до 6, график уборки, стулья за 1к, древние компы, мигающие люминисцентные лампы, плотная набивка в офисе. Всё по классике. Поищи, может и у тебя такое есть
Аноним 06/05/23 Суб 17:36:12 2690096 365
>>2689906
Мерджил пр в дев. Всё. Эту лабуду за нас сделал девопс, подхвативалось дженкинсом само, получая нотфий что в дев что-то изменилос.
Аноним 06/05/23 Суб 18:56:39 2690187 366
>>2689906
>как деплоил приложение
у меня джоба в дженкинсе для этого есть насколько я понимаю, как там все это девопсы устроили я вообще не ебу, максимум нажимаю билд с параметрами и все автоматом деплоится
Аноним 06/05/23 Суб 19:37:39 2690232 367
Аноним 06/05/23 Суб 20:40:55 2690308 368
>>2689784
>без какого-то реального опыта

У него опыта то как раз поболе местных среднестатистических задротов будет. Он до того как в 2017м вылез на конфы, полмира объездил, работал и в Европе и в Штатах. Продолжительное время жил в Калифорнии, где мутил стартап по своим правилам (teamed.io).
06/05/23 Суб 23:43:44 2690413 369
>>2690308
Ага, и везде обосрался. Егорка забанен на ВСЕХ конфах, это буквально дегенерат, пока ещё наебывающий китаез, которые не поняли, кто он. Всё люди из рф хуавея, которых я собесил, и которые работали с ним - отзывались о нем как о гниде и очень слабом специалисте.

По сути, когда китайцы поймут, что наняли токсичного мошенника и турнут его - Егорка отправится по помойкам, он сейчас буквально во всех чёрных списках, что есть.
Аноним 07/05/23 Вск 00:15:54 2690427 370
>>2688926
Его ещё хабрамакаки плюсуют активно.
Аноним 07/05/23 Вск 00:17:00 2690428 371
>>2690413
>Егорка забанен на ВСЕХ конфах
Как будто показатель чего-то, лол.
Аноним 07/05/23 Вск 00:20:29 2690429 372
>>2688818
С чем-то согласиться можно, полиморфизмом очень легко переборщить и сделать StrategyStrategy и по 30 минут искать, откуда начинать читать. Недавно пришлось дебажить бугаенковый код, я тогда знатно подохуел.
Аноним 07/05/23 Вск 01:02:24 2690444 373
>>2690413

>Ага, и везде обосрался
Ну и что? Он хотя бы пробовал, что-то делал. При всех его обсерах он все равно на голову выше и уважаемее среднестатистического омежки-анальника.

>Егорка забанен на ВСЕХ конфах

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

>По сути, когда китайцы поймут, что наняли токсичного мошенника

Он давно у хуявее, несколько лет уже. И все это время - на топовых позициях.
Аноним 07/05/23 Вск 06:55:12 2690513 374
>>2686402
Ну так просвяти, а не выёбывайся.
Аноним 07/05/23 Вск 07:01:44 2690518 375
Аноним 07/05/23 Вск 10:02:49 2690551 376
Аноним 07/05/23 Вск 10:20:12 2690558 377
>>2690551
Да не плачь ты так, крудошлёп-спрингоёб.
Аноним 07/05/23 Вск 11:10:48 2690575 378
Какой фреймворк учить для фронтенда? Бэк написал, но не знаю как сделать фронт к нему, чтобы не было "срала-мазала".
Аноним 07/05/23 Вск 12:12:45 2690605 379
>>2690551
Ну вот это типичный бугаенкохейтер. Самое натуральное чмо. Кому Бугаенко неинтересен или противен - тот давно уже заблэклистил его и забыл. А чмо будет и дальше заниматься бесплатным раздуванием известности Бугаенко. Которому по большому счету похуй что в негативном ключе. Он смеётся над такими как ты.
Аноним 07/05/23 Вск 12:26:11 2690614 380
>>2690605
https://www.youtube.com/watch?v=ouYq6Ci3Ugk

Проиграл с тебя. У меня был знакомый, который молился на Егорушку и дрочил на его книжку. На вот лучше посмотри как бедолаги питчат идею булочной
Аноним 07/05/23 Вск 12:33:17 2690618 381
>>2690605
Любо-дорого наблюдать как егорка рвется от одного скромного посыла нахуй. Ты привыкай, теперь это навсегда.
Аноним 07/05/23 Вск 12:49:13 2690639 382
Поясните что такое API GATEWAY? Это микросервис, у которого контроллер с урлами, на которые обращается клиент, а он уже с другими микрачами коммуникацирует и решает задачи?
Аноним 07/05/23 Вск 13:14:33 2690663 383
Аноним 07/05/23 Вск 13:15:06 2690664 384
Аноним 07/05/23 Вск 13:26:35 2690680 385
>>2690614

Никогда я на него не молился. Его фолловить - на самом деле это как двач читать. Феномен Бугаенко крайне забавен. Казалось бы - втирает какую то дичь. И тем не менее год от года собирал полный зал народу на своих докладах. Я частый ходок на конфы от jugru - видел сей феномен своими глазами. И даже посравшись с Барухом на почве какой то семитской дискуссии (не помню какой), даже посравшись с хохлами на почве признания их проплаченной "революции достоинства", и получив из за этого бан на всех конфах, он не отчаялся и замутил свою конфу. И нормально прошла кстати, сотыгу людей собрал.

Я его не оправдываю, я бы мог назвать за ним такие огреги, за какие его наверное присадить можно было бы. Но на его фоне хейтеры - один хуй плесень блеклая. Лицемеры, анальники, дауны. Наверное я просто заебался иметь дела с этой ебаной плесенью за годы стажа, и Егор стал альтернативой. Но как же потешно наблюдать как их всех корежит от злости).
Аноним 07/05/23 Вск 14:17:35 2690742 386
b2fa1cdcbe1d72c[...].jpg 211Кб, 638x1024
638x1024
Аноним 07/05/23 Вск 16:11:39 2690904 387
Почему в книгах по джава кор не пишут про мавен? Тратишь полгода на изучение, а потом узнаёшь, что надо всё писать через мавен.
Аноним 07/05/23 Вск 17:55:25 2691024 388
>>2690904
Может, в книгах по кору ещё и про спринг рассказывать? Кор на то и кор, что сторонних библиотек нет.
Аноним 07/05/23 Вск 18:00:17 2691035 389
>>2689906
Ну у нас на дев контур деплоится, когда мр из фича ветки в дев ветку мерджит ответственный за сервис. Пайплайн gitlab-ci настроен.
Как происходит деплой на другие площадки не знает никто из джунов и часть мидлов тоже не знает.
Скрипты для ci даже для деплоя на дев лежат в отдельном репозитории, к которому доступ есть не у всех.
Так что джун даже если бы хотел разобраться как что деплоится, то не смог бы.
Так что тут не так и сложно спиздеть.
Аноним 07/05/23 Вск 18:05:57 2691041 390
>>2690664
Это не фронт же, а какая-то затычка для отладки вроде постмана.
Чаще встречаю в связке с джавой - это Ангуляр или Реакт.
Аноним 07/05/23 Вск 18:08:09 2691047 391
>>2691024
Почему в книга по сишарпу рассказывают про консольную утилиту dotnet? В книга по голангу - про утилиту go? В книга по РНР вообще рассказывают как развернуть Апач?
Аноним 07/05/23 Вск 18:14:59 2691057 392
>>2691047
Так это встроенные утилиты. А мавен к жабе никакого отношения не имеет.
Тем более достаточно популярная альтернатива - грудель.
И ты на поверхностном уровне должен будешь знать оба. Потому что в литературе по спрингу и библиотекам встречается и то и другое.
Ну и видел я книги по жаве, где есть про мавен. От епама была с автором со смешной фамилией.
Аноним 07/05/23 Вск 18:15:14 2691058 393
>>2691041
Нах те фронт? Повыебываться или показать что бэкенд работает?
Аноним 07/05/23 Вск 18:17:11 2691061 394
>>2691047
Ты просто необразованный еблан, который не шарит в программировании. В JDK есть javac - компилятор языка Java. Если тебе система сборки нужна, то у тебя выбор начиная с Ant, заканчивая Maven, Gradle и даже Bazel. Не говоря про какой-нибудь SBT, которым тоже можно собирать джава код. А ты обыкновенная узколобая ослица, которая кое-как осилила сишарп и зазубрила входящую в поставку утилиту для сборки проектов.
Аноним 07/05/23 Вск 18:18:54 2691065 395
>>2691061
Где то видел, как через make собирали жаба код. Учебник что-ли какой или туториал из начала нулевых.
Аноним 07/05/23 Вск 18:20:54 2691067 396
>>2691061
>то у тебя выбор начиная с Ant, заканчивая Maven, Gradle и даже Bazel. Не говоря про какой-нибудь SBT, которым тоже можно собирать джава код
Но если ты выбираешь что-то кроме Maven и иногда Gradle - ты конченый и общаться с тобой не стоит.
Аноним 07/05/23 Вск 18:21:01 2691068 397
>>2691047
Потому что dotnet и go идут в шарпе и Go из коробки, и там это единственный способ управления проектом. А мавена, который в джаве только один из многих, из коробки нет, есть только java, javac и jar.
Пыху учат с одной только целью - по-быстрому наклепать сайт, так что там могут рассказать и про базы ланных, и про вёрстку на HTML, и про линукс.
Аноним 07/05/23 Вск 18:23:02 2691072 398
>>2691058
У меня проект для портфолио - это сайт на джаве, но как может быть полноценный сайт без фронта?
Аноним 07/05/23 Вск 18:23:23 2691076 399
>>2691067
Но ты сам ничего не выбираешь, а работаешь с тем, что есть.
Да, наверно в 70% это будет мавен, еще в 25% грудел, и лишь в 5% оставшихся что-то еще.
Аноним 07/05/23 Вск 18:25:42 2691078 400
>>2691072
Никто портфолио не смотрит. Портфолио - миф вкатунов, работодателям похуй на ваши однотипные вкатуские проекты.
Аноним 07/05/23 Вск 18:27:32 2691082 401
>>2691078
У меня реальный проект. Я его писал на РНР 10 лет назад, а сейчас переписал на джаве и осталось фронт добавить.
Аноним 07/05/23 Вск 18:28:37 2691083 402
>>2691072
Тебе не нужен для портфолио полноценный сайт. Это никто не оценит.
Изучение жс у тебя займет месяц, с фреймворком - 2. В работе тебе фронт не пригодится никогда, если это не совсем помойная галера, куда нанимают жавистов и заставляют их заниматься "фулстеком".
Вариант с голой апишкой со сваггером самый верный. Он может научить тебя абстрагироваться.
Если очень хочется потрогать проект самому, то рекомендую писать просто на голом жс с fetch-api и голым же жс отрисовывать и чистить дом дерево.
Аноним 07/05/23 Вск 18:30:20 2691085 403
>>2691076
> Но ты сам ничего не выбираешь
Авторам книг по кору всё равно, учишь ли ты джаву с целью продать свою жопу подороже или чтобы писать свои проекты без мавена. Поэтому рассказывают только только базу, которая одинакова для всех.
Аноним 07/05/23 Вск 18:31:43 2691088 404
>>2691082
Так портфолию или реальный проект? Ты путаешься в показаниях.
Выбирай любой фреймворк. Для жабы вообне никакой разницы что на фронте. У нас был и вью и реакт и ангуляр.
Аноним 07/05/23 Вск 18:32:25 2691090 405
>>2691082
Тогда последуй в JS-тред и консультируйся там. Джаве похуй, что там на фронте, хоть реакт, хоть мобилки, хоть экзешник на C++.
Аноним 07/05/23 Вск 18:37:48 2691104 406
>>2691085
Ну я поддерживаю их в этом. Вот Хорстманн. Это 2к страниц инфы по джавакору. А выкинуть оттуда можно разве что swing. Да и то он там есть на самом деле, потому что на примерах с гуем многопоточка лучше всего объясняется новичку.
И там написано как собрать проект с библиотеками вручную через java jar с параметрами.
И сколько тогда нужно страниц, чтобы и основы мавена туда впихнуть? 3к?
Ну а если зайти на торренты и поглядеть видеокурсы по джавакору, то там в половине будут основы мавена.
Аноним 07/05/23 Вск 18:38:44 2691105 407
>>2691090
На фронте - виндовый клиент на сишарпе.
Аноним 07/05/23 Вск 18:39:09 2691106 408
>>2691090
На фронте - виндовый клиент на сишарпе.
Аноним 07/05/23 Вск 18:42:22 2691109 409
>>2691105
А что если сделать фронт на Блейзоре из дотнета? Каковы шансы получить оффер?
Аноним 07/05/23 Вск 18:50:08 2691124 410
>>2691109
Если еще на собесе рассказывать, что помойная джава так не может, то 146%
Аноним 07/05/23 Вск 18:55:17 2691130 411
Аноним 07/05/23 Вск 18:59:00 2691136 412
>>2691083
>если это не совсем помойная галера
А есть шансы устроится куда-то ещё?
Аноним 07/05/23 Вск 19:02:11 2691142 413
>>2691136
Далеко не каждая помойная галера заставляет заниматься фулстеком, но почти все галеры, которые жависту подсовывают фулстек - помойные.
Помойных галер и без фронта на тебя хватит.
Аноним 07/05/23 Вск 19:06:04 2691146 414
Аноним 07/05/23 Вск 19:10:42 2691151 415
>>2691067
Скажи это Гуглу или Яндексу, лол.
Аноним 07/05/23 Вск 19:11:20 2691153 416
>>2691146
Блейзор реально запихивает CLR в браузер и потому получается аналог SPA-приложений, а Ваадин обрабатывает все запросы на стороне сервера, типа нажал кнопку - летит запрос на сервак, а потом в обратку обновление формы.
Аноним 07/05/23 Вск 19:21:03 2691170 417
ubyteinternet.jpg 12Кб, 279x178
279x178
>>2689773
Можно написать свой класс для работы с беззнаковыми целыми.
Аноним 07/05/23 Вск 19:25:47 2691174 418
>>2691170
чот не понял код. Зачем переводить в byte если byte тоже знаковый?
Аноним 07/05/23 Вск 19:28:11 2691179 419
>>2691174
byte - это компактный контейнер для хранения данных (к примеру, огромный массив на 100500 мегабайт), а int для вычислений (джава всё равно все операции к нему кастит).
Аноним 07/05/23 Вск 19:47:12 2691202 420
>>2691153
Блейзор разный бывает, есть Blazor Server, который работает как Vaadin.
Аноним 07/05/23 Вск 19:48:14 2691204 421
1. Пишешь бэк на джаве
2. Пишешь фронт на шарпе
3. Профит
Аноним 07/05/23 Вск 19:48:48 2691205 422
>>2691202
>Блейзор разный бывает
мне пожалуйста вишневый
Аноним 07/05/23 Вск 20:04:14 2691223 423
>>2691151
Че ты этим высером хотел сказать? Что одни, что другие говноделы ебаные, которые хоть какой-то вес в сфере технологий имеют из-за того, что монополисты среди поисковиков.
Аноним 08/05/23 Пнд 01:17:31 2691551 424
>>2691204
Зачем? Я не думаю, что на петушарпе больше тулзов для вебфронтоёбства. Он также непригоден для него, как и джава.
Аноним 08/05/23 Пнд 01:36:57 2691554 425
>>2691179
Опять создатель ГЦ для мапов вылез
Аноним 08/05/23 Пнд 01:58:33 2691558 426
>>2691554
Он много лет тут бегает, то клон MessageFormat напишет, то очередной рейтрейсер, то эмулятор 8-битных ЭВМ, и всё время жалуется на отсутствие беззнаковых типов. Шарп не приемлет, ведь он же только для винды.
Аноним 08/05/23 Пнд 02:04:36 2691560 427
image 12Кб, 395x232
395x232
>>2691554
Нет, это не я. У меня новый UI в идее.
Аноним 08/05/23 Пнд 02:07:04 2691562 428
>>2691170
Тут разве не должны теряться данные при числах, больших максимального значения знакового byte, но меньших максимального значения знакового?
Аноним 08/05/23 Пнд 02:07:27 2691563 429
>>2691562
>но меньших максимального значения беззнакового
Быстрофикс.
Аноним 08/05/23 Пнд 02:13:20 2691564 430
>>2691558
Шиз, это разные люди. Ты бы еще маминого долбоеба с листом сюда приплел.
Аноним 08/05/23 Пнд 02:44:23 2691578 431
Есть у меня монолитный проект на Spring Boot с подключением к БД (MySQL). Верно ли я понимаю, что просто Dokerfile не подойдет, а необходимо делать ещё Docker Compose, т.к. БД это отдельный сервис?
Аноним 08/05/23 Пнд 02:55:07 2691581 432
Аноним 08/05/23 Пнд 03:38:52 2691586 433
>>2691564
Нет, шиз, это один и тот же человек.
Аноним 08/05/23 Пнд 03:41:39 2691587 434
>>2691578
Можешь собрать единый докер-образ на несколько гигов, в котором будут и джава, и СУБД, и кафка, и редис, и небо, и аллах.
Аноним 08/05/23 Пнд 03:54:25 2691588 435
>>2691578
Ничего не понял, чего надо то? Финальный вариант в работу запустить? Наструячь ансибловых портянок и деплой на сервер свой монолит, бд на соседнюю железку и сеть настрой. БД в докере тебе будет примерно в два с половиной раза медленнее работать.

Для тестов похуй, собирай один образ и без композов.
Аноним 08/05/23 Пнд 03:56:46 2691589 436
>>2691588
А вообще для тестов должна уже быть готовая тест-среда в вм, где все уже включено и развернуто (можно и композом), тебе только новую сборку надо задеплоить и включить тесты
Аноним 08/05/23 Пнд 07:54:28 2691631 437
d64acd00877a001[...].jpg 67Кб, 400x400
400x400
>>2691558
Сейчас вообще нет нормальных языков для написания эмуляторов 8-битных ЭВМ. Хоть свой пиши.
Аноним 08/05/23 Пнд 08:39:01 2691648 438
Ебать в треде надменное токсичное чмо сидит. Небось в каком-нибудь говнояндексе за половину от рыночной зп пашет и выплескивает ненависть за то, что его развели как лоха, на окружающих.
Аноним 08/05/23 Пнд 09:02:16 2691657 439
>>2691648
Ещё инфой по Спрингу ни с кем не делится
Аноним 08/05/23 Пнд 09:39:58 2691672 440
Аноним 08/05/23 Пнд 11:34:01 2691770 441
ubyteout.jpg 5Кб, 101x142
101x142
ubytetest.jpg 45Кб, 552x204
552x204
>>2691562
Нет, ничего не теряется
Аноним 08/05/23 Пнд 12:37:46 2691831 442
>>2691578
Docker задеприкейтили. Теперь учи podman.
Аноним 08/05/23 Пнд 19:25:26 2692255 443
Ради интереса посмотрел сишарп и РНР и там по фреймворкам просто море информации: книги, курсы, всё разжевано по полочкам.
Почему в джаве нифига нет? Куда не копнёшь везде какие-то мурзилки уровне баелдунга, а подробного разбора Спринга нигде нет.
Аноним 08/05/23 Пнд 19:42:42 2692278 444
>>2692255
Вот и уёбывай в свои шарпы и пыхи.
Аноним 08/05/23 Пнд 20:09:15 2692306 445
>>2692255
На джаве ты занимаешься поддержкой легаси проектов и там уже есть внутренняя документация компании.
На шарпе/пхп пишут новые проекты и поэтому там много информации доступной публично.
Аноним 08/05/23 Пнд 20:18:54 2692318 446
>>2692255
Где посмотрел? На амазоне(либгене) куча книг по джаве. Куча видосов на ютубе, на торрентах куча ворованных курсов. На баелдунге и медиуме куча статей.
Аноним 08/05/23 Пнд 20:25:17 2692325 447
Аноним 08/05/23 Пнд 20:28:29 2692329 448
Аноним 08/05/23 Пнд 20:35:14 2692334 449
Есть кто шарашит уже на спринг буте 3?
Тут новый проект намечается на жава 17. Вот думаю взять 2.7 последнюю или 3?
Пробовал 2 месяца назад старый сервис перевести с 2.7 на 3. Там для кафки убили обратную совместимость(выпилили апишку для асинхронного подтверждения отправки для продюсера) и с фейном старым не работало(что бы решить походу нужно было менять версию фейна во всех сервисах).

А тут новый проектик на один сервис. Интеграция будет по хттп и реббиту, но не с джава приложухами, так что всякая шляпа спрингклаудовская не нужна.
Аноним 08/05/23 Пнд 20:37:03 2692338 450
>>2692329
Так по русски только в 1с можно писать.
Аноним 08/05/23 Пнд 21:59:37 2692416 451
>>2691589
Для тестов должны быть тестконтейнеры.
Аноним 08/05/23 Пнд 22:44:14 2692459 452
>>2692334
> Там для кафки убили обратную совместимость(выпилили апишку для асинхронного подтверждения отправки для продюсера)
чеее?
Аноним 08/05/23 Пнд 23:01:53 2692468 453
image.png 16Кб, 923x288
923x288
>>2692459
Ну в спринг-кафке 3 поменяли :
>In version 3.0, the methods that previously returned ListenableFuture have been changed to return CompletableFuture
А я в своих сервисах завязывался на :
>future.addCallback
Через него я логгировал, как сообщение доставилось в кафку.
Можно конечно руками выбрать версию спринг-кафки 2.9, но я предпочитаю все таки по максимуму держать все версии, определенные в spring-boot-starter-parent
Но это не суть вопроса.
Аноним 08/05/23 Пнд 23:24:30 2692493 454
>>2692468
ну так что listenable что completabel один хуй только методы по разному называются
Аноним 09/05/23 Втр 00:48:00 2692575 455
>>2691588
>>2691589

Для тестов при уже собранных контейнерах как раз проще композ слабать, чем какой то еще один отдельный тестоый образ все-в-одном... Тем более когда тестконтейнерзами композ поддерживается в полной мере.
Аноним 09/05/23 Втр 04:27:57 2692677 456
Господи, я молюсь, чтобы все, кто по своей воле приложили руку к распространению дегенерадло-рака умерли в страшных муках.
Аноним 09/05/23 Втр 04:33:51 2692678 457
А ещё те долбоёбы, которые не высрали установщик мавена для винды, из-за чего школота из-за своей тупости поголовно скачивает дегенерадл из-за неумения редактировать path.
Аноним 09/05/23 Втр 04:45:25 2692681 458
.png 5Кб, 270x120
270x120
>>2692678
Лол, реально что ли есть вкатуны, которые не умеют редактировать PATH? Прям представляю: "Так, надо мавен установить, ой, чёта сложна, почему установщика нет, в пизду его, чё там ещё кроме мавена есть".
Аноним 09/05/23 Втр 05:03:35 2692682 459
Предлагаю предложить разрабам мавена сделать установщик, чтобы нанести удар в псину дегенерадлу.
Аноним 09/05/23 Втр 05:07:38 2692683 460
зачем ставить мавен? Его может идея качать сама и запускать потом через плагин для мавена.
Аноним 09/05/23 Втр 05:08:29 2692685 461
Аноним 09/05/23 Втр 05:16:01 2692687 462
ДДДДДДААААААААААААА БЛЯДЬ Я ЗАБИЛДИЛ ПРОЕКТ НА ГРАДЛЕ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Аноним 09/05/23 Втр 05:37:23 2692689 463
>>2692681
Так ведь по себе сужу. Мне, правда, очень повезло, что я не стал трогать тогда градл и ограничился сборкой через идею.
Аноним 09/05/23 Втр 10:19:38 2692821 464
ПОЧЕМУ НАХУЙ В STREAM НЕТ МЕТОДА TOSET???!?!?!???????????????!!!!!!!?!?!???????????????!!!!!!!!!!!!!!!!!!!!!!!?!?!?!??!!?!?!?!!?!!!!!!!!!?!!!!!!!!!!!!!!!!!!!!?!!?!?!???????????????!!!!!!!!!!!!!!!!!!!!!!!?!?!?!??!!?!?!?!!?!!!!!!!!!?!!!?!?!?!!?!?!???!?!?!???????????????!!!!!!!!!!!!!!!!!!!!!!!?!?!?!??!!?!?!?!!?!!!!!!!!!?!!!????????????!!!!!!!!!!!!!!!!!!!!!!!?!?!?!??!!?!?!?!!?!!!!!!!!!?!!!?!?????????!?!?!???????????????!!!!!!!!!!!!!!!!!!!!!!!?!?!?!??!!?!?!?!!?!!!!!!!!!?!!!??????!!!!!!?!?!??????????????!?!?!???????????????!!!!!!!!!!!!!!!!!!!!!!!?!?!?!??!!?!?!?!!?!!!!!!!!!?!!!!?!?!??????!?!?!???????????????!!!!!!!!!!!!!!!!!!!!!!!?!?!?!??!!?!?!?!!?!!!!!!!!!?!!!?????????!!!!!!!!!!!!!!!!!!!!!!!?!?!?!??!!?!?!?!!?!!!!!!!!!?!!!?!!!!!!!!!!!!!!!!!!!!!!!?!?!?!??!!?!?!?!!?!!!!!!!!!?!!!!!!!!!!!!!!!!!!!!!?!?!?!??!!?!?!?!!?!!!!!!!!!?!!!!??!!?!?!?!!?!!!!!?!?!?!?!???????????????!!!!!!!!!!!!!!!!!!!!!!!?!?!?!??!!?!?!?!!?!!!!!!!!!?!!!!?!?!?!???????????????!!!!!!!!!!!!!!!!!!!!!!!?!?!?!??!!?!?!?!!?!!!!!!!!!?!!!?????????????!!!!!!!!!!!!!!!!!!!!!!!?!?!?!?!?!?!???????????????!!!!!!!!!!!!!!!!!!!!!!!?!!?!?!???????????????!!!!!!!!!!!!!!!!!!!!!!!?!?!?!??!!?!?!?!!?!!!!!!!!!?!!!?!?!??!!?!?!?!!?!!!!!!!!!?!!!?!!?!?!?!!?!!!!!!?!?!?!???????????????!!!!!!!!!!!!!!!!!!!!!!!?!?!?!??!!?!?!?!!?!!!!!!!!!?!!!!?!???????????????!!!!!!!!!!!!!!!!!!!!!!!?!?!?!??!!?!?!?!!?!!!!!!!!!?!!!!!!!?!!!!!!!!?!!!
Аноним 09/05/23 Втр 10:34:07 2692830 465
Если я сделаю коммит в JDK с добавлением в Stream метода to(Collection<T> streamRepresentation), который можно будет использовать как stream#to(HashSet::new), то его примут?
Аноним 09/05/23 Втр 10:36:34 2692831 466
>>2692830
>to(Consumer<Collection<T> streamRepresentation>)
Медленнофикс.
Аноним 09/05/23 Втр 10:40:04 2692834 467
Вкатунцы на джаве, кому-нибудь вообще удалось в 2023 устроиться джуном или стажёром?
Аноним 09/05/23 Втр 10:52:19 2692839 468
>>2692834
В 2023 взяли пока одного джуна и одного мидла в команду из 12 человек. Правда джун пришел по знакомству одного челика, что уже год работал.
А за 2022 взяли 8 человек из которых 6 - джуны.
Аноним 09/05/23 Втр 11:17:02 2692858 469
>>2692830
Лол, нет конечно.

Сначала пишешь JEP, согласовываешь с комиссией, обосновываешь важность и нужность этой фичи. Потом его добавляют в какую нибудь преальфа тестовую версию и Шипилев полгода 24/7 гоняет ее на серверах с бенчмарками, а Валеев доебывается до мелчайших багов, пока пилит поддержку в идее. Потом ее добавляют в бету и дают потрогать пользователям. Если у какой-то легаси параши с векторами и хэштаблицами это будет криво работать - ее не включат.
Аноним 09/05/23 Втр 11:59:07 2692886 470
>>2692858
Тагирка на каком то интервью как-то рассказывал про то как работает процесс коммита фичи через комиссию.
Там на самом деле чтобы твои коммиты и дали специальную плашку вообще рассматривали нужно долго прокачиваться среди комьюнити и за тебя другие люди с плашкам поручились.
Ему самому такую честь очень нескоро дали после того как он стал ответственным за поддержку жабы в главной жабьей иде.
А для васяна с улицы это на долгие годы растянется.
Аноним 09/05/23 Втр 12:09:29 2692890 471
>>2692886
Ага, подкаст Подлодки это был. Про Java
Аноним 09/05/23 Втр 12:18:44 2692897 472
>>2692858
>>2692886
Пиздец, не сравнить с опенсорсным сишарпом где васян с улицы прям на гитхабе пропозалы оставляет и команда их рассматривает. Еще одна ложь от оракла о джаве
Аноним 09/05/23 Втр 12:24:10 2692899 473
>>2692897
Ну это по сути не опенцорс, а просто коллективная разработка от разных больших компаний. Если ты представитель редхата или ибма, то у этих контор в этой их коммиссии есть эксклюзивные права и они в свою очередь могут влиять на решения по изменению языка.
Аноним 09/05/23 Втр 12:24:52 2692900 474
>>2692897
>опенсорсным сишарпом где васян с улицы прям на гитхабе пропозалы оставляет и команда их рассматривает
Ну ты сравнил, лол. Одно дело сишарп, который остался где-нибудь на заводах в провинции где пилят "кастомную CRM", и совсем другое джава на которой большинство банков работает, например.
Аноним 09/05/23 Втр 12:27:02 2692901 475
Есть у меня микросервис.
Хочу к нему интеграционные тесты сделать. Чтоб было как в постмане, только автоматизировано.
Как поднять базу понятно - тестконтейнером.
А как мне замокать обращение к другим сервисам?
Просто сделать моковую импелентацию, а потом рефакторить ее каждый раз вместе с кодом?(пока склоняюсь к этому варианту)

Все микросервисы хранятся в одной репе, работают с одной базой (у каждого свои схемы, свои миграции) это не микросервисы а service based, но суть та же. Общение между сервисами через рест.

Для работы одного сервиса обычно надо сходить в 1-3 других. Поднимать все 10-15 для этого перебор. Но если не поднимать то как получить ответ? Возвращать определенные данные не очень надежно - там есть связанные сущности.
Например в одном сервисе получаем подписки с uuid пользователей, а в другой список данных пользователей по их uuid. И если это мокать - мне надо вручную это все вбивать (остальное без проблем бы нагенерил). Иначе там не будет совпадений и вернет пустой список.

Или все таки возможно как то поднять 3 сервиса и выполнить тест? Но это наверное только отдельным сервисом с отдельными скриптами билда наверное выйдет?

Мне вся эта ебень нужна, чтоб в CI засунуть, а то заебался что юниты зеленые - а из за некорректных данных в базе или ошибки кого то во внутреннем рест контроллере баги всплывают.
Автотестеры что то там вроде Е2Е намутили, но они вне CI и для меня бесполезны.
Аноним 09/05/23 Втр 12:28:38 2692902 476
>>2692901
>А как мне замокать обращение к другим сервисам?
Тебе - никак. Отдай эту задачу хотя бы мидлу в вашей команде. Очевидно, что ты не тянешь, чел...
Аноним 09/05/23 Втр 12:34:25 2692915 477
>>2692683
У идеи свой мавен есть, даже кочать не надо.
Аноним 09/05/23 Втр 12:35:01 2692916 478
Аноним 09/05/23 Втр 12:36:44 2692917 479
Аноним 09/05/23 Втр 12:56:19 2692935 480
>>2692886
>Там на самом деле чтобы твои коммиты и дали специальную плашку вообще рассматривали
10 раз перечитал, так и не понял. Что блядь?
Аноним 09/05/23 Втр 12:59:40 2692942 481
>>2692935
тебе и не понять полета мыслей.
Аноним 09/05/23 Втр 13:00:23 2692944 482
Аноним 09/05/23 Втр 13:07:06 2692951 483
>>2692944
Так это я писал. Че ты доебался? Я часто уточняю свою мысль походу и дописываю слова в середину предложения и часто потом оказывается, что в итоге я не там вписал и перепутал порядок слов. Не перечитывать же мне сообщение на дваче. Может мне еще и за пунктуацией следить? Я сюда деградировать захожу вообще то.
Аноним 09/05/23 Втр 13:09:32 2692953 484
>>2692951
>Не перечитывать же мне сообщение на дваче.
Лол блядь, так нахуй идёшь тогда сразу, ведь в таком случае перечитывать приходиться тому, кто читает.
Аноним 09/05/23 Втр 13:12:21 2692954 485
>>2692953
Ну да. Неструктурированные write only комментарии на аиб.
Аноним 09/05/23 Втр 13:19:36 2692960 486
>>2692954
Write-only, фактически, это main-target-read-only, в программировании это machine-read-only. На борде write-only значило бы anonymous-read-only, но anonymous твою хуйню прочитать не может, поэтому у тебя не write-only, а build failure.
Аноним 09/05/23 Втр 13:28:09 2692963 487
>>2692960
Если я прошел через эту ебучую лагающую капчу - значит сбилдилось. Тут максимум рантайм эксепшон.
Аноним 09/05/23 Втр 13:48:40 2692975 488
>>2692821
Пошел нахуй! Под таких как ты заебешься дырки в API сверлить для каждой коллекции.

Коллекторы юзай, там все есть. Не устраивае - убейся.
Аноним 09/05/23 Втр 13:59:16 2692981 489
>>2692901
Есть штуки типа API-моков. Пример - https://www.mock-server.com/. Ты описываешь как должен вести себя API в тесте, а эта штука во время прогона подымает тебе сервер. Подставляешь его вместо реального сервиса и все.
Аноним 09/05/23 Втр 14:18:14 2692992 490
>>2692917
>>2692981
>>Ты описываешь как должен вести себя API в тесте
То есть моки придется все рвано самому писать?
Или там есть какой то инструмент который магическим образом поймет как надо сгенерировать тестовые данные?
Аноним 09/05/23 Втр 14:32:00 2693004 491
>>2692992
>который магическим образом поймет как надо сгенерировать тестовые данные?

На основе чего? Как ты себе это представляешь?
Аноним 09/05/23 Втр 14:37:04 2693006 492
>>2692992
>Или там есть какой то инструмент который магическим образом поймет как надо сгенерировать тестовые данные?
Ты сейчас пытаешься переизобрести концепцию контрактного тестирования. Полно готовых инструментов для твоей проблемы. А ты хуйней занимаешься. Я тебе уже сказал, что ты не тянешь. Отдай задачу мидлу или сеньке в команде, а сам пиши по собственному, ослица тупоголовая.
Аноним 09/05/23 Втр 14:40:14 2693008 493
>>2692981
>Подставляешь его вместо реального сервиса и все.
Это глина, чел. Можешь тогда вообще не поднимать мок HTTP API, а напрямую мокать клиент для общения с сервисом через какой-нибудь сраный мокито. Один хуй ты обращаешься к ненастоящей зависимости.
Аноним 09/05/23 Втр 14:48:52 2693014 494
>>2693004
Вопрос был в том сделать мок или поднимать связку серверов.
Мне предложили мок.

А если мок то руками писать или можно нагенерировать согласованные данные.
Этот вопрос проигнорировали.

>>2693006
>>Я тебе уже сказал, что ты не тянешь
Ты пукнул в лужу, я проигнорил твой ответ.
>>Отдай задачу мидлу
ты так сам никогда мидлом не станешь, чел
Аноним 09/05/23 Втр 15:21:35 2693038 495
Подскажите пожалуйста, в чем разница между:
1.Принцип инверсии управления (IoC),
2.Принцип инверсии зависимостей (DIP).

P.S. - А паттерн внедрения зависимостей их использует.
Аноним 09/05/23 Втр 15:32:03 2693048 496
>>2693038
инверсия управления - что фреймворк вызывает твой код. Инверсия зависимостей - хз, может что фреймворк предоставляет зависимости для твоего кода
Аноним 09/05/23 Втр 17:29:08 2693165 497
Я словил java.lang.StackOverflowError.
Аноним 09/05/23 Втр 17:34:23 2693170 498
>>2693038
2 это банальное "не ломай, блядь, обратную совместимость, а если надо чё-то изменить, сделай неизменяемые абстракции" с очень дебильным названием.
Аноним 09/05/23 Втр 17:55:19 2693180 499
Аноним 09/05/23 Втр 18:31:37 2693200 500
Где стажировки искать?
Аноним 09/05/23 Втр 19:18:20 2693255 501
>>2693200
Ну явно не в ява-треде.
Аноним 09/05/23 Втр 19:22:32 2693262 502
>>2693200
На хх.ру и сайтах банков.
Аноним 09/05/23 Втр 19:27:23 2693271 503
>>2693200
Я робот, поэтому могу рекомендовать следующие ресурсы для поиска стажировок по Java:

1. Indeed.com
2. Glassdoor.com
3. LinkedIn.com
4. Internships.com
5. SimplyHired.com
6. CareerBuilder.com
7. Monster.com
8. Google for Jobs
9. AngelList.co
10. Dice.com

Надеюсь, эта информация будет полезной для вас!
Аноним 09/05/23 Втр 19:29:48 2693274 504
Аноним 09/05/23 Втр 19:31:07 2693276 505
Аноним 09/05/23 Втр 22:02:40 2693444 506
Аноним 09/05/23 Втр 22:30:59 2693476 507
>>2693038
На Википедия же всё понятно написано.
Инверсия управления - это когда ты вместо того, чтобы самостоятельно дёргать методы либы и писать главный цикл просто пишешь обработчики/компоненты и вызываешь главный метод фреймворка, который сам запускает цикл и при возникновении событий дёргает нужные обработчики. Так большинство фреймворков работает.
Если к этому добавить, что фреймворк сам управляет жизненным циклом компонентов и указывает компонентам, где брать другие компоненты путём подстановки ссылок на них, получится внедрение зависимостей.
А инверсия зависимостей - просто идея, что при написании компонента (модуля/класса/метода), которому нужен другой компонент, указывать не конкретную реализацию компонента, а интерфейс или базовый класс, чтобы можно было извне поменять реализацию, не переписывая компонент, требующий зависимость.
Аноним 09/05/23 Втр 22:55:30 2693524 508
Можно ли создавать константы в абстрактном классе ?
Или лучше вынести в наследников ?
Аноним 09/05/23 Втр 23:13:40 2693546 509
Аноним 09/05/23 Втр 23:22:42 2693560 510
>>2693524
Да, в абстрактном классе можно создавать константы. Константы в абстрактном классе могут использоваться как базовые значения, которые наследники должны использовать в своих реализациях, или как общие значения, используемые несколькими наследниками.

Если константы представляют общие значения, которые будут использоваться несколькими наследниками, то их можно определить в абстрактном классе. Это может быть полезно, если вы хотите избежать дублирования кода и сделать код более читаемым.

Если константы представляют базовые значения, которые наследники должны использовать в своих реализациях, то их также можно определить в абстрактном классе. В этом случае константы могут использоваться для обеспечения совместимости между различными реализациями наследников.

В целом, решение о том, где определять константы, зависит от контекста. Если константы представляют общие значения, то лучше определить их в абстрактном классе. Если же константы представляют базовые значения, которые будут использоваться только в одной реализации наследника, то лучше определить их в этом наследнике.
Аноним 10/05/23 Срд 02:08:05 2693626 511
>>2693038
>>2693048
Инверсия зависимостей это D в SOLID. Компоненты верхних уровней не должны зависить от компонентов нижних уровней. Все компоненты должны зависить от абстракций. Проще говоря при наследовании родители не должны зависить от чайлдов.
Аноним 10/05/23 Срд 02:19:25 2693627 512
>>2684226 (OP)
Вкатываюсь с целью работать в сфере финтеха, в перспективе - на забугорные банки. Всё правильно делаю? Образование понадобится?
Аноним 10/05/23 Срд 03:10:43 2693635 513
>>2693524
Можно. И в абстрактных классах можно, и в неабстрактных... Даже в интерфейсах можно, прикинь да? А енамы - так вообще тупо сборник констант! Просто ахуй!..

...взял бы да попробовал сам, вместо того чтоб глупые вопросы задавать.
Аноним 10/05/23 Срд 03:36:55 2693638 514
>>2693626
>>2693038
>Проще говоря при наследовании родители не должны зависить от чайлдов.

Родители и так не зависят от чайлдов. А те всратые случаи, когда таки зависят, новичок ни в жизнь сам не распознает - ему проще внушить composition over inheritance. Эта формулировка только мозг нубам ломает.

DIP не столько про наследование, сколько про направленность зависимостей между компонентами в целом. Наследование здесь - лишь частный случай зависимости между родителем (интерфейсом/базовым классом) и потомком.

Следование DIP в общем случае всего лишь предполагает, что зависимости между компонентами всегда идут от стабильных абстракций (обычно - интерфейсов), к волатильным конкретикам (имплементациям этих интерфейсов). И смысл следования принципу DIP в том, чтобы конкретики никогда не зависели друг на друга, иначе на любой внешний запрос поменять в них что-то будет ворох побочных правок вниз по всему графу зависимостей, включая тесты. Этот негативный эффект еще известен под названием "Zone of Pain", а анализ зависимостей с целью выявления рисков - "Distance from main sequence" (последнее гуглится).
Аноним 10/05/23 Срд 11:47:09 2693974 515
Когда в джаву добавят свитч по булину?
Аноним 10/05/23 Срд 12:34:18 2694020 516
Аноним 10/05/23 Срд 12:44:17 2694040 517
>>2694020
Ну некрасиво же. Хочу чтобы true и false были равноправны с визуальной точки зрения.
Аноним 10/05/23 Срд 12:46:59 2694042 518
Аноним 10/05/23 Срд 12:49:35 2694045 519
image 11Кб, 347x362
347x362
image 7Кб, 507x80
507x80
image 7Кб, 513x90
513x90
>>2694042
Пиздабол. Ни новый, ни старый не могут.
Аноним 10/05/23 Срд 16:07:52 2694258 520
>>2693974
Ору блять

switch(true) {
case true:
case false:
default: // нахуй!
}
Аноним 10/05/23 Срд 16:09:51 2694263 521
>>2694045
Бляяяяяя, он реально булеан в сфич засунул!

Перестань пожалуйста! Как с тебя орать перестать, что ты такое?!
Аноним 10/05/23 Срд 16:12:58 2694267 522
Машинное обучение на java. Ваши мысли ?
Аноним 10/05/23 Срд 16:14:55 2694268 523
>>2694267
Бинды к тензорфлоу существуют, че тебе еще надо.
Аноним 10/05/23 Срд 16:23:17 2694275 524
>>2694268
Как gpt 4 при общении определяет, что истина, а что ложь ?
Аноним 10/05/23 Срд 16:51:46 2694301 525
>>2694275
GPT-4, как модель, не имеет встроенной способности определения истины и лжи. Он основан на статистическом анализе больших объемов текста и учится предсказывать последующие слова или фразы на основе предоставленного контекста.

Когда вы взаимодействуете с GPT-4, он пытается сгенерировать ответ на основе своего тренировочного набора данных и предшествующего контекста вашего вопроса. Он не имеет внутреннего механизма проверки правильности или точности информации, которую он генерирует.

Таким образом, ответы, предоставляемые GPT-4, могут быть логически последовательными и звучать убедительно, но не всегда гарантируются быть истинными или точными. Важно оценивать и проверять полученные ответы с помощью критического мышления и дополнительных источников информации, чтобы подтвердить или опровергнуть предоставленную информацию.
Аноним 10/05/23 Срд 17:14:39 2694332 526
Джава один из самых классных ООП языков, но на деле приходится писать всё в процедурном стиле, обильно покрывая весь код аннотациями. Не кажется ли вам, что где-то джава свернула не туда?
Аноним 10/05/23 Срд 17:30:36 2694349 527
>>2694332
Не джава свернула не туда, а её пользователи крудошлёпы-с.
Аноним 10/05/23 Срд 17:31:18 2694351 528
>>2694332
Не кажется, я доволен процедурным стилем.
Аноним 10/05/23 Срд 17:36:08 2694354 529
>>2694332
Мнение о языках программирования и их подходах может быть субъективным и зависит от конкретных потребностей и предпочтений разработчика. Хотя Java является объектно-ориентированным языком программирования (ООП) и обладает мощными возможностями ООП, стиль написания кода может отличаться в зависимости от конкретной команды, проекта или предпочтений разработчиков.

В Java есть возможность использовать преимущества объектно-ориентированного программирования, такие как инкапсуляция, наследование и полиморфизм, для создания модульного и расширяемого кода. Однако некоторые проекты или команды могут предпочитать более процедурный стиль программирования или использовать аннотации для различных целей, таких как описания метаданных или добавления функциональности через аспектно-ориентированное программирование (АОП).

Важно отметить, что хороший стиль программирования зависит от многих факторов, включая контекст проекта, командные соглашения и личные предпочтения разработчиков. Если вы предпочитаете более объектно-ориентированный подход, вы можете стараться использовать основные принципы ООП при проектировании и написании своего кода, чтобы сделать его более модульным, читаемым и расширяемым.
Аноним 10/05/23 Срд 17:59:48 2694371 530
Аноним 10/05/23 Срд 18:05:25 2694377 531
>>2694349
На самом деле забавный факт в том, что виновна даже не джава и не джависты. Процедурно-сервисный подход в том виде, котором мы его знаем сегодня, начался еще во всяких коболах-алголах у предтеч. Это потом уже случился ООП, на котором предтечи кодили так, как привыкли на коболах, помножив тенм самым профит от парадигмы на ноль. Где класс, у процедурщиков - модуль с процедурами. Инжекция? Идеальный заместитель сишного инклюда!

Это не джава свернула не туда, это кодерки упорно движутся по прямой в стену, как привыкли. Но если предтечи не в чем винить (в их времена тупо альтернатив особо не было, вся индустрия еще только только собирала косяки и набивала шишки), то существование современного спрингокульта не оправдывает ничто.
Аноним 10/05/23 Срд 18:08:29 2694381 532
>>2694354
Бля, этот текст ощущается так, будто его сгенерировала чатгпт.
Аноним 10/05/23 Срд 18:15:17 2694385 533
>>2694377
>Идеальный заместитель сишного инклюда!
По моему, если проводить аналогию, то в джаве есть неявный инклюд на вообще все существующие в мире классы.
Аноним 10/05/23 Срд 18:15:52 2694387 534
>>2694381
Не ощущается, это чат гпт и генерировал.
Аноним 10/05/23 Срд 18:55:13 2694422 535
>>2694387
О, ок. А то я уж ненароком подумал что тест тьюринга засыпал, лол.
Аноним 10/05/23 Срд 18:57:59 2694424 536
>>2694385
Ну для меня такая аналогия очевидна.

Раньше писали #include stdio.h чтобы получить доступ к процедурам из stdio, а щас пишут @Autowired UserService userService, чтобы получить доступ к процедурам из UserService.
Аноним 10/05/23 Срд 19:18:30 2694435 537
>>2694332
Шизоуебище, ты когда-нибудь прекратишь нести эту хуйню? Одно и то же по кругу. Вакух нет, инфы по спрингу нет, ООП нет.
Аноним 10/05/23 Срд 19:24:05 2694438 538
>>2694424
>Раньше писали #include stdio.h чтобы получить доступ к процедурам из stdio, а щас пишут @Autowired UserService userService, чтобы получить доступ к процедурам из UserService.
А ведь правда, пиздец просто. Всё то же самое, только ресурсов жрёт в 5000 раз больше.
Аноним 10/05/23 Срд 19:32:57 2694445 539
>>2694435
А ты нашёл инфу по спрингу?
Аноним 10/05/23 Срд 20:44:06 2694515 540
>>2694435
>Вакух нет, инфы по спрингу нет, ООП нет.
>прекратишь нести эту хуйню

Дак прекращай, все в твоих руках.
Аноним 10/05/23 Срд 21:25:36 2694528 541
Где-то можно посмотреть на альтернативу залупаСервисам из спринга? Хотя бы маленький круд без залупаСервис.создатьЗалупа().
Аноним 10/05/23 Срд 22:30:13 2694551 542
>>2694528
У Егорки.
Или тупо new Залупа(датасорс, данные).save(). Прикольно прокидывать датасорс в каждую ебаную сущность. Называется Active Record.
Аноним 10/05/23 Срд 22:56:01 2694554 543
>>2694332
Джава мультипарадигменный язык. ООП был в 2000, когда он был на хайпе. Щас так писать - моветон.

>>обильно покрывая весь код аннотациями
У меня из аннотаций кодогенераторы в основном - ломбок/мапструкт + валидация + контролеры. Предпочитаешь вместо этого бойлерплейт как в джава5/шарпе?

>>джава свернула не туда?
Джава впитывает все лучшие и проверенные технологии. Лямбды, зеленые треды и тп.
Аноним 10/05/23 Срд 23:39:22 2694567 544
Аноним 10/05/23 Срд 23:54:18 2694571 545
>>2694567
Не увидел там ничего необычного.
Аноним 11/05/23 Чтв 00:13:54 2694574 546
Есть поле типа String, оно инициализируется в конструкторе, почему Intellij idea рекомендует сделать это поле final ?
Аноним 11/05/23 Чтв 00:35:53 2694583 547
Аноним 11/05/23 Чтв 01:38:36 2694594 548
>>2694574
потому что оно может быть изменено в сеттере
Аноним 11/05/23 Чтв 01:41:44 2694595 549
>>2694574
Идея видит что это поле у тебя не изменяется ни одним методом и наружу никуда не торчит, и предлагает сразу сделать его финальным, потому что чем меньше мутабельности в программе, тем лучше.
Аноним 11/05/23 Чтв 01:44:26 2694596 550
>>2694594
сори, прочитал как "не рекомендует"
Аноним 11/05/23 Чтв 01:45:50 2694597 551
>>2694595
>чем меньше мутабельности в программе, тем лучше
Стоит на каждую возможную переменную и параметр метода слово final вешать?
Аноним 11/05/23 Чтв 01:47:30 2694598 552
>>2694597
В методе нет смысла, в классе просто убери сеттеры.
Аноним 11/05/23 Чтв 01:51:00 2694599 553
>>2694554
>ООП был в 2000, когда он был на хайпе

О, здесь даже интересно послушать - а что в моде сейчас среди джаванов, если не ООП. Только не говори что функциональщина - любой хаскелит-любитель без опыта на смех подымет, и будет прав.
Аноним 11/05/23 Чтв 01:53:31 2694600 554
>>2694597
Идея не про это, она - не какой то крикливый анальник с хуем наголо в треде. Ей насрать на твое мировоззредние, и она не будет тебе ничего доказывать. Просто она по факту видит что поле нигде не мутируется, и предлагает зафиксировать этот факт в его обьявлении. Если вдруг где то ты поле изменишь, она тоже это увидит и перестанет показываить ворнинг, вот и все.
11/05/23 Чтв 02:28:57 2694601 555
Hyperskill теперь требует деньги за project-based обучение. It's over.
Аноним 11/05/23 Чтв 03:09:29 2694606 556
11/05/23 Чтв 04:34:06 2694608 557
11/05/23 Чтв 04:36:39 2694609 558
>>2694574
Если это мешает, то с версии Java 5 появилась аннотация

@ПодавитьВолнение(причины)

Не знаю насколько это здесь применимо.
Аноним 11/05/23 Чтв 05:24:25 2694614 559
>>2694551
Так. Про актив рекорды я знаю.
Если не ошибаюсь в функциональщине так же поступают: на вход функции данные и залупаРепозиторий, на выходе монада со статусом операции в бд.
А еще варианты есть? Может быть прототайп бины? Или прозрачно обмазать всё персистенсом через AOP?
Пытался писать код без залупаСервисов, но в какой-то момент всегда появляется желание ебануть синглтончик, фабрику залуп, а потом опять всё скатывается в залупаСервисы, залупаМенеджеры и залупаХэндлеры.
Просто мозг не поворачивается в другую сторону.
Аноним 11/05/23 Чтв 05:33:33 2694615 560
>>2694614
Конечно не поворачивается, потому что это наиболее естественный способ написания бизнес-логики. На то она и логика, что на первом месте код (процедуры), а не некие сущности реального мира (классы).
А всё остальное - удаление гланд через вагину.
Аноним 11/05/23 Чтв 10:50:55 2694756 561
>>2694606
Ну хотя б сам по честному признался
Аноним 11/05/23 Чтв 10:58:38 2694764 562
>>2694614
>Может быть прототайп бины?

Торг как третья ступень принятия.

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

>Просто мозг не поворачивается в другую сторону.

Попробуй просто отвлечься и повариться в другой экосистеме некоторое время. Прочитай Learn You A Haskell For Great Good - необязательно прям перекатываться, просто ради самообразования - чтобы понять что бывает кодинг и без контейнеров и сервисов, со своими сильными-слабыми сторонами. Чтиво легкое, недушное.
Аноним 11/05/23 Чтв 12:01:53 2694832 563
>>2694551
>Прикольно прокидывать датасорс в каждую ебаную сущность.
Спрингокультист правда не понимает, что его спринг просто вуалирует DataSource.INSTANCE в конструкторе?
Аноним 11/05/23 Чтв 12:08:39 2694843 564
>>2693638
>Эта формулировка только мозг нубам ломает.
Ну сейчас то ты нихуя не сломал мозг нубам. Уверен, что они вообще нихуя не поняли из того, что ты написал.
Аноним 11/05/23 Чтв 12:12:57 2694848 565
>>2694843
Мне в свое время именно эта формулировка и помогла понять смысл. А не демагогия о парашных слоях и уровнях.
Аноним 11/05/23 Чтв 14:00:29 2695006 566
>>2694764

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

Конечно.
Лучше хранить стейт в глобальных переменных🤣🤣🤣 (если они вообще есть в языке)

> У них правит балом функциональная композиция, которая, несмотря на то что ручная, в разы более результативна.

Результативна в задачах без стейта.
Аноним 11/05/23 Чтв 15:17:07 2695068 567
>>2695006
>Лучше хранить стейт в глобальных переменных🤣🤣🤣 (если они вообще есть в языке)

Имбецил проецирует свой процедурный опыт разработки на парадигму и язык, в которых не разбирается.
Аноним 11/05/23 Чтв 15:39:09 2695087 568
>>2694764
И сейчас ты нам показал хоть один реальный проект на петухаскеле.
Аноним 11/05/23 Чтв 15:40:36 2695089 569
>>2695087
Мне больше всех надо чтоли? Я комментировал конкретный комментарий. Быть бесплатным евангелистом хаскелля я не подрывался - так только спрингорабы делают.
Аноним 11/05/23 Чтв 15:47:30 2695093 570
>>2694597
Да, стоит, на переменные объекта всегда вешать final, если это внедрённая зависимость, а не собственные данные объекта.
Аноним 11/05/23 Чтв 16:15:05 2695130 571
>>2694756
А в чем проблема процедурщины?
Аноним 11/05/23 Чтв 16:43:23 2695163 572
>>2695130
Не суть в чем. Просто признавая за собой процедурщину, спрингошлеп официально признается, что джава для него - просто очередной диалект кобола, а сам он - необучаем. И цитата:

>ООП был в 2000, когда он был на хайпе. Щас так писать - моветон.

...начинает звучать смешно. Как будто бы это их "щас" чем то отличается от того, как было в 60х-70х, когда фортран впервые обзавелся процедурами, а Ларри Константин написал первую в своем роде книжку про cohesion и coupling.
Аноним 11/05/23 Чтв 17:00:04 2695181 573
>>2695163
Проблема то в чем? Если отбросять маняярлыки про кобол, то в чем реальная конкретная проблема?
Прокидывать датасорс через всю иерархию объектов - это проблема.
Отсутствие рабочих реальных примеров с альтернативой - это проблема.
А
>мааам, ну скажи им, что они Кобол
это не проблема
Аноним 11/05/23 Чтв 17:39:14 2695221 574
>>2695181
Кто-то говорил про проблему? Только ещё раз долбоёбу-копротивленцу указали, кем он на самом деле и является. Никакой оценки непосредственных действий долбоёба-копротивленца не было, он сам рванул, т.к. ему стало, почему-то, неприятно от его сущности.
Аноним 11/05/23 Чтв 17:46:36 2695232 575
Подскажите пожалуйста, это нормально когда я реализую какой-нибудь паттерн не так как это показано в книгах ?
Например что-то меняю, или убираю какой-нибудь класс из шаблона.
Аноним 11/05/23 Чтв 17:49:59 2695237 576
>>2695232
Смотря что убираешь/меняешь. Есть просто особенности реализации, указанные в книгах, а есть свойства, без которых паттерн перестаёт быть паттерном.
Аноним 11/05/23 Чтв 17:54:45 2695244 577
>>2695232

Нормально. Паттерны - это не какая то там догма, это просто эмпирика. Нет ничего необычного в том, что какой то ситуативный кейс из этой эмпирики выпадает.
Аноним 11/05/23 Чтв 18:07:53 2695251 578
>>2695181
Впринципе этот все за меня сказал: >>2695221. Я б наверное так уж прямолинейно на личности не переходил, но похуй. Еще здесь >>2694756 тебе следовало понять что мне неинтересно было тебя в чем то переубеждать. Хз зачем ты в залупу полез.
Аноним 11/05/23 Чтв 19:51:34 2695327 579
Аноним 11/05/23 Чтв 20:28:08 2695372 580
>>2695068
Чмондель, в отличии от тебя, мани, я перед жявкой, на эрланге за денежку год пердолил "деревья отп с акторной моделью обработки данных" (и полгода на элике потом).
И не тебе, ссанина мне расказывать про "охуеность" фп.
Аноним 11/05/23 Чтв 20:37:06 2695377 581
>>2695372
Хули тогда бред несешь про глобальные переменные, опердень недоделанный?
Аноним 11/05/23 Чтв 21:15:14 2695421 582
Спрингокульт хотя бы оплачивается, а элегантные объекты в карман не положишь.
Аноним 12/05/23 Птн 00:58:25 2695610 583
Аноним 12/05/23 Птн 02:09:38 2695622 584
>>2695610
А что должно быть нового? Кроме проверки:
if (javaVersion < 17) {
throw new NotEnoughHipsterException();
}
Аноним 12/05/23 Птн 08:50:03 2695686 585
>>2695421
Последний аргумент долбоеба-культиста.
Аноним 12/05/23 Птн 09:01:02 2695691 586
Аноним 12/05/23 Птн 09:07:30 2695695 587
>>2695691
Аж пернул с такого резкого перефорса.
Аноним 12/05/23 Птн 10:00:05 2695730 588
Аноним 12/05/23 Птн 10:04:48 2695736 589
Спринг-куны, подскажите плиз.

Вот у нас есть AspectJ, значит. Со связыванием в компайл тайме. Выкидываем его нахуй и не рассматриваем.

Какие у нас остаются варианты для того чтоб дописать логику в существующие методы и классы? Ну, очевидно, Spring AOP или можно в BeanPostProcessor хуйнуть руками логику создания нового прокси.

И, по идее, там под капотом даже механизм один и тот же, для внедрения логики-то. Какой вариант предпочтительнее? Аспекты, потому что проще и нагляднее? Или рчками сделать прокси потому что... что?
Аноним 12/05/23 Птн 10:10:15 2695738 590
>>2695730
Ты же просто нахуй послал десятки форматов данных с сериализацией/десериализацией, обработку респонс-кодов, обработку ошибок, авторизацию, управление соединениями и остальное. Если тебе нужно готовое решение под твой супер частный случай "ничего кроме plain text и 200 OK не существует", ты его не найдёшь.
Аноним 12/05/23 Птн 10:18:10 2695741 591
>>2695736
В петухлине и манифолде есть экстеншен методы.
Аноним 12/05/23 Птн 10:19:15 2695742 592
Аноним 12/05/23 Птн 10:22:51 2695745 593
>>2695741
Ломбок тоже умеет их вписывать, во время компиляции. Так что тоже вынесем за скобки.
Аноним 12/05/23 Птн 11:03:29 2695784 594
>>2695738
Так лучше?
Response response = HttpRequest()
.withHeaders(Map.of(...))
...
.get("https://...")
Аноним 12/05/23 Птн 11:07:59 2695788 595
Аноним 12/05/23 Птн 11:10:29 2695790 596
>>2695788
Хорошо, что даже на баелдунге написали, что ресттемплейт всё.
Аноним 12/05/23 Птн 11:20:16 2695801 597
>>2695730
Почему нет ни одной библиотеки, которая умеет
CRUD crud = new CRUD(Zalupa.class);
crud.deployToProduction.withCallback(wallet::get Money);
Аноним 12/05/23 Птн 11:22:05 2695802 598
Screenshot1.png 7Кб, 525x230
525x230
>>2695730
>>2695801
Вот, кстати, как это делается на питоне
Аноним 12/05/23 Птн 12:04:19 2695838 599
>>2695736
Чет не до конца понятно че ты пытаешься понять для себя. Ты аспекты лабаешь, или тебе надо просто кода навалить в скомпилированный класс? Почему берем и выкидываем AspectJ? При чем тут бинпостпроцессор?

>И, по идее, там под капотом даже механизм один и тот же, для внедрения логики-то.

Да так то если посудить - Spring AOP то тоже в этом плане ничего нового из себя не представляет. Либо использует java.lang.reflect.Proxy, либо CGLib. И в целом так делают все тулы - либо прошивают байткод в компайл-тайме/во время класслодинга (чаще всего через CGLib, иногда через Javassist), либо юзают java.lang.reflect.Proxy. Ну еще есть ломбок, который ректально патчит AST через процессоры аннотаций, но это - нелегальная хуйня, так редко кто делает.

>Аспекты, потому что проще и нагляднее? Или ручками сделать прокси потому что... что?

Опять же, ты щас просишь сравнить идею с одним из путей ее реализации. Теплое с мягким.
Аноним 12/05/23 Птн 13:58:06 2695983 600
>>2695730
Окхттп. Хттп2 и асихронные запросы тоже.
Апачевский асинк-хттпклиент тоже неплох.

Просто ты не искал
Аноним 12/05/23 Птн 15:01:28 2696057 601
>>2695237
Ну например есть паттерн "Строитель", я несколько методов выношу с буилдера в клиентский код.

Director dir = new Director(new ButtonExit);
Button b = dir.build();

.......

b.setPosition(100,100);
Аноним 12/05/23 Птн 16:35:19 2696215 602
>>2695802
>питухоне
Ого! Пошол нахуй!
Аноним 12/05/23 Птн 16:35:54 2696217 603
Аноним 12/05/23 Птн 16:36:50 2696218 604
>>2696217
А на педалях разве вообще делают http запросы?
Аноним 12/05/23 Птн 16:53:36 2696242 605
Почему работодателей называют "хрюшами" ?
Аноним 12/05/23 Птн 18:11:38 2696350 606
Аноним 12/05/23 Птн 19:17:44 2696447 607
java.JPG 22Кб, 835x240
835x240
>>2695802
В джэхве это примерно так выглядит.
Аноним 12/05/23 Птн 19:27:21 2696461 608
>>2696447
Какой же уебок притащил это Mono сюда, пиздец
Аноним 12/05/23 Птн 21:09:44 2696605 609
>>2696461
Очередной хуй пойми откуда взявшийся термин типа бинов. По названию невозможно догадаться, что это такое.
Аноним 12/05/23 Птн 23:40:10 2696778 610
Аноним 13/05/23 Суб 00:15:27 2696800 611
>>2696778
Я не тебе это пишу, а тем, кто прочитает твой пост и побежит обмазывать легаси ресттемплейтом свои проекты.
Аноним 13/05/23 Суб 00:47:52 2696822 612
Блядь, почему когда рассказывают про вильдкарды и PECS постоянно лезут в залупу, только больше запутывая всё в мозгах вкатуна, вместо того чтобы просто показать ему метод Collections.max()?
Аноним 13/05/23 Суб 01:31:35 2696832 613
Повторю ещё раз, sealed интерфейсы на пару с switch'ом по ним — мощь. Наимасштабнейшее обновление жабы с момента добавления лямбд.
Аноним 13/05/23 Суб 01:42:48 2696835 614
>>2696832
Повторяй сколько угодно, но последняя версия джавы - 8.
Аноним 13/05/23 Суб 01:46:52 2696837 615
Аноним 13/05/23 Суб 01:50:05 2696839 616
>>2696837
Не жужжи, джавамуха.
Аноним 13/05/23 Суб 01:50:42 2696840 617
>>2696839
>Жж вжжжж, жжжужжвж.
Аноним 13/05/23 Суб 01:53:18 2696841 618
Да и кому этот кобол нужен в 2к24.
Аноним 13/05/23 Суб 12:59:01 2697095 619
>>2696800
А как применять вебклиент в обычном синхронном коде?
Аноним 13/05/23 Суб 13:34:01 2697130 620
Spring mvc можно запускать не только на tomcat ?
Аноним 13/05/23 Суб 13:45:00 2697147 621
>>2697130
да. Это для EJB требуется сервер приложений (JBoss, WebFly и подобное). Спринг это нескучная замена EJB, не требующая стороннего сервера приложений
Аноним 13/05/23 Суб 14:11:52 2697169 622
В классе Method есть метод invoke(obj1, obj2);
obj2 это параметры которые мы передаем для вызова метода.
Что означает первый аргумент obj1 ?
Аноним 13/05/23 Суб 14:49:54 2697189 623
>>2697147
Если уж проводить аналогиии, то DI в Java EE - это CDI, а не EJB. А альтертанива MVC - Jax RS. И обе этих спеки самодостаточны, а их имплементации так же спокойно используются без контейнера приложений.
Аноним 13/05/23 Суб 14:51:38 2697191 624
>>2697130
Spring MVC - штука, работающая на сервлетах. Следовательно - запускается на всем, что поддерживает сервлеты.
Аноним 13/05/23 Суб 15:12:59 2697216 625
>>2697169
Экземпляр, у которого будет вызываться этот метод. Для static-методов равен null.
Аноним 13/05/23 Суб 15:14:08 2697217 626
>>2697095
Вызвать в конце .block()
Аноним 13/05/23 Суб 19:20:38 2697445 627
49ytxVlEQt.png 90Кб, 909x783
909x783
что это за говнокод. И вот на это надо равняться?
Аноним 13/05/23 Суб 19:22:00 2697446 628
>>2697445
боб тут бы сотню методов напилил и дюжину переменных класса
Аноним 13/05/23 Суб 19:33:18 2697455 629
>>2697445
Эххх туда бы мапперов и валидаторов хуйнуть... обмазать все секьюрити через AoP и понаставить аннотаций...
Аноним 13/05/23 Суб 19:38:50 2697458 630
>>2697445
Ты пользуешься методом .put() и видишь только конечную производительность. Проблемы какие?
Аноним 13/05/23 Суб 21:10:53 2697517 631
jFqhnqdxbO.png 101Кб, 1160x623
1160x623
В исходниках хашмапы не вижу линкед листа, только дерево. Кому верить?
Аноним 13/05/23 Суб 21:22:04 2697535 632
Аноним 13/05/23 Суб 21:28:12 2697544 633
>>2697517
начинаю понимать. Там просто все элементы хранятся в Node, и в нем есть поле next, где хранится следующий. Линкед лист не используется но по сути это оно
Аноним 13/05/23 Суб 21:41:15 2697561 634
>>2697445
Это - Код Богов-из-джава-machina, он не для тебя писан.
Аноним 13/05/23 Суб 21:41:53 2697563 635
А сброка мусора может внезапно сервак на пару секунд положить?
Аноним 13/05/23 Суб 21:42:51 2697566 636
LYMYH9DudE.png 78Кб, 968x728
968x728
давно не видел такого говнокода.
Не могу вдуплить. Корзина становится деревом при переполнении корзины или при большом количестве коллизий?

Если корзина - дерево, то в нодах точно также остаются ссылки на next - на элемент с совпадающим хешем?
Аноним 13/05/23 Суб 21:43:35 2697568 637
Аноним 13/05/23 Суб 21:43:59 2697569 638
Аноним 13/05/23 Суб 21:53:16 2697578 639
>>2697569
Я сейчас нахожусь на стадии планирования проекта. Хочу на джаве начать, потому что в разы быстрее плюсов, вот думаю над минусами
Аноним 13/05/23 Суб 22:55:52 2697634 640
>>2697563
На пару секунд нет. В тяжёлых случаях до 100 мс сборка идёт.
Аноним 13/05/23 Суб 23:43:36 2697745 641
>>2697566
немного начинаю понимать.
В основе хешмапы - массив.
Ключ - integer. При вставке индекс для этого массива вычисляется на основе хэша, при этом чтобы он не выходил за размеры массива. Если массив заполняется - происходит процесс увеличения массива вдвое, индексы значений пересчитываются.
Значение в этом массиве - Node, оно же называется "корзина"

Если хэш совпадает - значение записывается в поле next корзины. Если эта корзина становится слишком большой - она преобразуется в дерево. Т.е. в корзине может быть несколько значений только в случае коллизии. При нормальном распределении хэшей одна корзина - одно значение.

Эффективность доступа через get
В случае нормального распределения хэша - O(1)
В случае коллизий, при этом количество значений с коллизией меньше 8 - O(N)
В случае коллизиий, если количество значений с коллизией больше 8 - O(log N)
Аноним 14/05/23 Вск 00:03:27 2697777 642
>>2697745
ммм ясно.. держи в курсе)
Аноним 14/05/23 Вск 01:07:30 2697831 643
>>2697563
На пару секунд тормознуть GC может на под завязку забитых хипах в десятки гигабайт. Скорее всего у тебя столько оперативы тупо нет. На своих поделках ты никогда таких stop-the-world пауз не встретишь, забей.
Аноним 14/05/23 Вск 01:22:04 2697836 644
>>2697831
И кстати я преувеличил - не факт что даже на таких объемах хипа ты чето заметишь. По умолчанию JVM выбирает сам GC в зависимости от того, какое у тебя железо и сколько хипа, и делает это довольно неплохо. Есть даже на самые терминальные случаи специально задизайненный на терабайты хипа нахуй ZGC.
Аноним 14/05/23 Вск 01:42:21 2697846 645
Аноним 14/05/23 Вск 02:32:41 2697854 646
>>2697836
Ничего он не выбирает. Хочешь г1 или шенандо - ключики пердоль
Аноним 14/05/23 Вск 04:01:23 2697861 647
>>2697854

https://github.com/openjdk/jdk/blob/a74ebd048ae569296619c112c23169c46b571863/src/hotspot/share/gc/shared/gcConfig.cpp#L98-L112

https://github.com/openjdk/jdk/blob/a74ebd048ae569296619c112c23169c46b571863/src/hotspot/share/runtime/os.cpp#L1681-L1726

Ок, я мягко говоря преувеличил, утверждая что выбор он делает как то мудро и обоснованно, мой косяк. Но все же кое какой выбор на основании хоста он делает.

>Хочешь г1 или шенандо - ключики пердоль

Так то G1 - дефолт с 9й джавы. Без всяких ключиков.
Аноним 14/05/23 Вск 06:03:57 2697875 648
>>2697854
>ключики пердоль
ХМ-ХМ, КАК ЖЕ ТАМ +xx:-USEgC1?
@
ERROR, +XX:-uSEgC1 NOT RECOGNIZED
@
НУ КАК ТАК ТО?!
@
А ЕСЛИ -XX+:=USEgC1?
@
eRROR, -XX+:=USEgC1 NOT RECOGNIZED!
@
ДА ПОЧЕМУ?!!!!!!
Аноним 14/05/23 Вск 06:05:03 2697876 649
>>2697846
>в дефолтном гц - stop the world срабатывает
STW срабатывает в любых GC кроме ZGC (еще в превью). И есть коммерческая JVM, где эту проблему уже давно решили
Аноним 14/05/23 Вск 10:02:56 2697918 650
Читаю что стек используется только тредом. А что будет если несколько параллельных тредов? На каждый тред свой стек?
Аноним 14/05/23 Вск 11:54:30 2697986 651
Аноним 14/05/23 Вск 17:36:13 2698390 652
>>2697918
вообще то на стековерфлоу задают вопросы по разным языкам и в других тредах его тоже используюут
Аноним 14/05/23 Вск 17:54:17 2698399 653
>>2698390
Ебать ты шутканул конечно.
Аноним 14/05/23 Вск 17:54:54 2698400 654
>>2693180
>>2698390
Ебать ты смешной, почти как мамядолбоеб.
Аноним 14/05/23 Вск 19:10:08 2698476 655
>>2698390
но ведь здесь все мои друзья. Правда же?
Аноним 14/05/23 Вск 20:29:44 2698556 656
Решаю задачки на кодварсе и каждый раз охуеваю с того, что решенная мной задачка оказывается решалась в 10 раз проще каким-то одним из десятков методов используемого класса, о котором я даже не подозревал. Вы всегда все реализуете идеально, используете все возможности языка или забиваете и делаете, как быстрее или как понятнее лично вам? Имеет смысл вообще гнаться за этой аккуратностью? На сколько вы вообще досканально знаете язык, фреймворки?
14/05/23 Вск 20:36:30 2698565 657
>>2698556
Имеет смысл гнаться только тогда, когда велосипед оказывается сделать сложнее, чем узнать, как работать с какой-то уже существующей технологией.
Аноним 14/05/23 Вск 20:38:14 2698568 658
>>2698565
То есть само по себе изобретение велосипеда не проблема, пока удается сделать в приемлемые сроки?
Аноним 14/05/23 Вск 22:10:53 2698672 659
>>2698568
Есть такая поговорка - инициатива трахает инициатора. Написав велосипед, ты берешь на себя за него ответственность - покрываешь тестами, документируешь, фиксишь в нем баги.

А так как разрабы в целом не любят брать на себя ответственность по ряду причин, велосипеды в индустрии порицаются. Каждый велосипед считаются говнокодом до тех пор, пока не доказано обратное.
Аноним 14/05/23 Вск 22:16:09 2698679 660
>>2698672
То есть нагуглить полностью готовое решение > написать свое решение, я правильно понимаю? Это актуально только на этапе работы или на этапе освоения тоже?
Аноним 14/05/23 Вск 22:24:18 2698684 661
>>2698679

Все вышесказанное актуально только для коммерческого кода, разумеется. На этапе освоения в велосипедостроительстве нет ничего плохого - напротив, на велосипедах неплохо прокачиваются техскиллы, набиваются шишки, приходит понимание прочитанного в книгах-интернете.
Аноним 14/05/23 Вск 22:26:21 2698685 662
Надо написать асинхронный сервер. Посоветуйте, что максимально похоже на плюсовый boost asio
Аноним 14/05/23 Вск 22:35:09 2698693 663
Аноним 14/05/23 Вск 22:47:09 2698707 664
Аноним 14/05/23 Вск 22:50:22 2698713 665
>>2698568
По сути да, но на поддержку велосипеда тратятся силы, и эти силы тоже надо учитывать. Редкий случай, когда силы потраченные на создание велосипеда и его поддержку в сумме меньше, чем силы, потраченные на поиск информации, и особенно когда есть у тебя под рукой чат гпт, который всё уже знает.
Аноним 14/05/23 Вск 23:05:48 2698749 666
На GPT надейся, а сам - не тупи.
Аноним 15/05/23 Пнд 05:05:46 2698897 667
>>2698672
>Написав велосипед, ты берешь на себя за него ответственность - покрываешь тестами, документируешь, фиксишь в нем баги.
Это какие-то фантазии, если честно. Я разменял 10 лет в этом вашем айти. Ты не поверишь сколько велосипедов я видел в своей жизни. Начиная с совсем крохотных библиотек и заканчивая всяким мидлвейром и прочими "СУБД". За всю карьеру наберется несколько десятков огромных велосипедов и еще полторы сотни всяких библиотек и "фреймворков". При этом никто не писал документацию и тем более тесты. Разобраться в том поносе было очень тяжело, т.к. писали его обычно 1-2 человека и у них налицо были какие-то психические отклонения.
Такие персонажи входили в рейдж мод, когда им показывали отраслевые решения, которые они завелосипедили из-за своего скудного умишки
Аноним 15/05/23 Пнд 07:36:48 2698910 668
Аноним 15/05/23 Пнд 07:38:00 2698912 669
>>2698897
В этом треде они тоже есть
Аноним 15/05/23 Пнд 08:41:31 2698964 670
Применил на работе настоящий Паттерн Проектирования! Называется Компоновщик!
Аноним 15/05/23 Пнд 11:31:47 2699124 671
>>2698897

И в чем фантазия? Ты сам все то же самое и сказал. Безответственные велосипедисты и их поделки вызывают лишь отторжение. Их пытаются устранять, а когда не получилось - ненавидят лютой ненавистью.
Аноним 15/05/23 Пнд 13:11:22 2699218 672
>>2684242
мне кажется гошка изза популярности микросервисов, может несколько % рынка откушать у монолитной жавы. (если уже не откушала)
Если что, я просто кукаретик, кто в тырпрайзе работает, поясните если не прав.
Аноним 15/05/23 Пнд 13:13:26 2699219 673
Сто лет не заходил сюда, как дела вообще?
Капчу новую завезли, кайф!
Аноним 15/05/23 Пнд 13:17:40 2699225 674
>>2684378
>Докеров нет
так чё, докер не надо учить? новый положняк ?
Аноним 15/05/23 Пнд 13:21:38 2699233 675
Пока все на РАБоте и тред временно захвачен мной, 2 вопроса

1. Распространенность jwt токенов в тырпрайзе ?
2. популярность spring webflux ?


Посижу теперь в ридонли, чтобы не спамить
Аноним 15/05/23 Пнд 13:28:31 2699245 676
>>2699233
1. Дохуя где распространены. Ибо просты и эффективны.

2. Популярны чуть более, чем того заслуживают. В основном, из-за придурков, сующих реактивные стримы туда, где от них нет профита, ради тэга в резюме.
Аноним 15/05/23 Пнд 15:22:33 2699389 677
>>2699219
Значит ты жавамуха! Понятно... Куда переехал? В Европу?
Аноним 15/05/23 Пнд 15:40:49 2699398 678
пытаюсь объяснить bom

Существует проблема, когда у нас есть транзитивная зависимость, но на разные версии. Какую версию возьмёт мавен?
По-умолчанию мавен берёт ту, путь к которой ближе. Например к одной версии идём через 3 шага, к другой через 2 шага. Значит мавен возьмёт зависимость до которой 2 шага.

Ещё можно вручную описать, какую версию надо брать. Это делается в помнике проекта в разделе dependencyManagement.
Pom файл, состоящий только из этого dependencyManagement принято называть bom файлом.
Подключить его можно через parent в нашем помнике, либо через импорт в нашем помнике.

Спринг публикует готовые bom файлы для своих версий. Подключаешь этот файл - и избавляешься от проблемы что какая-то сторонняя зависимость перебила спринговую транзитивную зависимость
Аноним 15/05/23 Пнд 15:54:19 2699422 679
>>2699398
Добавь еще тот важный нюанс, что бомник может декларировать только версии зависимостей, но не версии плагинов. Импортнутый спринг-бом не определит версию спринг-мавен-плагина в проекте.
Аноним 15/05/23 Пнд 18:19:39 2699643 680
>>2699389
Да никуда, просто слегка доебали душнилы, которые меряются зепкой и обсуждают какую-то хуиту.
Аноним 15/05/23 Пнд 20:21:49 2699869 681
>>2699233
>>популярность spring webflux ?
Вместо <List>Zalupa в проекте будет Mono<<List>Zalupa>. Даже если перепишешь на Flux, один хуй база на jdbc будет.

Но выглядит прикольно, лямбды в 2 экрана ведь лучше легасного ООП.
Аноним 15/05/23 Пнд 20:39:02 2699890 682
>>2699869
>один хуй база на jdbc будет
Так то R2DBC есть.
Аноним 15/05/23 Пнд 20:59:34 2699912 683
Вопрос по Vert.x Мне надо, чтобы прога бесконечно просила пользователя ввести слово определенное до тех пор, пока он его не введет. Для разделения по словам использую recprdParser. Но он не умеет писать в сокет. А передавать в функцию езе и сокет кажется плохой идеей
Аноним 15/05/23 Пнд 20:59:37 2699913 684
Вопрос по Vert.x Мне надо, чтобы прога бесконечно просила пользователя ввести слово определенное до тех пор, пока он его не введет. Для разделения по словам использую recprdParser. Но он не умеет писать в сокет. А передавать в функцию езе и сокет кажется плохой идеей
Аноним 15/05/23 Пнд 21:15:35 2699934 685
>>2699890
Есть, но не про вашу честь, товарищ реактионер.
Аноним 15/05/23 Пнд 21:30:23 2699959 686
>>2699913
Не варил вертекс, но бегло взглянув на API RecordParser'а предположу что pipe()/pipeTo() там как раз для того, чтобы писать куда-либо то что ты напарсил.
Аноним 15/05/23 Пнд 22:45:08 2700032 687
Аноним 16/05/23 Втр 03:00:12 2700150 688
Аноним 16/05/23 Втр 03:01:17 2700151 689
Внезапно пример Vert.x echo server просто перестал работать. Ничего не менял. Он не начинает слушать даже. Ничего не пишет консоль. Я не понимаю где оштбка
Аноним 16/05/23 Втр 03:03:08 2700153 690
>>2700151
Он зависает в кишках где то
Аноним 16/05/23 Втр 03:25:46 2700155 691
>>2700153
Я вспомнил. Еще он задолго до этого что то ро DNS писал. Но сейчас ничего
Аноним 16/05/23 Втр 04:29:01 2700165 692
Аноним 16/05/23 Втр 09:47:28 2700285 693
smotritel.jpg 58Кб, 800x445
800x445
Хочу выучить Spring и вкатиться на удаленку, чтобы с людьми поменьше пересекаться (желательно вообще в ТГ общаться).
Ибо интроверт я.
Такие варианты в природе существуют?
Или только офис и общение с коллегами (не складывается у меня общение с людьми, не любят они меня)
Аноним 16/05/23 Втр 11:33:21 2700412 694
>>2700285
Щас всех наоборот с удаленки тащат обратно в офис.
Даже если и дадут удаленку - скажут что вот ты пока сиди дома, но по договору напишем, что ты офисный раб и по первому сигналу должен перейти на гибрид (хотя бы 5 дней в неделю - в офисе).
Аноним 16/05/23 Втр 12:05:47 2700479 695
>>2700412
А есть сферы айти, где можно сычевать сидя дома?
Аноним 16/05/23 Втр 13:52:30 2700618 696
>>2700285
>Такие варианты в природе существуют?
Если я скажу тебе "нет", ты мне поверишь на слово?
Аноним 16/05/23 Втр 14:17:44 2700655 697
Аноним 16/05/23 Втр 14:46:44 2700689 698
Аноним 17/05/23 Срд 19:29:06 2702326 699
Добрый день.

Как вкатиться в вашу джаву?
Работаю программистом БД в дс, за 30, 300к на руки

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

Как к вам вкатиться? Вакансий вообще нема, всем нужны мидлы и выше.
понимаю, что с 300 упаду на 100.
Аноним 17/05/23 Срд 19:31:32 2702330 700
>>2702326
>с 300 на 100
Хуя размечтался.
Аноним 17/05/23 Срд 19:34:01 2702332 701
>>2702326
Работа спрингоёба не намного интереснее работы базоёба. Сиди перди на своих базах. Если хочешь реальную жабу полапать, то забудь про существование копроспринга.
Аноним 17/05/23 Срд 19:50:29 2702344 702
>>2702326
Ничего хорошего в жяваспрингобекенде нет.
Мимо-300к-жявапидор
Аноним 17/05/23 Срд 20:28:22 2702394 703
Работу где мне найти, йобана рот?
Аноним 17/05/23 Срд 22:00:08 2702555 704
>>2702326
> Как вкатиться в вашу джаву?
Тебе нужен какой-то roadmap или что? Бесплатных материалов в сети — просто пиздец как много. Если лень самому разбираться, то можешь себе какие нибудь курсы позволить, где тебя за руку проведут.
Аноним 17/05/23 Срд 22:01:58 2702559 705
>>2700285
> Такие варианты в природе существуют?
Только на удалёнку вижу вакансии.
Аноним 17/05/23 Срд 22:14:13 2702574 706
У меня есть два потока, основной и дочерний. Когда я вызову метод join для дочернего потока что происходит в этот момент ? Дочерний поток ждёт пока главный закончит свою работу ? Но ведь главный поток всегда работает :/ Ваши мысли...
Аноним 17/05/23 Срд 22:17:31 2702581 707
>>2700285
Можно ещё под андроид писать игры.
Аноним 17/05/23 Срд 23:24:24 2702640 708
>>2702326
Просто база данных? Без языков программирования?
Аноним 18/05/23 Чтв 01:34:29 2702750 709
>>2702574
Наоборот. Главный уходит в wait до тех пор, пока дочерний не закончится.
Аноним 18/05/23 Чтв 03:31:54 2702765 710
>>2702555
Курсы только нахуй могут провести.
Аноним 18/05/23 Чтв 04:30:01 2702775 711
>>2702574
>Но ведь главный поток всегда работает
а ты нет
Аноним 18/05/23 Чтв 05:36:31 2702781 712
Объясните вкатуну, зачем нужен GraphQL
Аноним 18/05/23 Чтв 05:43:34 2702782 713
Аноним 18/05/23 Чтв 06:45:05 2702788 714
Как в этом сраном Luiquibase сделать несколько условных insert'ов? Т.е. вставить записи только если они еще не существуют.
Гугл выдает пример только с 1 insert'ом и условием (как я понял, оно общее для всего changeset'а):
https://stackoverflow.com/questions/61845118/insert-into-table-column-if-entry-does-not-exist

А мне нужно 2. Задача такая:
1) в таблицу permissions добавить запись с name = "Полный доступ", если такой записи нет;
2) в таблицу roles добавить запись с name = "Администратор", если такой записи нет;
3) в таблицу roles_permissions, связывающую 2 предыдущих, добавить запись, дающую роли "Администратор" доступ "Полный доступ".
Все это нужно в рамках одного changeset'а. Как написать insert'ы для первых 2 пунктов? Вдобавок нужно еще и в XML (без использования тега <sql>).
Аноним 18/05/23 Чтв 13:34:40 2703070 715
>>2702775
в /b/ пожалуйста пройдите
Аноним 18/05/23 Чтв 14:26:43 2703113 716
Подскажите пожалуйста, статические поля инициализируются во время компиляции, но, если полю присвоено значение в теле статического блока инициализации, значит оно будет проинициализировано во время выполнения ?
Аноним 18/05/23 Чтв 14:56:34 2703153 717
Хочу вкатиться в бэкэнд на Java.
Исходные:
- 30 лвл
- Полностью профильное образование (бакалавр)
- Текущая зп 120к, сисадмин
- Опыт кодинга уровня написания скриптов на Powershell для автоматизации рутинного говна и небольших процедурок вида "спарсить N-ое количество xml-файликов, покрутить-повертеть, залить вывод в excel"
- Английский уровня B1

Осознал, что нужно куда-то расти, в админстве потолок, а идти в девопсы чет не охота, душа не лежит, один хрен учить тонну всего нового. Так почему бы не податься в кодеры, говорят у вас можно 300к/наносек зашибать, кек.

Собсно простые вопросы:
1) Как лучше обучаться? Курсы, самообучение по ютубу или найти челикса на какомнить фрилан.сру и платить ему по 4к/час за обучение раз в неделю?
2) Какая РЕАЛЬНАЯ ЗП у джуна в мск? Кто-то говорит, что 80к, кто-то говорит, что 50. Просто со 120 на 50 идти это вообще пиздец будет для меня.
3) Не слишком ли я старый? Много ли у вас коллег-джунов 30+?
4) Как быстро можно вырасти по зп хотя бы до текущих 120к?

В треде ньюфагов мне посоветовали изучать кор и попутно пилить свои пет-проекты, собсно отдельно стоит вопрос пет-проекта, что лучше пилить, чтобы и интересно ковыряться было и полезно в возможной будущей работе и на собесе показать не стыдно?

Если я сварганю чатик с шифрованием, клиентом под винду и веб-интерфейсом этого будет достаточно для изучения и собеса или нужно что-то круче? Пока абсолютно хз как это все делать, но уверен, что у Java есть все инструменты для работы с сетью, БД, шифрованием и т.д.
Аноним 18/05/23 Чтв 14:57:03 2703154 718
>>2703113
>статические поля инициализируются во время компиляции
кто тебе сказал эту хуйню
Аноним 18/05/23 Чтв 15:10:54 2703169 719
>>2703113
>статические поля инициализируются во время компиляции

Нет. Статические поля инициализируются во время статической инициализации, которая в свою очередь происходит во время класслодинга.
Аноним 18/05/23 Чтв 15:19:52 2703187 720
Аноним 18/05/23 Чтв 15:21:41 2703190 721
Аноним 18/05/23 Чтв 15:30:11 2703200 722
Аноним 18/05/23 Чтв 16:24:06 2703258 723
>>2702775
найди мне работу пожалуйста
Аноним 19/05/23 Птн 00:37:56 2703837 724
>>2702394
А где ты ее оставил?
Аноним 19/05/23 Птн 02:09:01 2703896 725
НИКОГДА не пользуйтесь методом submit() для запуска Runnable.
Аноним 19/05/23 Птн 02:24:25 2703900 726
>>2703896
Буду пользоваться, и что ты мне сделаешь?
Аноним 19/05/23 Птн 02:26:33 2703902 727
>>2703153
>самообучение или ментор
Самообучение. Если сам не можешь обучаться, то не стоит продолжать
>реальная зп
У нас в Беларуси все джуны без опыта 500$ получают
>как бысто можно вырасти до 120к
~ от 2-х лет
>что лучше пилить для пет проекта
Чатик с шифрованием на вебсокетах норм, клиент под винду лишний, т.к. java только для веба. Кроме этого сделай простое CRUD приложение с авторизацией. Перед этим изучи java core конечно
Аноним 19/05/23 Птн 02:32:15 2703903 728
>>2703900
Счастливого дебага.
Аноним 19/05/23 Птн 09:13:30 2703971 729
>>2703902
Благодарю за ответы, добра тебе, друг
Аноним 19/05/23 Птн 14:55:20 2704336 730
Аноним 19/05/23 Птн 15:37:45 2704417 731
>>2704336
>как создавался котлин
да похую мне
Аноним 19/05/23 Птн 16:32:35 2704515 732
Обязательно ли реализовывать нейросеть по типу ПЕРЦЕПТРОН, ведь можно и по своему реализовать обучение... ?
Аноним 19/05/23 Птн 17:09:51 2704577 733
Хотят затащить монорепу на проект. Я знаю, что идея хуйня скорее всего, потому что монорепы здесь вызывают полыхание жопы, но сам не пользовался никогда и минусов не знаю. Как аргументировать, что монорепа нахуй не нужна на проекте и чтоб это выглядело убедительно? или может все-таки нужна? проект на данный момент маленький
Аноним 19/05/23 Птн 18:14:38 2704674 734
>>2704577
Если ты задаёшь такие вопросы на дваче, вряд ли сумеешь кого-то переубедить.
Аноним 19/05/23 Птн 18:20:57 2704685 735
Аноним 19/05/23 Птн 18:55:19 2704746 736
Что читать по джаве? Не ньюфаг, не нужно, чтобы объяснения были как для идиотов.
В идеале немного про синтаксис и сразу переход к фичам.
Аноним 19/05/23 Птн 19:16:07 2704789 737
>>2704577
>но сам не пользовался никогда и минусов не знаю

Хуйли суешься тогда, раз не знаешь? Больше всех надо?
Аноним 20/05/23 Суб 02:40:44 2705134 738
>>2704746
Долбоеб,я тебе нахуярю как нехуй делать. У тебя жим сколько?
Аноним 20/05/23 Суб 03:19:20 2705150 739
>>2704746
Смотря насколько не ньюфаг.
Есть Хорстманн. Страниц много, но не из-за воды, а из-за описания тонкостей. Всякую хуйню типа Swing/JavaFX можно скипнуть.
Аноним 20/05/23 Суб 05:31:19 2705174 740
>>2686212
Ну я вкатываюсь уже второй год, высрал три петпроекта, и все пока по нулям, даже не зовут на собесы. Походу без профильной вышки хрен влезешь.
Аноним 20/05/23 Суб 09:55:09 2705249 741
>>2704674
Должна же от вас быть хоть какая-то польза
Аноним 20/05/23 Суб 09:57:22 2705252 742
>>2704789
Щас эту хуйню затащат, а мне потом мб ебаться с этим придется
Аноним 20/05/23 Суб 10:02:18 2705258 743
Аноним 20/05/23 Суб 10:03:13 2705259 744
Аноним 20/05/23 Суб 10:17:59 2705267 745
>>2705249
Задача двача - обоссать тебя и он ее выполнил.
Аноним 20/05/23 Суб 10:38:48 2705285 746
>>2705252
Ебало в ноль, глаза в пол, чмо. Сопли еще не высохли, а уже изх себя синьора корчит. "Ебаться ему придется"... Когда тебя это ебать начнет, ты скорее всего свалишь тридцадь раз в другой проект. А взрослые люди в гробу видели сопляка с сопляческими загонами, саботирующего принятие решений.
Аноним 20/05/23 Суб 11:32:11 2705348 747
image 1149Кб, 1300x865
1300x865
>>2705285
>Ебало в ноль, глаза в пол, чмо. Сопли еще не высохли, а уже изх себя синьора корчит. "Ебаться ему придется"... Когда тебя это ебать начнет, ты скорее всего свалишь тридцадь раз в другой проект. А взрослые люди в гробу видели сопляка с сопляческими загонами, саботирующего принятие решений.
Аноним 20/05/23 Суб 12:42:14 2705422 748
>>2705285
>>2705285
Ну вот из-за таких чсв ебанатов как ты проекты и загибаются. Я то хотя бы слышал что-то о том, что эта практика может быть хуйней, а другие челы скорее всего и не работали с этим никогда и не слышали вообще нихуя, поэтому наслушаются сейчас про меньшее количество пулл реквестов и упрощенное ревью и испортят жизнь потом не только себе, а и последующим разрабам на проекте
Аноним 20/05/23 Суб 13:33:58 2705475 749
>>2705422
Нет, сука, чсв ебанат здесь - ты, и именно из-за таких как ты проекты загибаются. Ты знаешь и явно декларируешь здесь, что у тебя нет никакой экспертизы и никаких явных причин против инициативы, но почему то решил, что вправе спорить с людьми, проявляющими эту инициативу. Ты вообще разобрался, почему они вводят монореп? Не думал о том, что для этого у них есть реальные причины? С чего ты взял, что если ты "хотя бы слышал", твое мнение весомее тех, кто эту инициативу проводит?

Если ты - новичок, сиди, молчи в тряпочку и набирайся своего опыта, набивай свои шишки. А если берешься лезть во взрослые дрязги, лезь со своей аргументацией блять, а не на двач иди за чужой. Кусок ты дерьма, ебало бы тебе в реале набил.
Аноним 20/05/23 Суб 15:20:34 2705560 750
>>2705475
Ебать у тебя полыхает, целых два года уже, наверное, круды хуяришь на жабе, уже возомнил себя лучше других. Да ты хуесос тупой, с тобой ни один человек работать не захочет, потому что выебываешься и считаешься только с мнением таких же хуесосов как ты сто проц у вас там микропиздочная команда из 2 разрабов, иначе тебя бы уже давно оттуда выпизднули. Где ты, уебан, в моем тексте вообще увидел, что я хочу, чтобы мое слово в этом вопросе стало последним и хоть один намек на то, что я УЖЕ выступил против этой инициативы?
> или может все-таки нужна?
Сын ебаной портовой шлюхи.

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

> ебало бы тебе в реале набил
Ты бы мне в хуй дышал, омежка ебаная, думаешь я не понимаю, откуда у тебя такое желание самоутверждаться за счет других? Ты 150 см девственник, я бы тебя даже трогать побрезговал, максимум харкнул в ебло.
Аноним 20/05/23 Суб 16:06:14 2705615 751
>>2705560
Хуя у быдла полыхнуло. Помочился сверху.
мимо
Аноним 20/05/23 Суб 18:22:42 2705793 752
>>2705258
А в какой тред мне задавать вопросы по нейросетям ?
Аноним 20/05/23 Суб 18:44:41 2705820 753
>>2705560
Не верти жопой, кусок дерьма. Свою цитатку ты под спойлер сунул, а наружу выставил свою гнилую натуру:

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

Тебе не одним мной было сказано блять: не знаешь как аргументировать - не лезь, придурок! Не для тебя эта дилемма, и не тебе кого то переубеждать!

И не с пустого места тебя долбоеба нахуй всем тредом шлют - слава богу на дваче CoC нет. В реальной работе такой хуеплет как ты, вооружившись арсеналом хуеты из интернета, любое обсуждение инициативы легко превращает в ебаный душный фарс на недели проебаных человекочасов в митингах, где вся команда такому дурачку пытается чето разжевать лишь потому, что по историческому недоразумению послать тебя нахуй в коллективе считается дурным тоном и проебом по софт скиллам. Пользуйся случаем и мотай на ус, блять, потому что больше видимо нигде тебе в лицо правду не скажут.
Аноним 20/05/23 Суб 20:15:04 2705915 754
По-сути, монорепа это кривое и уродливое, но решение проблемы поломок обратной совместимостию
Аноним 20/05/23 Суб 20:30:38 2705930 755
По-сути, кубернетис это кривое и уродливое, но решение проблем серверов приложений.
Аноним 20/05/23 Суб 21:03:15 2705958 756
>>2705930
А какие проблемы у серверов приложений?
Аноним 20/05/23 Суб 23:37:24 2706092 757
image.png 119Кб, 856x223
856x223
Охуенно надёжный язык
Аноним 21/05/23 Вск 00:14:30 2706112 758
>>2706092
мой первый язык, не судите строго)
Аноним 21/05/23 Вск 02:03:35 2706162 759
>>2706092
Зато в джава версии 2023 у нас будет интерполяция строк вида
STR."My name is \{name}", где синтаксис обусловлен защитой от сикуэл инъекций
Правда я не понял, как именно оно защищает, но имем что имеем
Аноним 21/05/23 Вск 08:21:32 2706234 760
>>2705930
кубернетис это костыль для попытки решения проблем микросервисов. Если нет микросервисов, то и кубер не нужен
Аноним 21/05/23 Вск 08:42:09 2706240 761
Вы сидите на линуксе? Какой дестр бест для разраба на яве?
Аноним 21/05/23 Вск 08:50:39 2706242 762
>>2706240
нет не сидим. Зачем
Аноним 21/05/23 Вск 09:41:27 2706249 763
>>2706240
Похуй, если все работает и пердолиться желания нет то бубунта.
У меня ноут на бубунте 22.04.
Аноним 21/05/23 Вск 09:53:39 2706261 764
Аноним 21/05/23 Вск 14:47:42 2706520 765
Какой загрузчик классов загружает классы которые находятся в нашем приложении ?
Аноним 21/05/23 Вск 15:46:31 2706636 766
>>2706240
Сижу. Для жабы похуй какой у тебя дистрибутив на самом деле. Везде будет все примерно одинаково.
Аноним 21/05/23 Вск 15:49:30 2706643 767
>>2706520
Если приложение - обычное SE-шное, то загрузчик приложения (application class loader). Если OSGi или EE-контейнеры - всякие кастомные загрузчики.
Аноним 21/05/23 Вск 20:00:25 2707139 768
Почему джава так любима всеми?
Синтаксически куцая (нет даже такой банальной вещи, как список инициализации), лямбды говно, дженерики говно.

Откуда появился культ джавы?
Аноним 21/05/23 Вск 20:03:20 2707142 769
>>2707139
Что лучше джавы для коммерческого сектора? Котлин недавно появился, если че, но уже много где на нем пишут
Аноним 21/05/23 Вск 20:05:44 2707145 770
>>2707142
> Что лучше джавы для коммерческого сектора
Речь не о коммерческом секторе. Очень часто слышал хвалебные отзывы о ней, мол, очень красивый язык для души. И вот пока не могу понять, почему.
Аноним 21/05/23 Вск 20:06:52 2707146 771
>>2707145
Ну нравится людям и всё. Че тут спрашивать. Кому то на гитаре нравится играть, кому то на джаве прогать
Аноним 21/05/23 Вск 20:06:58 2707147 772
>>2707139
> Синтаксически куцая
Значит, каждый даун осилит, и у корпораций не будет нехватки кадров.
Аноним 21/05/23 Вск 20:12:06 2707150 773
>>2707145
> очень красивый язык для души
Я это слышал про все языки, кроме джавы.
Аноним 21/05/23 Вск 20:14:14 2707152 774
>>2707139
Синтаксис идеальный, не надо пиздеть. Совершенно интуитивный, семантически верный, позволяет создавать такие абстракции, что ебанёшься. Я люблю джаву за то, что она одна единственная раскрывает ООП в полной мере. Однако, непосредственно пишу именно на джаве, всё-таки, не благодаря моему порыву чистой воли, а из-за того, что на джаве написан майнкрафт. Не всё мне конечно из нее нравится, но всякие петухлины и рядом не стояли с джавой. Разве что сралу можно при желании заюзать, но это когда делать нехуй.
Аноним 21/05/23 Вск 20:22:05 2707162 775
>>2707139
простой и логичный язык без 100500 синтаксического сахара или 7 значений символа * как в плюсах. Простая и продуманная стандартные классы, только в нескольких местах косякнули. Нормальная многопоточность искаропки чуть ли не с первой версии. В плюсах с этим до сих пор проблемы.
Вобщем народный инструмент как визуал бейсик или делфи в своё время
Аноним 21/05/23 Вск 20:25:21 2707171 776
Аноним 21/05/23 Вск 21:08:19 2707229 777
>>2707139
Да вам все блять говно... Душнилы ебаные.

Идеальный язык по синтаксису - это хаскель, где есть буквально всё. Хули вы его тогда не адвокатите, вместо своих шарпей ебаных?
Аноним 21/05/23 Вск 21:11:24 2707237 778
>>2707229
> Хули вы его тогда не адвокатите
Неправда, любителей хаскела дохуя.
> вместо своих шарпей ебаных
Я адепт плюсов, вообще-то.
Аноним 21/05/23 Вск 21:14:30 2707243 779
>>2707237
Блять, ну тогда я тебя вдвойне не понимаю. Ладно бы был шарпеем залетным - эти овощи по уровню культурного развития недалеко от спрингокульта ушли. Но ты то должен быть достаточно взрослым дядей чтобы знать ответ на такие тупые и очевидные вопросы.
Аноним 21/05/23 Вск 21:35:33 2707277 780
>>2707171
Ещё чего. Ты бы ещё на паскале или делфи предложил писать.
Аноним 22/05/23 Пнд 10:30:47 2707782 781
>Джун: я пишу процедурный кал с залупасервисами
>сеньор: я применяю Transaction script business logic implementation pattern
Аноним 22/05/23 Пнд 14:54:01 2708082 782
>>2707152
>на джаве написан майнкрафт
это наш родной lwjgl
Аноним 22/05/23 Пнд 14:55:04 2708086 783
Аноним 22/05/23 Пнд 15:04:45 2708107 784
Аноним 22/05/23 Пнд 15:10:29 2708113 785
Аноним 22/05/23 Пнд 15:12:04 2708116 786
Аноним 22/05/23 Пнд 18:31:46 2708409 787
Что с работой на жаве в Минске? Реально получить оффер на 3к$ сейчас с 3-4 годами опыта?
Аноним 22/05/23 Пнд 20:17:48 2708557 788
image.png 320Кб, 2560x2048
2560x2048
image.png 3109Кб, 1770x1849
1770x1849
Времени суток, аноны.

Очень интересует вопрос: есть ли здесь джависты, работающие на Дальнем Востоке? Существуете ли вы вообще, и если да, то расскажите, какова вероятность устроиться после окончания вузика? В приоритете Хабаровск, конечно, но и насчёт других городов интересно.
Аноним 22/05/23 Пнд 21:11:40 2708618 789
>>2708557
У тебя есть шансы, но название конторы я не скажу.
Аноним 23/05/23 Втр 02:40:23 2708826 790
>>2708618
Контора называется ⬛⬛⬛⬛⬛⬛⬛⬛
Аноним 23/05/23 Втр 18:32:48 2709583 791
Хочу реализовать паттерн "Singleton", но у меня много полей, которые инициализируются в теле конструктора, вынести в методы в которых используются эти поля не получается. Сделать какой-нибудь метод init(); и вынести туда инициализацию ?
Аноним 23/05/23 Втр 18:48:49 2709606 792
>>2709583
Можешь и отдельный init() написать. Не обязательно же инициализировать объект сразу после загрузки класса в JVM.
Аноним 23/05/23 Втр 21:16:25 2709704 793
>>2709583
Ну и пусть себе инициализируются. Чем это создает проблему?

Расскажи хоть побольше о своем кейсе. Что делаешь? Что делает сингтон? Что за поля в нем? На-голую синглтон лабаешь или спрингом? Почему?
Аноним 23/05/23 Втр 21:34:27 2709723 794
Аноним 23/05/23 Втр 21:36:13 2709726 795
Аноним 24/05/23 Срд 00:08:59 2709823 796
C++ Vs phyton ?
Аноним 24/05/23 Срд 00:25:23 2709834 797
.png 7Кб, 270x120
270x120
Аноним 24/05/23 Срд 03:01:29 2709859 798
bandicam 2023-0[...].jpg 114Кб, 800x450
800x450
Помогите.
Установил Tomcat.
Запускаю приложение.
http://localhost:8080/ - все ОК, тигр и надпись: "If you're seeing this, you've successfully installed Tomcat. Congratulations!"

Создал представление /helloworld, перехожу по http://localhost:8080/helloworld:

HTTP Status 404 – Не найдено
Type Status Report

Message The requested resource [/helloworld] is not available

Description The origin server did not find a current representation for the target resource or is not willing to disclose that one exists.

Apache Tomcat/10.1.9




И гуглил, и ChatGPT дергал - ничего не помогает.

Может вы знаете, анончики?
Аноним 24/05/23 Срд 03:06:25 2709860 799
>>2709859
Какое нахуй представление? Положи war в папку webapps
Аноним 24/05/23 Срд 04:28:05 2709873 800
>>2709860
War? У меня Eclipse, никакого War нет (в уроке Наиля Алишева ничего про War нет)
Аноним 24/05/23 Срд 05:43:00 2709882 801
>>2709873
Урок твоего протыклассника?
На отдельно установленный томкат деплоят war-ки. Можно конечно изъебнуться и деплоить туда .class-ы, в душе не ебу что там твой протыклассник придумал. Или четко следуй его инструкциям или возьми нормальный урок
Аноним 24/05/23 Срд 06:04:42 2709883 802
>>2709726
Мамкин достигатор, который считает свою писанину настолько дорогой, что даже тему кода говорить не хочет "из соображений безопасности". Постоянно таких даунов вижу, приходят ко мне, спрашивают что-то по джаве, когда прошу показать код, то получаю "не)".
Аноним 24/05/23 Срд 09:03:50 2709937 803
>>2709859
не смогло подняться. Смотри логи (не помню где)
Аноним 24/05/23 Срд 14:40:44 2710223 804
Аноним 24/05/23 Срд 16:21:07 2710383 805
>>2709873
Нахуй ты вообще это говно смотришь?
Аноним 24/05/23 Срд 16:26:03 2710391 806
щас вопрос был на собесе: "как опшионал связан со стримами"?
Аноним 24/05/23 Срд 16:26:54 2710393 807
Аноним 24/05/23 Срд 16:30:14 2710398 808
>>2710393
я сказал что они введены одновременно в 8 жабе и там и там есть метод map. Видимо неправильно
Аноним 24/05/23 Срд 16:34:38 2710409 809
>>2710398
собеседующий дурик, дай цифры, я ему проясню по человечески
Аноним 24/05/23 Срд 16:50:19 2710438 810
Аноним 24/05/23 Срд 17:31:04 2710480 811
>>2710393
Нихуя, джаваовый опшенал прямо нарушает монадный law.
Аноним 24/05/23 Срд 17:39:08 2710492 812
>>2710480
Монадные law прямо нарушают джавовский опшенал.
Аноним 24/05/23 Срд 18:45:19 2710616 813
>>2710391
Зачем такое спрашивать ? :/
Аноним 24/05/23 Срд 18:46:31 2710618 814
Подскажите пожалуйста, компонент верхнего уровня - это класс, который использует другие классы, или наоборот ?
Аноним 24/05/23 Срд 19:04:57 2710648 815
Аноним 24/05/23 Срд 19:15:28 2710666 816
>>2710618
Это тред про жабу, а не про джаваскрипт.
Аноним 25/05/23 Чтв 07:06:10 2710990 817
>>2710391
Их добавили в 8 жяве.

Это изи вопрос
Аноним 25/05/23 Чтв 07:18:36 2710992 818
>>2710618
Если вопрос по спрингу - то это просто аннотация бина.
Почему так называется? Видимо идет из прошлого, еще когда контекст в виде хмл описывали и там была автозагрузка через рефлексию
Аноним 25/05/23 Чтв 10:04:33 2711068 819
Не могу запустить в Eclipse сервер Tomcat - как понял из комментариев под уроком Наиля Алишева, должны совпадать версии спринга, timeleaf, jdk.
У меня java version "20.0.1".
Какие версии зависимостей мне нужны, чтобы сервер запустился?
Аноним 25/05/23 Чтв 10:19:59 2711102 820
>>2711068
я бы не стал запускать томкат из эклипсы. Скачай его отдельно, запусти.
Потом собери .war и положи в /webapp томката, он его должен подхватить
Аноним 25/05/23 Чтв 10:30:45 2711119 821
>>2711068
Может, ты в 2008 отправил этот пост, и он только сейчас появился?
Аноним 25/05/23 Чтв 10:31:48 2711120 822
Хотя откуда тогда Java 20, небось название пиратской сборки Java 6.
25/05/23 Чтв 13:12:19 2711319 823
>>2711068
Пиар твоего протыка не удался.
А теперь уебывай еахуй
Аноним 25/05/23 Чтв 14:23:33 2711410 824
>>2711068
Если ты понял из комментариев root cause, не проще ли спросить в комментариях и solution?

Или ты как себе все представляешь? Пришел, озвучил проблему, дал НОЛЬ инфы - ни логов ни эксепшонов, выложил какие то выводы, непонятно на чем основанные, достоверность которых неизвестна - ни ссылок на курс, ни ссылок на комменты. И че треду с этим делать? Ванг тут нет.
Аноним 25/05/23 Чтв 15:30:11 2711505 825
>>2711068
Наиль Алишев, плез, заебал
Аноним 25/05/23 Чтв 21:10:27 2711994 826
>>2709859
Возможно ты не промаппил свое приложение.
Тобиж у тебя должен при компиляции кода появляться WAR файл, который надо класть в репозиторий webapps в папке с том катом.
Посмотри по
http://localhost:8080/manager/html
Та в списке приложений должен быть твой helloworld

Собираешь код
Получаешь war
кидаешь в /webapps
перезагружаешь томкат
Аноним 25/05/23 Чтв 21:41:29 2712009 827
>>2711994
он без перезагрузки должен подхватывать
Аноним 26/05/23 Птн 04:46:52 2712143 828
>>2711120
Он просто точку между 2 и 0 пропустил.
Аноним 26/05/23 Птн 14:49:49 2712560 829
V2FMp7tGXO.png 51Кб, 728x734
728x734
мне щас на собесе лид говорил что если сделать объёкт иммутабельным, то можно не переопределять хэшкод и можно хранить и запрашивать такой объект в хэшмапе. Чот не работает. Я что-то не так понял или он не прав?
Аноним 26/05/23 Птн 14:56:05 2712578 830
>>2712560
Можно только по той же самой ссылке. Дефолтный хешкод у разных объектов разный.
Аноним 26/05/23 Птн 14:56:15 2712579 831
>>2712560
Может он record имел в виду?
Аноним 26/05/23 Птн 15:00:40 2712585 832
>>2712579
не, именно в разрезе что надо хранить координаты в специальном объекте. И типа в методе hash в хэшлисте есть магия, что хэш иммутабельных классов с одинаковыми полями получается одинаковый.
Аноним 26/05/23 Птн 15:01:51 2712586 833
>>2712585
Не слышал про иммутабельность в джаве
Аноним 26/05/23 Птн 15:03:32 2712591 834
>>2712585
Ну даже если хеш будет одинаковым. Объекты то будут разные, ведь equals не переопределен
Аноним 26/05/23 Птн 15:05:46 2712596 835
>>2712591
переопределил equals - тоже не сработало. Вобщем если возьмут, то надо будет его тыкнуть мордочкой
Аноним 26/05/23 Птн 15:07:41 2712602 836
>>2712560
хуевый лид значит
дефолтный хэшкод ~ порядковый номер созданного объекта
Аноним 26/05/23 Птн 15:16:44 2712614 837
>>2712596
Как возьмут, так и выкинут.
Аноним 26/05/23 Птн 16:21:14 2712734 838
>>2712560
>то можно не переопределять хэшкод и можно хранить и запрашивать такой объект в хэшмапе

Скорее не прав чем прав.

Такой обьект действительно можно хранить в хэшмапе - так как хэшкод у него не переопределен, его хэш будет считаться как System.identityHashCode(). Хэшкод можно не переопределять (с одной оговоркой о которой ниже), но тогда стоит пынимать, что ключом в такой мапе будет конкретный инстанс объекта. На твоем примере, если сделать...

Coord a = new Coord(1, 2);
map.put(a, 1);

...то...

map.get(a);

...вернет единицу. Но...

map.get(new Coord(1, 2));

...вернет null.

Теперь об оговорке. Рассмотрим твой код, где ты делаешь:

map.put(new Coord(2, 3), 1);

Вот эту вот единичку из мапы ты больше никогда не сможешь ни достать, не дропнуть по ключу (разве что через clear()). Ссылка на new Coord остается только в мапе, а у тебя на руках ее больше нет. Это как запереть замок и ключик выкинуть. В тяжелых случаях это - типичный мемори лик через мапу: когда ты льешь в мапу значения, но не имеешь возможности мапу чистить.

Так что даже в таких случаях переопределение хэшкода полезно.
Аноним 26/05/23 Птн 16:24:57 2712744 839
>>2712585
>И типа в методе hash в хэшлисте есть магия, что хэш иммутабельных классов с одинаковыми полями получается одинаковый

Пиздит. Надо было пруф с него стрясти.
Аноним 26/05/23 Птн 16:29:48 2712753 840
>>2712560
В хешмапе вообще только иммутабельные объекты как ключи можно хранить.
Аноним 26/05/23 Птн 16:49:52 2712784 841
>>2712753
Это не совусем правда.

Для хэшмапы важны гарантии консистентности equals + hashCode, плюс гарантии неизменности их результата. Если мутабельные поля не участвуют в вычислениях equals/hashCode, такой обьект еще может быть ключом.

Правда на практике делать ключом такой обьект все равно звучит как всратая идея.
Аноним 26/05/23 Птн 17:26:35 2712834 842
Имеется wsl и путь /home/<user>/projects/<project-name>

Открываю идею которая стоит на диске С и пытаюсь открыть проект по пути выше. Проект не открывается, просто на мгновение появляется окошко идеи типо сейчас открою и сразу же исчезает. Кто-нибудь с таким сталкивался? Как фиксить?

капча во
Аноним 26/05/23 Птн 17:30:05 2712840 843
>>2712834
открывай не проект в wsl а идею в wsl
Аноним 26/05/23 Птн 17:55:25 2712869 844
Аноним 26/05/23 Птн 17:57:10 2712871 845
>>2712869
Скачать линуксовую версию идеи. Нужен WSL 2.
Аноним 26/05/23 Птн 18:06:30 2712883 846
>>2712834
Ебанутый, открывай без wsl
Аноним 26/05/23 Птн 18:11:15 2712891 847
>>2712883
Ну просто как-то неудобно что если с вскодом я уже полностью считай перешёл на разработку внутри wsl, то с идеей так не получилось
Аноним 26/05/23 Птн 18:22:45 2712904 848
>>2712891
Вот и уёбывай в свой вскод.
Аноним 26/05/23 Птн 18:36:17 2712921 849
27/05/23 Суб 09:33:56 2713356 850
>>2712834
Ставь гнилукс и прогромизди в нем
Аноним 28/05/23 Вск 20:58:18 2714482 851
Кто-нибудь работал в компании "цифровые привычки",норм место или говно?
Аноним 29/05/23 Пнд 19:06:35 2715660 852
Как же я люблю груви нахуй, создатель груви выеби меня в жопу
Аноним 29/05/23 Пнд 19:10:26 2715666 853
>>2715660
А я люблю няшный шарпик :3
Аноним 29/05/23 Пнд 20:36:21 2715799 854
>>2715660
Ебать ты некрофил, чел.
Аноним 29/05/23 Пнд 20:53:40 2715808 855
29/05/23 Пнд 20:53:42 2715809 856
>>2715660
Я тоже.
Скинь телефончик.
Пожарим друг другу пуканчики
Аноним 29/05/23 Пнд 21:06:41 2715817 857
>>2715799
Все джависты - некрофилы.
Аноним 30/05/23 Втр 00:54:31 2715924 858
>>2715808
Джакарта так то тоже по сей день релизится. А на груви последний раз евангелисты дрочили где то в 2015м. Его щас вообще юзают где либо, кроме билд пайплайнов на градле?
Аноним 30/05/23 Втр 02:10:53 2715938 859
>>2715924
Билд пайплайны на дженкинсе. Всё.
Аноним 30/05/23 Втр 23:51:54 2716929 860
Хочу фронт, скрипты и конфиги на джаве.
Аноним 31/05/23 Срд 00:21:54 2716945 861
>>2716929
Вокруг Java ситуация неоднозначная. Со слов одних разработчиков, Java — это наше все. Другие удивляются, что Java еще жива. Я постарался посмотреть на ситуацию объективно и увидел следующее. Во-первых, известно, что приложения на Java работают в 1,5-2 раза медленнее приложений на C++. Вы согласны, чтобы ваш компьютер работал в 2 раза медленнее ради удобства программистов? Я — нет. Во-вторых, выяснилось, что хваленный Garbage Collector не только решает проблемы, но и создает новые. В частности, с работой GC связывают периодическое подвисание мобильных устройств, работающих на Symbian и Android. Также Java не лишена проблемы с нестандартными контролами.

Когда-то Sun (будучи тогда еще автономной компанией) строила грандиозные планы по захвату мира с помощью Java. Дескать все устройства от телевизионных пультов и микроволновок до DVD-плееров и мобильных телефонов будут иметь ПО, написанное на Java, а также взаимодействовать между собой с помощью одного протокола. Дескать Java-апплеты будут чуть ли не популярнее формата GIF.

Что получилось на практике? Апплеты оказались никому ненужными (за всю жизнь я на них натыкался от силы раза три). Среди десктоп-приложений Джаву сильно потеснил C#. Главным образом, за счет того, что технология .NET идет в комплекте с Windows, в то время, как Java еще нужно скачивать и устанавливать. Была надежда, что Java приживется на мобильных устройствах, но она умерла вместе с отказом Nokia от дальнейшего использования Symbian в пользу Windows Phone. Фактически, Java более-менее активно используется только на Android (и то, под него можно писать на C++) да под UNIX (куда, благодаря проекту Mono, активно проникает C#).

Дополнение: Недавно Java была исключена из Linux Standard Base. Выходит, даже в мире UNIX ей не рады.
Аноним 31/05/23 Срд 00:52:04 2716957 862
.png 111Кб, 798x390
798x390
.png 124Кб, 1020x543
1020x543
Аноним 31/05/23 Срд 00:57:59 2716960 863
Нахуя нужны апплеты? Есть же флеш.
Аноним 31/05/23 Срд 04:20:22 2717031 864
2007.mp4 292Кб, 480x360, 00:00:06
480x360
>>2716945
>>приложения на Java работают в 1,5-2 раза медленнее приложений на C++
>>с работой GC связывают периодическое подвисание
>>на Symbian
>>Апплеты
>>десктоп-приложений
>>Nokia
Как там в 2007?

>>Sun строила грандиозные планы по захвату мира с помощью Java
Поэтому сделало ее бесплатной, отказалась продаваться микрософту и одним из условий продажи ораклу сделала бесплатность джавы?
Совсем не микрософт, который разорил нокию и скупил патенты за бесценок, чтоб жить на проценты
Аноним 31/05/23 Срд 04:55:10 2717040 865
Компания Sun Microsystems объявила о возможности бесплатного использования полнофункциональных версий сред разработки Sun Java Studio Creator 2004Q2 и Sun Java Studio Enterprise 8.

Для скачивания программ необходимо зарегистрироваться в Sun Developer Network (SDN).
Аноним 31/05/23 Срд 08:24:55 2717081 866
javaMovie.jpg 80Кб, 1200x625
1200x625
Хочу сделать на Java Spring приложение - социальную сеть для любителей фильмов.
Чтобы можно было обсуждать фильмы, выставлять им рейтинг, вступать в группы фанатов того или иного фильма, постить различные фан-арты.

Есть ли курс, который может обучить этому?
Аноним 31/05/23 Срд 08:48:37 2717096 867
Аноним 31/05/23 Срд 08:51:08 2717099 868
Аноним 31/05/23 Срд 12:16:26 2717273 869
Хочу фронт, скрипты и конфиги на джаве.
Аноним 31/05/23 Срд 12:51:01 2717338 870
>>2717273
>скрипты на джаве
Мам я многословный ООП долбаёб
Аноним 31/05/23 Срд 12:55:11 2717343 871
>>2716945
>Я постарался посмотреть на ситуацию объективно

>объективно

>Во-первых, известно, что приложения на Java работают в 1,5-2 раза медленнее приложений на C++...

И просто с первого предложения, не читая дальше, размазываю смачный харчок ботинком об ебало демагога ебаного.
Аноним 31/05/23 Срд 13:01:30 2717354 872
>>2717081
Эт ты тот чел, который кинопоиск делал пару перекатов назад?
Аноним 31/05/23 Срд 13:29:36 2717391 873
>>2717273
Сори, но ты не в сишарпе где все это делается легко и элегантно с поддержкой инструментария от вендора, который является самой технологичной компании современности)
Аноним 31/05/23 Срд 13:56:33 2717412 874
Аноним 31/05/23 Срд 16:57:22 2717658 875
>>2717273
>>Хочу фронт
>>скрипты на джаве.
гугли JavaScript
Аноним 31/05/23 Срд 17:48:31 2717731 876
>>2684600
Это джава кастрированный. Вот в жс можно всунуть строчку, а потом впихнуть в нее цифру и вернуть цифрой из функции. А вы, ну жертвы бюрократии.
Аноним 31/05/23 Срд 17:52:22 2717737 877
Перекат из жабы в шарпик.
Аноним 31/05/23 Срд 18:03:42 2717757 878
>>2717731
Мы скоро тоже сможем через STR."мам я \{долбоеб}". Разве не чудо-синтаксис?
Аноним 31/05/23 Срд 18:19:07 2717785 879
>>2717273
>скрипты
groovy неплохая штука.
Аноним 31/05/23 Срд 20:01:57 2717903 880
>>2717273
Уже делали реакт компоненты, от классов в итоге все отказываются.
Аноним 31/05/23 Срд 20:08:45 2717910 881
Аноним 01/06/23 Чтв 00:11:06 2718115 882
>>2717731
В джаве тоже можно, только безопасней.
Аноним 01/06/23 Чтв 00:41:20 2718129 883
>>2716945
>с работой GC связывают периодическое подвисание мобильных устройств, работающих на Symbian
Этот скуф-байтоеб и на 2011 году не шарил. Нативные симбиановские приложухи писались на плюсах, а жаба там была на уровне java me, как и в обычных телефонах.
И как раз то, что оно писалось на плюсах и привело к тому, что там был очень неудобный sdk, отвратительная обратная совместимость приложений для разных версий симбиана и встроить магазин приложений было очень сложной задачей, нокия смогли это сделать только через 2 года после выхода ios на рынок.
Аноним 01/06/23 Чтв 01:45:58 2718151 884
Эх, вот бы перенестись в 2011, сидел бы за ЭЛТ-монитором, писал бы в эклипсе на пятой джаве.
Аноним 01/06/23 Чтв 11:13:33 2718317 885
зумер5.png 1224Кб, 828x1101
828x1101
>>2718151
в 2011 были лсд мониторы 17 дюйков. ЭЛТ это примерно 2000-2005
Аноним 01/06/23 Чтв 14:21:07 2718484 886
>>2717391
Тебе за рекламную интеграцию хоть майки заплатили?
Аноним 01/06/23 Чтв 16:56:37 2718673 887
Аноним 01/06/23 Чтв 21:12:51 2718949 888
Посоветуйте книгу по спринг буту. Я с ним постоянно работатаю, какие-то хуйни делаю, но иногда понимаю, что брям базу в нём не всю знаю, так что хочу книгу, которая мне прям с основ всё объяснит.
Аноним 01/06/23 Чтв 21:26:33 2718961 889
>>2718949
Define база. Что это? Кишки?
Аноним 01/06/23 Чтв 21:36:31 2718967 890
>>2718949
>>2718961
Если хочется представление сложить о том, как спринг изнутри анноташки обрабатывает, то это Борисов "Спринг-потрошитель". Но надо учитывать что анноташка анноташке рознь: если базовые Bean, Autowired, PostConstruct/PreDestroy - прероганива кор-фреймворка, с его биндефинишенами и постпроцессорами, то аспектные аннотации уже будут про кодогенерацию средствами CGLIB, а ORM'ные Entity - JPA и их референс имплементаций - каждая тема гуглится и изучается отдельно.

Если под "основами" ты имеешь ввиду "что спринг вообще умеет и как его можно варить чтоб было круто", но ничего банальнее каких нибудь книг по спрингу от маннинга/орили тебе никто не посоветует. Либо официальная документация - она довольно хорошо раскрывает пользовательский аспект.
Аноним 02/06/23 Птн 00:23:37 2719072 891
Аноним 02/06/23 Птн 00:46:28 2719080 892
>>2718949
Дока по кору и буту.
Аноним 02/06/23 Птн 14:45:28 2719546 893
15460235359600.jpg 84Кб, 512x512
512x512
Стоит использовать ReactiveCrudRepository в пете? Что там сейчас с кэшированием, отложенной загрузкой? Caffeine Cache?
Аноним 02/06/23 Птн 15:37:48 2719604 894
Аноним 02/06/23 Птн 22:12:55 2720036 895
Господа, оцените синхронизатор https://github.com/anywaythanks/ExtendedSynchronizers

По сути это Thread.sleep, но с тиками и разделенными методами выделения промежутка времени и непосредственно блокировки(block). Плюс там тесты лежат, тоже хотелось бы узнать, насколько я по еблански их написал.
Аноним 02/06/23 Птн 22:33:29 2720045 896
Аноним 02/06/23 Птн 22:39:26 2720050 897
>>2720045
А нахуя мне реальное время-то? Главное отличие условного, от реального, что я могу остановить его течение в любой момент.
По поводу реализации есть что сказать?
Аноним 02/06/23 Птн 22:54:00 2720058 898
>>2720050
>Главное отличие условного, от реального, что я могу остановить его течение в любой момент
с такими заявлениями те к санитару нах 💉
Аноним 02/06/23 Птн 23:06:10 2720073 899
>>2720058
Инкрементируя каждую секунду переменную t мы назовём эту переменную условной поскольку в любой момент можем как перестать её увеличивать, таким образом "остановив" её, или начать декрементировать повернувшись время вспять. Также может сменить время с одной секунды, до скажем 100мс, таким образом ускорив временной поток.
Чел, помимо оффтопа есть что сказать? Просто посмотри код или не еби мозги, если впадлу.
Аноним 03/06/23 Суб 00:04:01 2720097 900
Screenshot from[...].png 69Кб, 610x683
610x683
Screenshot from[...].png 5Кб, 646x109
646x109
>>2720036
Чет дедлокнулся. Или ЧЯДНТ?

ЗЫЖ чел, тыб хоть документацию внятную написал, примеры там вбросил бы, а тож нихуя не понятно (даже по тестам).
Аноним 03/06/23 Суб 00:13:09 2720101 901
Screenshot from[...].png 75Кб, 1380x241
1380x241
Screenshot from[...].png 204Кб, 1573x543
1573x543
Screenshot from[...].png 77Кб, 656x717
656x717
Аноним 03/06/23 Суб 00:16:37 2720103 902
>>2720045
Тихо там, в петушином углу. В кои то веки в тред зашел кто-то, кто не чмоха-шарпист и не нытик-вкатун - цени момент блять.
Аноним 03/06/23 Суб 00:40:30 2720113 903
>>2720097
Ну, ты зарезервировал три тика. Три тика прошли?
Спеки я писать не умею нормально, к сожалению.
Ещё как локи, их надо освобождать через relax().

По сути, есть временная шкала, которая задаётся количеством вызовов tick(). Теперь относительно этой шкалы мы можем обозначить метод reserve(), который берет нынешнее количество вызовов и протягивает вперёд момент, до которого могут вызываться тики.
Т.е. если до этого было вызвано 30 tick(), то метод reserve(5) скажет, что значение 35 достигать не надо. Пока не будет вызван relax, который уберёт тред из учёта метода tick() или не будет вызван ещё один reserve(>0) тики будут блокироваться.
await() же просто морозит тред до достижения тиков. Не знаю понятно ли....
Аноним 03/06/23 Суб 00:43:50 2720116 904
>>2720113
Ну и ещё очевидно, что я никак не могу гарантировать момент вхождения тредов в учёт.
Поэтому нужны защёлки для тестов.
Аноним 03/06/23 Суб 00:47:26 2720119 905
>>2720097
Бля, непонятно пояснил.
У тебя первый тред зарезервировал 2 тика. Более он ничего не резервировал. Программа ожидает, что он или сыбет через relax(), ну или зарезервирует себе ещё квантов.
Аноним 03/06/23 Суб 00:48:11 2720120 906
>>2720113
>Ну, ты зарезервировал три тика.
Тащемто пять - три в одном треду и два в другом. Или ты о чем?

>Три тика прошли?
Нет, не прошли. На втором тике и случился дедлок. Разве не видишь?

>Не знаю понятно ли....
Не очень

Давай так - если видишь что я неверно юзаю твой тикер, поправь код и пришли обратно.
Аноним 03/06/23 Суб 00:53:20 2720122 907
Аноним 03/06/23 Суб 01:16:56 2720145 908
>>2720120
>Тащемто пять - три в одном треду и два в другом. Или ты о чем?
Они индивидуальны для каждого треда. Ну т.е. каждый тред резервирует тики под себя и tick() учитывает все это множество резерваций. В твоём случае:
Tick: |1|2|....
TP1: |..2..| sout(...);
TP2: |..3.......

.... - это ожидание
Аноним 03/06/23 Суб 01:37:51 2720154 909
Screenshot from[...].png 74Кб, 583x763
583x763
>>2720122
Пикрил сработал

>>2720145
Он не дошел до третьего тика, он заблокировался на втором

Кароч мой вердикт такой - я вроде бы примерно понял чего ты добиваешься, но для меня все еще странным выглядит то, что я прям обязан был сделать релакс из треда. Это неочевидно, небюезопасно, неудобно и как будто бы этого можно было избежать.

Я еще покурю это твое поделие, и может еще чего добавлю к вышесказанному.
Аноним 03/06/23 Суб 01:47:57 2720158 910
>>2720154
>но для меня все еще странным выглядит то, что я прям обязан был сделать релакс из треда
Воспринимай как unlock(). Ну или release() у семафора. Обычное дело, вроде. Хотя могу ошибаться
Аноним 03/06/23 Суб 01:52:31 2720159 911
>>2720158
А, ок. Аналогия понятна
Аноним 03/06/23 Суб 03:02:16 2720168 912
>>2706092
Это для операционной системы надо. Поэтому это практически во всех языках есть. >>2706112 а, понятно
Аноним 03/06/23 Суб 04:46:58 2720171 913
>>2717081
Нет,это невозможно,можешь даже не пытаться
Аноним 03/06/23 Суб 17:02:40 2720587 914
Время тупых вопросов вкатуна
Читаю CoreJava Хорстманна, он там предлагает использовать nextline braces
Хотя какой код не смотрел, да и в idea по умолчанию end of line. И стандарт у oracle вроде так. Таки кринж ли это? Как вы ставите скобки, анончики?
Аноним 03/06/23 Суб 17:06:55 2720597 915
>>2720587
Это зависит от принятых в компании соглашений. Как скажут ставить, так и будешь.
Аноним 03/06/23 Суб 17:28:52 2720633 916
>>2720597
В этом-то сомнений нет
>работать в компании
Пока-что для меня, быдла, звучит как сказка
Аноним 03/06/23 Суб 17:40:26 2720647 917
>>2720633
Не уходя далеко от кора, оценишь синхронизатор? >>2720036
Аноним 03/06/23 Суб 17:57:40 2720663 918
twinpeaksdaleco[...].jpg 119Кб, 550x366
550x366
Аноним 03/06/23 Суб 20:27:40 2720818 919
SmgaIiTfPk.png 24Кб, 632x191
632x191
так можно делать? Или на ревью будет атата?
Аноним 03/06/23 Суб 21:01:17 2720848 920
>>2720818
Это че за язык и методы? Такого говна в стд нет.
Аноним 03/06/23 Суб 21:18:12 2720860 921
>>2720818
Если за 10 секунд не можешь придумать ничего лучше — можно.
Аноним 03/06/23 Суб 21:18:42 2720861 922
>>2720818
А вот объявлять переменные по классу, а не интерфейсу, когда интерфейс есть — моветон.
Аноним 03/06/23 Суб 21:21:44 2720865 923
>>2720073
Поговорил с зелёным.
Аноним 03/06/23 Суб 22:19:42 2720888 924
>>2720865
Ну если мне только он тогда написал... Чеб нет-то?
Аноним 03/06/23 Суб 22:31:01 2720892 925
>>2720818
Можно в один compute уложиться.
Аноним 03/06/23 Суб 22:36:25 2720898 926
>>2720818
В чем суть кода? В стриме есть коллектор с подсчётом, если нужно подсчитать количество букв в алфавите
Аноним 04/06/23 Вск 02:06:26 2721009 927
Посоветуйте мастхэв книги по сисдизу
Аноним 04/06/23 Вск 07:22:50 2721031 928
Почему не сделали нормальных консольных команд, чтобы управлять проектом целиком? К примеру, для сборки и запуска достаточно было бы набрать: dotjdk run
Аноним 04/06/23 Вск 07:28:09 2721033 929
гiт.jpg 3Кб, 44x235
44x235
Как сделать, чтобы было видно количество незакоммиченных файлов в идее, также как в вс коде?
Аноним 04/06/23 Вск 07:33:29 2721034 930
Может я тупой, но где находится официальная документация по Спрингу? Захожу на spring.io и там одни мурзилки и ни какой документации.
Аноним 04/06/23 Вск 07:56:18 2721036 931
Аноним 04/06/23 Вск 09:21:27 2721060 932
Аноним 04/06/23 Вск 13:48:09 2721183 933
Аноним 04/06/23 Вск 14:28:22 2721205 934
>>2721183
>ctrl + k
Надо чтобы над кнопочкой git был кружочек с циферкой
Аноним 04/06/23 Вск 14:31:48 2721210 935
Аноним 04/06/23 Вск 14:41:05 2721218 936
>>2721205
Напиши свой плагин для идеи с кружочком и цыферкой. Ну или поищи в готовых - может уже нашелся такой же дегенерат.
Аноним 04/06/23 Вск 14:53:21 2721228 937
>>2721210
Всегда видно, что забыл закоммитить файлы, а я часто забываю.

>>2721218
Мне сказали, что надо развиваться в сторону веб-приложений, а плагины для идеи - это десктоп.
Аноним 04/06/23 Вск 15:15:53 2721246 938
>>2721228
Напиши автокоммитер по входу и выходу из иде + кд.
Аноним 04/06/23 Вск 20:47:37 2721534 939
Аноним 04/06/23 Вск 23:37:24 2721626 940
.png 72Кб, 1200x678
1200x678
Ну, джавач, пришло время строить график постов в день за последние 5 (пять) тредов. Выводов, однако, делать не буду, слишком уж всё неоднозначно, Моё дело построить график.
Аноним 04/06/23 Вск 23:40:58 2721629 941
Дали задание сделать контроллер возвращающий изображения. Уже прикрутил минио,все загружается пиздато. Проблема в том что возвращаю я byte[] а это вообще прочитать нереально,тупо огромная строка. В связи с этим вопрос,как возвращать пикчи из контроллера?
Аноним 04/06/23 Вск 23:47:35 2721632 942
>>2721629
Если статика, возвращать её правильно через Nginx. А так, вроде, были какие-то варианты с инпутстримами, чтобы не загружать данные целиком в память.
Аноним 04/06/23 Вск 23:56:38 2721638 943
>>2721626
Тут определённо замешаны жиды.
Аноним 05/06/23 Пнд 00:08:40 2721640 944
Аноним 05/06/23 Пнд 03:35:57 2721683 945
Инкапсуляция — антипаттерн.
Аноним 05/06/23 Пнд 07:11:38 2721710 946
>>2721626
Шансы вката около нулевые, вот все и разбежались.
Аноним 05/06/23 Пнд 07:14:18 2721712 947
>>2721683
Надеюсь, твоё утверждение учитывает, что private не имеет никакого отношения к инкапсуляции?
Аноним 05/06/23 Пнд 08:21:56 2721742 948
>>2721712
А что тогда инкапсуляция?
Аноним 05/06/23 Пнд 09:30:51 2721822 949
>>2721742
Сокрытие инфы. К примеру, инкапсуляция спринга - когда скрывают инфу по спрингу от вкатутось.
Аноним 05/06/23 Пнд 10:36:56 2721891 950
>>2721629
>Дали задание сделать контроллер возвращающий изображения
Вангую, что у вас нет техлида, раз вы такой хуетой занимаетесь

>Уже прикрутил минио
Лицензию чекни, прикручиватель, лол!

>В связи с этим вопрос,как возвращать пикчи из контроллера?
Никак? Неужели это так сложно понять? Ну не нужно статику раздавать из своего приложения на жабе, лол. Ну положи ты файл в свою файлопомойку, а в базе сохрани url или айди до файла. Его и возвращай. Или как уже рекомендовали, сделай хитрую проксю на nginx'е, которая будет таскать файлы из файлопомойки
Аноним 05/06/23 Пнд 12:29:43 2722029 951
>>2721742
>>2721822

>Инкапсуляция
>Сокрытие инфы

Аккуратнее. Инкапсуляция - вобще не про сокрытие данных, это довольно распространенное заблуждение. Если ляпнуть такое на собесе какому нибудь душниле, можно и отьехать ненароком.
Аноним 05/06/23 Пнд 12:46:51 2722051 952
>>2721891
Может его картинка - не статика? Может у него сервис, генерирующий изображения? Че так сразу с плеча то рубить - "никак"?


>>2721629

Как то так примерно:

@RequestMapping(value = "/download", method = RequestMethod.GET)
public ResponseEntity download() throws IOException {
String filePath = "PATH_HERE";
InputStream inputStream = ... // здесь стрим с твоей картинкой
InputStreamResource inputStreamResource = new InputStreamResource(inputStream);
HttpHeaders headers = new HttpHeaders();
headers.setContentLength(Files.size(Paths.get(filePath)));
return new ResponseEntity(inputStreamResource, headers, HttpStatus.OK);
}



Мимо
Аноним 05/06/23 Пнд 13:27:51 2722105 953
>>2722029
А вот и нет! Александр Шевчук как раз и говорит, что инкапсуляция - это про сокрытие информации, а не про объединения данных и кода
https://youtu.be/nFNpDqrmCug
Аноним 05/06/23 Пнд 13:31:30 2722108 954
>>2722105
Кто это такой блять? Твой протыкласник?
Аноним 05/06/23 Пнд 13:38:27 2722113 955
>>2722105
Таймкодов ты конечно не даш, да?

Кто это вообще? Реинкарнация Бугаенко на шарпах? Почему он говорит голосом Михалкова с БесогонТВ? "Власти скрывают"?

Чет ору
Аноним 05/06/23 Пнд 15:16:48 2722235 956
Шевчук об ООП.webm 19959Кб, 1280x720, 00:01:20
1280x720
Аноним 05/06/23 Пнд 15:34:32 2722261 957
>>2722235
Ну кароч я понял, опять какой то эксгибиционист вывалил свой ООП-срам наголо.

Можно конечно похоливарить об ООП, это весело и задорно, но выше я всего лишь хотел предупредить вкатунов (которых здесь по всей видимости - подавляющий процент), что трактование инкапсуляции как средства для сокрытия данных на собкесе может быть чревато фейлом.
Аноним 05/06/23 Пнд 16:03:02 2722296 958
Почему для строк используется UTF-16? Ведь она тратит лишний байт на символы из ASCII, а они встречаются чаще остальных. С другой стороны UTF-16 недостаточно, чтобы хранить вообще любой символ юникода, т.к. уже надо 4 байта для этого. Не проще было бы использовать UTF-8 как в нормальных языках типа Go?
Аноним 05/06/23 Пнд 16:05:01 2722299 959
Аноним 05/06/23 Пнд 16:13:53 2722302 960
>>2722296
>Ведь она тратит лишний байт на символы из ASCII

В джаве - не тратит, благодаря фиче Compact Strings
Аноним 05/06/23 Пнд 16:34:24 2722348 961
>>2722296
UTF-8 придумали на 20 лет позже
Аноним 05/06/23 Пнд 16:36:57 2722351 962
Аноним 05/06/23 Пнд 16:40:33 2722353 963
UTF-4
Аноним 05/06/23 Пнд 16:40:41 2722354 964
Аноним 05/06/23 Пнд 16:42:15 2722356 965
>>2722353
Шестнадцатеричные дампы?
Аноним 05/06/23 Пнд 17:12:18 2722394 966
>>2722354
А я-то думал...
К слову, а почему вместо изменения/написания сразу алгоритма хэша, который не будет выдавать ноль, оракл добавила флаг isZero? Причём столько мялась перед этим...
Аноним 05/06/23 Пнд 17:28:51 2722412 967
>>2722356
Да, двумя байтами UTF-4 кодируется один байт сырых данных.
Аноним 05/06/23 Пнд 20:26:23 2722674 968
>>2722261
всё это вкусовщина, как и все эти solid dry restful и подобное. Не угадаешь мнение собеседующего - ты в пролёте
Аноним 06/06/23 Втр 06:57:39 2722858 969
>>2722348
Нет, utf-8 придумали на год позже, чем utf-16 и за 3 года до выхода первой версии джавы.
Аноним 06/06/23 Втр 07:45:37 2722875 970
>>2722858
Википедию про ucs-2 поридж не дочитал?
Аноним 06/06/23 Втр 11:53:34 2723046 971
на собесе был вопрос: "отчего может течь память?"

Я ответил что не закрытые пулы потоков, кеш без задания лимитов или инвалидации, статические коллекции живут всё время жизни приложения.
Что ещё можно добавить?
Аноним 06/06/23 Втр 11:55:53 2723047 972
>>2723046
Память может течь от использования джавы.
Аноним 06/06/23 Втр 12:38:18 2723074 973
>>2723046
Чаще всего память течет во время сексуального возбуждения. JVM чувствует страсть и сильные эмоции, думая о сексе или объекте своего вожделения. Вместе с возбуждением, появляется и напряжение в области живота, после чего можно заметить выделения на трусиках.
Аноним 06/06/23 Втр 12:40:28 2723075 974
>>2723046
Какие ещё не закрытые пулы потоков? И че, много память течёт от них? Ещё коллекции статические... Как они тебе мешают?
Я не понимаю, что значит течёт... Если ссылка есть, значит она нужна(?).
Как по мне, это использование ссылок таким образом, что они пропихиваются в old gen, и будут ожидать полной очистки гц. Типо кривого линкед листа. Ну или использование паттерна object pool.
Ещё операциями со string память может засраться.
Аноним 06/06/23 Втр 12:48:45 2723081 975
>>2723046
ArrayList только расширяется. Даже если удалить все элементы, то массив под капотом по прежнему будет жрать память.
Аноним 06/06/23 Втр 13:04:04 2723095 976
>>2723081
А какая вероятность, что лист снова не расширится до такого же размера? И куда, к слову, данные делись...
Аноним 06/06/23 Втр 13:06:34 2723102 977
>>2723075
это когда потребление памяти растёт, а сборщик мусора не помогает
Аноним 06/06/23 Втр 13:08:59 2723104 978
>>2723095
Я бы рекомендовал перейти на LinkedList, чтобы сборщик мусора мог спокойно работать.
Аноним 06/06/23 Втр 13:12:47 2723110 979
>>2723104
Он жрёт больше памяти раза эдак в три.
>>2723102
Ну значит так и задумано, не? Или это вопрос про то, что вроде ссылки есть но использовать мы их не будем?
Аноним 06/06/23 Втр 13:19:02 2723121 980
Untitled5.png 28Кб, 1416x672
1416x672
>>2723110
не, так не задумано.
Написал ты приложуху, она через сутки работы падает с ООМ. Смотришь мониторинг - потребление памяти растёт пилообразно. Значит течёт память. Куда смотреть что проверять?
Аноним 06/06/23 Втр 13:20:33 2723125 981
>>2723110
Если на твой сайт зашёл пользователь, что-то поделал и тем самым увеличил ArrayList, то через пару дней память закончится и сайт начнёт тормозить. Придётся звонить админам и просить перезагрузить сервак.
А если используешь LinkedList, то сборщик сам всё почистит и не надо сервак перезагружать.
Аноним 06/06/23 Втр 13:22:19 2723128 982
>>2723121
Дамп кучи, но вообще этим точно джун будет заниматься...
Аноним 06/06/23 Втр 13:23:59 2723131 983
>>2723125
А нахуй его хранить-то? Он пожелал в отдельном треде и благополучно тред исдох. Как и связанные данные.
Аноним 06/06/23 Втр 13:24:19 2723133 984
>>2723128
ну и что ты увидишь в этом дампе? Какой-нибудь ноунейм эррей лист или стринг в 1гб. Что это и откуда это?
Аноним 06/06/23 Втр 13:24:48 2723135 985
>>2723131
Ну точнее таске, а не треде. Щас бы треды заводить на каждого юзера
Аноним 06/06/23 Втр 13:26:04 2723137 986
>>2723131
вот я про эту ситуацию говорил. Если в пользовательском потоке создали и запустили тред пул. Пользовательский поток благополучно сдох, а тред пул продолжает жить
Аноним 06/06/23 Втр 13:30:22 2723145 987
>>2723137
И? Тредпул должен завершаться тогда, когда все завершается. Че каждый раз тредпулы создавать?
Аноним 06/06/23 Втр 13:31:42 2723148 988
>>2723133
Там наверняка можно проследить источник.
Аноним 06/06/23 Втр 13:32:09 2723150 989
>>2723145
нет, тредпул это тред. Он остается жить после запуска если его руками не завершить. Даже если родительский тред помрёт
Аноним 06/06/23 Втр 13:34:39 2723155 990
>>2723150
Бля, у тебя есть глобальный тредпул для обработки юзеров. Он начинается и завершается, соответственно при начале и конце работы сервера или че там.
Нахуй его трогать вообще? Прикол тредпулов как раз в том, чтобы каждый раз не создавать треды, а ты какую-то хуйню делать хочешь
Аноним 06/06/23 Втр 13:36:20 2723161 991
jvisualvm-Heap-[...].jpg 83Кб, 500x404
500x404
>>2723148
в куче нет информации о источнике
Аноним 06/06/23 Втр 13:38:27 2723164 992
>>2723155
получил ты свой тред для юзера. И внутри хочешь сделать параллельное долгое вычисление. Создаешь тред пул, запускаешь, отдаешь результат. Если не сделать threadpool.shutdown(), то он будет продолжать жить, даже если ссылки на него нет
Аноним 06/06/23 Втр 13:52:00 2723182 993
>>2723150
>Он остается жить после запуска если его руками не завершить. Даже если родительский тред помрёт

Не всегда. Треды-демоны дохнут сами, если кроме них тредов не осталось.
Аноним 06/06/23 Втр 13:52:43 2723183 994
>>2723161
Да вродь есть.
http://blog.rejeev.com/2009/04/analyzing-memory-leak-in-java.html
Повторюсь, это вообще не головная боль джуна... Нахуй об этом спрашивать?
>>2723164
>Создаешь тред пул
Нет, не создаю. Параллельным долгим вычислением должен заниматься другой класс и это его проблемы, че он там освобождает, а че нет. А уж он и вовсе может использовать RecursiveTask, там не надо освобождать ниче.
>Если не сделать threadpool.shutdown()
Если один тред навечно заблокировался, то все равно "утечка" будет.
Аноним 06/06/23 Втр 14:05:20 2723197 995
OoTwQWGf7U.png 42Кб, 772x635
772x635
>>2723182
пул это не демон. Для примера вот запустил и оно продолжает висеть
Аноним 06/06/23 Втр 14:09:36 2723200 996
image.png 42Кб, 776x624
776x624
Аноним 06/06/23 Втр 14:26:31 2723212 997
>>2723200
выебнулся, молодец
Аноним 06/06/23 Втр 14:36:39 2723228 998
>>2723212
Всм выебнулся? Это ты хуйню несешь.
Аноним 06/06/23 Втр 15:38:04 2723339 999
>>2723046
>не закрытые пулы потоков
Формально оно конечно так, но это какой то всратый кейс - ты в лик уйдешь таким образом если совсем тупое начнешь делать, типа создания и прогрева новых тредпулов снова и снова в бесконечном цикле.

>кеш без задания лимитов или инвалидации
Слишком абстрактно. Какой конкретно кэш?

>Cтатические коллекции живут всё время жизни приложения
Ну и что? Классы тоже обычно живут все время жизни приложения - че теперь считать класслодинг мемори ликом?

Вот кейсы, встреченные мной из практики:

- Утечка памяти по хэшу: если ты используешь хэшмапу с мутабельным ключом, в тот момент как ты записал что-то в мапу и смутировал ключ, значение из мапы ты больше ни удалить ни получить не сможешь. Это наверное самый упоминаемый кейс утечки.

- Класслодер-лики: редкий случай, встречается в окружениях где есть кастомные класслодеры, типа OSGi. Если ссылка на класс, загруженный одним класслодером, просочится в класс, загруженный другим класслодером, при деаллокации первого класслодера его классы не соберутся сборщиком и останутся висеть в системе мусором. В тяжелых слуаях может дойти до того, что в одном рантайме один класс может быть загружен десятки раз, а его инстансы на instanceof <Classname> будут давать false.
Аноним 06/06/23 Втр 15:39:31 2723344 1000
Аноним 06/06/23 Втр 19:01:02 2723738 1001
>>2722029
Нет,инкапсуляция это про сокрытие внутренней реализации и только про нее. На твоих сектантов всем сраьь
Аноним 06/06/23 Втр 19:22:00 2723766 1002
image.png 109Кб, 734x288
734x288
>>2723738
Ну вон гетц разделяет эти понятия. Тоже сектант?
Аноним 06/06/23 Втр 20:59:24 2723839 1003
Аноним 06/06/23 Втр 23:47:29 2723969 1004
Аноним 06/06/23 Втр 23:49:28 2723971 1005
Аноним 07/06/23 Срд 02:30:19 2724038 1006
>>2723969
Это Jupyter? С этим несколько часов возиться. Лучше сам выучи синтаксис джавы по какой-нибудь мурзилке https://metanit.com/java/tutorial/ и по ходу дела спрашивай здесь о конкретных проблемах, которые у тебя возникли.
Аноним 07/06/23 Срд 06:20:29 2724071 1007
Джавапетуханы, там скоро выходит новая версия нашего любимого джавапетухатника.
Обещают сделать из Java нормальный язык, а не хуйню для написания энтерпрайзного говна для банков.
Аноним 07/06/23 Срд 06:30:12 2724077 1008
>>2724071
>Обещают сделать из Java нормальный язык, а не хуйню для написания энтерпрайзного говна для банков.
Иш чаво удумали, хуй им.
А можешь джепы по скидывать, че там введут?
Аноним 07/06/23 Срд 06:45:49 2724079 1009
Аноним 07/06/23 Срд 07:38:46 2724083 1010
>>2724079
М-да... Ниче себе они там напланировали. Как 8 жава. Жалко, что они пока предварительны.
Аноним 07/06/23 Срд 07:50:03 2724088 1011
>>2724071
Мне в текущем проекте пригодился бы Pattern Matching for Switch, который в 21ой выйдет из превью. Но 21ая выйдет в конце сентября, а мне проект в середине августа сдавать.
Другой проект мы с 11 на 17 очень легко перевели.

Вот теперь думаем насчет спрингбут 3. Там все намного хуже с обратной совместимостью. И пока я не увидел нужных фичей в 3.1 по сравнению с 2.7.
Аноним 07/06/23 Срд 14:20:31 2724471 1012
>>2724038
>Jupyter
Это пример нейронной сети на phyton'e. Трехуровневая с тремя входами и двумя выходами. У меня не получается в конце что-то.
Веса корректируются, но в конце, после обучения, если взять получившиеся веса и подставить ко всем нейронам - сеть будет работать плохо. Хотя при обучении все веса встают нормально к разным вариантам входных данных...
Аноним 07/06/23 Срд 15:10:03 2724585 1013
В чем разница между ветками main и Master, куда делать коммит ?!?!
ААААААА
Аноним 07/06/23 Срд 15:21:58 2724595 1014
>>2724585
main - если ты сойжак куколд
master - если ты шлепа гигачад
Аноним 07/06/23 Срд 15:27:07 2724601 1015
>>2724585
Коммит делать в feature и вливать в develop. Остальное тебя ебать не должно.
Аноним 07/06/23 Срд 16:15:26 2724669 1016
А как вы делаете странички на сайтах? С помощью PHP или с помощью Java?
07/06/23 Срд 16:25:55 2724677 1017
Аноним 07/06/23 Срд 16:46:42 2724703 1018
Аноним 07/06/23 Срд 17:39:07 2724746 1019
>>2724669
Я с помощью РНР делаю
Аноним 07/06/23 Срд 17:47:40 2724752 1020
Аноним 07/06/23 Срд 17:51:03 2724757 1021
>>2724752
Или наркоманский rebase.
Аноним 07/06/23 Срд 19:45:56 2724935 1022
>>2724595
>>2724601
>>2724757
GitHub начал по дефолту создавать главную ветку с названием main,
в то время как IntellijIdea делает коммит в ветку master.
Аноним 07/06/23 Срд 19:47:32 2724938 1023
>>2724935
Жетбрейнсы опять соснули? Вот ведь пидорская контора...
Аноним 08/06/23 Чтв 01:04:09 2725304 1024
>>2724079
Почему лампасы из оракла решили, что
var scope = new StructuredTaskScope.ShutdownOnFailure()
лучше чем
var scope = StructuredTaskScope.shutdownOnFailure()
?
Первый вариант выглядит вообще не по джавиному.
Аноним 08/06/23 Чтв 01:13:51 2725314 1025
Аноним 08/06/23 Чтв 01:13:56 2725315 1026
>>2725304
Какбэ ShutdownOnFailure - класс, а не метод. Так что все максимально по джавовому.

Если тебя так это заботит, сделай статический импорт.
Аноним 08/06/23 Чтв 01:15:39 2725317 1027
>>2724669
С помощью jira и команды макак
Аноним 08/06/23 Чтв 01:49:05 2725329 1028
>>2725315
И че? Почему я должен внутренний класс создавать через new? Выглядит как шарп с их большими буквами.
Аноним 08/06/23 Чтв 01:49:43 2725330 1029
>>2725314
Ты еблан я че 50 минут смотреть буду?
Аноним 08/06/23 Чтв 01:53:30 2725332 1030
>>2725330
Куда-то торопишься? х2 и норм.
Аноним 08/06/23 Чтв 02:03:33 2725333 1031
>>2725332
Ты еблан я че 25 минут смотреть буду?
Аноним 08/06/23 Чтв 02:17:16 2725337 1032
>>2725333
Будешь, куда ты денешься?
Аноним 08/06/23 Чтв 02:34:52 2725350 1033
Аноним 08/06/23 Чтв 03:47:03 2725362 1034
Аноним 08/06/23 Чтв 03:47:44 2725363 1035
>>2725317
Jirно. Ну а они на чём?
Аноним 08/06/23 Чтв 06:40:11 2725374 1036
>>2725363
На реакте. С каким то кастомным юай китом, отчего регулярно получается "пук среньк, починить не можем, это баг кита, заявку отправили"
Аноним 08/06/23 Чтв 09:45:15 2725408 1037
Аноним 08/06/23 Чтв 10:23:22 2725434 1038
>>2725317
Ещё какую-то жиру надо учить? Сколько можно-то? Я что должен выучить всё говно, что насоздавали за 30 лет!?
Аноним 08/06/23 Чтв 11:21:42 2725501 1039
>>2725434
А представь каково врачам и юристам
Аноним 08/06/23 Чтв 11:53:28 2725578 1040
>>2725434
Да. Талмуд по джире на тыщу страниц. Как обычно.
Аноним 08/06/23 Чтв 12:22:58 2725620 1041
>>2725578
Еще по идее со всеми плагинами и по слаку/тимсу/етк.
Аноним 08/06/23 Чтв 12:25:56 2725626 1042
>>2725329
>Почему я должен внутренний класс создавать через new

Всмысле - "почему". Инстансы всех классов (кроме разве что енамов) создаются через нью, внутренние - не исключение.

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

Ну вот решили почему то ораклы обьявить этот класс внутри интерфейса. Первый раз чтоли? Еще раз тебе говорю - если тебе так сильно режут глаз шарпистские вайбы, просто статически проимпорть StructuredTaskScope.*
Аноним 08/06/23 Чтв 12:34:34 2725648 1043
Жидбрейнсы нагло врут про системки:
https://www.jetbrains.com/help/idea/installation-guide.html#requirements
Запускал на минимальном железе и идея полчаса запускалась, но так и не смог дождаться когда можно будет вводить код, постоянно что-то лагает и мешает работать.
Аноним 08/06/23 Чтв 12:45:30 2725661 1044
>>2725648
Но ведь запустилась же?)
Аноним 08/06/23 Чтв 12:51:28 2725679 1045
Тут есть такие же, как я, кто за год выучил только CORE?
мне походу реально нужен курс какой то платный, самому лень пиздец.
Аноним 08/06/23 Чтв 13:03:27 2725703 1046
Аноним 08/06/23 Чтв 13:59:04 2725782 1047
>>2725703
Да. Я за год прочитал двухтомник Хорстмана, посмотрел курс лекций по джава-кору на ютубе, прошел курс на степике и 60% стрека на hiperskills.
Потом еще за 8 месяцев прошел по maven+spring-core/boot+postgres+hibernate+spring data+http\rest+spring-mvc+html+js+docker+git/github по слитому отусу, баелдунгу и разным статьям на хабре. И написал три пета.
Потом 3 месяца ходил по собесам/стажировкам, залетел на курсы епама(во время перевода на стажировку они слились из рф).
Ну и в итоге имел штук 5 попусков на техсобесе. И 3 офера в галеры. Две были донные(в одну я походил на стажировку и свалил на испыталке, в другую не стал принимать оффер). Ну и была не совсем донная галера, где я полтора года уже работаю.
Аноним 08/06/23 Чтв 14:13:37 2725823 1048
>>2725648
Ну 2 гига это надо очень аккуратно запускать и следить чтоб ничего лишнего не было запущено, но на 4гб все вполне нормально должно работать
Аноним 08/06/23 Чтв 14:58:46 2725950 1049
>>2725782
>за год прочитал двухтомник Хорстмана
Ну не знаю... Мне кажется учить язык по книгам это жесть. Лично я предпочитаю статьи и видео.
Аноним 08/06/23 Чтв 15:02:31 2725955 1050
Уэсака Сумирэ в[...].webm 19584Кб, 1280x720, 00:01:23
1280x720
>>2725950
Если книг читать не будешь - скоро грамоту забудешь!
Аноним 08/06/23 Чтв 18:05:30 2726232 1051
Как убрать автоматические отступы (пробелы) между классом и полями, методами... ?
Аноним 08/06/23 Чтв 18:05:56 2726233 1052
Как убрать автоматические отступы (пробелы) между классом и полями, методами... ?
Аноним 08/06/23 Чтв 18:12:32 2726242 1053
Аноним 08/06/23 Чтв 18:19:04 2726245 1054
j2t3t3ntn3ng2.png 7Кб, 186x787
186x787
>>2726242
Мешает очень... Два отступа между методами, один мой, а второй который я не могу убрать.
Аноним 08/06/23 Чтв 18:28:03 2726251 1055
Аноним 08/06/23 Чтв 18:38:32 2726261 1056
Аноним 08/06/23 Чтв 18:59:50 2726287 1057
>>2726245
а ты про эту хуйню
выключи inlay hints
Аноним 08/06/23 Чтв 19:51:54 2726343 1058
Почему Solaris Os не написан на java ?
Аноним 08/06/23 Чтв 20:08:10 2726361 1059
>>2726343
А давно жава стала системным яп?
Аноним 08/06/23 Чтв 23:11:41 2726539 1060
>>2726343
Хуясе ты хтонь вспомнил. Я на солярке последний раз в 2012м работал.

Что забавно, у солярки времен Sun, помимо дефолтной CDE в качестве десктопа и оконного менеджера, существовала полностью функциональная альтернатива в виде Java Desktop System... которая на самом деле не была написана на Java, кек.
09/06/23 Птн 00:32:11 2726609 1061
>>2726343
Узнал про Solaris на Википедии? Молодец, можешь теперь обсудить это с теми, кто тоже узнал об этой хуйне на Википедии.
Аноним 09/06/23 Птн 00:40:25 2726613 1062
Аноним 09/06/23 Птн 00:42:04 2726615 1063
Аноним 09/06/23 Птн 02:50:01 2726650 1064
Аноним 09/06/23 Птн 14:42:51 2727082 1065
>>2723046
>статические коллекции живут всё время жизни приложения.
Почему так ? А поля статические тоже живут всё время жизни приложения ?
Аноним 09/06/23 Птн 15:51:11 2727124 1066
6b6wf321fnha.png 36Кб, 1034x247
1034x247
Дженерик тип List<> - это класс, который реализует интерфейс Comparable, а Comparable должен иметь дженерик тип класса, который является супер классом класса, который реализует Comparable ?
Аноним 09/06/23 Птн 15:54:26 2727130 1067
>>2727082
Статика живёт столько же, сколько сам класс. А класс живёт столько же, сколько живёт классдодер, который его загрузил. Чаще всего это время равно времени жизни процесса. Но не всегда.
Аноним 09/06/23 Птн 15:58:31 2727138 1068
>>2727124
Если по простому, для сортировки листа элементы этого листа должны впринципе поддерживать такое понятие, как сравнение себя с себе подобными. А super в дженерике потому, что если сравнение поддерживается для класса-родителя, для класса-потомкам оно тоже подойдёт.
Аноним 09/06/23 Птн 16:07:19 2727157 1069
Как же хочется классАнлоадер.
Аноним 09/06/23 Птн 17:56:18 2727392 1070
Гит хаб снёс мне всю работу и теперь я сижу переписываю. Ваши мысли ?
09/06/23 Птн 18:09:33 2727419 1071
>>2727392
А джава тут при том, что работа была написана на джаве?
Аноним 09/06/23 Птн 18:38:39 2727454 1072
09/06/23 Птн 18:42:48 2727465 1073
Аноним 09/06/23 Птн 19:12:42 2727535 1074
>>2727392
Я вот и говорю, что надёжней делать копии папок. А этот гитхаб говно полнейшее, хоть его сейчас и во всех вакансия требуют.
Аноним 09/06/23 Птн 19:25:12 2727566 1075
>>2727535
Ты не отличаешь гит от гитхаба, да?
Аноним 09/06/23 Птн 19:25:17 2727567 1076
>>2727535
Можно написать скрипт, при запуске которого будет сохранятся папка проекта в отдельную директорию и к названию сохраненного проекта будет добавляться дата.
Аноним 09/06/23 Птн 19:27:44 2727575 1077
Во время собеседования, после того как вы ответите на вопрос интервьюера, говорит ли интервьюер, правильно вы ответили или нет ? Или вам просто задают следующий вопрос ?
Аноним 09/06/23 Птн 19:32:15 2727589 1078
>>2727392
Зашо? Съездил в Крым в отпуск что-ли?
Аноним 09/06/23 Птн 19:42:25 2727602 1079
>>2727575
Собес - это не тест с правильными и неправильными вариантами ответа. Это диалог с целью оценить кандидата. И вопросы там обычно не имеют единственного правильного ответа, они скорее дискуссионные. типа двум людям задали один и тот же вопрос, и оба ответили верно, но первый смог сказать только пару предложений, а второй рассказал такое, о чём сам собеседующий не знал. Хотя когда чел несёт полную хуйню, ему обычно сразу об этом не говорят, только подводя итоги в конце собеса. Но можно понять по реакции, понравился ли им твой ответ.
Аноним 09/06/23 Птн 20:11:39 2727656 1080
json.JPG 14Кб, 588x371
588x371
https://apilayer.com/marketplace/currency_data-api?utm_source=apilayermarketplace&utm_medium=featured

Есть вот такое вот АПИ. Оно может принимать одну, либо несколько валют. Ответ соответственно тоже может содержать либо один, либо несколько объектов. Пример ответа на пикрил.

Как его правильно парсить, если не знаешь точное количество объектов в поле rates?
Аноним 09/06/23 Птн 20:51:36 2727689 1081
>>2727656
Парсить rates как мапу<K, V>.
Аноним 09/06/23 Птн 21:03:37 2727711 1082
>>2727689
А это идея. Благодарю тебя, милый человек!
Аноним 09/06/23 Птн 21:12:41 2727720 1083
>>2727689
Ебать, спасибо тоби боже за такую чудесную либу как Gson.
Аноним 09/06/23 Птн 21:23:07 2727732 1084
>>2727720
Все популярные либы для жсона так могут, тот же Jackson.
Аноним 09/06/23 Птн 21:24:35 2727735 1085
>>2727732
Мб, но я пробовал его, и там посыпалось 100500 эксепшнов, что он не может десериализовать объект.
Аноним 09/06/23 Птн 21:47:03 2727774 1086
>>2727732
А у меня своя либа для Json есть.
Аноним 09/06/23 Птн 21:57:18 2727795 1087
>>2727774
Ну что, умеет твоя либа работать с корневыми значениями, отличными от объектов? Жсон вида "123" она распарсит?
Аноним 10/06/23 Суб 00:46:50 2728010 1088
Вот так ?
{
"value": 123
}
Аноним 10/06/23 Суб 04:38:15 2728024 1089
ref.JPG 50Кб, 992x696
992x696
>>2728010
Да, только если будешь это куда то коммитить, галочку такую поставить не забудь.
Аноним 10/06/23 Суб 08:15:08 2728034 1090
Нужно ли учить графану и кибану?
Аноним 10/06/23 Суб 14:08:05 2728272 1091
>>2722296
Для обратной совместимости с ucs-2
Аноним 10/06/23 Суб 15:15:53 2728365 1092
Как это, сборка мусора в classloader'e ? Он ведь просто классы загружает.
Аноним 10/06/23 Суб 17:54:14 2728541 1093
Аноним 10/06/23 Суб 18:33:57 2728605 1094
>>2728034
Нет. Даже об их существовании знать не нужно.
Аноним 11/06/23 Вск 10:04:24 2729103 1095
в жабе существуют стандартные самобалансирующиеся деревья?
Аноним 11/06/23 Вск 10:48:46 2729136 1096
Аноним 11/06/23 Вск 19:09:18 2729549 1097
Подскажите пожалуйста, когда мы наследуемся от другого класса и не переопределяем ничего, мы просто перенимаем состояние и поведение супер класса себе, или просто имеем доступ к ним ?
То есть, получается 2 класса с одинаковым состоянием и поведением ?
Аноним 11/06/23 Вск 19:33:42 2729560 1098
Аноним 11/06/23 Вск 20:57:07 2729667 1099
image.png 32Кб, 701x335
701x335
Памагите плюсовику
Аноним 11/06/23 Вск 21:01:40 2729679 1100
>>2729667
вобщем у тебя объявление класса внутри другого класса. Либо вынеси этот класс наружу, либо сделай статичным.
Приличным тоном считается каждый класс в отдельном файле
Аноним 11/06/23 Вск 21:03:09 2729683 1101
Аноним 11/06/23 Вск 21:09:23 2729697 1102
>>2729667
тебе уже ничего не поможет
Аноним 11/06/23 Вск 21:52:08 2729754 1103
>>2729549
Смотря что ты вкладываешь в понятие "перенимаем". Байткод базы в наследника копироваться не будет, если ты об этом.
Аноним 11/06/23 Вск 22:07:58 2729766 1104
>>2729697
Петушара, в стойло.
Аноним 12/06/23 Пнд 01:42:46 2729994 1105
image.png 256Кб, 715x571
715x571
Аноним 12/06/23 Пнд 02:05:51 2729999 1106
Аноним 12/06/23 Пнд 02:14:13 2730002 1107
>>2728365
Классы и класслодеры - такие же обьекты как и все остальное. Если на них ничего не держит референс, они могут быть почищены GC.

По умолчанию в SEшном рантайме такого по факту не случается никогда - все классы грузятся тройкой стандартных bootstrap -> extension -> system класслодеров, и рантайм их не отпускает до конца выполнения приложения. Но всегда можно породить свой класслодер, и через него грузить классы по своему. Отпустив свой класслодер, отпустишь и все загруженные им классы, и они станут доступны для сборки GC при условии что на них больше никто не держит референс. Получаются какбэ зайчатки плагинной архитектуры с загрузкой/выгрузкой плагинного кода по требованию. Многие тулы и фреймворки пользуются этой фичей, например Java EE контейнеры и OSGi.
Аноним 12/06/23 Пнд 06:38:06 2730036 1108
>>2729994
Что тебя удивляет? Индекс Магомеда растет, а он муслим - так что тоже считается.
Аноним 12/06/23 Пнд 09:12:22 2730058 1109
Почему нахваливают систему работы с гитом в идее? Нифига же неудобно! Количество незакоммиченных файлов не отображается, статус тоже нигде не виден, запушил ты или нет - можно только догадываться. Вообще работа с удаленным репозиторием минимальна, проще самому в консоли все команды писать, чем пользоваться этой подделкой.
Спрашивается, почему эту идею насильно продвигают везде? Функционал у неё явно не тянет на деньги, что за неё хотят. Да и ресурсов жрёт не мало, постоянно лагает по непонятным причинам. Есть куда более удобные и легковесные решения, а главное полностью бесплатные, но нам всучивают эту идею.
Аноним 12/06/23 Пнд 10:53:17 2730114 1110
>>2730058
Идея бесплатная для Java, шиз
Аноним 12/06/23 Пнд 11:37:31 2730130 1111
>>2730114
Но все сидят на ультимейт и на работе тоже заставляют пользоваться идей ультимейт.
Аноним 12/06/23 Пнд 11:39:04 2730132 1112
>>2730130
Так это работа и оплачивает, зачем ты считаешь чужие деньги?
Аноним 12/06/23 Пнд 11:47:35 2730138 1113
>>2730132
На работу берут тех, кто уже умеет работать в ультимейт, следовательно надо как-то раздобыть себе личную версию ультимейта.
Аноним 12/06/23 Пнд 11:52:17 2730142 1114
>>2730138
Еще раз - и Java и Git бесплатны
Аноним 12/06/23 Пнд 14:32:22 2730288 1115
>>2730058
>>Количество незакоммиченных файлов не отображается
Сами файлы отображаются, нахуя мне их считать?

>>статус тоже нигде не виден
зеленый - новый файл, синий - незакомиченный

>>запушил ты или нет - можно только догадываться.
В чем смысл не пушить сразу после коммита?
Да и подсвечивается на самом деле в виде стрелочки в правом нижнем углу.

>>проще самому в консоли все команды писать
Раз тебе так удобнее - пиши

Там есть неудобные вещи, но ты ни одной реальной не назвал.

>>Да и ресурсов жрёт не мало, постоянно лагает по непонятным причинам.
у тебя 2гига 2 ядра? хром жрет в разы больше

>>Функционал у неё явно не тянет на деньги, что за неё хотят
тебе то откуда знать, мух?

>>идею насильно продвигают везде
жри эклипс, он бесплатный и даже поддерживается

>>Есть куда более удобные решения
нет

>>2730138
>>надо как-то раздобыть себе личную версию ультимейта.
учебная, триалка, тестовая - выбирай любую и учись, если тебе действительно это нужно
Аноним 12/06/23 Пнд 14:51:12 2730298 1116
>>2730288
В России учебная версия? Даже платную-то не достать.
Мима
Аноним 12/06/23 Пнд 15:08:08 2730302 1117
>>2730288
В VS Code отобржается количество незакоммиченных файлов, также на нижней панели отображается сколько файлов не запушенно. Так что вс код по удобству работы с гитом лучше идеи.
Кроме того там есть плагины для работы с джавой и даже со спрингом, а это уже превосходит функционал бесплатной идеи.
К тому же вс код прекрасно работает на 2 ядра 2 гига.
Аноним 12/06/23 Пнд 15:30:41 2730315 1118
Почему protected даёт доступ внутри пакета? Получается уже ни какой не защищенный, а виден дофига кому. Логичней было бы сделать только доступ для наследников, а всяким пакетам - фиг.
Аноним 12/06/23 Пнд 17:01:42 2730412 1119
Аноним 12/06/23 Пнд 17:08:20 2730420 1120
Аноним 12/06/23 Пнд 20:20:57 2730593 1121
>>2730315
Protected - антипаттерн, его давно пора задепрекейтить и по умолчанию выключить, а для включения сделать специальный флаг компилятора, которому надо передавать полный список файлов, где разрешено использование protected. Туда же проверяемые эксепшены.
Аноним 12/06/23 Пнд 20:26:57 2730601 1122
>>2730593
А чейта? Это ж по сути апишка управления онли для наследников класса. Хотя её можно достигнуть и просто заприватив все конструкторы... AQS, например... Есть что почитать по этому поводу?
Аноним 12/06/23 Пнд 20:33:44 2730611 1123
>>2730601
А нет, там протектед конструкторы. Не, реально, поясни чому это антипаттерн, который есть в стд бля
Аноним 13/06/23 Втр 00:42:31 2730901 1124
>>2730611
Стд это и есть один сплошной антипаттерн.
Аноним 13/06/23 Втр 02:09:35 2730918 1125
>>2730901
Раскрой мысль хоть немного...
Аноним 13/06/23 Втр 06:00:01 2730934 1126
Аноним 13/06/23 Втр 06:01:40 2730935 1127
>>2730138
>раздобыть себе личную версию ультимейта
Есть EAP версия, чел....
Аноним 13/06/23 Втр 06:04:06 2730936 1128
>>2730302
>>отображается сколько файлов не запушенно
Если тебе обязательно каждую секунду знать сколько точно файлов у тебя в пуше - то не работай в идее. Другим это не нужно. Даже плагинов на эту тему не делают, потому что похуй.

>>Так что вс код по удобству работы с гитом лучше идеи.
Лучше, но не из за счетчика файлов. Ищи дальше.

>>это уже превосходит функционал бесплатной идеи.
у меня ультимейт
Аноним 13/06/23 Втр 09:36:27 2731050 1129
>>2730918
Забей, это тролль-нитакусик. Возможно, очередной обдолбыш правильным ООП от Бугаенко.

Мимо
Аноним 13/06/23 Втр 10:36:40 2731093 1130
Настройки X
Ответить в тред X
15000
Добавить файл/ctrl-v
Стикеры X
Избранное / Топ тредов