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

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

Ответить в тред Ответить в тред
Check this out!
<<
Назад | Вниз | Каталог | Обновить | Автообновление | 1023 89 163
Java Thread #247 /java/ admin 05/03/23 Вск 15:52:44 2630498 1
image.png 85Кб, 821x471
821x471
image.png 377Кб, 1986x1438
1986x1438
image.png 36Кб, 647x494
647x494
image.png 81Кб, 250x367
250x367
Программирование - это не столько про анальное крудошлёпство, сколько про стиль мышления. Высокоуровневая абстракция, поиск сходных черт, оптимизация - всё это высшие интеллектуальные способности, что образуют такой прочный симбиоз с программированием на Java.

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

Предыдущий: >>2614255 (OP)
Аноним 05/03/23 Вск 16:13:07 2630528 2
>>2630498 (OP)
Шарп во всем лучше джавы
ASP.NET CORE во всем лучше спринга
Тогда в чем смысл существования джава стека?
Аноним 05/03/23 Вск 16:15:57 2630535 3
image.png 320Кб, 1200x630
1200x630
Аноним 05/03/23 Вск 16:57:24 2630601 4
Красим кнопки вместе!
Аноним 05/03/23 Вск 18:22:56 2630717 5
Зашел сейчас сказать одну вещь.

Пусть черти ебут в жопу того, кто додумался сделать невозможным создание таблицы под названием "user", часа полтора сейчас голову грел хули не работает @Entity public class User, пока не выяснил. Ебал этого гандона все просто.
Аноним 05/03/23 Вск 18:29:12 2630721 6
RESTfull, HATEOAS это сейчас стандарт или нет?
Аноним 05/03/23 Вск 18:29:26 2630722 7
>>2630717
есть же аннотации которые изменяют название хранимой таблицы (даже я вкатун по второму разу это знаю
05/03/23 Вск 18:33:24 2630729 8
>>2630717
Можешь ещё повыёбываться не невозможность создать таблицу select. ORM таким как ты полностью атрофировало мозг, так что лучше сразу бери монгу и перекатывайся в JS.
Аноним 05/03/23 Вск 18:33:43 2630731 9
>>2630721
>RESTfull
это недостижимая фантазия, оторванная от реальности и смысла
Аноним 05/03/23 Вск 18:54:43 2630765 10
>>2630722
Я так и сделал когда допер. Спринг в консоли не пишет в чем дело, просто кидает эксепшн что нельзя создать такую таблицу и нихуя не разжевывает.
>>2630729
Select понятно, а про существование ключевого слова user не все в курсе.
Аноним 05/03/23 Вск 18:56:18 2630768 11
Даунский вопрос.

spring.datasource.url=jdbc:postgresql://localhost:5432/

Где мне на компе теперь искать эту бд?
Аноним 05/03/23 Вск 19:02:08 2630777 12
>>2630768
в конфиге установленного постгреса вроде есть точный адрес к самой базе
Аноним 05/03/23 Вск 19:22:15 2630792 13
>>2630768
А тут других и не бывает!
Аноним 05/03/23 Вск 19:25:29 2630797 14
>>2630731
Нахуй тогда спринг во всех своих гайдах пихает это?
Аноним 05/03/23 Вск 19:27:28 2630801 15
Аноним 05/03/23 Вск 20:13:27 2630859 16
У меня есть классы task и subtask, или даже только один task, и я хочу, чтобы у каждого объекта task могло быть несколько subtask'ов, при этом у каждого subtask'а тоже могли быть свои subtask'и и так несколько поколений с ограничением.
Как это реализовать в spring jpa? Как вообще такие связи называются? Сколько смотрю примеров many to many, везде используются разные классы с двух сторон связи.
Аноним 05/03/23 Вск 20:20:35 2630862 17
>>2630859
Тебе нужно SQL освоить. Там какой-то тип связи есть (Self Join вроде), который ссылается на ту же самую таблицу в качестве форейн кий использует айдишник из этой же таблицы, типа отношение владелец/хозяин.

на ЖОПЕ это наверняка реализуемо. Погугли вначале сикуль, потом поймешь что тебе нужно гуглить в жопе.
Аноним 05/03/23 Вск 20:31:04 2630871 18
>>2630862
жопа наверняка через n+1 сделает стековерфлоу. Так во всем - что-то сложнее примитивного круда - и жопа сосёт
Аноним 05/03/23 Вск 20:31:53 2630872 19
Аноним 05/03/23 Вск 20:35:03 2630874 20
>>2630871
да ну не, вряд ли, self join это база сикуля, простецкая база, кажетсо логичным что в жопе это реализовано из коробки.
Аноним 05/03/23 Вск 20:36:09 2630875 21
>>2630874
в хибернейте union не реализован когда я смотрел
Аноним 05/03/23 Вск 20:38:02 2630879 22
Аноним 05/03/23 Вск 22:24:07 2630947 23
>>2630731
Лично у меня есть несколько проектов, которые работают по рестфуллу.
Аноним 05/03/23 Вск 22:24:46 2630948 24
Аноним 05/03/23 Вск 22:42:37 2630959 25
>>2630948
Тред уже полгода перекатывает шарпоблядь. С подключением.
Аноним 05/03/23 Вск 22:42:57 2630961 26
Аноним 05/03/23 Вск 22:57:11 2630971 27
>>2630958
сливай бесплатно на треккер, платить за это я не буду.
Аноним 05/03/23 Вск 23:23:50 2630994 28
>>2630978
я не верю что это работает. Программа какая то у вас там ебанутая, с такой даже в стажеры не возьмут сейчас.

Я всё это почти прошёл по книжкам 2 года назад, потом забил на понимании того что в джуны меня не возьмут. Сейчас вот по новой осваиваю, но уже серьезно взялся.
Аноним 05/03/23 Вск 23:26:58 2630996 29
Почему в джаве не дадут возможность самому удалять объекты? Зачем мне обязательно ждать стоп зе ворлд, если в некоторых ситуациях легче самому озаботится жизненным циклом объекта. Имхо, если бы в жабе была такая возможность, то область применения языка была бы больше.
Аноним 05/03/23 Вск 23:31:26 2631003 30
>>2630996
Если у тебя возникают такие ситуации, ты выбрал не тот язык.
Джава специально проектируется для проектов, где надёжность важнее производительности.
Аноним 05/03/23 Вск 23:33:22 2631004 31
Серьезный вопрос, надеюсь есть понимающие в матчасти

есть ли в Идее какие-нибудь плагины навороченные с искуственным интеллектом как вижуал студио чтоб тыкал Tab и все само писалось?

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

Автодополнение там прям охуенное, начинаешь писать в стиле

МояЗалупа залупа1 = на этом этапе тыкаешь таб и он сам дописывает оставшееся. Но это и в Идее есть. Я про более серьезное

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

Есть ли такие плагины в идее?
Аноним 05/03/23 Вск 23:35:26 2631008 32
Аноним 05/03/23 Вск 23:41:29 2631016 33
>>2631008
ебать, охуенно.

1. А какой из них лучше?

2. И еще там вроде какие-то триалы. Это влияет на то что через какое-то время мне залупу на воротник повесят и предложат оплатить?

Студия вроде как бесплатно все предлагает из коробки даже в бесплатной версии.

Или я могу просто установить плагин и все, сидеть пердеть на триал версии?
Аноним 05/03/23 Вск 23:43:39 2631018 34
>>2631011
Проблема в том, что я в мухосрани живу, в москву перекатываться ссыкотно без опыта в айти.
Да и лет мне много уже, технического образования нет
Аноним 05/03/23 Вск 23:46:23 2631019 35
>>2631017
я вот выше Tabnine попробовал, вроде охуенно, но там какая-то триал версия.

Платить жмотно.
Аноним 06/03/23 Пнд 00:09:58 2631039 36
Снимок экрана о[...].png 110Кб, 807x843
807x843
>>2631032
Странно, на сайте Tabnine ниче не сказано по количеству запросов.

Там вроде только продвинутая версия платная
Аноним 06/03/23 Пнд 01:16:02 2631067 37
Я научился пользоваться гитом!
Аноним 06/03/23 Пнд 01:18:43 2631069 38
>>2631067
А джава тут при том, что...
Аноним 06/03/23 Пнд 01:19:48 2631070 39
>>2631069
...ты идёшь обратно в свой загон для петушарперов.
Аноним 06/03/23 Пнд 01:20:43 2631071 40
>>2631070
Как и ты идёшь в загон гитоёбов.
Аноним 06/03/23 Пнд 01:22:19 2631073 41
image 8Кб, 474x169
474x169
Обновил идею. Сука, как вернуть обратно нормальные цвета? Нахуй мне на блеклую дрисню смотреть?
Аноним 06/03/23 Пнд 01:23:35 2631074 42
>>2631073
Нашёл решение: Color Scheme -> New Dark сменить на Dark.
Аноним 06/03/23 Пнд 02:27:41 2631085 43
По мотивам вопроса челика, который спрашивал про AI-based плагины для идеи выше.

Вы их прям часто используете? Или просто угораете от того, что ИДЕ умеет такое? Я чет даже теоретически не могу себе представить какой то весомый профит от них, достойный того, чтобы садиться под ВПН и нести кому то за это деньги. Интересно послушать как у других с этим.

Я чет смотрю на это вот все безобразие, и даже если отбросить мое патологическое недоверие к нейронкам: набора текста в моей работе по прикидкам несоразмерно меньше, чем изучения спек, возни с дебаггером и профайлером, чтения логов, вдупления того, что вообще хочет от моего кода окружающая реальность. Идейка впринципе уже неплохо справляется с джавовым кодом, я чисто по Амдалу если бы че и оптимизировал в своей рутине, то не набор кодотекста в идейке. Мне кажется, я бы больше времени потратил на чтение, сверку и причесывание того, что эта ботва мне нагенерит, нежели чем если бы написал все сам.
Аноним 06/03/23 Пнд 02:35:31 2631088 44
>>2631016
не ебу, я ж не додик чтобы свой код бесплатно отдавать корпорациям которые будут следить через эти плагины
Аноним 06/03/23 Пнд 06:59:26 2631141 45
>>2631004
>Вижуал студио прям охуенно работает, иногда предлагает целые строки кода ДО того как ты что либо тыкнул в начале
там похоже не только искусственный интеллект но и чтение мыслей через излучение монитора.
Аноним 06/03/23 Пнд 07:13:34 2631148 46
>>2631085
>Мне кажется, я бы больше времени потратил на чтение, сверку и причесывание того, что эта ботва мне нагенерит, нежели чем если бы написал все сам.
совершенно верно, идея генерить код нейросетками для того чтобы его править - мертворожденная. был очень интересный проект еще лет 15 назад по генерации микросхем при помощи генетических алгоритмов. там по итогу генерировался такой пиздец, в котором почти нереально было разобраться, потому что баги системы использовались наравне с декларированными возможностями, например помехи и наводки для передачи информации, индукционный ток от группы элементов на плате и прочая магия. при этом все работало, но стоило СДВИНУТЬ (не переключить контакты а просто физически подвинуть) один элемент на плате и все переставало работать. естесственно, элементная схема, которая при этом получалась, была вообще нерабочая. но само изделие, как черный ящик, работало.

с кодом я думаю так же будет - в итоге все придет к генерации таких вот черных ящиков рожающих ожидаемый функционал и в котором разобраться будет человеку в принципе невозможно.
Аноним 06/03/23 Пнд 08:08:00 2631159 47
Аноним 06/03/23 Пнд 08:35:43 2631171 48
>>2630947
кто тебе сказал что у тебя рестфул?
Аноним 06/03/23 Пнд 09:19:43 2631198 49
>>2631148
Сука, сингулярнлсть через нейронки блять. Более унизительной судьбы для человечества сложно представить.
Аноним 06/03/23 Пнд 10:23:51 2631249 50
06/03/23 Пнд 11:53:09 2631358 51
>>2630498 (OP)
>"Элегантные Объекты - Java Edition" имеет перевод на русский язык. Однако, если без приколов, не зная парашный язык можешь смело идти нахуй, потому что никто твои классы с названиями ProveryalshikArgumentov читать не будет.

А если ПроверяльщикАргументов? Ява ж полностью отъюникожена.
Аноним 06/03/23 Пнд 12:24:34 2631402 52
>>2631358
Сэр, я вижу перед собой синьора.
Аноним 06/03/23 Пнд 13:23:10 2631456 53
>>2631073
Я не понял, а это как? Как сделать цвета? ну кроме оранжевого
Аноним 06/03/23 Пнд 13:40:18 2631469 54
Аноним 06/03/23 Пнд 14:01:30 2631497 55
>>2630996
>>Почему в джаве не дадут возможность самому удалять объекты?
Средний Шипилев умнее среднего Олега и ему виднее когда объекты удалять.

>>Зачем мне обязательно ждать стоп зе ворлд
Стоп зе ворлд возникает если у тебя загружено больше 99% памяти. В остальных случаях и так норм чистится через поколения.

>>в жабе была такая возможность
Есть десятки всяких гц, вплоть до ручного запуска очистки памяти по таймеру (когда торги закрыты).
Аноним 06/03/23 Пнд 17:00:53 2631689 56
image.png 29Кб, 889x89
889x89
Обьясните как вы емейлы обрабатываете. Мне на пост эндпоинт прилетает multipart/mixed и я весь день не могу понять почему эта ошибка вылетает
com.fasterxml.jackson.core.JsonParseException: Unexpected character ('-' (code 45)) in numeric value: expected digit (0-9) to follow minus sign, for valid numeric value.
Поставил такие конфги какие в тырнете нашел, а оно всё равно падает с этой же ошибкой.
Аноним 06/03/23 Пнд 17:04:09 2631693 57
>>2631689
Мало инфы. Скинь дтоху хотя бы. А еще лучше: дтоху и джсон.
Аноним 06/03/23 Пнд 17:06:42 2631695 58
>>2631358
Торг, как третья фаза на пути к Принятию.
Аноним 06/03/23 Пнд 17:16:47 2631708 59
>>2631693
ДТОхи нет, это мне из Mailgun-а прилетает их тестовый
"fully parsed message as an HTTP POST."
Я до приложения смог это дело довести только принимая @RequestBody как String.
Если отлогировать до того как мапить то получается что-то такое
https://pastebin.com/cQ7gKtzY
Аноним 06/03/23 Пнд 17:36:17 2631726 60
>>2631708
>Я до приложения смог это дело довести только принимая @RequestBody как String.

Ну, обжект маппер такое парсить не умеет, он больше - по джсонам.

Честно говоря, я вообще хз чем ее парсить. Попробуй вот так: https://medium.com/@basakabhijoy/parsing-multipart-mixed-response-in-spring-webclient-81b15d2dc4cd - там описано решение с вебфлаксом, но по логике должно сработать и с обычными контроллерами.
Аноним 06/03/23 Пнд 17:44:56 2631739 61
>>2631726
Ну сейчас буду посмотреть, спасибо и на этом.
Аноним 06/03/23 Пнд 17:54:33 2631757 62
Это норма что большинство компаний даже не открывают резюме, тупо ждут что им позвонят... ?
Аноним 06/03/23 Пнд 17:58:50 2631760 63
Аноним 06/03/23 Пнд 18:40:01 2631810 64
Это норма что большинство сеньоров даже не открывают резюме, тупо ждут что им позвонят... ?
Аноним 06/03/23 Пнд 18:41:11 2631811 65
>>2631810
мне в мыло спамят, при том что я не открываю резюме. Видимо из старого линкедина или из базы херочек
Аноним 06/03/23 Пнд 20:01:20 2631899 66
Аноним 06/03/23 Пнд 20:38:50 2631944 67
>>2631689
никак ты че ебнутый
Аноним 06/03/23 Пнд 21:01:26 2631974 68
Как замокать RestTemplate (через MockRestServiceServer) внутри одного конкретного бина в интеграционном тесте?
Аноним 06/03/23 Пнд 22:46:31 2632083 69
lwjgl или opengl ?
Аноним 06/03/23 Пнд 22:50:50 2632086 70
Аноним 06/03/23 Пнд 23:00:36 2632096 71
Аноним 06/03/23 Пнд 23:06:26 2632108 72
>>2631974
Там прям в джавадоке копипастный пример написан. Про бин нихуя не понял, но в примере всё локально создается, контекст не закараптит.

Если нужны разные бины для тестов и рантайма, смотри @Profile и @Conditional (чего-то одного достаточно, не надо сразу оба юзать).

Еще есть кенты (ну я и че), у которых @Service и @Component на проекте забанены линтером, контекст создается при помощи @Configuration и @Import. Так вот у таких кентов конфиг контекста лежит там же рядом с тестами, можно только то, что нужно тянуть.

@Configuration
class SomeFuckingBullshitTestConfiguration {
@Bean
public SomeFuckingBullshit someFuckingBullshit() {... mock ...}
}

@Import({
SomeFuckingBullshitTestConfiguration.class,
})
public class UsesBullshitTest {...}

А в продуктовом коде вот так:

@Configuration
class SomeFuckingBullshitProductionConfiguration {
@Bean
public SomeFuckingBullshit someFuckingBullshit() {... prod ...}
}

@Import({
SomeFuckingBullshitProductionConfiguration.class,
})
public class UsesBullshitController{...}
Аноним 06/03/23 Пнд 23:07:19 2632111 73
>>2631810
Это норма что большинство вкатунов даже не отправляют резюме, тупо ждут что им перезвонят... ?
Аноним 06/03/23 Пнд 23:11:02 2632118 74
Аноним 06/03/23 Пнд 23:12:05 2632121 75
>>2631899
Скорее всего он подумает, что это кидалово, и не ответ. Сам таким был
Аноним 06/03/23 Пнд 23:12:42 2632123 76
>>2631899
Скорее всего он подумает, что это кидалово, и не ответ. Сам таким был
Аноним 06/03/23 Пнд 23:19:20 2632131 77
>>2632111
Как им перезвонят? Не понял
Аноним 06/03/23 Пнд 23:25:26 2632139 78
>>2632083
Бери что угодно, всё равно геймдев и 3D-графика на жабе - говно
Аноним 06/03/23 Пнд 23:27:51 2632143 79
>>2632108
В примере просто рест темплейт используется. А у меня есть сервис, в который инжектится рест темплейт, и мне надо этот сервис замокать. Но только этот сервис, все остальные сервисы должны использовать обычный рест темплейт.
Аноним 07/03/23 Втр 00:37:41 2632191 80
Аноним 07/03/23 Втр 00:38:38 2632194 81
>>2632086
Очень интересное утверждение...
Аноним 07/03/23 Втр 07:01:05 2632251 82
>>2630959
Год. Перекаты после 500 постов начались год назад.
Аноним 07/03/23 Втр 07:57:08 2632276 83
>>2632251
Как быстро время летит.
Аноним 07/03/23 Втр 08:09:28 2632283 84
image 62Кб, 1002x817
1002x817
Вот так начались перекаты после 500 постов.
Аноним 07/03/23 Втр 10:44:24 2632336 85
goat.mp4 4066Кб, 640x360, 00:00:48
640x360
Аноним 07/03/23 Втр 19:19:43 2632980 86
прощу прощения. Постгре на обычном жестком диске это плохо? В наличии ещё есть ssd, но похоже переместить постгрю на ссд геморно
Аноним 07/03/23 Втр 20:21:04 2633032 87
Аноним 07/03/23 Втр 20:50:53 2633045 88
У меня завтра мой первый собес с техническим специалистом ! АААААААААААААААААААААААААААА ! !! ! ! ! Ваши мысли ?
Аноним 07/03/23 Втр 20:54:43 2633047 89
>>2633045
Выучи все методы класса Object.
Аноним 07/03/23 Втр 20:55:03 2633048 90
>>2633045
Успехов брат! Чтоб всё получилось
Аноним 07/03/23 Втр 21:00:04 2633049 91
Доброго времени суток. Работал 1.7 года бизнес-аналитиком. Общался с заказчиками, формулировал бизнес-требования и всё вот это вот. На сколько это будет плюсом среди других стажёров/джунов?
Аноним 07/03/23 Втр 21:07:02 2633052 92
Аноним 07/03/23 Втр 21:10:33 2633058 93
>>2633049
Лучше, чем опыт слесаря на заводе. Код ты может и не писал, зато понимаешь, как происходит разработка продукта, что для этого нужно, какие обычно возникают сложности, как их преодолеть.
Аноним 07/03/23 Втр 21:50:06 2633094 94
>>2631974
ясно нихуя не знаете блядь окатыши
Аноним 07/03/23 Втр 22:10:09 2633122 95
1678216206589.jpg 71Кб, 600x527
600x527
Здравствуйте. Подскажите пожалуйста, стоит ли изучать Котлин? Я просто решил джаву осваивать, но вдруг закралась мысль, что бекенд я в силу умственных способностей не потяну. Мобильная разработка проще или же это только на первый взгляд?
Аноним 07/03/23 Втр 22:23:12 2633137 96
>>2633122
> бекенд я в силу умственных способностей не потяну
Это как? Даже я с 85 IQ потянул.
Аноним 07/03/23 Втр 22:40:23 2633152 97
>>2633137
Думаешь все проще? Я вообще подумал с тестирования на джаве начать, чтобы параллельно в мобильную разработку вникать. Но это опять же с точки зрения дилетанта.
Аноним 08/03/23 Срд 01:07:09 2633297 98
>>2629174 →
Я не могу найти этот двухтомник по фамилии. Какое полное название?
Аноним 08/03/23 Срд 01:25:12 2633306 99
>>2633049
Если ты еще там работаешь, то говоришь своему руководителю, что горишь желанием ПОДНАЖАТЬ и лучше вникнуть в процесс разработки, чтобы предупреждать сложности разработки еще на этапе общения с заказчиком, лучше формулировать требования тыры-пыры, в общем ссышь в уши, чтобы получить доступ к кодовой базе.
Потом люто задротишь погромирование, так чтобы было понятно, что за хуйню твои быдлокодеры пишут. Нкличие реального кода в реальном проекте ускорит обучение в 10 раз.
Потом по ситуации грамотно перекатываешься внутри компании или сьебываешь куда-нибудь.
Аноним 08/03/23 Срд 02:56:20 2633329 100
Аноним 08/03/23 Срд 03:41:19 2633340 101
>>2633122
А что такого страшного в беке? Что там что там есть сложные констркуции, инструмены разработки и тд. Но только ты будешь получать задачу и думать над логикой (что откуда взять, как обработать, куда положить и тд), а на фронте/мобилке ты будешь париться как кнопку сделать нужной формы, размером, чтобы она была поверх другой кнопке ну и куча куча других параметров.
Вообще надо выбирать то к чему душа больше лежит, но если поровну, то в одном месте изъёбываешься с логикой, а в другом месте изъёбываешься с визуальными элементами
Аноним 08/03/23 Срд 09:55:11 2633458 102
Почему все API для серверов Minecraft написаны на Java, а соответственно и плагины к ним? Разве без jvm нельзя обойтись? Что мне мешает набайтоёбить свой API и через него дёргать jvm?
Аноним 08/03/23 Срд 10:58:12 2633492 103
Аноним 08/03/23 Срд 10:59:32 2633494 104
>>2633458
Ничего, альтернативно одарённые личности наделали уже 100500 UltimateScriptEngine'ов.
Аноним 08/03/23 Срд 11:14:21 2633500 105
Аноним 08/03/23 Срд 11:21:54 2633504 106
>>2633500
Ты что, в джаву не смог, долбоеб?
Аноним 08/03/23 Срд 11:57:52 2633525 107
>>2633504
Долбоеб, твоя тошнотворная джава нужна только если ты бэкендер в банке с джавой. Писать на ней мод убивает все удовольствие от процесса
Аноним 08/03/23 Срд 11:59:50 2633528 108
Вы часто пишете СВОИ классы с дженериками в работе?
Можете назвать самый частый юз кейз? Какие-нибудь мапперы?
Аноним 08/03/23 Срд 12:44:22 2633567 109
>>2633525
Обосрался с растабоя. Джава лучший язык для всего.
Аноним 08/03/23 Срд 14:09:15 2633695 110
>>2633340
Спасибо за развернутый ответ. Да, в свое время во фронте именно позиционирование больше всего раздражало. Возможно, бэк в этом плане зайдет легче.
Аноним 08/03/23 Срд 14:28:03 2633741 111
>>2633695
Так что пугает в беке?
Тут все намного более ясно, чем на фронте. По большинству вопросов есть паттерны и бестпрактисы.
Аноним 08/03/23 Срд 15:26:41 2633813 112
Предложили работу в компании которая звонит людям и просит номер карты продиктовать ... :с Ваши мысли ? ._.
Аноним 08/03/23 Срд 15:28:20 2633814 113
>>2633813
А какая там работа? Наёбщик вульгарис?ё
Аноним 08/03/23 Срд 15:30:48 2633815 114
>>2633741
> Так что пугает в беке?
Если судить исходя из личного опыта, а я некогда пытался в джангу, то именно логика и пугает. Огромное количество подключаемых модулей, классов, бутстрап и базы данных. Может быть все кажется сложным лишь по началу, но с другой стороны практиковался я на относительно простых проектах. Посмотрим что из этого выйдет.
Аноним 08/03/23 Срд 15:56:31 2633822 115
Добавил редис в петик для сохранение сессий, чтоб не выкидывало при сбоях и горизонтальном масштабировании. Эх, вот бы на работку взяли, хочется за сотыги копаться в легаси, а не вот это вот все…
Аноним 08/03/23 Срд 16:03:10 2633827 116
Аноним 08/03/23 Срд 16:32:02 2633852 117
Почему джавамуха это всегда соевое быдло?
Аноним 08/03/23 Срд 16:35:59 2633862 118
image 94Кб, 1000x1000
1000x1000
>>2633852
>джавабоярин
>соевое
>быдло
Аноним 08/03/23 Срд 17:15:11 2633915 119
Аноним 08/03/23 Срд 18:51:35 2634019 120
>>2633815
Какой еще бутстрап?
Аноним 08/03/23 Срд 18:57:02 2634026 121
>>2634019
Django-bootstrap. Только хуй знает, при чём тут бэкенд и логика.
Аноним 08/03/23 Срд 21:15:51 2634172 122
А че ща в сбере тож задачки дают? Проходил недавно собес и ахуел от того, что задачку дали. Это мне не повезло так или стандарт у них на собесах?
Аноним 08/03/23 Срд 21:24:33 2634186 123
>>2634172
Нет у нас в Сбере стандарта собесов, проект проекту рознь, везде принимают по-разному. На нашем проекте дрочат задачами, на других дают тестовое, на третьих присылают стажёров, на четвёртых ещё какая-то залупа.
Аноним 08/03/23 Срд 21:40:50 2634206 124
>>2634172
Нет, сразу две сотыги дают за то что ты нашел информацию по спрингу
Аноним 08/03/23 Срд 21:53:16 2634218 125
>>2634206
так я на это и рассчитывал, когда шел к ним на собес, а тут на те
Аноним 08/03/23 Срд 22:06:11 2634232 126
>>2634206
Т.е. две сотыги дают всем вкатунам, кроме тебя.
Аноним 09/03/23 Чтв 00:06:06 2634310 127
У меня друг джавист, начинал работать фулстаком (ява + яваскрипт). От сюда вопрос. Я правильно понимаю, что если ты чисто быкарь на яве - вакансии в основном с галер, а фулстек - вакансии с проектов/компаний по проще?
Какое вообще соотношение потребностей? На что, по вашим ощущениям, на рынке большая потребность?
Аноним 09/03/23 Чтв 00:26:05 2634323 128
>>2634310
Фулстек это обычно аутстаф на европейской галере или еще какое-нибудь нищее легаси.
Аноним 09/03/23 Чтв 00:37:04 2634329 129
>>2634310
Хуй знает, что ты галёрой называешь.
Чем меньше компания - тем больше фуллстеков. В какой-нибудь крупной корпорации фуллстеков не просто мало, там ещё и препятствуют совмещению ролей, т.е. бэкендеру тупо не разрешат писать фронт, даже если он сам проявит желание.
Аноним 09/03/23 Чтв 02:19:33 2634364 130
>>2634323
>>2634329
В общем в идеале, мне, как вкатуну, нужно кроме ява стека, выучить ещё и js/html на уровне "написать поле с валидацией" - правильно понимаю?
Аноним 09/03/23 Чтв 02:27:44 2634365 131
>>2634364
Вкат всё. Можешь не тратить время, если у тебя нет профильного образования и глубокого знания компьютер сайнс
Аноним 09/03/23 Чтв 02:42:03 2634366 132
>>2634364
Уметь написать простенькую страницу с парой форм лишним не будет, всякое может пригодиться, даже если пишешь только бэк.
>>2634365
А ты можешь соснуть хуйца на пару со своей шлюхой-мамашей.
Аноним 09/03/23 Чтв 03:03:31 2634371 133
>>2634365
Да кто это сказал?) Типо с этого момента ява-кодеры перестали рождаться или больше никогда не появятся?)

Я сейчас в такой ситуации, что если не выучу джаву - то дальше мне лучше умереть (смешно, но и такое бывает). Так что мотивация есть, в унике профильный бакалавр есть, какое то время на вкат есть. Так что проблемы не вижу. А про 600 человек на место - у меня на этот счёт своё мнение, делиться которым не сильно хочется, чтобы было меньше конкуренции

>>2634366
Спасибо, друг. Инфа полезная для меня
Аноним 09/03/23 Чтв 03:11:35 2634372 134
>>2634371
>>2634371
>делиться которым не сильно хочется
Поделись плиз, я просто тоже думаю вкатываться или нет. Ситуация 1 в 1 твоя, если не смогу вкатиться до конца года, то сделаю роскомнадзор.
Аноним 09/03/23 Чтв 03:31:21 2634375 135
>>2634372
Ну мой анализ мне подсказывает что вкатываться 100% стоит - вот тебе и ответ.

Хочешь выпилиться - тебя никто не спасёт, хочешь жить как мой кореш который получает 5-6к бачей - учи какой то строготипизированный бек. Всё просто.

С пониманием отношусь к твоей проблеме, но не знаю что ты хочешь услышать. Если хочешь вкатиться, то тут думать не надо. Зашёл на явараш, уверенно отдал им 30 баксов и как машина едешь по уровням XD А там война план подскажет как дальше идти
09/03/23 Чтв 08:23:26 2634423 136
Мимокрокодил Java Senior из гугл, прямиком из Кремниевой долины, задавайте свои ответы.
Аноним 09/03/23 Чтв 08:43:31 2634427 137
>>2634423
Почему не в своём загоне для петушарперов?
09/03/23 Чтв 08:50:10 2634433 138
Аноним 09/03/23 Чтв 08:59:02 2634440 139
09/03/23 Чтв 09:19:39 2634450 140
>>2634440
нахуй мне тот шарп, я тебе про Java говорю, ёбанарот
Аноним 09/03/23 Чтв 11:50:48 2634535 141
Валидация через @Valid это же херня полная? Работает для простых приложений и простых решений. В чем-нибудь более-менее сложном лучше ручками делать валидацию. Я прав или все же нет?
Аноним 09/03/23 Чтв 12:31:31 2634559 142
Аноним 09/03/23 Чтв 13:16:13 2634625 143
>>2634364
На перовой галере что я был требовался ангуляр. Надо было было разбираться на уровне нарисовать форму, добавить кнопки, привязать их к рест ендпоинтам. Это по сложности как писать круды на спринге - вроде не сложно, но с нуля месяца 3 ты на это потратишь. Чаще всего для фичи надо писать и фронт и бэк одновременно.
Сейчас я пишу чисто бэк и фронтовые проблемы с ползунком или уехавшей кнопкой меня не ебут.
Аноним 09/03/23 Чтв 13:29:52 2634634 144
>>2634535
>>лучше ручками делать валидацию
Тебе @Valid / @Validated дали, пользуйся. Нет, хочу жрать говно и писать кастомную валидацию на каждый пук.
Аноним 09/03/23 Чтв 16:10:26 2634757 145
В чем разница, андроид приложение на котлин vs на джава ?
Аноним 09/03/23 Чтв 16:26:14 2634770 146
>>2634757
Котлин это знак для сойбоев, как треугольник пальцами у масонов.
Аноним 09/03/23 Чтв 16:48:02 2634793 147
>>2634757
Разница в том, что проект на джэве - это всегда боль и нечеловеческие страдания. От языка несет нафталином, а инженерные практики и подходы остались где-то в 90-х. Пока команда джэва-программистов наматывает сопли на кулак и размазывает по засаленному свитеру, в попытках пофиксить очередной NPE, продираясь через килотонны императивного кода, часть из которого завернута в Optional, команда на котле уже выкатывает релиз и получает бабулесы.

начинать проект на джэве - моветон.
Аноним 09/03/23 Чтв 16:51:12 2634794 148
>>2634793
Кроме этого гугл андроидовские тулзы пишет только под котлин, jetpack compose не работает с джавой
Аноним 09/03/23 Чтв 16:54:13 2634796 149
>>2634794
И слава Богу. Официальный язык разработки под андроид это котел. Билд тул - градл. Все! Не нужно в 2к23 обмазываться помойной джэвой и дрочить эксемельки в мувене. Оставьте это старым пердунам, которые на старости лет начали дрочить опшиналы и заворачивать свои помойные легасные поделки пытаясь спастись от нуллпоинтерэксепшенов.
Аноним 09/03/23 Чтв 16:57:49 2634798 150
>>2634796
Хотелось бы конечно жить в мире где котел основной язык jvm
Аноним 09/03/23 Чтв 17:11:22 2634813 151
>>2634798
Дебильная соя размечталась.

>>2634796
Дебильная соя вошла в реальность, вспомнив, что никому нахуй петухон jvm edition не нужен.
Аноним 09/03/23 Чтв 17:14:18 2634815 152
>>2634793
Че ты так горишь-то? Ну подумаешь тебя заставляют на 8 жабе обмазанной сокращениями писать и ебаться с дегенерадлом, который не хочет собирать проект по причине пидарас, но плакать то зачем?
Аноним 09/03/23 Чтв 17:15:41 2634818 153
>>2634815
Никто меня не заставляет. Я пишу на суперсовременном C# и у нас нет проблемы с NPE. Это вам все никак nullable типа не завезут и все проверки дрочите или опшионалами обмазываетесь, лол.
Аноним 09/03/23 Чтв 17:18:20 2634822 154
>>2634818
Если тебе так охуенно пишется на петушарпе, то почему ты каждый божий день приходишь к нам и ноешь?
Аноним 09/03/23 Чтв 17:22:31 2634824 155
>>2634822
Нужно почаще напоминать о вашей ущербности
Аноним 09/03/23 Чтв 17:26:20 2634826 156
>>2634824
Аж сквозит через сообщение тряской и разочарованием. Ты давай, там, зашивайся.
Аноним 09/03/23 Чтв 19:33:21 2634959 157
Груви лучший язык, а еще скала. Жопа и клиторин не нужны
Аноним 09/03/23 Чтв 19:51:07 2634977 158
>>2634959
Тред про жабу есть, а про кокотлин, груви и скалу нет. Шах и мат.
Аноним 09/03/23 Чтв 20:03:09 2634984 159
09/03/23 Чтв 20:12:20 2634994 160
>>2634818
Ты неверно дурачёк и в своей жизни писал код только для компаний уровня хуй&залупа? Тебе не знакомо такое понятие что падать с ошибкой надо как можно раньше, на этапе сборки в идеале. Или ты такой ахуенный что каждый get() ты обрабатываешь так что там может прийти Nullable? Это же полная хуйня ожидать что тебе придёт ёбанное ничего и как на это реагировать? Это такое же дерьмо как динамическая типизация, когда ты хуйзнаешь что тебе пришло и как с этим работать. Может для школьных поделок и прототипирования это ещё сгодится, но для серьёзного ентерпрайза это хуета.
/thread
Аноним 09/03/23 Чтв 20:14:17 2634997 161
Шарпоблядей кормят всем разделом, в какой тред ни зайди.
Аноним 09/03/23 Чтв 21:57:34 2635064 162
Аноним 09/03/23 Чтв 22:26:47 2635085 163
Есть две таблицы, Person и Address, нужно выбрать имена человеков у которых больше всего адресов. Получается, я делаю
select name, address from Person
where Person.id = Address.id_person. Как теперь сделать условие для выборки адреса, ведь where уже занят ?
Аноним 09/03/23 Чтв 22:56:42 2635107 164
>>2635085
бля хз а че ты в джава треде это спросил?
Аноним 09/03/23 Чтв 22:59:23 2635108 165
>>2635085
Что значит "больше всех" адресов? Можно вывести 10 людей с отсортированных по числу адресов или всех отсортированных так же.
Аноним 09/03/23 Чтв 23:09:46 2635122 166
>>2635107
Ну он же на ДжАвЕ пИшЕт, а этот запрос вызывается из приложения на джаве, значит, логично нет спрашивать в этом треде! Примерно как у анонов, которые срут здесь вопросами про докер и гит.
Аноним 09/03/23 Чтв 23:12:46 2635129 167
додикам не отвечаем
Аноним 09/03/23 Чтв 23:18:29 2635136 168
>>2635129
Если я порежу метод на два кусочка, кусочки будут дружить ?
Аноним 09/03/23 Чтв 23:19:52 2635137 169
>>2635107
>больше всего адресов
Аноним 09/03/23 Чтв 23:24:54 2635140 170
>>2635085
Как то так.
SELECT P.name, P.adress, COUNT(A.id)
FROM Person as P
JOIN Adress as A
ON P.id = A.id_person
GROUP BY P.name;
Аноним 09/03/23 Чтв 23:31:19 2635152 171
Аноним 09/03/23 Чтв 23:36:11 2635158 172
Аноним 09/03/23 Чтв 23:43:00 2635166 173
Аноним 09/03/23 Чтв 23:45:13 2635169 174
>>2635166
ну по уебанству фреймворк "mocha" еще никто не перепрыгнул, но у ребят есть задатки.
Аноним 09/03/23 Чтв 23:48:47 2635174 175
>>2635169
алсо раз ребята пишут общую шину, значит тиньку пизда
Аноним 09/03/23 Чтв 23:52:10 2635180 176
Аноним 09/03/23 Чтв 23:58:47 2635190 177
>>2635180
>Почему пизда?
полюбому
Аноним 10/03/23 Птн 00:07:37 2635197 178
Аноним 10/03/23 Птн 00:28:11 2635205 179
>Подготовка¶
>Создаем новый Gradle-проект
дальше не читал пусть жрут говно в одиночестве
Аноним 10/03/23 Птн 00:35:14 2635208 180
>>2635205
Всё программируешь на XML? Я тоже.
Аноним 10/03/23 Птн 00:50:51 2635212 181
>>2635208
хуй пососи шарпоблядь
Аноним 10/03/23 Птн 00:52:34 2635214 182
>>2634994
хз как там в шарпах, а вот котлиновский fizz?.getBuzz() вместо Optional.ofNullable(fizz).map(x->x.getBuzz).orElse(null) немного удобнее. Но только ради сахара тащить другой язык это конечно клиника.
>>Это же полная хуйня ожидать что тебе придёт ёбанное ничего и как на это реагировать?
Если что то приходит от стороннего сервиса или из базы - там может быть любая хуйня с нулами в нужных полях. Это помимо того что логика на нулах - тоже не редкость в проектах.
Аноним 10/03/23 Птн 01:01:54 2635220 183
>Для конфигурации kora framework использует библиотеку typesafe config, которая умеет читать конфигурации в формате HOCON.

ну ебнутые просто
Аноним 10/03/23 Птн 01:05:06 2635224 184
Конфигурацию надо читать из реестра Windows. Его же использовать как базу данных.
Аноним 10/03/23 Птн 01:09:30 2635229 185
>>2635224
А если у меня Arch Linux? Там нет реестра Windows. Я кстати использую Arch Linux на ThinkPad от IBM
Аноним 10/03/23 Птн 01:13:50 2635234 186
Аноним 10/03/23 Птн 01:17:57 2635239 187
>>2635224
В алпине нет конфигурацмй виндовс и базы.
Аноним 10/03/23 Птн 01:20:42 2635241 188
Аноним 10/03/23 Птн 01:41:31 2635248 189
короче в тинькове долбоебы
Аноним 10/03/23 Птн 01:45:17 2635249 190
Почему в spring data все по умолчанию юзают Long тип для айди? Зачем нули лишние хранить на диске, если количество записей вряд ли превысит 2ккк ?
Аноним 10/03/23 Птн 01:54:02 2635255 191
>>2635249
Значение ID может быть намного больше количества записей, например, если городишь для PK sequence с кешами.
> Зачем нули лишние хранить на диске
Эти нули будут последним, что покажется лишним, когда надо будет оптимизировать размер базы данных. Что толку от экономии 4 байт в одной строке таблицы, если строка занимает несколько килобайт?
Аноним 10/03/23 Птн 01:55:36 2635256 192
>>2635152
>>2635166
А что дешевле, проще и быстрее? переписать всё что писали миллионы человеколет или купить более мощные серваки и перенести на них очень медленный спринг?

Ответ очевиден как по мне. Блин такие паникёры) вы такими родились или двач вас такими сделал?)
Аноним 10/03/23 Птн 01:59:36 2635257 193
>>2635256
Как будто проекты могут быть только легаси.

Медленное старьё на спринге изживёт себя, а новые проекты на Kora.
Аноним 10/03/23 Птн 02:03:53 2635258 194
>>2635257
Ну окей, что то небольшое или молодое начнут внезапно писать на чём то новом (хотя это не будет так надёжно как сринг, а для бизнеса это важно и что то новое ещё написать надо... кароче ну ты понял), но старое то никуда не денется и его надо будет развивать, разростать и так далее.
кароче как будто лет 5, а скорее 10, ещё можно сидеть ровно на спрнге.
Аноним 10/03/23 Птн 05:02:31 2635278 195
Ну ваще коры мочишь ахахах
Аноним 10/03/23 Птн 05:28:16 2635281 196
>>2635256
>>2635258
Отставить тряску, старичье. Ваш срэнг фримверк никому не нужен и он де-факто легаси и дурной тон в новом проекте. Сидите себе там тихо и не отсвечиваете. Через 10 лет пойдете на мороз таксовать или грузчиками работать в пятерочку, когда упругие зумеры будут писать проекты на Kora. Короче говоря - it's Tinkoff!
Аноним 10/03/23 Птн 06:02:55 2635291 197
Я вот читаю эту поеботу и думаю, кто такие эти ваши тинькоф банк? Какая-то блядь шарага с детскими оборотами и исключительно локальным присутствием в одной стране. Какая нахуй разница то, чем они там блядь занимаются? Они аутисты сужают свою потенциальную кадровую массу вводя свои собственные фреймверки, а за пределами даного дженерик банка — это нахуй никому не нужно.
Аноним 10/03/23 Птн 06:10:20 2635293 198
Аноним 10/03/23 Птн 06:15:57 2635294 199
>>2635291
>а за пределами даного дженерик банка — это нахуй никому не нужно.
зато тот хуй в очках, который подсадил весь банк на свою самописную залупу, теперь гарантированно обеспечил себя работой до конца жизни (ну или пока тинёк не сдохнет)
Аноним 10/03/23 Птн 07:43:43 2635302 200
>>2635291
>с детскими оборотами и исключительно локальным присутствием в одной стране

Можно PROOFS пожалуйста?
Я что, зря дрочил лягушонку линку??
Аноним 10/03/23 Птн 07:43:59 2635303 201
>>2635281
Там из зала правильный вопрос задали, а где вы будете брать разрабов на свои велосипеды?
-Пук-среньк, настоящий инженер пишет на джаве без фреймворка, это база.

А по итогу найдут только студентов - получится такой же обосрамс как с яндексом.
Сенькам то может и по кайфу пилить велосипед, это интересно.
А вот мидлы в рот ебали использовать это нонейм говно в рабочих задачах, они просядут по скилам и пострадает их ценность как спецов (а значит меньше зепка).
Если уж переучиваться - то выгоднее в го свичнуться (там как раз пилить спринг уместно).
Аноним 10/03/23 Птн 07:47:25 2635304 202
kora.webm 7260Кб, 1280x576, 00:01:57
1280x576
>>2635166
В быту корой обычно называется легко отделяющаяся наружная омертвевшая часть корней и стеблей древесных растений.
Аноним 10/03/23 Птн 07:56:30 2635307 203
screencapture.png 412Кб, 1920x2711
1920x2711
cap2.JPG 126Кб, 1220x892
1220x892
cap3.JPG 248Кб, 1200x881
1200x881
orili.mp4 354Кб, 854x480, 00:00:06
854x480
>>2635302
Он даже в топ 10 не входит.
Аноним 10/03/23 Птн 08:10:44 2635312 204
>>2635291
>>2635303
Эх, молодые. Сеньор он на то и сеньор, что гарантирует себе рабочее место. Сделать свой велосипед = гарантировать, что кабан тебя не выкинет, как Илон Маск 80% твиттер разработчиков, потому что никто кроме него там не разберется. Чтобы не переписали быстро на молодежном языке, надо пропихнуть его побольше и поглубже, а чтоб цепные псы кабана - менеджеры, не прочухали подвоха пиарим на конференциях и докладах. Всё, дядя сеньор и его друзья обеспечили себе высокооплачиваемую и непыльную работу до пенсии.

А по поводу всякой чуши, типа чистого кода и молодежных языков, профразвития и тд - это наебалово для выжимки молоденьких, упругих но глупых по неопытности зумерков. Потому что когда они подрастут и прохавают безжалостный мир капитализма, такую лапшу на уши не повесить.
Аноним 10/03/23 Птн 08:33:13 2635322 205
>>2635291
Это как посмотреть. В теории они могут наоборот её расширить, хайря всех подряд со знаниями на уровне java se, и чуток доучить своей поделке уже дома, вместо того чтобы искать только спрингокульт.
Аноним 10/03/23 Птн 08:35:19 2635325 206
>>2635322
спрингокульт-шиз в треде, я спокоен.
Аноним 10/03/23 Птн 08:51:06 2635344 207
>>2635152
прослушал половину. В принципе правильно говорит. Меня тоже очень бесит вся спринговая магия и что оно жрёт минимум 500Мб и долго стартует
Аноним 10/03/23 Птн 08:51:21 2635345 208
>>2635303
> просядут по скилам и пострадает их ценность как спецов (а значит меньше зепка).

Имхо это майндсет терпилы. Ценность спеца определяется компетенцией и уровнем задач, которые он способен решать а не стеком. Скиллы, посадка по которым действительно критична, ортогональны стэку.
Аноним 10/03/23 Птн 08:56:31 2635353 209
>>2635345
какой мне смысл как специалисту переходить на другой стек и начинать всё почти с нуля?
Аноним 10/03/23 Птн 08:57:55 2635355 210
>>2635344
А не легче было бы вложиться и контрибутить в spring native? Или не взять кваркус или микронафт?
Зачем очень средней по мировым мерках компании лепить собственные фреймворки?
Она ведь поддержку его не потянет 100%. Через 3 года использования у этого велосипеда будет уже костылей столько же сколько у спринга, а функционал будет все еще на порядок ниже.
Аноним 10/03/23 Птн 09:03:25 2635367 211
>>2635256
>переписать всё что писали миллионы человеколет

Обычно постановка задачи звучит не так. Никому, даже отьявленным велосипедостроителям, неинтересно писать убийцу спринга снихуя. Проект пишут под конкретные цели, и эти цели обычно локальные. Писать фреймворк под эти цели не так уж и трудозатратно.
Аноним 10/03/23 Птн 09:05:05 2635368 212
>>2635353
Без обид.
Если для тебя переход на новый стек означает "учить все с нуля", ты не специалист, вот и все.
Аноним 10/03/23 Птн 09:07:31 2635371 213
>>2635355
Компашка масштаба тинькова потянет, почему нет?

Контрибутить в спринг натив означает зависеть от прихотей остальных стейкхолдеров и майлстоунов проекта. Иногда это может быть неприемлемо.
Аноним 10/03/23 Птн 09:11:13 2635374 214
>>2635355
у них нет цели впихнуть всё или сделать нескучный конструктор для вкатышей, как у спринга.
Просто какой-нибудь DI без проксей и рефлексии, чтобы не раскидывать зависимости руками
Аноним 10/03/23 Птн 09:11:57 2635377 215
>>2635368
окей. Ты не в яндексе случайно работаешь? Где ещё любят скакать по языкам и стекам
Аноним 10/03/23 Птн 09:12:49 2635381 216
>>2635374
Ну то есть этот велосипед не предназначен для выхода из загона тинька?
И нахуя его вообще тогда слушать?
Аноним 10/03/23 Птн 09:17:10 2635385 217
>>2635381
вообще не связанные вещи. Мне тоже не нужна магия и нескучный конструктор спринг-бута, если страдает память и производительность
Аноним 10/03/23 Птн 09:20:58 2635388 218
>>2635385
Но что ты будешь делать, когда у велосипеда тинька не будет нужного тебе функционала, а его не окажется с 99% вероятностью?
90% проектов хватает чистого спринга, для остальных 10 есть гора информации как спринг допиливать и оптимизировать под свои нужды.
Аноним 10/03/23 Птн 09:23:48 2635389 219
>>2635377
Нет. Просто за 10+ лет стажа перекаьываться приходилось не единожды.
Аноним 10/03/23 Птн 09:26:21 2635391 220
>>2635388
а что за магический функционал есть у спринга? Это только DI и готовые конфиги для распространенных либ
Аноним 10/03/23 Птн 09:26:50 2635392 221
Аноним 10/03/23 Птн 09:31:33 2635396 222
>>2635312
Вопрос даже не в том нахуя это пишет сеньор в тиньке. Но они ж это выкинули в опенсорс и пиарят как убийцу спринга, мол давайте тащите себе в проекты это говно и вкладывайте в него тоже. Какой то анон даже возбудился (залетная шарпомуха наверняка). На что и последовала реакция.

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

>>Сделать свой велосипед = гарантировать, что кабан тебя не выкинет
А кто гарантирует кабану что его самого не выкинут? Это сбер “Too big to fail” и получит кучу денег из бюджета на свои нужды. А Тиньк не настолько крупный и важный. Сдохнет - никто даже не заметит.

>>2635345
>>Ценность спеца определяется компетенцией и уровнем задач
Это работает только на уровня от сеньора и выше. Мидл без знания спрингов (что и определяет его компетенцию) нахуй не нужон. А работать на этой поделке предположительно должны именно они (джуны нихуя не умеют, сенек нанимать для погрузки жсонов дорого)
Аноним 10/03/23 Птн 09:32:17 2635398 223
>>2635391
Даже в рамках работы с бинами - интерсепторы, скоупы и инит/дестрой методы бинов, кондишоны автоконфигураций, профили.
На уровне веба - фильтры, адвайсы.
Куча оберток для тестов.
Это только то что сразу вспомнил.
Аноним 10/03/23 Птн 09:41:31 2635405 224
Уверен, что через год-два не просто никто не будет использовать фреймворк за пределами тинька, но от него откажутся и в тиньке.
Хотя если на тинек наложат хорошие санкции он сдохнет раньше.
Аноним 10/03/23 Птн 10:11:29 2635432 225
>>2635214
>а вот котлиновский fizz?.getBuzz()
Нинужон. Нулл допустим только тогда, когда метод явно отмечен как @Nullable и где нулл это отдельное логическое значение и должен обрабатываться совсем по другому.

Да, есть ситуации, в которых проведение нулл вверх по стеку как ошибки в ГОвне прямо так и напрашивается. Но все они являются говнокодом и при нормальной структуре проекта самоуничтожаются.
Аноним 10/03/23 Птн 10:12:55 2635433 226
Петухлин вообще борется не с тем, с чем надо бороться. Он борется с внешними проблемами, оставляя возможность внутри написать такое говнище, что никакие сахарки его не спасут. Джава принуждает хотя-бы писать нормально, чтобы не приходилось заменять петухлиновский ? целой строкой бойлерплейта.
Аноним 10/03/23 Птн 10:16:57 2635436 227
>>2635396
>Мидл без знания спрингов (что и определяет его компетенцию) нахуй не нужон

Так постановка вопроса то изначально была какая?

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

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

>А работать на этой поделке предположительно должны именно они

Я в джаву вообще через осги вкатывался (караф, ебанавротнахуй). Сейчас мне 10+ лет стажа, никаких проблем на своем пути не встретил, ни о чем не жалею. Спринг - не самое запарное что есть в разработке. ИМХО нужность спрингодозы для миддлов переоценена. Про джунов вообще молчу, на вкатунов сейчас без слез не взглянешь.
Аноним 10/03/23 Птн 10:18:46 2635440 228
>>2635291
Поздравляю, открыл истину. Тинькоф это компания, которая очень хочет быть похожей на яндекс, но в которой разработчики не в состоянии правильно перемножить три числа, из-за чего клиенты наменивают миллионы рублей себе в прибыль (после чего на них подают в суд)

Я вообще не представляю, как эту контору можно воспринимать всерьёз, платят они ещё меньше яндекса, собес (карго культ с яндексового) муторный, хоть и не сложный (потому что особого потока людей в тинек нету)
Аноним 10/03/23 Птн 10:19:15 2635441 229
>>2635436
>Ты миддл, ты уже овладел спрингом
нет, всегда можно поймать на незнании кишочков
Аноним 10/03/23 Птн 10:20:23 2635442 230
>>2635441
Харчок в ебало любому ублюдку-интервьюеру, ловящему кандидатов на знании кишочек. Еще б блять джава-паззлеры додумались спросить, ебланы.
Аноним 10/03/23 Птн 10:22:54 2635445 231
>>2635405
можно смело ставить анус. даже яндекс не смог родить ничего такого, что имело бы статус общеупотребимого фреймворка/библиотеки, хотя пытался не один десяток раз. а уж про подзалупный банк с крайне хуёвой репутацией нечего даже и говорить, дропнут идею использования сразу как только дойдут то слова тиньков в описании.
Аноним 10/03/23 Птн 10:26:05 2635448 232
Я тем временем напоминаю, что всё, что все полезные функции спринга можно написать в 1к строк.
Аноним 10/03/23 Птн 10:33:41 2635451 233
vid2.mp4 131Кб, 712x416, 00:00:17
712x416
Что делать с этой залупой бля?
Аноним 10/03/23 Птн 10:33:42 2635452 234
>>2635432
>>Нинужон
Ну вот поле может быть со значением, а может и без него. Если не пустое - нужно вывести. Для бизнеса это правильно. Что делать будешь? Идти объяснять овнеру что он и его клиенты долбоебы и надо переписать логику чтоб тебе удобно было?
Аноним 10/03/23 Птн 10:34:31 2635455 235
>>2635452
>где нулл это отдельное логическое значение и должен обрабатываться совсем по другому.
Аноним 10/03/23 Птн 10:35:38 2635456 236
Аноним 10/03/23 Птн 10:41:36 2635463 237
Аноним 10/03/23 Птн 10:43:24 2635467 238
>>2635463
Реще мышью води. У тебя получится.
Аноним 10/03/23 Птн 10:43:48 2635468 239
>>2635467
Блять, а если без приколов?
Аноним 10/03/23 Птн 10:46:24 2635475 240
>>2635468
Если без приколов, то хуй его знает. Багу жыдам завести.
Аноним 10/03/23 Птн 10:58:06 2635487 241
>>2635451
Жать F2 для перемещения по ошибкам/предупреждениям а не быть дегродом, сросшимся с мышью
Аноним 10/03/23 Птн 10:59:54 2635489 242
>>2635445
>>яндекс не смог родить ничего такого, что имело бы статус общеупотребимого фреймворка/библиотеки
Кликхаус используется многими. А до них меил тарантула высрал, которым тоже кто то пользовался. На этом пожалуй все.
Аноним 10/03/23 Птн 11:01:28 2635492 243
>>2635455
Вот этот опшионал это считай и есть его особая обработка. Только таких мест в коде может быть довольно много.
Аноним 10/03/23 Птн 11:02:21 2635496 244
>>2635456
чел выше писал что опшионал нинужон, потому что нулов нет или почти нет.
Аноним 10/03/23 Птн 11:30:41 2635538 245
Вкатуны блядь угомонитесь
Нормальный специалист перекатится на новый веб фреймворк за неделю
Похуй что там: кора, play, микронавт или вообще takes
Если лично ТЫ не в состоянии этого сделать, то ты вкатун ебаный и перхоть
Аноним 10/03/23 Птн 11:31:09 2635539 246
>>2635492
Ты даун? Это поднятие нулла вверх по стеку. Ничего общего с особой обработкой он не имеет.
Аноним 10/03/23 Птн 11:32:44 2635541 247
>>2635487
Нахуя мне захламлять мозг бесполезной инфой о дохуиллиарде сочетаний клавиш, если есть мышь?
Аноним 10/03/23 Птн 12:03:39 2635577 248
тиньковщики тоже против ORM. Неужели я не одинок
Аноним 10/03/23 Птн 12:12:42 2635585 249
>>2635577
Мне кажется, тут скорее именно хибернейт. Он уж больно переусложнен. Как и спринг секьюрити, например. Оверинжиниринг там, где можно проще. Физз базз энтерпрайз эдишном отдает немного.
Аноним 10/03/23 Птн 12:17:56 2635589 250
>>2635585
он основан на мертворожденной идее что можно автоматически генерировать sql запросы. Генерить то можно, но получается всякая херня. И это в самом бутылочном горлышке приложения.
Аноним 10/03/23 Птн 12:45:59 2635613 251
>>2635541
Еще можно жать Ctrl + Enter, чтобы Идея сама поставила за тебя точку-с-запятой.
Это очень полезная инфа, если ты пользуешься Идеей
Аноним 10/03/23 Птн 12:50:55 2635624 252
>>2635589

Мертворожденная идея звучит не так.

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

А генерация запросов - это нормально. Их много кто генерит, вон Jooq например.
Аноним 10/03/23 Птн 12:57:05 2635632 253
Бля, опять зовут в команду, где всего два бекендера. Только теперь там какой-то относительно новый проект на 11 жабе и 5 сринге и, по их словам, без легаси вообще. Стремаюсь я что-то идти в команду, где всего два разраба, тем более на первую работу. Че скажете вообще исходя из вводных? Дропать их и искать что-то получше или хороший опыт для начала карьеры кнопкодава?
Аноним 10/03/23 Птн 12:58:17 2635635 254
>>2635624
Нет. Это не мертворождённая идея.

Корень всех проблем, который ближе всего к понятию мертворождённости - общая память. Когда два инстанса с разными точками входа работают с одной и той же памятью. Вот что вызывает проблемы. Если точка входа гарантированно одна, то всегда можно шлёпнуть паттерн реставратор и даже с ORM наслаждаться истинным ООП.
Аноним 10/03/23 Птн 13:17:55 2635653 255
>>2635632
где ты вакуху нашел. На ххру 0 вакансий
Аноним 10/03/23 Птн 13:32:02 2635674 256
>>2635653
Я бы тебе ответил, только ты не задал вопроса.
Аноним 10/03/23 Птн 13:32:23 2635675 257
>>2635635
Нихуя не понял.

Во первых - че за нахуй новый паттерн такой: "реставратор"? Его даже гугл не находит.

Во вторых - че за наброс про общую память. У тебя любой рестфул-сервис - это литералли проект с кучей точек входа, ведущих к общему стейту в лице БД.

В третьих - при чем тут ORM, особенно джавовые, у которых вся работа построена вокруг понятия "persistence context", который сам по себе литералли является общей памятью где все мэнеджед-энтити шарятся для всех учакстников транзакции

Разьясни подробней свой пойнт, будь добр?
Аноним 10/03/23 Птн 13:34:18 2635678 258
>>2635632
На вкус и цвет. Мне наоборот нравится когда в проекте мало людей. Идеально - когда я литералли один.
Аноним 10/03/23 Птн 13:39:35 2635680 259
>>2635589
>на мертворожденной идее что можно автоматически генерировать sql запросы
охуеть, а пацаны то не в курсе
Аноним 10/03/23 Птн 13:41:46 2635682 260
>>2635678
Ну так ты то скорее всего опытный, а я просто вкатыш, грязь из-под ногтей. Мне будет тяжко без постоянных кодревью, ну по крайней мере так мне это представляется, буду сам во всем разбираться, а если игорь1 и игорь2 решат уйти в отпуск, то меня выебут и высушат овертаймами.
Аноним 10/03/23 Птн 13:48:31 2635686 261
>>2635675
>Во вторых - че за наброс про общую память. У тебя любой рестфул-сервис - это литералли проект с кучей точек входа, ведущих к общему стейту в лице БД.
Ну вот это и является проблемой. Микросервисы - мертворождённая идея, общая память - близка к этому, но с этим можно работать, просто нужно правильно обрабатывать это, а не пытаться натянуть сову на глобус - натянуть паттерны и приёмы ООП, которое возможно только в локальном масштабе в рамках одного инстанса на целую систему, в которой даже использованных языков программирования может быть несколько, занимаясь костылеварением с помощью ORM'ов.

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

>Во первых - че за нахуй новый паттерн такой: "реставратор"? Его даже гугл не находит.
Локальный вызов this.save() после каждого внесения изменения в ООП-шный объект и YourDataMap, представляющая из себя обрезанный репозиторий без методов update и delete (это делает сам объект). В более общем смысле - чтение из оперативки, запись на диск.
Аноним 10/03/23 Птн 13:52:03 2635691 262
>>2635585
>Мне кажется, тут скорее именно хибернейт. Он уж больно переусложнен.
очень большой звонок был когда они задепрекейтили критериа апи и сказали юзайте функционал жпа. это сука пиздец, то что делалось в изящные 10 строк с помощью критериев превратилось в 50 строк нечитаемых макарон. причем некоторые нетривиальные вещи я так и не понял как переписать на жпа.

>>2635577
>тиньковщики тоже против ORM. Неужели я не одинок
ты не можешь писать на яве и не использовать ORM. по крайней мере на практике. потому что ORM - это, если грубо говорить, перевод объектой модели в реляционную. ты можешь использовать хибернейт или что-то еще либо писать свой велосипед, но от ORM ты никуда не уйдешь.
Аноним 10/03/23 Птн 13:54:51 2635693 263
>>2635686
> Микросервисы - мертворождённая идея, общая память - близка к этому
то есть концепция РСУБД с 60-летней историей коммерческого применения это мертворожденная идея, ага.
Аноним 10/03/23 Птн 13:57:44 2635695 264
>>2635686
>Локальный вызов this.save() после каждого внесения изменения в ООП-шный объект и YourDataMap, представляющая из себя обрезанный репозиторий без методов update и delete (это делает сам объект). В более общем смысле - чтение из оперативки, запись на диск.
ебать, что это за шиза.
Аноним 10/03/23 Птн 13:59:12 2635697 265
>>2635693
Именно. Команды из десятков тысяч крудошлёпов вышлёпывают годами то, что микро-команды или вообще соло разработчики делают за неделю. Угадаешь, как так получилось?
Аноним 10/03/23 Птн 13:59:45 2635699 266
>>2635695
Трясёшься, анальничек, с разрыва манямирка?
Аноним 10/03/23 Птн 14:04:29 2635707 267
>>2635697
>Угадаешь, как так получилось?
как у тебя всякая хуйня в манямире рождается? не угадаю и не собираюсь этого делать.

концепция реляционных баз данных это пример возможно самой успешной программной архитектуры, реализованной на практике. и, что уж несомненно, sql - это пример самого успешного dsl эвар. если для тебя это мертворожденная идея то ты либо клинический долбоеб либо человек который в принципе не знает о чем говорит.
Аноним 10/03/23 Птн 14:06:13 2635711 268
>>2635707
Не читал после
>? не
Как выучишь правила русского языка, возвращайся.
Аноним 10/03/23 Птн 14:15:58 2635718 269
>>2635675
>Во первых - че за нахуй новый паттерн такой: "реставратор"?
ну скорее всего он вот это имел в виду
https://en.wikipedia.org/wiki/Memento_pattern

но то что описал во фразе
> Локальный вызов this.save() после каждого внесения изменения в ООП-шный объект и YourDataMap, представляющая из себя обрезанный репозиторий без методов update и delete (это делает сам объект). В более общем смысле - чтение из оперативки, запись на диск.
никакого отношения к нему не имеет, это просто примитивное описание кеша, которое может работать с простыми объектами, не имеющими иерархическую структуру. если ты попробуешь применить такой подход для работы с полноценными объектами, поддерживающими циклические связи, связи многие-ко многим, списки, коллекции и т.д. то ты охуеешь, так как тебе придется, по сути, писать то, что в хибере называется кеш второго уровня.
Аноним 10/03/23 Птн 14:17:30 2635720 270
>>2635718
>у. ес
И тут тоже чтение остановилось, а пост я скрыл.
Аноним 10/03/23 Птн 14:18:15 2635722 271
>>2635682
>ты то скорее всего опытный, а я просто вкатыш

ИМХО тебе уже на это должно быть похую. Те оффер дали? Предполагаю что дали, раз "в команду зовут". То есть сама команда с тобой поговорила, отсобеседовала и признала достойным. Все. Нечего себя принижать за просто так.

>если игорь1 и игорь2 решат уйти в отпуск, то меня выебут и высушат овертаймами

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

И хэй, сложности будут всегда и везде. И рано или поздно будет овертайм, который тебя высушит досуха, это неизбежно ни на каком проекте. Если заранее накручивать себя на такой негатив, никогда не вкатишься. Уволиться всегда успеешь.
Аноним 10/03/23 Птн 14:18:33 2635723 272
>>2635720
Что тебе не нравится в мелкобуквенности?
Аноним 10/03/23 Птн 14:20:24 2635725 273
>>2635723
Неуважение к собеседнику. Заглавные буквы придумали не просто так, а для того, чтобы читать было удобнее. Набирать текст без заглавных букв не намного легче (вообще не легче практически), а читать сложнее. Это либо явное выражение неуважения к собеседнику (смотрите, мне похуй, как ты прочитаешь, зато я 0,1 секунду сэкономлю), либо стадное поведение (долбоеб скопировал стиль письма своих протыков).
Аноним 10/03/23 Птн 14:23:41 2635729 274
>>2635725
Двачую, мелкобуквенное быдло идёт нахуй из треда джавагоспод прямиком в /vg/dota2/.
Аноним 10/03/23 Птн 14:24:32 2635731 275
>>2635725
>Неуважение к собеседнику.
соси хуй быдло, что тебя уважать если ты несешь феерическую хуйню. в реальности за эту чушь что ты тут транслируешь тебя пидорнули бы давно с любой вменяемой команды как профнепригодного.
Аноним 10/03/23 Птн 14:25:31 2635732 276
image 2Кб, 370x53
370x53
>>2635731
Быдло скрыто с первых слов.
Аноним 10/03/23 Птн 14:26:27 2635735 277
>>2635732
Пиздец, обосрался и спалился, что я семёнил. Тем не менее, не отменяет того, что я тебя скрываю.
Аноним 10/03/23 Птн 14:35:15 2635740 278
>>2635691


Эммм... шта? Но критерия апи и есть функционал жпа...
Аноним 10/03/23 Птн 14:41:52 2635742 279
>>2635691
>ты не можешь писать на яве и не использовать ORM. по крайней мере на практике. потому что ORM - это, если грубо говорить, перевод объектой модели в реляционную. ты можешь использовать хибернейт или что-то еще либо писать свой велосипед, но от ORM ты никуда не уйдешь.


Уже ушел в сторону JOOQ.
Аноним 10/03/23 Птн 14:42:26 2635744 280
Аноним 10/03/23 Птн 14:54:22 2635755 281
>>2635740
там другие критерии

было:
Criteria q = s.createCriteria(Author.class);
q.createCriteria("books").add(Restrictions.like("title", "%Hibernate%"));
List authors = q.list();

стало:
CriteriaBuilder cb = em.getCriteriaBuilder();
CriteriaQuery<Author> cq = cb.createQuery(Author.class);
Root<Author> root = cq.from(Author.class);
SetJoin<Author, Book> books = root.join(Author_.books);

ParameterExpression<String> paramTitle = cb.parameter(String.class);
cq.where(cb.like(books.get(Book_.title), paramTitle));

TypedQuery<Author> q = em.createQuery(cq);
q.setParameter(paramTitle, "%Hibernate%");
List<Author> authors = q.getResultList();

ебануться же, ну. как этой хуйней нормально вообще пользоваться можно?
Аноним 10/03/23 Птн 14:58:50 2635761 282
Лахта из тинькова совсем охуела.
Аноним 10/03/23 Птн 15:01:57 2635764 283
Аноним 10/03/23 Птн 15:10:00 2635769 284
Как в контроллере принять данные формы, в которых пара текстовых полей и прикрепленный файл. В гугле такие случае вообше не описываются, только отправка формы с одним лишь файлом(((
Аноним 10/03/23 Птн 15:10:27 2635770 285
>>2635742
>Уже ушел в сторону JOOQ.
это тоже ORM. функционал, который дает JOOQ по сути от хибернатовских критериев концептуально ничем не отличается.

это все еще преобразование объектов в реляционную модель через генерацию SQL-запроса на основе полей/метаданных класса

в жаве альтернатив ORM по сути нет, в силу ее природы.

альтернатива выглядит, например, так:
(insert-into :person
(set= :sex "male"
:age 25
:name "Eitaro Fukamachi")
(on-conflict-do-update '(:name)
(set= :age (:+ :age 1))
(where (:< :age 99))))

т.е. ты в самом языке определяешь dsl для работы с базой и используешь его в коде так же как ты используешь sql в консоли субд, без всяких костылей типа Session, Query, Resultset и прочих вспомогательных нагромождений. Но, увы, в яве так сделать нельзя.
Аноним 10/03/23 Птн 15:25:39 2635782 286
>>2635770

>это все еще преобразование объектов в реляционную модель через генерацию SQL-запроса на основе полей/метаданных класса

Ну ты загнул. Ты эдак и JDBC можешь назвать ORMом. А хули? ResultSetы же - обьекты?

Нтак тоже умею. Смотри:

>альтернатива выглядит, например, так:
>т.е. ты в самом языке определяешь dsl для работы с базой и используешь его в коде так же как ты используешь sql в консоли субд

В JOOQ есть класс, который называется литералли DSL, и которым ты литералли описываешь SQL в типобезопасной манере (в отличие от примера на кложуре, кстати, который ты привел) средствами языка Java. Выглядит это примерно вот так:

DSL.<Record>select(
RULE_LISTS_VIEW.ID,
RULE_LISTS_VIEW.RULELIST
).from(
RULE_LISTS_VIEW
)

И что? Чем тебе не паритет к твоему примеру? Или ты начнешь щас жопой вилять и говорить что это - не dsl, а dslи можно только в кложуре писать?
Аноним 10/03/23 Птн 16:19:24 2635814 287
image.png 112Кб, 883x874
883x874
>>2635769
А это что?? Всё в гугле описывается. Выкатывайся из джавы и не возвращайся
Аноним 10/03/23 Птн 16:50:06 2635853 288
>>2635539
Какая нахуй возгонка - достаем поле вложенного объекта без риска нарваться на НПЕ. В orElse можешь "" авставить, если тебя null так тригерит.
Аноним 10/03/23 Птн 16:59:25 2635865 289
>>2635691
> ты не можешь писать на яве и не использовать ORM. по крайней мере на практике
могу. ОРМ придумали и зафорсили лет 10 назад. Как же до этого жили?

Какие проблемы решает ОРМ?
Сложность? Нет, сложность увеличивается, появляется куча скрытых камней и граблей, повышается требование к квалификации бекендера, появляется требование знания кишочков хибернейта и обхода его кривых мест

Быстродействие? Нет, быстродействие ухудшается
Расход памяти? Расход памяти тоже ухудшается.

Так какую проблему решает хибернейт? Я скажу какую - вкатыши боятся sql и думают что хибернейт позволит поместить это в черный ящик и как-то там сам всё сделает. Это ошибка. Теперь вкатыши вообще не умеют без хибернейта слать запросы в базу и думают что это невозможно
Аноним 10/03/23 Птн 17:03:33 2635869 290
KSAj2a9tjc.png 71Кб, 997x430
997x430
>>2635770
>альтернатива выглядит, например, так:
руками написал sql запрос и небо не обрушилось. Можно прямо копировать и вставлять в консольку
Аноним 10/03/23 Птн 17:10:06 2635880 291
Аноним 10/03/23 Птн 17:20:40 2635894 292
Аноним 10/03/23 Птн 17:21:45 2635895 293
>>2635894
На тот пост я ответил.
Аноним 10/03/23 Птн 17:22:26 2635897 294
image.png 64Кб, 1432x511
1432x511
>>2635880
Аночоусы, у недавно вкатившегося вопрос.
Так фильтровать вообще нормально?
Мне приходит лист енумов, нужно сделать реквест и получить из него лист объектов. Вернуть объекты нужно только те, в описании которых находятся value енума. В описании много текста, а искать нужно только по определённому слову. Изменить то, как мне приходит ответ из реквеста я не могу.

Мне кажется я хуйню написал и можно лучше, но никак не вижу как это лучше сделать
Аноним 10/03/23 Птн 17:23:11 2635899 295
>>2635897
Реплай прилип случайно
Аноним 10/03/23 Птн 17:24:07 2635900 296
>>2635897
Что блядь? Лист енумов?
Аноним 10/03/23 Птн 17:25:45 2635902 297
>>2635900
Говорю случайно на номер поста нажал и не заметил
Аноним 10/03/23 Птн 17:28:21 2635905 298
>>2635902
Я понял. Я по твоему посту и спрашиваю.
Аноним 10/03/23 Птн 17:30:04 2635906 299
list.add{
"мам",
"я",
"долбоеб"
};
Аноним 10/03/23 Птн 17:30:45 2635907 300
>>2635897
1. фор в стримах выглядит как говно
2. сложность пиздец (замени на хэшмап)
3. нулпоинт поджидает в 53 строке (разверни сравнение)
Аноним 10/03/23 Птн 17:31:29 2635908 301
>>2635906
list.add = new("мам я долбоеб")
Аноним 10/03/23 Птн 17:35:30 2635911 302
>>2635905
А что не так с листом? Стринги я принимать не могу, значений будет много и они фиксированы.

>>2635907
1 - Понятно что как говно, потому решил спросить.
2 - А как иначе? Вижу что там фильтр в фильтре по сути, но ничего придумать не могу. Лист foosAndBars на хэшмапу?
3 - Там заранее стоит остановка работы сервиса если ничего не найдено, так что не будет нпе
Аноним 10/03/23 Птн 17:37:29 2635913 303
>>2635911
>1 - Понятно что как говно, потому решил спросить.
>2 - А как иначе? Вижу что там фильтр в фильтре по сути, но ничего придумать не могу. Лист foosAndBars на хэшмапу?
>3 - Там заранее стоит остановка работы сервиса если ничего не найдено, так что не будет нпе
тупоголовый блядь
Аноним 10/03/23 Птн 17:38:17 2635915 304
>>2635913
Оформил по съебам, безработный
Аноним 10/03/23 Птн 17:40:34 2635917 305
>>2635915
Оформил съёб в свой родной петушарп-тред, агрессивное быдло.
Аноним 10/03/23 Птн 17:41:11 2635918 306
>>2635913
Ты тоже в темпе съёб в петушарп-тред реализовал.
Аноним 10/03/23 Птн 17:43:57 2635920 307
>>2635917
Ты даун-долбаёб, только честно? Хули мелкобуквишь на меня и потом проецируешь?
Аноним 10/03/23 Птн 17:45:41 2635922 308
>>2635920
Я не мелкобуквил на самом деле мне сначала показалось, что ты нюфаню шлёшь нахуй, поэтому и направил тебя в петушарп тред.
Аноним 10/03/23 Птн 17:47:29 2635924 309
>>2635911
Ну да, для стрингов мапа перебор, сделай сет.

.filter(r -> fizzBuzzSet.contains(r))
Аноним 10/03/23 Птн 17:53:54 2635926 310
Аноним 10/03/23 Птн 17:54:22 2635927 311
>>2635926
Дед, последний раз это было запощено в треде этак 115.
Аноним 10/03/23 Птн 17:59:40 2635928 312
Аноним 10/03/23 Птн 18:00:52 2635930 313
>>2635928
Съёб в петушарп оформил, быстро, резко.
Аноним 10/03/23 Птн 18:11:40 2635938 314
>>2635924
Трабла в том, что этот филд description по которому я смотрю имеет в себе много всего, по типу "qwe foo qwe". Я пробовал сначала смотреть со стороны листа енумов, но тогда будет пусто ведь.
Аноним 10/03/23 Птн 18:54:34 2635968 315
Есть серьезный вопрос. Почему вы выбрали java, а не c#
бойз Аноним 10/03/23 Птн 18:54:59 2635970 316
Парни ,а стоит ли вообще учить джаву в 2023? перспективно ли? или лучше плюсы/питон и тд?>>2635938
Аноним 10/03/23 Птн 18:56:14 2635975 317
Аноним 10/03/23 Птн 18:57:20 2635976 318
Аноним 10/03/23 Птн 19:04:49 2635982 319
>>2635451
Сугак, подонок, мерзавец!
Аноним 10/03/23 Птн 19:06:21 2635984 320
javadotnet.webm 17429Кб, 640x360, 00:03:13
640x360
Аноним 10/03/23 Птн 19:17:26 2636002 321
>>2635968
Я не выбирал, меня заставили.
Но даже при наличии выбора я бы ни за что не вкатился в шарп.
Аноним 10/03/23 Птн 19:19:55 2636008 322
>>2635984
Аж позеленел с такого перефорса. Это ведь петушарперы пидорасы.
Аноним 10/03/23 Птн 19:22:27 2636013 323
2023-03-1019-18[...].png 48Кб, 1233x561
1233x561
2023-03-1019-21[...].png 29Кб, 1046x414
1046x414
2023-03-1019-20[...].png 32Кб, 748x718
748x718
>>2635865
>Так какую проблему решает хибернейт? Я скажу какую - вкатыши боятся sql и думают что хибернейт позволит поместить это в черный ящик и как-то там сам всё сделает.
ой вей. ты говоришь хуйню. хибернейт решает много проблем, и
1) основная - это управление сложностью, а именно упрощение и сокращение количества написанного кода. ты просто не видел систем хотя бы с парой сотен таблиц где всё общение с БД орагнизовано на голом jdbc. Там количество кода на порядок больше чем при использовании самой простой ORM.
2) кросплатформенность на уровне субд
3) КЕШ второго уровня
4) четкое разграничение уровня приложения и БД. именно благодаря инструментам типа хибера страшную ебанину вроде бизнес-логики на триггерах и хранимых процедурах сейчас можно встретить тьолько в самых дремучих легаси. именно поэтому практически в любой книге по ораклу выпущенной за последние 15 лет есть отдельная глава посвещенная критике хибернейтоподобных систем, потому как они ОЧЕНЬ сильно повлияли на популярность PL/SQL и подобных языков как языков программирования и у адептов написания логики в БД от них очень сильно подгорает.
5) множественные следствия из п.1 - упрощение тестирования, возможность наследования сущностей, типовые решения и шаблоны проектирования и т.д. и т.п.

> Сложность? Нет, сложность увеличивается,
еще раз, ты просто видимо не писал приложений, по крайней мере достаточно сложных, на голом ждбц. там скрытых камней и граблей не меньше а кода в разы больше и возможностей допустить ошибки в разы больше, и особенно это усложняется тем что SQL невозможно проверить на этапе компиляции, и любой кусок кода типа такого >>2635869 представляет собой потенциальную проблему которую нужно покрывать тестами со всех сторон, потому что других способов проверить хоть какую-то корректность этого кода нет. Ну и отдельно нужно упомянуть безопасность так как любая достаточно сложная система на голом ждбц практически всегда уязвима перед sql-инъекциями, если хорошо в ней покопаться. И уж лучше прочитать книжку про хибернейт чем штудировать особенности PL/SQL, про которые написано, опять же, в разы больше.

еще раз - ты думаешь что если ты будешь писать вместо хибера голый скл то у тебя там будут всю дорогу запросы в духе update user set name='vasya' where id=1? хуй там. у тебя будет несколько сотен файлов типа пикрелейтеда неведомой ебанины которую легче каждый раз писать с нуля чем пытаться разобраться что в ней написано, а особенно фееричные запросы будут достигать размера в нескольких сотен строк.
Аноним 10/03/23 Птн 19:34:45 2636029 324
>>2636013
у тебя на картинках аналитические запросы, которые хибернейтом ты ну никак не сделаешь. Только если выгружать данные и в жабе делать это же самое
Аноним 10/03/23 Птн 19:42:09 2636037 325
dimsaul.png 20Кб, 364x108
364x108
dimsaul2.png 41Кб, 493x211
493x211
>>2635152
>>2635166
Отставить тряску - ДимСаул уже все объяснил
Аноним 10/03/23 Птн 19:43:53 2636042 326
>>2636029
а ты хочешь в своем приложении еще pure sql оставить? да ты ебанешься, просто выведи стактрейс хибера и посмотри какого размера запросы он генерирует. тебе, чтобы сохранить хоть-какую-то читабельность и вменяемость кода придётся переходить на хранимки/курсоры.
Аноним 10/03/23 Птн 19:54:00 2636055 327
>>2636042
не понял аргумента. Я знаю что хибер высирает тонны говна и что я могу делать запросы лучше чем хибернейт.
Кстати хранимка у тебя тоже не скомпилится если в ней ошибки.

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

кроссплатформенность - нахуй не нужно и сомневаюсь что хибер может её обеспечить. Кеш для бд - нахуй не нужен. Разграничение - глупость. Просто лишились возможстей хранимок/вьюх. С таким же успехом можно было запретить хранимки/вьюхи.
Хибернейт и его генерацию точно также нужно тестировать. И ещё глазами смотреть что он там генерирует и насколько плохо
Аноним 10/03/23 Птн 19:56:52 2636062 328
>>2636037
Твой протык?

Репорт.
Аноним 10/03/23 Птн 19:58:03 2636065 329
>>2635968
Потому что котлин, а джава ненужна. Ну шарпы просто редкий стек. Я бы если знал о предстоящем кризисе лучше бы пошел в универ и дрочил питон, го, линукс и облака вместо крудошлепства
Аноним 10/03/23 Птн 20:31:27 2636097 330
>>2636062
Не знаешь Дмитрия Соловьева? Позорище, ливай с треда.
Аноним 10/03/23 Птн 20:32:52 2636098 331
Аноним 10/03/23 Птн 23:36:44 2636279 332
public static Iterable<Character> iterate(String string) {
if (string == null) {
throw new IllegalArgumentException("String must be not null");
}
return new Iterable<Character>() {
@Override
public Iterator<Character> iterator() {
return new Iterator<Character>() {
int pos = 0;

@Override
public boolean hasNext() {
return pos < string.length();
}

@Override
public Character next() {
if (!hasNext()) {
throw new NoSuchElementException();
}
return string.charAt(pos++);
}
};
}
};
}

Тут string статический член или нет?
Аноним 10/03/23 Птн 23:40:22 2636284 333
>>2636279
член у меня в штанах
Аноним 10/03/23 Птн 23:43:57 2636286 334
>>2636279
В смысле? У тебя вообще нет строковых полей, только аргумент. Нет никакой разницы, как ты вызываешь метод, передавай хоть статическое поле, хоть поле объекта, хоть переменную.
Аноним 10/03/23 Птн 23:46:15 2636287 335
>>2635325
Я ваще google guice юзаю, мне похуй
Аноним 10/03/23 Птн 23:49:48 2636291 336
>>2635344
Похуй сколько стартует, главное как работает в долгую. Или вы там блядь апликейшены каждые пол часа деплоите?
Так же похуй сколько жрёт памяти, если она работает быстрее. С точки зрения инфраструктуры купить больше памяти дешевле и проще чем добавить\купить больше CPU
Аноним 10/03/23 Птн 23:51:10 2636292 337
>>2635396
два чая этому господину
Аноним 10/03/23 Птн 23:51:12 2636293 338
Аноним 10/03/23 Птн 23:54:17 2636296 339
>>2635214
Нулы это наёбка для мидлов и джунов которые блядь архитекруту не понимают и что падать надо как можно раньше. Потому что если тебе в проде придёт нул и ты его просто примешь как должное, то обосрёшься как тиньков и кого то выебут (кому-то даже понравится)
Аноним 10/03/23 Птн 23:55:26 2636298 340
>>2636293
Я в гугл батрачу, у гугла ВСЁ своё. Все фрейворки чисто свои, они себе могут позволить.
Аноним 10/03/23 Птн 23:56:47 2636299 341
>>2636296
ну и как умник хуев ты будешь моделировать дату начала некоего события если оно еще не произошло?
Аноним 11/03/23 Суб 00:59:28 2636324 342
>>2636299
Есть такая вещь как Promise, когда произойдёт тогда и будет результат.
Аноним 11/03/23 Суб 01:19:03 2636330 343
>>2636013
Бля, ебать ты евангелист. Сколько те за эту лыжу заплатили? Хуй да маленько?
Аноним 11/03/23 Суб 01:25:23 2636335 344
>>2636324
еблан у тебя поле ВРЕМЯ НАЧАЛА какой нахуй промис
Аноним 11/03/23 Суб 01:29:20 2636338 345
>>2636335
Чем null лучше 0 в ситуации когда событие не произошло?
Темболее что это за извращённая логика когда событие ещё не началось, а его объект уже есть? Нахуй он нужен? Сделай объект Promise весь целиком, что он как бы есть, но детали его появятся когда он действительно случится.
Аноним 11/03/23 Суб 01:33:06 2636341 346
>>2636338
Date startDate = 0; // мам я еблан
>Нахуй он нужен
ну например он ЗАПЛАНИРОВАН но не НАЧАЛСЯ
короче ты безработный БОМЖ сразу видно
Аноним 11/03/23 Суб 01:37:22 2636345 347
>>2636338
>Чем null лучше 0 в ситуации когда событие не произошло?

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

Мимокрок
Аноним 11/03/23 Суб 01:43:51 2636346 348
>>2636341
Так он блядь запланирован на когда-то же, а не блядь просто в никуда?
Кароче ты быдло джун.
Ты чё блядь потом после создания объекта его ещё редактировать будешь меняя свой ебучий нул на какую-то реальную дату? Ты блядь про многопоточность и иммутабельность слышал?

>>2636345
Всё именно так. Оба варианта хуета хует, помимо того что нул это такая хуета шо лучше уж 0.
Аноним 11/03/23 Суб 01:45:53 2636350 349
>>2636346
>Так он блядь запланирован на когда-то же, а не блядь просто в никуда?
запланирован в одно время а стартанул в другое и как ты потом это узнаешь хуйлуша?
Аноним 11/03/23 Суб 01:46:36 2636351 350
>>2636346
я те блядь еще больше скажу у него есть еще и ВРЕМЯ ЗАВЕРШЕНИЯ вот ты щас охуеешь да?
Аноним 11/03/23 Суб 01:51:09 2636352 351
>>2636350
Если стартанули в другое от запланировано времени, предыдущий объект должен быть уничтожен, а не перезаписан.

>>2636351
Почитай про Promise. Ещё есть такая хуйня как имплементировать метод boolean hasDate(), и возвращать true если что-то реально было записанно, false если значение по дефолту стоит. А для getDate() метода, если поле содержит дефолт значени то выкидывать эксепшен.
/thread
Аноним 11/03/23 Суб 01:52:03 2636353 352
>>2636346
>>2636351

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

Где логика, где обьективность? Шли б спать, один хуй не договоритесь.
Аноним 11/03/23 Суб 01:55:05 2636354 353
>>2636353
Не нуль-обжект-заменитель, а провославный фрейворк Promise, в который можно завернуть объект Promise<Date>.
И да, у меня рабочий день, мимогуглодев в треде
Аноним 11/03/23 Суб 01:56:12 2636356 354
>>2636352
>Ещё есть такая хуйня как имплементировать метод boolean hasDate(), и возвращать true если что-то реально было записанно, false если значение по дефолту стоит. А для getDate() метода, если поле содержит дефолт значени то выкидывать эксепшен.
boolean hasDate() { return this.date != null; }
Date getDate() { return this.date; }
requireNonNull(object.getDate());
ахуенно придумал братан
Аноним 11/03/23 Суб 02:05:03 2636360 355
>>2636354
Ну значит работать, в твоем случае.

И кстати, о каких конкретно промисах в джаве ты все время талдычишь? В джаве оные никогда не были в ходу, их роль всегда с лихвой покрывалась прочими штуками типа Future(Task) или CompletableFuture.
Аноним 11/03/23 Суб 02:06:14 2636361 356
>>2636360
это шарпоблядь под прикрытием
Аноним 11/03/23 Суб 02:12:14 2636365 357
>>2636361
Да чел, мне похуй - что шарпоблять, что гуглодев. Один хуй - двачер.
Аноним 11/03/23 Суб 02:13:04 2636366 358
image.png 235Кб, 1327x1362
1327x1362
>>2636360
Блядь, сорямба, думал опенсорс уже.
Получается чисто гугловая либа асинхронная. Думаю что-то подобное в опенсорсе должно быть.
Аноним 11/03/23 Суб 02:13:55 2636367 359
орунах проекты гугла в яватреде сливают
Аноним 11/03/23 Суб 02:14:59 2636368 360
Аноним 11/03/23 Суб 02:18:04 2636369 361
>>2636013
Пишу такие запросы как на пиках на jooq.
И круды тоже пишу на jooq. Проблемы только с дедупликацией корневой сущности при джойне листа пока возникали. Но и они вполне решаются, конвертом приджойненого в массив джейсонов.
И в чём я не прав?
Аноним 11/03/23 Суб 02:25:58 2636373 362
>>2636366
>Такая же хуита что и коплитблфьючи.
>Но куча ненужных апишек.
>И его нельзя блокнуть, можно использовать только в асинхронной дрисне.
Нахуй ты это говно сюда притащил, культист ебаный?
Аноним 11/03/23 Суб 02:27:29 2636374 363
>>2636373
Просто выёбываюсь что могу жрать говно и смаковать
Аноним 11/03/23 Суб 02:40:30 2636380 364
>>2636366
Прочитал.

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

1) В джаве и так асинхроншины подобного уровня полно, включая CompletableFuture прямо из стандартной либы
2) Угар по промисам давно прошел, и щас в тренде зеленые потоки

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

Короче либо ты пиздишь что из гугла, либо лычка гуглодевелопера не значит ровным счетом нихуя, и внутри гугла кодят такие же дебилы, что и снаружи.
Аноним 11/03/23 Суб 02:51:30 2636386 365
>>2636380
Сорри, может меня недопоняли или я рил мудак. Я хотел сказать, что весь объект делать промисом, а не 1 поле, если этот объект будет как бы существовать когда-то там.
Аноним 11/03/23 Суб 02:52:35 2636387 366
А если мне в базенке надо занулить ячеечку в табличке? Как без нулика то?
Аноним 11/03/23 Суб 02:57:09 2636389 367
>>2636387
Ну вот это тот случай, когда можно
Аноним 11/03/23 Суб 03:05:49 2636390 368
>>2636389
Так. А если динамически надо ячеечку заполнить, а в довольно случае занулить? Значит можно и создавать переменную, равную null.
Аноним 11/03/23 Суб 03:16:36 2636392 369
>>2636390
Используй Optional. Нул нужно избегать всеми возможными способами.
Аноним 11/03/23 Суб 03:35:35 2636394 370
Буду использовать null. Потому что мне похуй.
Аноним 11/03/23 Суб 03:49:03 2636397 371
>>2636380
Угар по промисам в хайлоаде никогда не пройдёт, асинхронность лучший способ максимально утилизировать ресурсы.
Зеленые треды это только если для каких-то ембедед вещей, которые на уровне железа\ос не могут в потоки, потому что никто лучше менеджить потоки чем ос\железо, не сможет.
Аноним 11/03/23 Суб 09:10:57 2636460 372
Сап, кто-нибудь знает, где найти API для Nokia s40?
Аноним 11/03/23 Суб 12:12:40 2636614 373
>>2636386
>весь объект делать промисом, а не 1 поле, если этот объект будет как бы существовать когда-то там.
сохранил промис в базу
@
мам я еблан
Аноним 11/03/23 Суб 15:14:53 2636764 374
>>2636397
>асинхронность лучший способ максимально утилизировать ресурсы.

Разве ж кто спорит? Но с трендом по промисам это не коррелирует никак. Щас роляет асинк-авайт, или разного рода *рутины. Код на промисах по сравнению с кодом на рутинах выглядит так же уныло, как код на коллбеках выглядел по сравнению с кодом на промисах или реактивных стримах.

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

А вот это неправда. Профит от управления потоками средой исполнения - в том, что среда исполнения может реализовывать принципиально новые, отличные от нативной, модели параллелизма, лишенные недостатков классического параллелизма через нативные потоки. Само понятие "менеджмент" для зеленых потоков - весь этот скедулинг, переключение контекста, конкарренси, зачастую не имеет ничего общего с классическими потоками.
Аноним 11/03/23 Суб 15:25:07 2636779 375
>>2636387
Ошибка таких как вы, фанатов ОРМ, в том, что для вас запись в табличке идентична обьекту-энтити, и вы просто представить себе не можете ситуацию, где для разных кейсов существуют разные кортежи (структуры) данных, а для некоторых кортежи даже не нужны. Вас как прибили к этой модели, где есть только КРУД-репозитории и энтити, так вы с нее и слезть не можете ни вправо ни влево. А тем временем на уровне БД задача тривиальная. Всего то и надо сделать что update table set field = null where id = 42. Можно даже пойти дальше, и просверлить дырку в репозитории, ченить типа void nullifyField(int id), куда засунуть этот запрос, и не будет у тебя никаких нулей априори, равно как и не будет нуллабл поля.

О нееееет, "этож нечистый код, а как же швятой ОРМ". Мракобесы блять.
Аноним 11/03/23 Суб 15:30:10 2636785 376
>>2636455
Еще бы этот @Nullable не был вендор-локнут на идею блять, и можно было бы его чекать на уровне сборки, фейля билд в случае чего, цены б ему не было.
Аноним 11/03/23 Суб 15:57:18 2636806 377
>>2636779
Ты зачем так порвался?
Я фанат через джуучек в базенку класть значения, нулики в том числе.
А потом вынать большие объекты с большой вложенностью одним запросом с стешками и кучей джойнов.
Аноним 11/03/23 Суб 16:12:56 2636820 378
>>2636806

>А если мне в базенке надо занулить ячеечку в табличке? Как без нулика то?

Ну ок, сорян, постановка вопроса звучала так, будто ты как типичный ОРМ-чел даже помыслить себе не можешь ситуацию, где есть что-то кроме ентити=таблица (и как следствие если таблица с нуллабл полями, нулей в энтите не избежать).
Аноним 11/03/23 Суб 16:16:29 2636830 379
>>2636820
>ентити=таблица
Это очень удобно на самом деле даже без орм.
Но даже в жпа можно писать через дтохи(через jpql), а забирать через проекции.
Аноним 11/03/23 Суб 22:00:22 2637330 380
1678561219674.jpg 268Кб, 1170x1043
1170x1043
Что касается петпроектов. Как думаете, на чем лучше всего навыки практиковать? Ну и чтобы в дальнейшем не стыдно было показать. Я так понимаю парсеры, калькуляторы, магазины и прочие поделки с курсов идут нахуй. И что в итоге остаётся? По всей видимости на собеседованиях ожидают увидеть какую-то научную хуйню, чтобы с серьезным ебало ее презентовать.
Аноним 11/03/23 Суб 22:06:22 2637335 381
>>2637330
Оно должно быть полезно на практике, а не синтетически высрано.
Вот наберешь сто звезд на гитхабе, это уже хоть что-то.
Как те долбоебы, вандалившие свои миллионные жс-либы - это взлетевшие пет-проекты.
Аноним 11/03/23 Суб 22:06:33 2637336 382
>>263733000
Кому ты свои петы собрался показывать? Работодателю?)))00)
Аноним 11/03/23 Суб 22:24:32 2637355 383
>>2637335
>>Оно должно быть полезно на практике
>>Вот наберешь сто звезд на гитхабе
Энтерпрайзу похуй на звезды и гитхаб, либы берут с репозиториев, а не с рандомной помойки.
Аноним 11/03/23 Суб 22:27:40 2637360 384
>>2637355
Не для энтерпрайза, а вообще.
Т.е. это что-то, что применяется посторонними людьми для какой-то пользы, а не высрано для галочки. Чуешь разницу?
Аноним 11/03/23 Суб 22:39:49 2637374 385
>>2637330
>Как думаете, на чем лучше всего навыки практиковать

Напиши свой нетфликс или сбер. На крайняк банк Санкт Петербург. Мельче проектов на джаве не бывает.
Аноним 11/03/23 Суб 22:40:49 2637376 386
>>2637369
i8 i16 i32 i64 f32 f64 сразу хуле
Аноним 11/03/23 Суб 22:47:07 2637383 387
>>2637360
Зачем людям использовать джаву не для энтерпрайза? Они что ебанутые?
Аноним 11/03/23 Суб 22:51:03 2637387 388
NumberOf
NumberEnvelope
TextOf
ScalarOf
Аноним 11/03/23 Суб 23:06:37 2637402 389
>>2637387
Очередную убийце джавы выдумываешь? Остров с подходящим названием то выбрал уже?
11/03/23 Суб 23:08:18 2637404 390
LickDickOf
SuckCockOf
Аноним 11/03/23 Суб 23:18:51 2637414 391
>>2637330
На собесах мы смотрели только один раз пет, когда челика брали по рекомендации и он переписал свой пет под наш стек.
Аноним 11/03/23 Суб 23:22:09 2637420 392
>>2637415
Скучно слишком, когда десятилетиями всё работает и ничего не меняется.
Аноним 12/03/23 Вск 00:26:47 2637483 393
Аноним 12/03/23 Вск 02:30:28 2637516 394
Что он говорит после "возьмите спринг мвс и ..." ?
СИМЛИВ СИМЛИБ, хуй поймешь
1:13:13
https://youtu.be/xReBrinErYU?t=4393
Аноним 12/03/23 Вск 02:50:01 2637518 395
>>2637516
Thymeleaf

Так вот откуда вкатуны взяли моду на шаблонизаторы, они оказывается петучинского все посмотрели.
Аноним 12/03/23 Вск 07:53:53 2637555 396
.jpg 173Кб, 1246x919
1246x919
>>2637518
> вкатуны взяли моду
Вкатуны в Java, я всё правильно понял?
Аноним 12/03/23 Вск 11:25:11 2637651 397
>>2637518
Просто таймлиф самый популярный и при этом простой шаблонизаор. А Скуфчинский раньше стракты всякие советовал.
Аноним 12/03/23 Вск 13:07:41 2637753 398
>>2637409

Нахуя тебе дженерики в рантайме? Какую проблему ты собрался ими решать?
Аноним 12/03/23 Вск 13:16:37 2637766 399
>>2637415
Есть мнение (не мое), что у мавена не очень хорошо все с распараллеливанием и инкрементальностью билда. Часть проблем, вроде как, решает поделка под названием mvnd, но я мало ее пробовал.

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

В остальном - мавен все еще топчик.
Аноним 12/03/23 Вск 13:24:19 2637775 400
>>2637753
Проблему отсутствия дженериков в рантайме.
Аноним 12/03/23 Вск 13:26:02 2637780 401
Аноним 12/03/23 Вск 13:36:15 2637797 402
Курс по java от яндекс практикума пойдет для начала, чтоб я хоть немного смог претендовать на стажировку в самом же яндексе? Ради приличия попробовал на сайте решит самую первую задачу, тест прошла, дальше пиздец. Ну и про стажировку в яндексе, у кого какие мнения есть, если я из ебаной деревни, есть возможность таким оьразом хоть поьывать в Москве?
Аноним 12/03/23 Вск 13:58:42 2637820 403
>>2637797
>смог претендовать на стажировку в самом же яндексе?
Лол нет. Яндекс после своего же практикума на работу или стажировку не берет. Практикум - это самый минимум знания разработчика, как умение писать или читать
Аноним 12/03/23 Вск 14:02:33 2637826 404
>>2637820
Про 1 задачу, это я имел ввиду на сайте контеста, где заявку на стажировку подаешь, но там чет алгоритмы еще нужны, т.е. вкатуну только киснуть в сбере/втб?
А про сам курс яндекса есть мнение, там уверенные джуны получаются хотя бы? Спасибо
Аноним 12/03/23 Вск 14:08:20 2637834 405
>>2637826
Нет. Почти все курсы это дно. Это даже не стажер. Плюс для многих прохождение платных курсов для дебилов это показатель, что ты сам не умеешь учиться, искать инфу и тебе нужны пендели. Если и будешь брать курс, лучше никому не говори, что его проходил.
Аноним 12/03/23 Вск 14:11:43 2637837 406
>>2637826
>вкатуну только киснуть в сбере/втб?
Вкатуна туда не возьмут. Набора джунов нет ни в сбер, ни в втб.
Аноним 12/03/23 Вск 14:15:19 2637840 407
>>2637834
Учту, я впринципе видел, что люди советуют пиздеть про опыт работы, чтоб на позицию миддла вкатиться сразу, заучивая вопросы/ответы собесов, но эт же пиздец. Как они держатся больше пары недель, или таким оьразом и нарабатывают опыт работы? :(
>>2637837
Но почитывая треды, я вижу, что зп выше чем у яндекса, и не так ебут при собесах, не так ли?
Аноним 12/03/23 Вск 14:18:20 2637848 408
>>2637766
жди мавен 4 там все будет
Аноним 12/03/23 Вск 14:30:32 2637864 409
>>2637848
А замена СкуфXML на yaml будет? Иначе останусь на Gradle + kt!
Аноним 12/03/23 Вск 14:42:14 2637874 410
>>2637864
Оставайся. И никогда не возвращайся
Аноним 12/03/23 Вск 14:50:01 2637876 411
>>2637864
Да, см пик 3 в шапке.
Аноним 12/03/23 Вск 16:14:44 2637995 412
Как сделать так чтобы что-то вроде <img src="http//localhost:8080/C://outsideFolder"> работало? То есть чтобы картинки в хтмл подгружались из папки вне папки проекта. Пока подргужаются только из папки static что в resources.
Аноним 12/03/23 Вск 16:20:21 2638004 413
>>2637995
Забыл добавить, картинку добавляются/удаляются динамически во время рантайма.
Аноним 12/03/23 Вск 16:20:53 2638005 414
>>2637995
Ты же понимаешь, что это специально сделано, чтобы злоумышленник не мог поставить путь к любому файлу и спиздить его?
Аноним 12/03/23 Вск 17:01:42 2638071 415
>>2638005
Не, мне нужно было чтобы это путь был в серверной части. То есть сервер и на нем эта директория C://outsideFolder. Нужен был даже не именно абсолютный путь, а любой способ юзать динамичные ресурсы в сторонней папке(не resources/static).

Уже проблему решил через WebMvcConfigurer и метод addResourceHandlers. Кстати, можно как-нибудь это через application.properties прописать?
Аноним 12/03/23 Вск 18:30:40 2638181 416
Я когда джаву только учил года три назад - наткнулся на рассказ о project valgalla. И ждал ее первое время.
Вальгалла сейчас заморожена? Только лум и панама кое как пилятся и то непонятно когда будут в релизе?
Аноним 12/03/23 Вск 18:41:37 2638201 417
>>2638181
Я жду только project generiki v rantaijme
Аноним 12/03/23 Вск 18:54:19 2638228 418
>>2638082

Не уверен что до конца понял твою дилемму, но по моему ты обьебался. Ибо дженерики стираются только в рантайме. В байткоде они все есть в полном обьеме. Поэтому через рефлексию, например, ты вполне можешь получить инфу об дженериках через методы типа Class::getGenericInterfaces/Supertypes, или Field::getGenericType.

И даже если рефлексия тебе чего то недодает, ты всегда можешь спуститься на уровень ниже, взять какой нибудь байткод-тул типа ASM или ByteBuddy, пропарсить им байткод классов и извлечь всю нужную инфу. На твоем месте, если б передо мной стояла генерить что-то в билд-тайме по классам и их аннотациям, я б сразу забил на рефлексию и шел бы этим путем.
Аноним 12/03/23 Вск 19:09:13 2638254 419
image.png 142Кб, 1920x1080
1920x1080
image.png 168Кб, 1920x1080
1920x1080
мужички, подскажите плиз у меня в новой JDK19 джаве то ли работает то ли не работает "super" по гайду нужно вписать такое super(speed,weight) а у меня работает только с super( ). и я не понимаю оно наследуется или просто новое вводится. мне просто нужно чтоб наследовалось. нагуглить не могу . заранее спасибо за помощь.
Аноним 12/03/23 Вск 19:19:21 2638266 420
>>2638254
у меня даже от скринов глаза начали болеть. Как вы сидите в этой даркуле?
Аноним 12/03/23 Вск 19:22:38 2638271 421
SA6h7bZObE.png 206Кб, 1918x903
1918x903
>>2638267
единственная нормальная тема
Аноним 12/03/23 Вск 19:23:09 2638272 422
>>2638264
Представь себе еблан
Аноним 12/03/23 Вск 19:25:02 2638273 423
>>2638266
а ответ то какой , че по суперу то ?.норм что он пустой? или нет?
Аноним 12/03/23 Вск 19:26:59 2638276 424
>>2638273
показал бы ошибку. И во втором скрине второй transport внизу. Что это?
Аноним 12/03/23 Вск 19:27:23 2638277 425
>>2638275
ебал твои принципы в принципе
Аноним 12/03/23 Вск 19:31:13 2638283 426
image.png 143Кб, 1920x1080
1920x1080
image.png 302Кб, 1920x1080
1920x1080
>>2638276
В этом ошибка
первый скрин-как у меня
второй как надо(я так понимаю), у меня супер красным горит ,когда делаю по гайду
Снизу в транспорте была простая пустышка,думал мб пофиксится
Аноним 12/03/23 Вск 19:32:45 2638285 427
>>2638283
наведи мышкой на красное. Выскочит табличка с описанием. Подозреваю из-за второго transport
Аноним 12/03/23 Вск 19:33:49 2638288 428
>>2638284
я недолюблюваю высокобукв
Аноним 12/03/23 Вск 19:36:06 2638292 429
>>2638285
Аа , реально помогло .ждк попросил конструктор бахнуть и реально заработало
Миска рис тебе
Аноним 12/03/23 Вск 20:42:04 2638351 430
>>2638342
Он же специально так пишет, чтобы у тебя жёппа сгорела.
Аноним 12/03/23 Вск 21:16:57 2638372 431
>>2638264

jshell> class TTTT { public List<String> list; }
| created class TTTT

jshell> TTTT.class.getField("list").getGenericType()
$21 ==> java.util.List<java.lang.String>
Аноним 12/03/23 Вск 21:39:36 2638391 432
>>2638351
Я другой анон, но я не представляю себе, как с таким отношением к синтаксису и конвенциям возможно будет писать продакшен код.
Аноним 12/03/23 Вск 21:57:01 2638413 433
Да , я первую неделю на Джаве пишу. Так что прошу извинить меня за явные ошибки с регистром кода. Пока еще не вошло в привычку и понимание что к чему.
Довольны моей письменной речью теперь, Уважаемые Пользователи анонимной площадки для постинга букв?
Аноним 12/03/23 Вск 22:12:19 2638430 434
>>2638413
А на русском какую неделю пишешь?
Аноним 12/03/23 Вск 22:36:39 2638448 435
Аноним 12/03/23 Вск 23:12:44 2638478 436
>>2638403
>Но читать и писать научился он явно не вчера
Да, я про это и говорю.
Аноним 13/03/23 Пнд 01:01:19 2638518 437
Кто-нибудь работал в bell integrator? Норм компания или дерьмо?(как я вижу по отзывам мутная какая-то компания)
Аноним 13/03/23 Пнд 01:05:29 2638521 438
>>2637518
А как делать без шаблонизаторов? Руками хуярить хтмл теги или что?
Аноним 13/03/23 Пнд 01:06:43 2638523 439
Аноним 13/03/23 Пнд 01:08:15 2638525 440
Аноним 13/03/23 Пнд 01:43:27 2638537 441
>>2638516
Нахуй иди,долбоеб, мы с ним твою мамашу уважали
Аноним 13/03/23 Пнд 08:53:37 2638620 442
Походу даже на спринг бут 3.1 с 2.7 не будет смысла переходить. Там в большинстве сервисов что-то сломается, а фич новых и полезных нету так то.
Или есть?
Наверно в конце года/в начале следующего прыгать на джаву 21. К бут там уже будет 3.3/3.4.
Аноним 13/03/23 Пнд 12:58:48 2638813 443
>>2638523
реакт это оверкил для вкатунского пет проекта.
Аноним 13/03/23 Пнд 13:02:06 2638818 444
>>2638813
UI во вкатунском проекте бэкендера вообще нахуй не всрался, сваггера хватит.
Аноним 13/03/23 Пнд 15:43:42 2638994 445
Есть ли смысл использовать в своих пет-проектах логгер или это лишнее? И какая разница между объявления логгера с помощью аннотации Lombok и статического объекта интерфейса Logger?
Аноним 13/03/23 Пнд 15:45:29 2638997 446
>>2638994
а как без логгера? В систем аут?
Аноним 13/03/23 Пнд 16:04:02 2639009 447
>>2638994
Хочешь - используй, не хочешь - не используй. Ты у нас спрашиваешь, что лишнее в твоём проекте, который ты пишешь для себя?
Аноним 13/03/23 Пнд 16:31:32 2639028 448
Посмотрел впервые бугаенко, хочется теперь создать 500 враперов над каждым объектом и иметь 100 ифов в контроллере
Аноним 13/03/23 Пнд 16:55:05 2639044 449
>>2638994
В целом изучить, как настраивать логбэк или лог4ж, имеет смысл. Это пока приложуха локально задеплоена, ты можешь к ней и дебаггером подлезть, и прочими тулами, и в целом на все похер. А в боевом окружении отсутствие логов очень запросто превращает жизнь команды в ад.
Аноним 13/03/23 Пнд 16:55:28 2639046 450
>>2639028
>иметь 100 ифов в контроллере

?
Аноним 13/03/23 Пнд 16:58:55 2639049 451
>>2639046
Ну а как понять, какой декоратор мне нужен в конкретный момент? Ну хорошо, пусть будет 100 методов в контроллере
Аноним 13/03/23 Пнд 17:04:01 2639052 452
>>2639049
Но в контроллере и так по методу на эндпойнт. Или про какой "конкретный момент" речь?
Аноним 13/03/23 Пнд 17:16:27 2639064 453
>>2639052
В контроле может нулл прийти
Аноним 13/03/23 Пнд 17:18:40 2639067 454
>>2639064
Окей, а остальные 99 ветвлений тогда что?
Аноним 13/03/23 Пнд 17:31:32 2639089 455
>>2639067
Ну может быть не один параметр и у параметров внутри тоже могут быть нуллы, а нужно создать конкретный декоратор, где их не будет. Значит нужно либо заиметь эндпоинтов по количеству декораторов, либо как-то ифами разгребать и сохдавать нужный
Аноним 13/03/23 Пнд 18:02:49 2639125 456
image.png 15Кб, 876x306
876x306
Аноны, пишу кастомный плагин для Gradle, вопрос мб тупой но все же - должен ли я юзать Property (те, которые менеджатся градлом) в Extension'ах или Property только в тасках юзаются?

Т.е. берешь из расширения поля, пробрасываешь их в Gralde-managed properties?
Аноним 13/03/23 Пнд 18:04:35 2639128 457
Аноним 13/03/23 Пнд 18:08:16 2639144 458
>>2639128

Хуя ты сильный джавист, небось и жвм неплохо прогреваешь своим пылающим анусом
Аноним 13/03/23 Пнд 18:10:19 2639150 459
>>2639144
У тебя весь рот в гредле, молчал бы
Аноним 13/03/23 Пнд 20:27:10 2639310 460
If you have one Flux that depends on the result of another Flux, you can use the flatMap operator to chain them together.

You can chain as many Flux or Mono instances together as needed using flatMap(), and each new Flux or Mono can depend on the result of the previous one. By chaining them together in this way, you can ensure that each Flux or Mono is executed in the correct order, and that the result of one is available to the next.

Это вообще нормальная практика?
Аноним 13/03/23 Пнд 20:37:44 2639319 461
>>2639310
Что не так? Только не рекомендуется делать слишком много мап, да и вообще паблишер лишний раз создавать, а то по производительности может ударить
Аноним 13/03/23 Пнд 20:39:54 2639323 462
>>2639319
Я сам не знаю вот и спрашиваю, показалось просто странным флатмап для этого юзать
Аноним 13/03/23 Пнд 22:20:36 2639363 463
Пиздец блять попробовал через этот флатмап зачейнить всё. В итоге упёрлось в гугление почему реквесты выполняются два раза, оказалось что это-то непрямого сабскрайба от флатмапа. Помог в этом разобраться как не смешно чатгпт лол. Потому что гугл на жсовские и ангуляровские вопросы на стаковерфлоу меня кидал.
Аноним 13/03/23 Пнд 22:53:21 2639392 464
Аноним 13/03/23 Пнд 22:54:21 2639395 465
image.png 2144Кб, 1200x1200
1200x1200
>>2639125
>Аноны, пишу кастомный плагин для Gradle
Аноним 13/03/23 Пнд 22:58:21 2639398 466
>>2639363
Что имеется в виду? Кинь пример кода
Аноним 13/03/23 Пнд 23:19:32 2639420 467
>>2639398

Не кароче я объебался и ошибка осталась. По какой-то причине она на время тогда пропала. Может потому что я попытался сделать из моно флакс и юзал concatmap хз.
Как это всё выглядит:
firstMono = webClient1.get

secondMono= firstMono.flatMap(
firstMono.dostuff
webClient2.get )

secondMono.subscribe
Аноним 13/03/23 Пнд 23:57:30 2639445 468
>>2639420
В таком виде это лишено смысла.

Это как то так должно выглядеть. 2 параллельных запроса.
Mono<T> firstMono = webClient1.get().map(x-> x.dostuff).subscribe()
Mono<T> secondMono= webClient2.get().subscribe()


Если хочешь чейнинг то так

Mono<T> result = webClient1.get()
.map(firstResult -> {
firstResult.dostuff ты похоже пытался вызывать метод у моно, а не у содержимого
return webClient2.get()
});

result либо возвращаешь в виде моно, либо дальше чейнишь. Ну или сабскрайб, если надо просто выполнить (вернуть void)


flatmap работает как и в стрим апи. M<M<T>> -> M<T>
Аноним 13/03/23 Пнд 23:59:19 2639447 469
>>2639445
>>Mono<T>
>>.subscribe()
Тут проебался - субскрайб лишний, с ним будет не моно, а диспосабл. Но надеюсь суть ты понял.
Аноним 14/03/23 Втр 00:34:20 2639456 470
>>2639445
Суть то я понял, пасибо анончик. Ток тупой я чет для этого пока-что. Пойду перепишу это всё с реакта, а то умру потом ещё больше функционала так писать
Аноним 14/03/23 Втр 05:04:46 2639489 471
Сделал пулл реквест в свою же репу,как его теперь удалить? Там нихуя полезного,бесит что он висит в списке закрытых
Аноним 14/03/23 Втр 05:34:13 2639494 472
>>2639489
Удали репу и создай заново
Аноним 14/03/23 Втр 05:37:37 2639496 473
>>2639494
Охуенно ты придумал
Аноним 14/03/23 Втр 06:42:03 2639505 474
>>2639496
Ну как бы да, ты не путай git-репу и проект на GitHub. Твой код останется у тебя и ты сможешь заново запушить его
Аноним 14/03/23 Втр 10:11:45 2639543 475
Я не понял, то за зоопарк apache.commons?
Это же просто свалка творчества Васянов, типа питоновских библиотек или плагинов к Идее или я что-то не понял?

Пытался загрузить в Идею примеры кода из Пактовской книжки и там все нахуй обмазано импортами этого говна типа org.apache.commons.codec.binary.Base64 и в мавене это не прописано (еще и я в мавене не разбирался)
Аноним 14/03/23 Втр 10:34:13 2639550 476
>>2639545
Я пытаюсь Java core выучить
Аноним 14/03/23 Втр 10:51:50 2639558 477
Скиньте кто-то курсы от Kata Academy
Аноним 14/03/23 Втр 12:02:16 2639630 478
Аноним 14/03/23 Втр 12:15:13 2639642 479
>>2639550
Читай Хорстмана, там почти нету внешних библиотек. А в том месте, где появляется он показывает какой гемор их подключать без сборщика. Заодно поймешь что мавен тебе нужен пиздец как.
Аноним 14/03/23 Втр 12:18:29 2639646 480
Ща даун-скорострел перекатит.
Аноним 14/03/23 Втр 12:20:26 2639649 481
16697996003575.jpg 107Кб, 700x875
700x875
>>2639637
Уныло обмазываться всеми этими фреймворками тестами, сборщиками профайлерами, персистансами, аджайлами, жирами еще до того, как начнешь писать что-то из 1-3 классов.

Изучил гит, который сейчас мне никак не помогает, теперь еще мавен, потом блять JUint какой-нибудь понадобится. Я так никогда не продвинусь =(
Аноним 14/03/23 Втр 12:28:07 2639659 482
>>2639543
Это творчество васянов было актуально во времена Java 1.5-Java 1.6. Потом да, в Java 7-8 уже большая часть нужного появилась в стандартной библиотеке (или в Спринге)
Аноним 14/03/23 Втр 12:33:58 2639665 483
>>2639642
Да я читаю и Хортсмана, и Эванса, и Java Precisely параллельно, потому что мало кто пишет четкие определения для терминов и приходится из нескольких источников собирать.
Аноним 14/03/23 Втр 12:37:11 2639668 484
>>2639659
Да-да, именно такое уныние из 00-х и вызывает сайт apache
Зачем-то Nick Samoylov в своей книжке 2022 года использует все это окаменелое говно.
Значит, идет он нахуй со своей книгой, хотя теоретическая часть была неплохая.
Аноним 14/03/23 Втр 12:47:06 2639674 485
>>2639665
Все там норм с терминами, если ты в оригинале читаешь.
Какие термины плохо определены?
Аноним 14/03/23 Втр 12:48:51 2639676 486
>>2639668
По джава кору написаны тысячи книг. И по закону больших чисел большая их часть - говно.
Аноним 14/03/23 Втр 12:59:39 2639686 487
>>2639659
Нормальных утилит для работы с коллекциями в джаве до сих пор нет, а спринг сильно ограничен.
Аноним 14/03/23 Втр 13:09:47 2639696 488
>>2639674
За дифференцирующими определениями token, expression, statement я залез в книгу про компиляторы. Это было важно, чтобы понимать синтаксис (где ставить ; , {})
Static code и non-static code. Четкая структура, которая есть у class-header
(<access modifiers> public/private/protected <keyword> class <class name> <extends-clause> <implements-clause>)

У Хортсмана вообще в виде аналогий ("ну вот представь, если", "это похоже на то, когда"), это немного не то, к чему я привык в инженерных дисциплинах. Но это можно преодолеть, конечно.

>>2639679
Заставляют примеры кода от издателя, в которых используются методы классов из библиотек. Неработающие импорты не дают скомпилировать файл примера.

>>2639674
>>2639676
Спасибо а поддержку, добрые люди!
Аноним 14/03/23 Втр 13:27:22 2639717 489
>>2639696
>>это немного не то, к чему я привык в инженерных дисциплинах.
Читай спецификацию.
Аноним 14/03/23 Втр 13:44:21 2639738 490
>>2639717
Java Precisely пока что мне нравится больше всего

>>2639721
Чтобы выебываться на собеседованиях конечно же
Аноним 14/03/23 Втр 15:16:37 2639870 491
>>2639567
Схуяли? Пусть сначала java core подтянет, поймёт что такое jar, в итоге он сам захочет мавен себе. А не зная java core даже он никогда в жизни нормально не поймёт что это такое и нахуя нужно и как работает
Аноним 14/03/23 Втр 15:37:57 2639902 492
>>2639567
>>2639870
>>2639872

Да отьебитесь вы от человека, душнилы. Пусть как хочет так и учит.

Это в нормальных экосистемах можно начинать учить язык с билд-тулов, потому что тот же cabal init, например, одной командой создает компактный проект с прожиточным минимумом по дилбовой обвязке. А мавен с джавой сразу задирают порог входа в небеса, потому что могут предложить лишь стопятцот архетипов, которыми один хуй никто не польузется, где хуй пойми с какого лучше всего начать и хуй пойми что намешано.
Аноним 14/03/23 Втр 15:38:33 2639904 493
>>2639902
>дилбовой
*билдовой
Аноним 14/03/23 Втр 15:40:02 2639907 494
>>2639536
>>2639395

Semen, pls

Еще б понимал чего, болезный, позоришься только своим пылающим пердаком
Аноним 14/03/23 Втр 15:49:08 2639914 495
>>2639870
>>2639872
Эх, пошёл вникать в maven и XML
пиздец, вкатился в бэк через простыни угловых скобочек
Аноним 14/03/23 Втр 15:51:23 2639916 496
image.png 5Кб, 199x112
199x112
>>2639907
Как же ты сейчас обосрался...
Аноним 14/03/23 Втр 15:53:22 2639918 497
>>2639902
С Идеей немного проще, конечно, но в этом случае она не смогла найти и скачать импорты.
Я даже руками искал (через интерфейс Идеи) в мавеновском репе библиотеки, но и там ждал провал.
Аноним 14/03/23 Втр 15:53:53 2639919 498
>>2639902
Что там задирать в мавене? Генеришь дефолтный проект и забываешь про него. Потом копипастишь зависимость - и ты уже продакшен-реди-джун.
Аноним 14/03/23 Втр 16:00:35 2639927 499
>>2639918
Идея, когда дело доходит до менеджмента мавен-модулей, глючная, как ебаная сука. Каждый раз плююсь на нее как первый раз.

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

По ошибке вьебал не то имя у проекта? Положил не в тот парент? Удачи в правке. С первого раза сама идея никогда ничего не переименует и не переместит. Никогда! То переименует артефакт, но не папку. То папку, но не деклароацию в modules.

И ведет она так себя по ублюдочному кучу лет уже. Никто не фиксит, всем похуй.
Аноним 14/03/23 Втр 16:20:05 2639944 500
maven.png 80Кб, 1159x1034
1159x1034
>>2639927
Да я уже заметил, когда решил просто Maven-артефакт-application создать в Идее и она мне сделала имя GroupId с $ в начале. Без всяких запросов подтверждения ("что-то не так с именем, может передумаешь?") и возможности откатить.
Аноним 14/03/23 Втр 16:41:06 2639958 501
Парни , объясните вкатуну чем интерфейс лучше класса и можно ли вообще забить на него и использовать классы. Заранее спасибо!
Аноним 14/03/23 Втр 16:44:17 2639964 502
>>2639958
Забить можно, но на собеседованиях тебя спросят про интерфейс и класс в первую очередь
Аноним 14/03/23 Втр 16:45:36 2639968 503
>>2639958
>чем интерфейс лучше класса
Они - не лучше и не хуже, они просто другие, и существуют для других задач.

>можно ли вообще забить на него и использовать классы

Можно. Но тогда ты лишаешь себя бенефитов от использования полиморфизма и инверсии контроля, что рано или поздно стрельнет тебе в ногу.
Аноним 14/03/23 Втр 16:48:11 2639972 504
Аноним 14/03/23 Втр 17:08:55 2639998 505
>>2639902
Так ебать, если он не понимает как работает импорт и как работает classpath, и зачем ему apache commons, на кой хер ему лезть в мавен?

>>2639958
Пока что в начале обучения можешь. Потом - нет, интерфейс очень важная часть ооп. Могу порекомендовать почитать Part 1 книги touch of class B. Meyer'а. Разложишь себе по полочкам разницу между классом, объектом и интерфейсом
Аноним 14/03/23 Втр 17:10:48 2640003 506
11.png 69Кб, 923x518
923x518
2.png 57Кб, 967x532
967x532
3.png 9Кб, 719x462
719x462
Двачик, выручай вкатуна
Наблюдаю проблемы с печатью инфы про аккаунты из БД в сервлет. Есть метод getAccountsShortInfo() который читает инфу об аккаунтах из БД.
Почему то printWriter в сервлете перестает писать любой текст после вызова этого метода (хотя возможно причина не в самом вызове метода). То есть он не пишет данные из БД вызываемые в методе, и так же не пишет обычные любые String после этого (Строка "After database reading")
При этом при дебаге видно, что printWriter успешно собирает ВЕСЬ нужный текст, но сам сервлет отображает только тот текст, что идёт до вызова метода getAccountsShortInfo()
Думал, что данные из буфера не полностью передаются, но методы flush() или close() нихуя картину не меняют
Аноним 14/03/23 Втр 17:16:51 2640012 507
>>2640003
А ты уверен что у тебя там нет эксепшенов?

Попробуй из catch блока сделать throw
Аноним 14/03/23 Втр 17:21:02 2640016 508
>>2640003
Или еще гипотеза. Ты уверен что проблема - в респонзе, а не в браузере? Может хтмль пришел весь, но браузер его криво отрендерил? Чекал вкладку networks?
Аноним 14/03/23 Втр 17:25:29 2640019 509
>>2640016
>>2640012
Эксепшенев нету

Что за вкладка networks? Где это?
Аноним 14/03/23 Втр 17:33:30 2640025 510
>>2640003
>>2640016
Ебать, прописка после каждого append() метода flush() всё пофиксила. Не понимаю почему
pw.append().flush();
Аноним 14/03/23 Втр 17:41:45 2640037 511
>>2640025
Cглазил нахуй, перестало работать
СУУУУУУКА БЛЯЯЯЯЯЯТЬ
Аноним 14/03/23 Втр 18:02:10 2640060 512
>>2640025
Flush и close надо в самом конце прописать
Аноним 14/03/23 Втр 18:05:18 2640064 513
>>2639916
>>2639930

Причина подрыва?

Помимо некомпетентности и шкилы головного мозга.
Аноним 14/03/23 Втр 18:07:09 2640065 514
>>2640037
Вангую, что если ты строку будешь собирать StringBuilderом и делать только один
>append(StringBuilder.toString()).flush().close()

То всё заработает
Аноним 14/03/23 Втр 18:11:00 2640068 515
1111.JPG 64Кб, 1366x689
1366x689
>>2640060
Не помогло, всё равно только половина текста
Кстати, вижу вот эти красные ошибки, может и правда чот с браузером не то? Хотя в ебучем Edge та же картина - только половина текста
Аноним 14/03/23 Втр 18:20:55 2640082 516
33.JPG 134Кб, 817x648
817x648
>>2640065
Интересная идея
В таком случае сервлет падает с 500
Аноним 14/03/23 Втр 18:32:31 2640091 517
fq.JPG 44Кб, 816x508
816x508
qqq.JPG 13Кб, 580x348
580x348
>>2640065
Вообще не ебу теперь. Поместил закрытие writer в блок finally и теперь сервлет просто пропускает инфу из БД.
КАК НАХУЙ ЭТО ВОЗМОЖНО? КАК ОН ПЕЧАТАЕТ StringBuilder НЕ ПОЛНОСТЬЮ?

в пизду программирование, буду проституткой
Аноним 14/03/23 Втр 18:35:19 2640095 518
>>2640091
Братишка, так всё логично. У тебя функция, которая лезет в бд нихуя не работает. Выбрасывает экспешн. При этом вместо обработки ты нихуя не делаешь. Посмотри в логи приложения в идее, у тебя там наверняка залупа

Кинь код на pastebin я тебе покажу как это должно быть по человечески сделано
Аноним 14/03/23 Втр 18:49:44 2640119 519
>>2640095
Там дохуллиард классов и методов, но вот, основые методы я выделил по классам
Спасибо, анон!
https://pastebin.com/RUazYim3
Аноним 14/03/23 Втр 19:06:46 2640144 520
>>2640119
Я на самом деле просил только код сервлета, чтобы показать тебе как надо было делать обработку ошибок. По хорошему ещё нужно добавить логов/выводов в консоль, это помогает очень сильно. Логгером ещё не умеешь пользоваться? Очень важно в программировании уметь определять где что не так пошло

Смотри комментарии, я не запускал, но примерно оно так должно выглядеть
https://pastebin.com/2vfwhhFH
Аноним 14/03/23 Втр 19:20:00 2640167 521
>>2640082
Так это уже другой косяк. Чето с базой данных у тебя случилось.
14/03/23 Втр 21:56:16 2640374 522
Аноним 14/03/23 Втр 22:11:42 2640392 523
>>2640358
Размер очка вкатунов при каждой версии))
Аноним 14/03/23 Втр 23:38:17 2640468 524
>>2640358
Я надеюсь,все параметры передаются в конструктор?
Аноним 15/03/23 Срд 00:32:58 2640520 525
Если я честно скажу, что при стажировке/junior позиции, буду юзать gpt и стараться разбираться в проблеме, какие подводные камни будут при собесе? Эта хуйня все равно лучше пишет стандартного junior разработчика, если адекватно описывать ТЗ
Аноним 15/03/23 Срд 00:33:51 2640521 526
>>2640520
Мнение? Без опыта все равно меня даже не рассмотрят до собесов
Аноним 15/03/23 Срд 00:48:49 2640531 527
Нужно развернуть сервер на локальном хосте с базой данных и json файлом. Когда буду делать с моего приложения запрос на сервер, данные из базы данных должны будут отправится в json файл, и оттуда я их буду брать. Подскажите пожалуйста, как это реализовать ?
Аноним 15/03/23 Срд 01:05:16 2640542 528
>>2640531
Звучит как - мне нужно вывести спутник на орбиту, подскажите как это реализовать?
Откуда мы блять знаем твой уровень подготовки к запуску сервера? А про файл ты вообще бред пишешь
Аноним 15/03/23 Срд 01:08:18 2640544 529
>>2640531
При чём тут файлы? Тебе надо получить ответ от сервера в формате json, а данные в ответ подтянуть из базы? Если так, пили на спринге rest-контроллер.
Аноним 15/03/23 Срд 04:54:15 2640607 530
>>2639543
>Я не понял, то за зоопарк apache.commons?
ядреное легаси.

>>2639668
>Зачем-то Nick Samoylov в своей книжке 2022 года использует все это окаменелое говно.
ты это говно встретишь с вероятностью 95% в любом более-менее серьезном проекте.
при этом сами эти апачевские либы вполне хороши, это набор простейших инструментов которые просто работают. юникс-стайл как он есть, без всякой архитектурной залупы, монтстрообразности, оверинжиниринга и мешанины всего и сразу как в гуаве или спринге. чувствуется что ее писали люди у которых мозги на чистом си работают. там где можно обойтись одним статическим методом обходятся одним статическим методом, а не городят огород из нагромождений интерфейсов для сримов и абстрактных фабрик
Аноним 15/03/23 Срд 05:24:44 2640612 531
>>2640531
я ебу чел
это тред джавы
Аноним 15/03/23 Срд 08:42:43 2640660 532
>>2640607
Там какие-то дикие коллекции типа Bag interface.
Разве этого всего (улучшенного) нет в JDK начиная с 1.8?

>>"The Java Collections Framework was a major addition in JDK 1.2. It added many powerful data structures that accelerate development of most significant Java applications. Since that time it has become the recognised standard for collection handling in Java"
Аноним 15/03/23 Срд 08:56:30 2640670 533
ArrayUtils.png 106Кб, 1131x941
1131x941
.jpg 118Кб, 960x540
960x540
>>2640607
ну.. такое. Ради этого этого мне импорты делать?

Это, конечно, подходит под описание
>>набор простейших инструментов которые просто работают
Аноним 15/03/23 Срд 11:00:27 2640736 534
Нормально вообще взять в качестве пета фронт с гитхаба и сделать для него свой бэк?
Аноним 15/03/23 Срд 11:26:59 2640767 535
Аноним 15/03/23 Срд 11:36:18 2640776 536
>>2640544
Ну да, но как я их получу в формате json ? Через Url ?
Аноним 15/03/23 Срд 12:04:39 2640795 537
>>2640776
Да, просто сделать http-запрос через любую библиотеку.
Аноним 15/03/23 Срд 12:57:20 2640841 538
Как зайти на веб-страницу веб-приложения, которое работает на одном пк, с другого ?
Аноним 15/03/23 Срд 13:09:54 2640848 539
>>2640841
По айпи адресу машины, на которой сервер. При этом он должен быть reachable
Аноним 15/03/23 Срд 14:40:25 2640949 540
java + нет опыта + удалёнка = 26 вакансий на НН. не вкатицо, не пробраться, не пролезть.
Аноним 15/03/23 Срд 14:45:01 2640959 541
>>2640949
Вот и не вкатывайся.
Аноним 15/03/23 Срд 17:01:02 2641166 542
>>2640949
Где 26?
У меня всего 26 вакансий в Чите.
Аноним 15/03/23 Срд 17:07:59 2641183 543
>>2641166
Город не уточнён = Москва.
Аноним 15/03/23 Срд 17:15:08 2641198 544
Как получить доступ к файлу в spring по URL ?
Типо вот так http://localhost:8080/file.txt.
В какую папку файл положить ?
Аноним 15/03/23 Срд 17:21:50 2641215 545
>>2641198
Сделать котроллер, который будет дергать логику получения файла и выставить наружу эндпоинт
Аноним 15/03/23 Срд 17:30:02 2641235 546
>>2641215
Уже дошло, нужно было просто положить файл в папку static.
Аноним 15/03/23 Срд 17:43:05 2641257 547
Аноним 15/03/23 Срд 17:48:50 2641263 548
>>2641257
хехехехе в моей компании тоже раньше переписывали мавен
Аноним 15/03/23 Срд 18:02:30 2641288 549
>>2640949
Так без опыта на удалёнку никто брать и не будет
Аноним 15/03/23 Срд 18:43:29 2641377 550
Рационально ли создавать библиотеку с одним классом ?
Типо, класс с помощью которого можно отправить запросы на сервер с get и post.
Аноним 15/03/23 Срд 18:51:29 2641388 551
>>2641288
Меня взяли, вопросы?
Аноним 15/03/23 Срд 18:52:58 2641391 552
>>2641288
а вменяемое объяснение такого нежелания выйдет погулять?
Аноним 15/03/23 Срд 18:54:33 2641394 553
>>2641388
Расскажи, пожалуйста, о своих знаниях с которыми тебя взяли на работу. + сколько времени понадобилось на ват и какие у тебя исходные данные (учишься/учился в универе или уже пытался учить языки до этого)?
Аноним 15/03/23 Срд 18:56:07 2641398 554
Кто знает чела по имени дима с обезьяной на аве? Говорят пидр знатный.
Аноним 15/03/23 Срд 18:58:33 2641403 555
Аноним 15/03/23 Срд 19:07:53 2641413 556
>>2641394
Ага хуй тебе, так я все и рассказал. Чем меньше вкатышей будет, тем мне лучше по итогу, и так скоро будет борьба с чатжпт за сотыги. А ты лучше оставь это дело, вкат и так всё твердо и четко.
Аноним 15/03/23 Срд 19:58:25 2641456 557
1.jpg 419Кб, 640x640
640x640
>>2640144
Блять, братишка, ты лучший
Огромное тебе спасибо, благодаря тебе я обнаружил в чём косяк. Мира тебе и твоему дому, друг
Аноним 15/03/23 Срд 20:18:46 2641479 558
>>2641413
Так ты уже устроился, что тебе терять? С боевым опытом ты уже никуда от рекрутёров не денишься если пол года - год проработаешь.
Меня никто не остановит вкатываться, просто хочу ориентировочно просчитать сколько времени у меня на это уйдёт
Аноним 15/03/23 Срд 20:40:07 2641495 559
>>2641479
Я щас год отработаю, а ты потом себе два накрутишь по советам от инфоцыган. По итогу будем вместе бороться за лычку мидла в рога и копыта, а мне этого не надо
Аноним 15/03/23 Срд 23:20:50 2641643 560
>>2641479
Просто берешь и подаешься во все 26 мест. Без удаленки без опыта тоже подаешься(подрочить собесы). С опытом в год тоже подаешься. Через годик вкатишься скорее всего.
Аноним 15/03/23 Срд 23:45:25 2641681 561
Как записать данные в файл, который находится в папке resources ?
Аноним 15/03/23 Срд 23:46:06 2641685 562
Аноним 15/03/23 Срд 23:57:56 2641692 563
>>2641681
FileUtils.write = "мам я долбоеб"
Аноним 15/03/23 Срд 23:58:51 2641694 564
Аноним 16/03/23 Чтв 00:00:26 2641695 565
>>2641456
Без проблем, чмоки в носик

>>2641681
Что ты пытаешься сделать? Папка resources для статических файлов нужна. Если извратиться и предположить, что ты запускаешь jarник, то можно в архиве пеоезаписать файл, будет у тебя в него запись. Но юзкейс такой очень сомнительный, удаление гланд через жопу. Лучше создавай файл в отдельной директории и пиши туда
Аноним 16/03/23 Чтв 00:03:18 2641697 566
Вы из-под палки все осваивали или же интерес был?
Аноним 16/03/23 Чтв 00:06:58 2641700 567
>>2641697
Конечно интерес, жаба охуенная штука
Аноним 16/03/23 Чтв 00:30:51 2641709 568
>>2641700
Жаба говно ебаное, просто работы на ней много
Аноним 16/03/23 Чтв 00:41:32 2641716 569
>>2641709
Я в универе на старших курсах всякое пробовал, жаба больше всех понравилась. Про то, что на ней много работы уже потом узнал
Аноним 16/03/23 Чтв 00:46:20 2641718 570
>>2641709
Я пробовал кроме жабы плюсы, пхп, питухон, жс, голанг. Жаба мне понравилась больше всего.
Аноним 16/03/23 Чтв 01:13:11 2641729 571
>>2641697
Да, был интерес. Коммерческий интерес.
А свои пет-проекты пишу на других языках.
Аноним 16/03/23 Чтв 12:45:19 2641940 572
Аноны, помогите, пожалуйста. AuthenticationFailureHandler, метод onAuthenticationFailure(HttpServletRequest request, HttpServletResponse response, AuthenticationException exception). Хочу сделать редирект response.sendRedirect("/redirectPage"). Как мне добавить аттрибуты к редиректу? Можно как-нибудь получить RedirectAttributes?
Аноним 16/03/23 Чтв 13:40:00 2641979 573
>>2641413
О, гляди ка - не врет. Сразу видно что вкатился. Уже проявляются первые симптомы анальника.
Аноним 16/03/23 Чтв 15:11:59 2642080 574
>>2641940
Чёт нихуя не понял, это спринг mvc?
Аноним 16/03/23 Чтв 15:44:34 2642105 575
>>2642080
выглядит как чистые сервлеты
Аноним 16/03/23 Чтв 17:38:26 2642246 576
Использую slf4j-log4j, почему нету метода fatal() ?
Аноним 16/03/23 Чтв 17:41:53 2642252 577
>>2642080
>>2642105
Короче, когда конфигурируешь SecurityFilterChain, там метод failureHandler(AuthenticationFailureHandler afh), нужно передать объект класса который имплементирует этот интерфейс и оверрайдит метод onAuthenticationFailure. Там проходит обработка зафейленной аутентификации. В параметрах два сервлета и сам экспепшен фейла. Что отреагировать на фейл ауфентикации юзается метод сервлета респонса response.sendRedirect(String location). Но делается это без аттрибутов. Мне нужно разобраться, как имся два сервлета надыбать эти аттрибуты.
Аноним 16/03/23 Чтв 18:43:36 2642332 578
Как правильно делать, обрабатывать исключения внутри метода или с помощью throws выносить обработку исключения за метод ?
Аноним 16/03/23 Чтв 18:45:56 2642336 579
>>2642332
прокидывать туда, где это может быть обработано. Либо выкидывать чтобы приложуха упала если это невозможно обработать
Аноним 16/03/23 Чтв 20:40:53 2642451 580
А че никто не пишет, что лум в 21-й джаве уже выйдет из превьюхи и будет в релизе? Доучивайте виртуальные треды теперь. На 21-ю лтс активно покатятся. Там и паттерн матчинг для свича и виртуальные треды. Напоследок порезвитесь, пока чат-гпт 4 с работы не выкинет
Аноним 16/03/23 Чтв 20:43:05 2642453 581
>>2642451
чел, мы на восьмой жабе. Продвинутые на 11
Аноним 16/03/23 Чтв 21:22:31 2642486 582
>>2642332
кидать рантаймы, обрабатывать централизованно в одном месте
Аноним 16/03/23 Чтв 21:33:16 2642503 583
j11.JPG 71Кб, 632x818
632x818
>>2642451
>>На 21-ю лтс активно покатятся.
Почему ты думаешь что ради лума станут перепрыгивать несколько лтс версий? До 2025 дотянут, а там видно будет нужен ли этот лум вообще.
Аноним 16/03/23 Чтв 21:48:07 2642518 584
>>2642503
>2025
Профессии программиста уже не будет. Останутся операторы чат гпт
Аноним 16/03/23 Чтв 22:04:54 2642531 585
Подскажите пожалуйста, документацию пишут только для библиотек ?
Аноним 16/03/23 Чтв 22:06:33 2642532 586
>>2642531
Документацию пишут для вообще всего.
Аноним 16/03/23 Чтв 23:05:36 2642576 587
>>2642451
>что лум в 21-й джаве уже выйдет из превьюхи и будет в релизе?
пруфы?
Аноним 16/03/23 Чтв 23:19:01 2642578 588
Аноним 16/03/23 Чтв 23:23:19 2642581 589
>>2641257
Может быть проблему-то они и решили, причём, в какой-то мере элегантно (без миграций и изменений API), только суть вообще не в сборке, их решение — по сути своей костыль. Корень проблемы в монорепозалупе.
Аноним 17/03/23 Птн 01:26:23 2642661 590
Аноним 17/03/23 Птн 02:16:37 2642676 591
.png 57Кб, 684x329
684x329
>>2642661
Актуально ли выучить за минуту пять аннотаций, полностью аналогичных спринговым?
Аноним 17/03/23 Птн 11:17:04 2642853 592
>>2642676
еблан? javax в jakarta переименовали я об этом если ты не понял (тупиздень)
Аноним 17/03/23 Птн 11:28:54 2642861 593
>>2642853
Ну ты и дебил блять
Аноним 17/03/23 Птн 11:32:20 2642868 594
>>2642861
слыш хуйлопан, я тебя вздрючу
Аноним 17/03/23 Птн 12:34:55 2642890 595
>>2640544
>я тебе вздрочу
Лол
Аноним 17/03/23 Птн 12:56:07 2642913 596
Аноним 17/03/23 Птн 15:45:56 2643118 597
НАХУЯ нужны комплитабл фьючеры, если в итоге всё равно надо вызывать get(), который всё останавливает?
Аноним 17/03/23 Птн 15:52:31 2643125 598
>>2643118
>если в итоге всё равно надо вызывать get(), который всё останавливает
Не надо, зачем?
Аноним 17/03/23 Птн 15:57:19 2643135 599
>>2643125
А данные я откуда получу? Ну создал я комплитаблфьючер, напихал туда цепочку стейджей со своими говнолямбдами. Теперь у меня есть объект фьючера, который знает про то, какой код надо выполнять. А чтобы получить данные, всё равно надо вывать get() и ждать.
Аноним 17/03/23 Птн 16:23:53 2643158 600
>>2643135
Тебе надо написать функцию и вернуть ее, пускай с ожиданием ебется пользователь.

Не знаю че там в фьючерсах, но должен быть какой то .map в котором ты пишешь дальше че там тебе надо.

В webflux это выглядит примерно так

public Mono<Yoba> getYoba() {
return getAsyncHyitka()
.map(ozhidaemoeDto -> ozhidaemoeDto.getYoba())
}
Аноним 17/03/23 Птн 16:34:21 2643175 601
photo2023-03-06[...].jpg 112Кб, 960x960
960x960
>>2643158
>Тебе надо написать функцию и вернуть ее, пускай с ожиданием ебется пользователь.
В этом вся суть фьючеров ну кроме чейнинга нескольких функций? Ну писос, а я-то думал, что это ультимативное решение всех проблем мира.
Аноним 17/03/23 Птн 16:51:23 2643192 602
>>2643175
Улучшается утилизация ресурсов, некоторые функции вообще могут не вызываться. Но никакой особой магии там нет.
Стоит ли ради этого переебашить весь код в процедурные портянки? Зависит от нагрузки и задач.
Аноним 17/03/23 Птн 17:01:00 2643208 603
Подскажите пожалуйста, логирование писать внутри классов которые определяют поведение с каким то функционалом или там где мы этот функционал используем ?
Аноним 17/03/23 Птн 18:39:02 2643384 604
>>2634365
Аноны, это правда? Работаю в вебе уже несколько лет без вышки отчислился на первом курсе, но не с джавой. Пиздец как руки опускаются после такого, когда понимаешь, что все твои скиллы и знания никому не нужны без формальности в виде корочки.
Аноним 17/03/23 Птн 18:50:56 2643395 605
>>2643384
для западного барина наша "вышка" это уровня прослушанного курса в индусском "университете".
Какой-нибудь сертификат OCAJP будет весомее диплома мухгу
Аноним 17/03/23 Птн 18:54:08 2643398 606
>>2643395
>сертификат OCAJP будет весомее диплома

То есть, мне можно не поступать заочно ?
Аноним 17/03/23 Птн 18:54:46 2643399 607
>>2643398
А тебе сколько лет?
Аноним 17/03/23 Птн 19:01:20 2643404 608
>>2643398
имеет смысл только если поступаешь в западный или какой-нибудь чешский
Аноним 17/03/23 Птн 19:02:56 2643410 609
>>2643404
А если я не собираюсь на запад и хочу здесь найти работу?
Аноним 17/03/23 Птн 19:11:42 2643419 610
>>2643410
You're fucked then. Хочешь работать в ниишечке, на заводе или ещё какой муниципальной залупе - диплом нужен. Другой работы не осталось, бодишопы свалили в сербии, за оставшиеся крохи сражаются мидлы и сеньоры
Аноним 17/03/23 Птн 19:42:22 2643441 611
Аноним 17/03/23 Птн 19:54:52 2643451 612
>>2643384
Если в хорошем вузе реально изучаешь то, что тебе преподают, то никакой обосранный опыт веб макаки даже близко не встанет.
Аноним 17/03/23 Птн 20:07:44 2643458 613
>>2643451
ну изучит он матанализ и всякие численные методы. И что с этим делать, если у него нормального формального западного образования нет?
Аноним 17/03/23 Птн 20:14:27 2643466 614
Аноним 17/03/23 Птн 20:15:18 2643467 615
ПОШЁЛ НАХУЙ, ЕГОР!
Аноним 17/03/23 Птн 20:21:32 2643473 616
>>2643451
А если как 80% выпускников вузов ничего не изучаю и пинаю хуи?
Аноним 17/03/23 Птн 21:08:15 2643503 617
Аноним 17/03/23 Птн 21:14:00 2643508 618
>>2643384
Та же хуйня. Дропнул на 4 курсе. Никогда бы не подумал, что она может пригодится спустя много лет на вкате в гос шарагу, вкатился по итогу в местный мухосранский аналог ерата
И вот я уже было забил, но тут пыня начал мобилизацию и показал хуй с айтишной отсрочкой всем, у кого нет вышки.

>>Если в хорошем вузе
Таких штук 5 на страну. Да и в вузике обычно нет времени учиться, надо зачеты, лабы, курсачи сдавать.

>>2643458
Ехать на Кипр и устраиваться в геймдев какой-нибудь, где это может пригодиться.
Аноним 17/03/23 Птн 21:20:47 2643513 619
>>2643410
На западе работает так:
Нет диплома = потолок по зп в N доллларов. Если это до мидла/сеньёра
Есть диплом = потолок по зп в N доллларов. Если это до мидла/сеньёра.

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

Кароче если ты планируешь рости выше сеньёра на западе - пойди на заочку в плохой вуз на хорошую (в плане для того чтобы вписать в резюме) специальность. И отсиди там до корочки
Аноним 17/03/23 Птн 21:34:30 2643525 620
Аноним 17/03/23 Птн 22:17:05 2643569 621
обосранный анал[...].jpg 144Кб, 680x1006
680x1006
Аноним 17/03/23 Птн 22:19:03 2643574 622
image.png 53Кб, 770x450
770x450
Аноним 17/03/23 Птн 23:22:26 2643680 623
>>2643513
>И отсиди там до корочки
Хорошее выражение. Мясо на сковороде до корочки запекается, а скубент в универе отсиживается. По итогу шо то непробиваемая хуета, шо это.
Аноним 18/03/23 Суб 00:20:37 2643770 624
>>2630717
В смысле блять создать? Ты с помощью хибера создаёшь таблицу на старте приложения? Ебать ты конченый.
Аноним 18/03/23 Суб 00:30:21 2643783 625
Как создать метод который будет в аргументы принимать класс-сущность, вызывать сеттеры и помещать в них данные ?
Аноним 18/03/23 Суб 00:31:32 2643784 626
>>2643770
Любители ORM все ебанутые нахуй, про миграции никогда не слышали.
Аноним 18/03/23 Суб 00:32:12 2643787 627
Аноним 18/03/23 Суб 00:34:10 2643790 628
Аноним 18/03/23 Суб 00:40:04 2643798 629
>>2631358
Те, кто понял жизнь, хуярят на Groovy.
Аноним 18/03/23 Суб 00:42:57 2643802 630
>>2635152
Видос не смотрел, но есть же Micronaut, Quarkus, хули им этого не хватило.
Аноним 18/03/23 Суб 00:48:12 2643811 631
>>2635755
Бля пацаны, вот реально, JOOQ поприятнее будет.
Его одновременно с хибером можно использовать. Более читаемо.
Аноним 18/03/23 Суб 01:22:10 2643839 632
Как научиться шарить за микросервисы? Сейчас читаю всякие мурзилки и смотрю видиксы на ютубе по всяким паттернам типо circuit breaker, sidecar и тд, норм для начала? И что потом глянуть, как закончу?
Аноним 18/03/23 Суб 01:27:23 2643841 633
Приведите пример какой-нибудь очень сложной тасочки, с которой вам довелось столкнуться в последнее время
Аноним 18/03/23 Суб 01:29:00 2643843 634
>>2643841
Получить высшее образование.
Аноним 18/03/23 Суб 01:37:34 2643847 635
>>2643843
А что в ней сложного, если ты не в топ 10 вузов учился? Я вот вообще без напряга закончил. Проебывался в общаге, пока не останется пару недель до начала сессии, потом трайхардил и снова хуй пинал. Ну мне еще с ковидом повезло правда, на удаленке закрываться было в разы проще.
Аноним 18/03/23 Суб 01:40:31 2643850 636
Аноним 18/03/23 Суб 02:00:45 2643857 637
>>2643841
интегрироваться с хуйней
Аноним 18/03/23 Суб 02:02:50 2643858 638
Ахуй, просто придумываешь опыт работы, и тут не только ты откликаешлся, но и тебя приглашать начинают, они что никак не проверяют трудовую, во ебланы
Аноним 18/03/23 Суб 02:03:46 2643859 639
>>2643858
Кадровикам похуй что у тебя в трудовой, главное пройти отбор рекрютера и собесы, изи
Аноним 18/03/23 Суб 02:58:01 2643868 640
>>2643841
Интеграция с одной из государственных систем с погружением в замечательный мир ЭЦП через Криптопро, SOAP и корпоративные шлюзы безопасности.
Аноним 18/03/23 Суб 05:16:22 2643898 641
Аноним 18/03/23 Суб 06:49:13 2643906 642
>>2643841
подпись заявления не прошла из-за пропавшего сообщения в кафке. Есть только обфусцированные логи с прода по этому инциденту
Аноним 18/03/23 Суб 10:27:09 2643980 643
нашел вакансию где предлагают выполнить тестовое задание а после бесплатная стажировка на 2 недели. к заданию прилагается судя по всему их документация апи на 200 страниц. пахнет каким-то наебаловом, словно хотят выполнить реальную работы чужими руками, а потом кинуть. мысли?
Аноним 18/03/23 Суб 10:43:28 2643991 644
>>2643839
Ну але блять, ответьте
Аноним 18/03/23 Суб 12:19:33 2644052 645
Аноним 18/03/23 Суб 12:43:14 2644073 646
Меня смущает использование сеттеров, но в моем случае по другому никак. Ваши мысли ?
Аноним 18/03/23 Суб 12:43:47 2644075 647
Аноним 18/03/23 Суб 12:53:13 2644086 648
Аноним 18/03/23 Суб 13:00:10 2644095 649
>>2644073
Ну если в твоём случае реально никак, то окей. Так-то конечно иммутабельные объекты это получше, но твой кейс мы не знаем
Аноним 18/03/23 Суб 13:17:43 2644111 650
>>2644075
Что значит да? Я много вопросов задал, те ответить сложно? Ты че пидр?
Аноним 18/03/23 Суб 13:32:36 2644130 651
>>2644073
Если по другому никак, то это не интернал пакет, а значит все допустимо и даже поощряемо. А если интернал пакет - то ты долбоеб. Ну или у тебя упор в перформанс, а значит для тебя применяются правила не джависта, а байтоёба, и тебе тоже можно.
Аноним 18/03/23 Суб 14:44:03 2644207 652
Аноним 18/03/23 Суб 17:03:34 2644382 653
UInR0aO8GF.png 4Кб, 277x168
277x168
как принято Docker и docker-compose файлы хранить? Хочу на хостовой машине запустить эту аппликуху. Значит они должны копироваться в /target рядом с джарником? И на хост копировать джарник + Docker + docker-compose.yml ?
Аноним 18/03/23 Суб 17:05:18 2644386 654
Аноним 18/03/23 Суб 17:09:51 2644400 655
>>2644386
а потом что? Оно же само не копируется ни в таргет ни в джарник
Аноним 18/03/23 Суб 17:11:04 2644404 656
Аноним 18/03/23 Суб 17:27:41 2644432 657
Аноним 18/03/23 Суб 17:28:05 2644433 658
>>2644382

>И на хост копировать джарник + Docker + docker-compose.yml ?

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

>>2644400

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

В таргет докер композ положитть относительно просто - достаточно просто обьявить его мавен-ресурсом. В этом есть даже свои бенефиты - можно включить фильтеринг и подставлять в композ версии собранных имаджей и джарок. Но опять же - вопрос дистрибуции не ограничивается складыванием все в таргет.
Аноним 18/03/23 Суб 17:47:57 2644460 659
>>2644433
может есть какой-то индустриальный стандарт, где хранить - в руте, в src/resources или в src/docker
Во всяких кубернетисах эти докер файлы достаются прямо из гита?
Аноним 18/03/23 Суб 17:55:40 2644471 660
>>2644460

Стандарты есть, но не на то, на что ты ищешь.

Есть конвеншен - хранить ресурсы приложения, к которым должен быть доступ из класспафа, в src/main/resources

Есть конвеншен - складывать все, генерируемое билд-пайплайном, в таргет.

Докер композ, в зависимости от его назначения, может подпадать под разные вышеописанные категории. Например: докер композ может быть частью интегрейшн-тестов на testcontainers, и тогда его придется положить в src/test/resources, чтобы тесты потом могли его найти и стартануть. А в твоем случае этого не нужно.
Аноним 18/03/23 Суб 18:17:53 2644491 661
>>2644460
докеры хранятся в докер реджистри
докеро композы в руте потому что запускаются юзером
Аноним 18/03/23 Суб 19:29:18 2644575 662
UP6Ua9Fk8L.png 134Кб, 1576x860
1576x860
Ещё вопрос. Указал links, но оно всё-равно одновременно стартует. Что не так?
Аноним 18/03/23 Суб 20:02:27 2644606 663
auTSP6cDL7.png 23Кб, 602x547
602x547
>>2644575
вобщем так помогло
18/03/23 Суб 20:13:13 2644626 664
Пиздуй со своим докером в нюфаг-тред, сука.
Аноним 18/03/23 Суб 20:20:00 2644628 665
Аноним 18/03/23 Суб 20:20:43 2644630 666
.png 63Кб, 838x703
838x703
Дайте идею плиз, почему maven в Idea не скачивает свой ебаный плагин из своего ебаного репозитория.
Какая же это хуйня - чувствуешь себя ебаной вэб макакой, методом тыка подбирать нужные символы в ебаном XML
Ни нормального описания ошибки ни логов процесса
Аноним 18/03/23 Суб 20:24:59 2644634 667
>>2644630
у идеи можно посмотреть лог в Help -> Show Log in Explorer
Аноним 18/03/23 Суб 20:51:33 2644654 668
.png 65Кб, 1639x199
1639x199
>>2644634
Спасибо, бро! В логах Идеи не совсем то, что нужно.

Вобщем, оно билдится без ошибок, но в pom'нике все равно выбрасывает ошибку, что этот плагин не найден.
Аноним 18/03/23 Суб 20:54:55 2644659 669
>>2644630
Имя артифакта ему не нравится? Я тупой
Аноним 18/03/23 Суб 21:00:40 2644665 670
>>2644654
попробуй посмотри в самом репозитории по этому урл, есть ли там джарник. Бывает что помник есть, а джарника нет
Аноним 18/03/23 Суб 21:35:58 2644700 671
.png 303Кб, 1485x579
1485x579
>>2644665
Вроде как все есть.
Завтра продолжу разбираться, спасибо за помощь!
Аноним 19/03/23 Вск 09:07:33 2644907 672
ECMA, RFC, IEEE! реально спрашивают.

Дело в том, что некоторые люди начали выдумывать опыт работы в вымышленных компаниях, чтобы обойти фильтры HR. Они создают компанию с названием DigitalAbu Inc. (США, 2-летний контракт) и таким образом обманывают фильтры HR!

Но конечно перед этим заучив все вопросы или записав себе шпаргалки : https://itvdn.com/ru/blog/article/300-devops

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

У меня также есть ситуационные вопросы, на которые может ответить только опытный человек, то есть я описываю проблему и он говорит как ее можно было бы решить, чувак с курсов на это не ответит.

ЕБУ САМОЗВАНЦЕВ КАК МОГУ
Отчищаю рынок от мошенников

Сижу в чате лидов, так как я поступают очень многие.
Повторяю, самозванцев стало очень много, реально много.
Аноним 19/03/23 Вск 11:01:18 2644970 673
>>2644907
Вас таких малый процент, мне ничего не мешает придумать опыт работы, отточить его и заучить вопросы для позиции миддла 🤫
Как получаю стабильные приглашения на собесы, так и буду получать, не имея реального опыта.
Аноним 19/03/23 Вск 12:50:53 2645017 674
>>2644907
Зачем тебе тогда фильтры HR или почему ты не перепишешь фильтры HR? Ты точно лид?

Еще студенточки с плохим зрением ни за что пострадали
Аноним 19/03/23 Вск 14:17:33 2645103 675
>>2644907
2 пиздабола в лице hr и меня всегда находят друг-друга
Аноним 19/03/23 Вск 14:23:42 2645112 676
>>2644907
И че, много кого захайрил?
Аноним 19/03/23 Вск 14:23:59 2645113 677
Где в реальных проектах происходит преобразование датастэмпа в локальное время? На сервере или пусть клиент этим занимается?
Аноним 19/03/23 Вск 15:45:07 2645195 678
>>2644907
>>RFC реально спрашивают.
Ты прям так и спрашивает процитируйте мне второй пункт и рфц 228 и четвертый из рфц 1488? Не боишься что они просто загуглят на месте?
Аноним 19/03/23 Вск 15:46:39 2645198 679
>>2645113
Как договоритесь с фронтом. На бэке это делается в одну строку, на фронте - не всегда с их дегенеративными фреймворками.
Аноним 19/03/23 Вск 17:20:08 2645354 680
Можете посоветовать какой-нибудь задачник для тренинга всяких коллекций и прочего подобного?
Чтоб вот там была условно глава по использованию set, глава по листам, глава по map? Можно с базовыми приколами от стрингов, интеджеров и т.п..

Я читал Лафоре когда-то давным давно, ща по новой вкатываюсь, но я помню что там на протяжении половины книги автор пытался переписать ArrayList в LinkedList своими усилиями. Это немного не то что я хочу. Точнее много не то.

Я помню что одно время у вас в шапке висела ссылочка на какой-то простенький сайт с простенькими вещами (не уровня leetcode/codewars), а вот там прям главы были по стрингам, коллекциям, но простенькие задчки такие. или не у вас.
Аноним 19/03/23 Вск 17:39:07 2645394 681
>>2645354
Вкат всё. Пошел на хуй.
Аноним 19/03/23 Вск 17:41:01 2645396 682
>>2645394
>Вкат всё. Пошел на хуй.
нахуй иди со своими илонами масками.
Аноним 19/03/23 Вск 17:45:04 2645402 683
>>2645198
Чо? В локальное время бекенда?
Аноним 19/03/23 Вск 18:26:30 2645466 684
>>2645396
чел, ты новости давно читал?
1) Уход 10000 компаний из рф
2) Сокращения в топ компаниях и средних
3) 100000 вкатунов
4) ЧАТГПТ
Аноним 19/03/23 Вск 18:26:33 2645467 685
Аноним 19/03/23 Вск 18:43:48 2645494 686
>>2645402
Локаль клиента из сервлета достаешь и переводишь.
Аноним 19/03/23 Вск 18:44:42 2645496 687
>>2645354
>глава по использованию set, глава по листам, глава по map

Это так не работает.
Аноним 19/03/23 Вск 18:47:31 2645505 688
Аноны, выручите, плиз. Десериализатор в кафка-консюмере, часть кода:

typeMapper.addTrustedPackages("ru.project.eventTypes");
Map<String, Class<?>> mappings = new HashMap<>();
mappings.put("loginSuccess", LoginSuccess.class);
mappings.put("loginFailure", LoginFailure.class);

Кидает эксепшен:

Caused by: java.lang.IllegalArgumentException: The class 'loginSuccess' is not in the trusted packages: [java.util, java.lang]. If you believe this class is safe to deserialize, please provide its name. If the serialization is only done by a trusted source, you can also enable trust all (*).

Как правильно добавить все это доверенные пакеты? Путь должен быть прописан как приложении продюсере или приложении консюмере? Хотя я и так и так пробовал, но не заходит.
Аноним 19/03/23 Вск 18:52:43 2645516 689
Аноним 19/03/23 Вск 18:55:10 2645520 690
>>2645467

дякую, это оно

>>2645466
из всего этого только илонмаск с четвертым пунктом напрягает (первые 3 пункта это цикличная политота, цикличная политота + цикличность рынка, цикличность рынка). Но и то с оговорочками. Расписывать всё лень, но у меня есть примеры из личной жизни когда подобная автоматизация потом же откатывалась на прежние позиции. Мамка на железке работает, на позиции которую можно было автоматизовать еще лет 20 назад, и таки пытались. Но потом выросла масса побочек, в итоге решили отказаться от этой идеи (и даже вернули набор в местном ведомственном мухосранском училище на ее позицию).
Поэтому смешно кажется что запросом в гпт будут писаться программки. Тот же Tabnine попробовал, вот в нем я вижу будущее - это же ведь просто сумма гугла и интеллисенса, а не индусокод, написанный бездушной программой, на которой потом вылезают баги в виде отстутсвия связей с реальностью, прежде всего ООП.
Аноним 19/03/23 Вск 18:55:15 2645521 691
Аноним 19/03/23 Вск 18:57:18 2645528 692
>>2645521 ты долбоеб, сука, какое отношение это имеет к времени клиента?
Аноним 19/03/23 Вск 18:59:41 2645532 693
>>2645466
Чатгпт разве что тебя на двощах заменит. Будет за тебя говнопасты на двощах генерить.
Аноним 19/03/23 Вск 19:01:02 2645534 694
>>2645528
Потому что это и есть время клиента, которое он отправляет в хедере запроса.
Аноним 19/03/23 Вск 19:02:03 2645538 695
>>2645534
Это язык клиента, кретин
Аноним 19/03/23 Вск 19:08:13 2645555 696
Аноним 19/03/23 Вск 19:30:45 2645601 697
>>2645555
Так я и так через него делаю. Все варианты пути испробовал танцуя с бубном, нихера не работает.
Аноним 19/03/23 Вск 19:38:39 2645619 698
>>2645601
хули ты пиздишь у тебя ошибка из десериализатора а я тебе конвертер скинул
Аноним 19/03/23 Вск 19:49:09 2645638 699
>>2645619
Я использую то, что ты скинул, и он все равно кидает, то, что я скопипастил.
Аноним 19/03/23 Вск 19:57:19 2645653 700
Библиотеки по парсингу json как правило читают json формат и помещают их в сущность. Что делать если я НЕ ЗНАЮ блеат какие там поля в этом жесоне ? Приходит ответ от веб-сервера на 10000 символов.
Аноним 19/03/23 Вск 20:01:49 2645660 701
Аноним 19/03/23 Вск 20:05:57 2645666 702
>>2645653
1. Тебе не нужна ентити, чтобы парсить json. Спроси у чатгпт про метод readTree в Джексоне.
2. Неизвестные поля можно игнорить при десериализации в ентити, початься с чатгпт как настроить джексон
3. json-ы можно параллельно сохранять в nosql базу - когда поймешь, какие там поля, тогда и напишешь энтити, а данные будут уже заботливо дожидаться тебя на диске. Это я в кабанчике прочитал, называется schema-on-read. Охуенно?
Аноним 19/03/23 Вск 20:20:53 2645704 703
>>2645638
ну хуево используешь значит
даунам не помогаю
Аноним 19/03/23 Вск 20:21:25 2645706 704
>>2645653
ебланище? маппинг это всегда отдельный этап
Аноним 19/03/23 Вск 20:25:05 2645711 705
Аноним 19/03/23 Вск 20:26:08 2645713 706
>>2645653
Совсем не знаешь? Сохраняй в текст. Знаешь хотябы названия полей? Сделай поля Object
Аноним 19/03/23 Вск 20:35:40 2645734 707
>>2645653
Если вы не знаете, какие поля будут присутствовать в JSON-ответе, вы можете использовать библиотеку, которая позволяет парсить JSON в древовидную структуру данных. В Java вы можете использовать библиотеку Jackson или Gson для этого.

Например, в библиотеке Jackson вы можете использовать класс ObjectMapper для преобразования JSON-строки в объект типа JsonNode. JsonNode представляет собой древовидную структуру данных, которая может содержать любые поля и подобъекты из JSON-строки.

Пример использования библиотеки Jackson для преобразования JSON-строки в объект JsonNode:

java
Copy code
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;

// ...

String json = "{...}"; // JSON-строка
ObjectMapper objectMapper = new ObjectMapper();
JsonNode jsonNode = objectMapper.readTree(json);

// теперь вы можете использовать методы JsonNode для получения доступа к полям и подобъектам JSON-структуры
Вы можете использовать методы JsonNode, такие как get(), path(), elements(), fields(), чтобы получить доступ к различным элементам JSON-структуры. Например, get("field1") вернет значение поля "field1" в JSON-структуре, path("field1.field2") вернет значение поля "field2", которое находится внутри поля "field1".

Также обратите внимание, что если JSON-строка содержит массивы или объекты, вы можете использовать методы JsonNode для получения доступа к элементам массивов или подобъектов. Например, get(0) вернет первый элемент массива, а get("subobject") вернет подобъект с именем "subobject".

Надеюсь, это поможет вам разобраться с парсингом JSON-ответов в Java, когда вы не знаете заранее, какие поля будут присутствовать.
Аноним 19/03/23 Вск 21:06:13 2645809 708
Мама сказала парсинг делают только шлюхи и пидоры.
Аноним 19/03/23 Вск 21:16:47 2645834 709
>>2645809
Ты пидор, а твоя мама шлюха.
Аноним 19/03/23 Вск 21:38:21 2645871 710
>>2645704
Подскажи как правильно. Как тогда заместо десериализатора использовать? Как его нахрен отключить из пропертиз? Напиши, плиз, как правильно.
Аноним 19/03/23 Вск 21:53:02 2645900 711
Аноним 19/03/23 Вск 22:13:41 2645936 712
>>2645871
читай мурзилки направление я тебе дал
Аноним 19/03/23 Вск 22:43:53 2645976 713
lwjgl vs android ?
Аноним 19/03/23 Вск 22:50:08 2645981 714
Аноним 19/03/23 Вск 23:35:21 2646014 715
Аноним 19/03/23 Вск 23:44:22 2646020 716
Аноним 19/03/23 Вск 23:58:01 2646032 717
Аноним 20/03/23 Пнд 00:15:13 2646045 718
Как при переходе на страницу /test/select отобразить содержимое файла ?
Аноним 20/03/23 Пнд 03:05:57 2646125 719
>>2646045
Написать для этого логику
Аноним 20/03/23 Пнд 05:05:43 2646162 720
>>2646045
Какую страницу
Где переход
Какой переход
Какой файл
Что значит отобразить
Аноним 20/03/23 Пнд 07:21:08 2646197 721
>>2645734
Это как beatiful soup?
Фу, блять, меня чуть не вырвало от флешбэка
Мимо другой анон
Аноним 20/03/23 Пнд 15:26:05 2646597 722
В какой папке вообще должно быть тестирование? Спринг инишалайзир создает отдельный папку test, там нихуя не получается протестировать, так оно не автоварит ApplicationContext. Если пытаться с главной папке сделать, то там не работают тестовые аннотации. Как правльно все сделать?
Аноним 20/03/23 Пнд 16:28:11 2646650 723
>>2645113
А зачем в реальном проекте нужен таймстемп? Чем он лучше человекочитаемого формата?
Аноним 20/03/23 Пнд 16:30:10 2646656 724
>>2630498 (OP)
Стоит пет для портфолио делать реактивным?
Аноним 20/03/23 Пнд 16:34:32 2646663 725
Аноним 20/03/23 Пнд 17:29:25 2646732 726
>>2646656
Реактивный пет клиник? Пожалей собачек
Аноним 20/03/23 Пнд 17:41:30 2646753 727
>>2646650
Хотя бы тем, что можно форматировать в различные временные зоны, в зависимости от ситуации.
Аноним 20/03/23 Пнд 18:03:30 2646776 728
>>2646753
что тебе мешает делать так же с датой?
Аноним 20/03/23 Пнд 18:23:50 2646807 729
>>2646776
Date это и есть таймстэмп.
Аноним 20/03/23 Пнд 19:06:19 2646859 730
Аноним 20/03/23 Пнд 20:01:39 2646946 731
Можно использовать нижнее подчеркивание в названии переменной, класса или метода ?
Аноним 20/03/23 Пнд 20:10:14 2646954 732
nc.JPG 74Кб, 731x606
731x606
Аноним 20/03/23 Пнд 20:13:00 2646960 733
>>2646946
Нет, даже если выглядит как говно.
Аноним 20/03/23 Пнд 20:24:32 2646969 734
>>2646946
Можно. Но только никому не показывай.
Аноним 20/03/23 Пнд 22:01:59 2647073 735
Интересно, чтобы получить работу нужен опыт. Если не опыта - ссылку на гитхаб с проектом. При этом от блогов и парсеров все ебало воротят. Что в итоге? Неделями сидеть придумывать идею, чтобы ушлые пидоры взяли за 50 тыщ работать? Так я же в бекенд пытаюсь, нахуя мне фронт? Инди игру говорят сделай, на мобилки, хуею блять.
Аноним 20/03/23 Пнд 22:03:43 2647079 736
>>2647073
Больше местных "экспертов" слушай, они и не такого насоветуют.
Аноним 20/03/23 Пнд 22:12:16 2647090 737
>>2647079
Так тут дело не в местных экспертах, а в ситуации. По итогу выясняется, что нужно быть до кучи креативным менеджером, разработчиком игр, тестировщиком, фронтэндером и маэстро минета. Чето дохуя движений ради минимального выхлопа.
Аноним 20/03/23 Пнд 22:19:38 2647095 738
>>2647073
Что делать, если нужно дать ссылку на гитхаб, а на гитхаб 13 репозиториев ?
Аноним 20/03/23 Пнд 22:27:35 2647111 739
Аноним 20/03/23 Пнд 23:15:49 2647151 740
Кто стажировку в яндексе проходил, расскажите какого это, пройти собесы эти ебучие, и что делали у них стажером, в итоге давали оффер? Могли не джуна дать, а повыше, хз какие у них градайии
Аноним 21/03/23 Втр 05:11:20 2647238 741
>>2647073
Скоро на собесах оператор ChatGPT будет проверять, за сколько вопросов можно сгенерить твой пет. Если меньше 10 - ты пойдёшь нахуй
Аноним 21/03/23 Втр 14:27:57 2647564 742
>>2630528
Ну на счет того, что во всем лучше, я не согласен, хотя да, во многом действительно лучше.

Смысл Джавы и спринга в том, что:
1. На них дохуя всего написано (Джава раньше шарпа появилась)
2. Дохуя программистов (Прям пиздец как много, в разы больше чем шарпистов-.Netчиков)
3. Простота входа (Java проще шарпа, просто потому что меньше фичей)
4. Хорошая совместимость в Linux платформой, а значит сервера дешевле (Шарпы не так давно смогли в совместимость с Linux, с выходом .Net Core да и то пока что херовенько, а покупка винды для серваков - такая себе затея: 1. Дорого, 2. Мало специалистов => Дорого)
5. С джавы существующему проекту проще перейти на Kotlin или Scala, чем на C#
6. Открытость. В джаву правки предлагать может все сообщество, а C# это игрушка майкрософт и как они там решат, так и будет

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





>>2630528
Аноним 21/03/23 Втр 15:49:28 2647672 743
image.png 99Кб, 1842x952
1842x952
image.png 63Кб, 765x584
765x584
Дали тестовое на джуна пик1. Вкратце, нужно реализовать онлайн магазин на микросервисах. Я начал с построения архитектуры, на пик2 то, что получилось. Опустил сервис организаций, тк лепить уже некуда. Есть мысли или замечания какие-то по поводу архитектуры? Кажется, будто хуйню какую-то сделал...
Аноним 21/03/23 Втр 16:06:59 2647692 744
>>2647672
я бы им сказал что онлайн магазин надо делать на монотиле и не играть в гугл
Аноним 21/03/23 Втр 16:12:21 2647696 745
>>2647692
Да на это задание еще и дедлайн 4 дня, хз даже, успею ли. Монолит сделать конечно было б в разы проще.
Аноним 21/03/23 Втр 16:13:29 2647699 746
>>2647696
это задача на пару месяцев для хорошего мидла
Аноним 21/03/23 Втр 16:19:36 2647708 747
>>2647672
Это еще секьюрити вешать надо будет на апи гейтвей и жсон токен парсить что ли
Аноним 21/03/23 Втр 16:23:50 2647714 748
>>2647699
Я думаю, тут можно много допущений сделать и над кодом особо не потеть. Надо только выстроить взаимодействия и представить в голове, как это должно работать. Хотя я хз, количество микросервисов, которые у меня вышли конечно пугает, тоже кажется, что как-то дохуя всего. Значит, слать их куда подальше?
Аноним 21/03/23 Втр 16:28:50 2647721 749
>>2647714
"напишите api". Видимо это только пустые контроллеры со сваггером.

Но тут слишком много и слишком много непонятного. Я бы забил. И от микросервисов меня воротит
Аноним 21/03/23 Втр 16:31:00 2647726 750
>>2647708
Ну по идее да, я правда вынес сервис, отвечающий за авторизацию и выдачу токенов, отдельно. Слышал, что зачастую это делают прям в гейтвее, но чет решил как на картинке сделать.
Аноним 21/03/23 Втр 16:36:23 2647731 751
>>2647721
Ну в таком случае секьюрити конфигурить все равно же нужно будет?
Аноним 21/03/23 Втр 16:43:24 2647739 752
>>2647726
>>2647721
Там еще в конце написано «СУБД использовать PostgreSQL. Однако, API не должен быть привязан к конкретной СУБД». Так что, скорее всего, там не только свагер нужен.
Аноним 21/03/23 Втр 16:57:33 2647762 753
>>2647739
Это что ли свой инстанс постгреса на каждый микросервис разворачивать?
Микросервисную архитектуру придумали больные люди, канеш.
Аноним 21/03/23 Втр 17:03:21 2647767 754
>>2647762
у меня компутер по ресурсам не выдержит 6 постгресов и 6 жаб
Аноним 21/03/23 Втр 17:03:46 2647769 755
>>2647762
Ну походу, насколько я слышал, делать расшеренный инстанс между несколькими сервисами - хуйня идея.
Аноним 21/03/23 Втр 17:36:41 2647799 756
>>2647672
>напишите API простого магазина

А шизоуебище побежало за 4 дня поднимать стартап с 6 постресами.
Аноним 21/03/23 Втр 17:43:03 2647806 757
Аноним 21/03/23 Втр 18:03:57 2647818 758
>>2647806
Ой умора блядь я щас обосрусь нахуй от смеха
Аноним 21/03/23 Втр 18:08:10 2647826 759
>>2647818
Нахуя там постгрес, если только контроллеры со свагером нужны, шиз ебаный?
Аноним 21/03/23 Втр 18:15:57 2647839 760
>>2647699
вот до чего прогресс дошел. а еще каких-то 15 лет назад на фриланс.ру на создание онлайн-магазина под ключ давали 10 дней и 300 баксов.
Аноним 21/03/23 Втр 18:18:11 2647842 761
>>2647839
берёшь cms интернет-магазина
@
настраиваешь
@
получаешь свои 300 баксов

Одинэсники тоже не с нуля каждое предприятие делают
Аноним 21/03/23 Втр 18:22:29 2647850 762
>>2647839
Так и сейчас можно по-быстрому набросать простенький магазин даже без знания фреймворков. Просто использовать конструкторы какие-то, картинки, шрифты поменять и готово. Уверен, что на жс с фреймворками, это тоже достаточно быстро можно написать. Просто это не будут микросервисы.
Аноним 21/03/23 Втр 18:23:11 2647853 763
>>2647842
ну знаешь ли.

берешь спринг
@
настраиваешь
@
получаешь 3000 баксов
Аноним 21/03/23 Втр 18:24:43 2647857 764
>>2647853
И нихуя не работает
Аноним 21/03/23 Втр 18:27:17 2647859 765
>>2647672
>Кажется, будто хуйню какую-то сделал...

Картинка норм. Но так то ты еще нихуя не сделал, чтобы оценку давать. Такую же картинку ты бы мог откуда нить с интернета спиздить - это самая типовая дженериковая микросервисная архитектура.
Аноним 21/03/23 Втр 18:28:49 2647860 766
>>2647853
берёшь спринг
@
так, нужно прочитать 300 страничное тз и спроектировать бд и интерфейсы
@
на это уходит пара тройка месяцев
@
осталось всё это реализовать
@
на это ещё пара лет минимум
Аноним 21/03/23 Втр 18:31:18 2647867 767
>>2647859
>>2647672
И кстати, а в тестовом тебя разве просили строить микросервисную архитектуру? Вроде речь идет только об API
Аноним 21/03/23 Втр 18:31:55 2647869 768
>>2647857
ну это уже тестировщики виноваты, не оттестировали вовремя хорошо. ну и на железо как всегда бабла зажали
Аноним 21/03/23 Втр 18:38:00 2647876 769
>>2647762
>Микросервисную архитектуру придумали больные люди, канеш.
ну а если серьезно, как это говно до сих пор не сдохло и кто-то всерьез еще строит приложения под эту шизоидную концепцию?

помню на каком-то древнем хайлоаде, еще в самом начале хайпа этой параши кто-то из архитекторов крупняка сказал что по суммарному опыту на микросервисаы нужно переходить если у вас в команде не меньше пятисот технарей, если меньше то просто нет смысла.
Аноним 21/03/23 Втр 18:40:27 2647880 770
>>2647762
>Это что ли свой инстанс постгреса на каждый микросервис разворачивать?

Это какой шиз придумал?

>Микросервисную архитектуру придумали больные люди, канеш.

Не. Больные люди ее распространили.

Программисты - они как крысы. Во имя галочки в резюме распространят любую болезнь.
Аноним 21/03/23 Втр 18:41:03 2647884 771
>>2647859
> еще нихуя не сделал, чтобы оценку давать
А когда можно будет давать? Я ж по сути хотел для начала определиться с архитектурой, а следующим шагом уже идти и реализовывать это все.

> Такую же картинку ты бы мог откуда нить с интернета спиздить
Ну я не пиздил, всю эту хуйню сам в редакторе нарисовал. Само собой, я уже видел что-то подобное в интернете, так что можно сказать, что сделал по аналогии.
Аноним 21/03/23 Втр 18:43:56 2647888 772
image.png 13Кб, 827x102
827x102
>>2647867
Просто фулл тестовое не уместилось на скрине, но я же об этом упомянул в первом сообщении.

На пикрил то, что не уместилось.
Аноним 21/03/23 Втр 18:47:56 2647896 773
>>2647888
>API должен быть написан с помощью микросервисной архитектуры
дом труба шатал. Что за чурки писали
Как с помощью микросервисной архитектуры можно писать api. Что вообще означает "написать api"?
Аноним 21/03/23 Втр 18:53:22 2647900 774
>>2647884
>Я ж по сути хотел для начала определиться с архитектурой

Так нету ж нихуя. Где какие сущности? Где какие схемы данных? Где какие бизнес-функции (кто из сервисов что умеет делать)? Что, как, куда и когда по кафке гонять будешь? Как будешь обеспечивать консистентность всего этого? Вот это вот еще можно оценивать. А картинка - ну красивая, че.
Аноним 21/03/23 Втр 19:11:35 2647915 775
>>2647672
Они там чё, охуели совсем?
Аноним 21/03/23 Втр 19:15:37 2647918 776
>>2647900
Ну схемы, какими они должны быть, в тз же есть. Что примерно должен уметь каждый сервис - тоже. А насчет кафки, я изначально задумывал, что у меня будут ссылки в отзывах на определенный товар или в ордерах будет ссылка на юзера, который их сделал, с помощью кафки сервисы будут слушать изменения и, допустим, при удалении товара, удалять и отзывы на него. Что именно по кафке будет гоняться хз, как будто мне там и стринги хватит.
Аноним 21/03/23 Втр 19:20:02 2647921 777
>>2647915
Рыночек порешал. Тут наверное подразумевается, что надо с помощью чатжпт сделать. Тогда мб за 4 дня можно и успеть.
Аноним 21/03/23 Втр 19:34:30 2647930 778
>>2647921
Ты охуел? Какие нахуй 4 дня сука? Насколько нужно быть опущенным хуесосом, чтобы выполнять тестовые длиннее 30 минут?
Аноним 21/03/23 Втр 19:35:03 2647931 779
>>2645505
spring.kafka.consumer.properties.spring.json.trusted.packages=*
или
spring.kafka.consumer.properties.spring.json.trusted.packages=org.example в котором лежит LoginSuccess
Аноним 21/03/23 Втр 19:37:45 2647933 780
>>2647930
Апи за полчаса как раз и пишется.
Аноним 21/03/23 Втр 19:42:06 2647934 781
>>2647933
Хуесос, ты так и не ответил, зачем там постгрес нужен?
Аноним 21/03/23 Втр 20:57:27 2648028 782
>>2647564
>>Java проще шарпа
>>просто потому что меньше фичей
Нет, шарпомух, не по этому.
Фич в джаве больше чем в шарпе, только они не в базовом пакете лежат, а раскиданы по либам. можно сказать что и котлин - плагин для джавы, его можно подключать и использовать в уже готовом проекте
В джаве есть спринг с запуском любой магии волшебной аннотацией, а в шарпе такого нет и придется ебаться с настройкой любой ебалы самостоятельно.
Аноним 21/03/23 Втр 21:00:20 2648033 783
Представляю что там на сеньку
Аноним 21/03/23 Втр 21:24:50 2648061 784
Микросервисные пацаны, у вас хелм чарты рядом с джава кодом лежат или нет?
Аноним 21/03/23 Втр 21:38:16 2648070 785
Аноним 21/03/23 Втр 21:46:11 2648078 786
>>2648070
Типа для каждого микросервиса по две репы? Или одна общая со всеми чартами?
Аноним 21/03/23 Втр 21:50:44 2648085 787
У нас только один микросервис. Примерно на 1.5кк строчек кода. А вместо кубера юзается вебсфера.
Аноним 21/03/23 Втр 21:52:03 2648087 788
>>2648085
>А вместо кубера юзается вебсфера.
Так это просто две разные реализации JavaEE сервера приложений.
Аноним 21/03/23 Втр 21:55:43 2648093 789
>>2648078
Микросервисы в 1-й репе, чарты - во 2-й.
Аноним 21/03/23 Втр 21:56:36 2648094 790
>>2648093
Монорепа? Вы ебанутые что ли?
Аноним 21/03/23 Втр 22:41:19 2648151 791
>>2648094
Ну не я принимал решение о хранении, но для разработки удобнее, чем ебаться с десятком репозиториев.
Да и монорепа это вроде 1 репа на все проекты/команды, у нас только наши микросервисы. У соседней команды своя репа с ее сервисами в рамках того же проекта.
Аноним 22/03/23 Срд 04:22:06 2648308 792
>>2648151
Пиздец...............................
Аноним 22/03/23 Срд 06:00:14 2648332 793
>>2648308
Как это выглядит с отдельными репами на каждый микросервис? Делаешь по 5 МР на каждую таску?
Аноним 22/03/23 Срд 06:04:50 2648334 794
> Виртуальные потоки, которые появились в Java 19, продолжают оставаться в статусе Preview API (предлагается финализировать их в Java 21). Изменений API, связанных с проектом Loom, в этом релизе нет
АХАХАХАХАХАХХАХАХАХАХАЗХАХЗАХАХАХАХХАХАХАХАХАХАХАХА
Аноним 22/03/23 Срд 08:06:50 2648368 795
Аноним 22/03/23 Срд 09:05:44 2648388 796
Есть какая-нибудь принципиальная разница между тем как ты автоваришь, над полем класса, над конструктором, перед аргументом конструктора? Почему идея ругается когда прямиком в поле инжектишь?
Аноним 22/03/23 Срд 09:21:08 2648392 797
>>2647672
Аноны - олдфаги, скажите, на джунов всегда такие тестовые давали? Лет 6 назад вкатун сошел на собес, ему аналогичное требовали сделать? Или это реалии современного рыночка?
Аноним 22/03/23 Срд 09:58:48 2648405 798
Аноним 22/03/23 Срд 10:04:41 2648410 799
>>2647672
Братишка, мне кажется ты заоверинжинирил и получилась хуйня
Аноним 22/03/23 Срд 11:33:51 2648468 800
>>2648410
А где именно оверинженеринг? Что поменять?
Аноним 22/03/23 Срд 11:39:34 2648476 801
>>2648388
Тесты как писать будешь?
Как будешь мокать зависимости?
Аноним 22/03/23 Срд 11:53:04 2648491 802
>>2648476
Я еще тесты не проходил, лол. Скоро закончу пет, и начну изучать как его тестировать.
Аноним 22/03/23 Срд 12:05:55 2648503 803
>>2648476
Не понял, а что мешает написать тесты, если у тебя филд инжекшн? Есть же @mockbean или @injectmocks, можно с помощью них сделать моками филды
Аноним 22/03/23 Срд 12:35:41 2648531 804
>>2648476
Тесты не нужны. Хороший код тестирования и комментариев не требует.
Аноним 22/03/23 Срд 12:35:47 2648532 805
>>2648476
мохито через рефлексию умеет подставлять моки в приватные поля
Аноним 22/03/23 Срд 12:44:24 2648545 806
>>2648388
Мне на собесе кабан говорил, что там какое-то преимущество есть в конструктор инжекшн, связанное с циркулярными зависимостями. Не помню точно, че он там говорил, но вроде, если у тебя происходит инжект в конструкторе, то циркулярные зависимости недопустимы в принципе.
Аноним 22/03/23 Срд 13:18:17 2648584 807
>>2648545
Да, хочешь циклические зависимости - ебашь автоваир в поле, по другому - никак.
Аноним 22/03/23 Срд 13:24:17 2648587 808
ser1.png 11Кб, 379x223
379x223
ser2.png 11Кб, 362x237
362x237
ser3.png 15Кб, 796x229
796x229
Аноним 22/03/23 Срд 13:29:32 2648592 809
>>2648587
>если у тебя происходит инжект в конструкторе, то циркулярные зависимости недопустимы в принципе
Что не сработало?
Аноним 22/03/23 Срд 13:36:44 2648605 810
2023-03-2215-35[...].png 17Кб, 665x297
665x297
Я написал замену петухлину. И вот ради вот этой хуйни весь этот кошмар был затеян?
Аноним 22/03/23 Срд 13:46:52 2648622 811
>>2648605
там для этого достаточно вопросик поставить. Ну и этим сахарок котлина не заканчивается, мне почему-то запомнилась возможность создания дата классов и добавление дефолтных значений для конструктора, но я очень поверхностно смотрел котлин, уверен, там еще приколы какие-то есть.
Аноним 22/03/23 Срд 13:47:52 2648624 812
>>2648592
типа если будет через поля, то спринг разрулит циркулярные зависимости и это плохо?
Аноним 22/03/23 Срд 13:52:36 2648633 813
image.png 52Кб, 646x488
646x488
>>2648624
Ну типа. Если еще проперти поставишь, что допускаются такие зависимости, тогда через филды спринг разрулит, а через конструктор - нет. А чем плохи такие зависимости, чатгопота пишет: пикрил
Аноним 22/03/23 Срд 14:05:02 2648647 814
>>2647672
Мне кажется можно просто сделать гейтвей, аус сервис, стор сервис, нотификейшн сервис без всяких кафок. Всё что связано с магазином, товарами, покупателями в монолит. Микросервисы соблюдены, ебалы меньше. Но задание всё равно объемное какое-то. Такое ощущение, что из-за вкатунопокалипсиса галера хочет найти джуна с навыками миддла за 30 тысяч.
Аноним 22/03/23 Срд 14:06:59 2648649 815
>>2648647
>за 30 тысяч.
угадал низ указанной вилки)
Аноним 22/03/23 Срд 14:08:43 2648652 816
У меня только что хибернейтовский CrudRepository перестал удалять. Я нихуя абсолютно не менял, чтобы это произошло. Пол часа назад все работало, и внезапно такое. Ни под каким методом ничего не удаляет из бд. БД постгрес. В чем вообще дело может быть? Я вообще ничего не понимаю лол.
Аноним 22/03/23 Срд 14:10:24 2648653 817
>>2648652
сделал транзакцию ридонли может. Или начало что-то падать в транзакции и транзакция откатывается
Аноним 22/03/23 Срд 14:14:56 2648659 818
>>2648647
>Мне кажется можно просто сделать гейтвей, аус сервис, стор сервис, нотификейшн сервис без всяких кафок.

Да ладно, нихуя себе
На вторые сутки до тебя дошло, чел.
Аноним 22/03/23 Срд 14:14:57 2648660 819
>>2648653
Стоит аннотация @Transcational, так как в энтити одно поле @Lob. Но я абсолютно ничего не менял. И то, что еще недавно работало, просто не работает. Причем другие энтити, которые методы удаляния которых также помечены как транзакшионал, работают прекрасно. Даже все таблицы из бд удалил и заново заполнин, нихера.
Аноним 22/03/23 Срд 14:17:44 2648663 820
>>2648659
Ну у тебя, долбоеба, на проекте все так и работает, я не сомневаюсь.
Аноним 22/03/23 Срд 14:20:39 2648667 821
>>2648663
Более того, скорее всего там только гейтвей и нужен.
Аноним 22/03/23 Срд 14:25:58 2648678 822
>>2648660
попробвуй включи вывод в лог всех запросов и попробуй нати твой DELETE FROM
Аноним 22/03/23 Срд 14:27:03 2648681 823
>>2648647
>Такое ощущение, что из-за вкатунопокалипсиса галера хочет найти джуна с навыками миддла за 30 тысяч.

А таковы реалии рынка и есть. Если контора и берет к себе вкатуна, то это должен быть вкатыш-вундеркинд. 100500 откликов на вакансию позволяют им подобным образом охуевать.
Аноним 22/03/23 Срд 14:30:21 2648690 824
Аноним 22/03/23 Срд 14:32:02 2648694 825
>>2648690
А почему тест с @injectmocks не юнит тест?
Аноним 22/03/23 Срд 14:35:02 2648699 826
>>2648678
Лог в консоль есть. Видны все sql кроме делетов из этой таблицы.
Аноним 22/03/23 Срд 14:35:21 2648701 827
>>2647860
>>на это ещё пара лет минимум
Если за это плятят хотя бы пару сотыг в месяц, в чем проблема?
Аноним 22/03/23 Срд 14:46:10 2648714 828
>>2648653
>>2648678
>>2648652
Короче, вспомнил, что поставил у родительской энтити FetchType.Eager. И из-за этого перестало удалять. Хуй знает почему это так, но я убрал эту eager, и все норм (благо оно оказлось мне вообще не нужно).

Как вообще удалять когда этот фетчтайп стоит? Вилкой вручныю каждый раз и родительской энтити сначала убрать, только потом удалять через репо? Пиздец конечно.
Аноним 22/03/23 Срд 16:53:42 2648830 829
>>2648647
А юзер сервис тут точно не нужен?
Аноним 22/03/23 Срд 18:16:59 2648946 830
>>2648830
Тут всё тестовое нахуй не нужно. Тестовое либо на максимум полчаса даётся и условие пишется нормально, либо оплачивается. Либо гарантируется трудоустройство после него. А тут скорее всего его никто даже читать не будет.
Аноним 22/03/23 Срд 18:22:07 2648957 831
Есть два объекта. В объекте А вызываются методы объекта В.
Как узнать какие методы объекта А вызываются? Причем не в рантайме, а которые просто есть в коде, декларированы.
Как такое через рефлексию сделать?
Аноним 22/03/23 Срд 18:24:35 2648965 832
>>2648957
Вероятно Вам смогут помочь шаблоны проектирования "Декоратор" и "Заместитель"
Аноним 22/03/23 Срд 18:33:14 2648984 833
>>2648965
А если объект А создается внутри объекта В через спринговый контекст?
Аноним 22/03/23 Срд 19:14:44 2649059 834
>>2648984
Переписывать так, чтобы спринг не использовался, а объекты были элегантными.
Аноним 22/03/23 Срд 19:16:00 2649060 835
>>2649059
А. Ну спасибо большое. Пошел переписывать.
Аноним 22/03/23 Срд 19:24:33 2649067 836
Аноним 22/03/23 Срд 19:30:51 2649080 837
Уже 30 резюме отправлено, ответили только 2 компании. Это нормально ? Или может у меня резюме неправильное ?
Фио
Должность
Скиллы
Образование
О себе
:/
Аноним 22/03/23 Срд 19:33:30 2649087 838
Аноним 22/03/23 Срд 19:36:04 2649090 839
>>2649080
айти индустрия находится в процессе клинической смерти.
https://habr.com/ru/news/t/724094/
Половина вакансий фейковые, как минимум. В резюме нужно быть волчистым и рисовать себе 5 лет опыта минимум. Пиздеть как не в себя. Но в любом случае перспектив тут никаких
Аноним 22/03/23 Срд 20:13:20 2649132 840
>>2649080
Может у тебя опыт неинтересный или с гэпами? Или ты там каждый год прыгал по вакансиям?
Аноним 22/03/23 Срд 20:42:45 2649154 841
>>2648388
Да, читай мурзилки, там про это есть.
Аноним 22/03/23 Срд 20:58:34 2649165 842
.png 84Кб, 1521x684
1521x684
Аноним 22/03/23 Срд 21:01:19 2649167 843
Через неделю выхожу на первую работу. Как подготовиться к этому моменту, чтоб потом обойтись без тупняков? Мб пока время есть, начать в чем-то разбираться, где часто поначалу спотыкаются? Или может наоборот хуй забить и наслаждаться последними днями, когда я не вынужден потеть над тасочками для кабанчика?
Аноним 22/03/23 Срд 21:05:26 2649173 844
>>2649167
Побрей хуй и яйцы и сделай ональную клизму.
Аноним 22/03/23 Срд 21:08:50 2649176 845
>>2649167
Быстро ты 6 микросервисов поднял
Аноним 22/03/23 Срд 21:10:44 2649179 846
Аноним 22/03/23 Срд 22:57:46 2649335 847
>>2649176
>6 микросервисов поднял
место в галере потерял
Аноним 22/03/23 Срд 23:45:33 2649414 848
Аноним 22/03/23 Срд 23:48:00 2649419 849
Если я создам ссылку типа StringBuilder например в поле класса, могу ли я несколько раз использовать ссылку в разных методах ?
Или для каждого метода своя ссылка типа StringBuilder ?
Аноним 22/03/23 Срд 23:57:58 2649437 850
Аноним 23/03/23 Чтв 00:08:23 2649444 851
Аноним 23/03/23 Чтв 00:17:39 2649447 852
>>2649444
А как же выделение памяти, например я вызову несколько методов этого класса которые использую эту переменную ?
Аноним 23/03/23 Чтв 00:50:13 2649466 853
>>2649447
Для чего это тебе?
Предполагается, что при обращении к одной ссылке разные методы в один и тот же объект будут записывать общие данные: первый метод что-то записал в StringBuilder, второй добавил, третий ещё что-то добавил. Если надо, чтобы методы работали независимо с разными объектами, надо создавать отдельные ссылки. Если надеешься сэкономить память, создавая только одну ссылку, брось эту затею.
Аноним 23/03/23 Чтв 03:13:46 2649553 854
>>2648652
А у меня это говно перестало апдейтить, вызываешь save на существующей записи и оно создаёт новую. Это с обновлением на spring boot 3/Hibernate 6 так стало и непонятно как чинить
Аноним 23/03/23 Чтв 10:56:43 2649718 855
>>2648633
ваще циклические зависимости - это практически всегда косяк в архитектуре. они не нужны. нарушение третей нормальной формы, как сказали бы в соседнем треде.
Аноним 23/03/23 Чтв 11:15:11 2649758 856
>>2649718
сервису заказов надо отправлять сообщения, а сервису сообщений нужен последний заказ юзера. Что делать?
Аноним 23/03/23 Чтв 12:25:26 2649849 857
Распределенные зависимости это миф?
Аноним 23/03/23 Чтв 13:21:55 2649911 858
>>2649849
Что такое распределенные зависимости?
Аноним 23/03/23 Чтв 13:24:13 2649916 859
>>2649911
Хахаха повелся,я тебя затролила ахаххкхкхах
Аноним 23/03/23 Чтв 13:26:26 2649921 860
>>2649758
>сервису заказов надо отправлять сообщения, а сервису сообщений нужен последний заказ юзера

Сначала, разбираться, почему так получилось.

В общем случае, любая цикличная зависимость разрешается одним из двух способов:
1. Либо инверсия зависимости (выделается какой то третий компонент, через который развязывается цикл)
2. Либо мердж этих двух штук в одну.

Как конкретно в этом случае поступить, надо смотреть. У меня например, первый вопрос который возникает, это "с какой стати сервису сообщений нужны заказы юзеров".
Аноним 23/03/23 Чтв 13:34:29 2649926 861
>>2649921
>"с какой стати сервису сообщений нужны заказы юзеров".
требование что если у юзера есть заказ - добавлять в сообщение информацию о его статусе
Аноним 23/03/23 Чтв 13:40:31 2649932 862
Аноним 23/03/23 Чтв 13:42:10 2649933 863
>>2649926
А что вообще такое у тебя "сервис сообщений"? Какую роль он выполняет?

В моем представлении, он должен выполнять инфраструктурную роль посылки уже кем то сформированного сообщения по тем каналам связи, которые он поддерживает. Тогда и дилемма отпадает сама собой - пусть это требование выполняет тот сервис, кто формирует текст сообщения (сервис заказов).
Аноним 23/03/23 Чтв 13:43:22 2649937 864
>>2649926
Ну можно наверное сделать какой-нибудь мессадж постпроцессор, который потом настроит дефолт сообщение в соответствии с требованиями
Аноним 23/03/23 Чтв 13:45:29 2649944 865
>>2649932
Да ну нахуй. Интерфейсы коллекций - параша полная, их бы по совести с нуля переписать давно пора. Сделали бы Collection API 3.0, с явной поддержкой иммутабельности/персистентности. И не поверю что не могут из-за обратной совместимости: когда то же состоялся переход от векторов и Hashtable в сторону текущих Collection API.
Аноним 23/03/23 Чтв 13:49:07 2649955 866
>>2649944
Тут SortedSet::addFirst будут кидать эксепшен, вполне вероятно, что началась ментальная гимнастика, которая приведет к тому, что у иммутабл коллекций будет падать метод add
Аноним 23/03/23 Чтв 13:52:48 2649965 867
>>2649955
Так он и так падает щас. Не суть. Суть в том, что у иммутабельных коллекций в интерфейсе вообще не должно быть метода add.
Аноним 23/03/23 Чтв 14:13:51 2649991 868
Кто-то из анонов было дело писал в треде, что к стандартному спринговому тестрированию лучше добавить еще одну депенденси. Как она называется, напомните, testContainers вроде?
Аноним 23/03/23 Чтв 16:02:53 2650122 869
не пынямаю. если чекед исключения - это норма, которые нужно обрабатывать и вызывать, то анчекед - это ошибки, которые не нужно обрабатывать, а нужно исправлять. тогда для чего я могу расширять класс RuntimeException, создавая свое исключение, если в этом нет смысла? и почему я так же могу вызвать например throw new IllegalArgumentException()?
Аноним 23/03/23 Чтв 16:22:24 2650138 870
>>2647672
Попытался еще поспрашивать по поводу этого тестового у эйчарки. Говорит, что прям это все надо реализовать, то есть анон, который предположил относительно простой генерации апишки свагером, не угадал. Спросил, сколько микросервисов вообще ожидают на выходе, ответ: сложно сказать. Короче мутная какая-то хуетень, скипаю нахуй. В чем я не прав?
Аноним 23/03/23 Чтв 16:22:57 2650139 871
>>2650122
Чекед эксепшены - легаси, которое хуй знает почему до сих пор не выпилили.
Аноним 23/03/23 Чтв 16:28:22 2650143 872
Аноним 23/03/23 Чтв 16:29:25 2650146 873
>>2650122
>чекед исключения - это норма

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

Забавен также тот факт, что на уровне рантайма всем похуй на тип эксепшена - они там все анчекед. Ушлые люди этим пользуются, и наебывают компилятор всякими SneakyThrows'ами из ломбока.
Аноним 23/03/23 Чтв 16:29:35 2650147 874
>>2650139
почему легаси?
Я знаю что очень вероятно будет генерироваться эксепшен, и я хочу чтобы пользователь либы не забыл обработать этот эксепшен
Аноним 23/03/23 Чтв 16:38:45 2650159 875
>>2650147
И пользователь из-за выработанной годами привычки поймает его, обернёт в RuntimeException и кинет дальше.
Аноним 23/03/23 Чтв 16:41:18 2650163 876
>>2650147
>>почему легаси?
Заставляет писать код в стиле жава 7. С циклами, трайкечами и прочее поеботой из нулевых.

>>я хочу чтобы пользователь либы не забыл обработать этот эксепшен
Ты просто заставляешь его писать тра-кетч, не более. Если захочет - обработает. Задокументируй лучше подробнее, чтоб пользователь понимал когда прилетает эксепшен
Аноним 23/03/23 Чтв 16:52:20 2650184 877
Аноним 23/03/23 Чтв 16:52:36 2650185 878
>>2650163
>>2650159
итого единственная причина - неудобно с новомодными лямбдами?
Аноним 23/03/23 Чтв 16:53:50 2650186 879
>>2650185
Нет, просто это слегка более заумная вещь, чем способен вытянуть мозг анальника.
Аноним 23/03/23 Чтв 16:54:37 2650188 880
>>2650163
> Задокументируй лучше подробнее
А потом забываешь один из 500 постулатов документации и встречаешь дебаг в 3 часа ночи.
Аноним 23/03/23 Чтв 17:00:14 2650196 881
>>2650184
блин чел вижу ты умный. можешь мне ответить? сюда >>2650122
я не пониманию что и когда мне использовать, exception или runtime exception
Аноним 23/03/23 Чтв 17:00:30 2650197 882
>>2650184
>>2650186
Написал пустой кетч и почувствовал себя гением наебавшим систему?
Аноним 23/03/23 Чтв 17:02:56 2650199 883
>>2650197
Пустой кетч — моветон. Исключение в любом случае надо обрабатывать, либо утвердить, что оно не должно вылетать, повесив @SneakyThrows.
Аноним 23/03/23 Чтв 17:06:39 2650202 884
@SneakyThrows
Аноним 23/03/23 Чтв 17:12:41 2650208 885
>>2650196
Чекен и анчекед эксепшены, хоть, по виду и очень похожи, являются фактически совершенно разными конструкциями.

Непроверяемое исключение — это ошибка в работе программы. Программа прерывает своё выполнение в этом случае и просит разработчика решить проблему.

Проверяемое исключение — это форма ветвления. Это невероятно мощный инструмент, который фактически представляет из себя множественный возврат. С помощью него создаётся точка, в которой исполнение программы расходится кардинально. Можно использовать эту штуку по-разному, но, всё же, лучше использовать в соответствии с семантическим значением конструкции — для обработки исключительных ситуаций, которые выбиваются из нормального хода программы, но, при этом, всё ещё являются нормой, при которой программа должна продолжить работу в штатном режиме.
Аноним 23/03/23 Чтв 17:20:18 2650212 886
>>2649758
>Что делать?
ну тут очевидно что нужно менять профессию
Аноним 23/03/23 Чтв 17:21:42 2650214 887
>>2650184
Разумеется. Ты же пришел.
Аноним 23/03/23 Чтв 17:24:47 2650218 888
>>2649932
>АХУЕТЬ
добавление пары никому ненужных коллекций к существуующему зоопарку стоит таких эмоций?
Аноним 23/03/23 Чтв 17:26:31 2650220 889
>>2650146
>Я, например, так не считаю.
также как и создатели самой жавы. это всеми признаный архитектурный проёб который к сожалению нельзя уже никак исправить.
Аноним 23/03/23 Чтв 17:28:19 2650221 890
>>2650208
>Проверяемое исключение — это форма ветвления

Хуево быть тобой, хули.

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

Но даже если на это забить - в реалиях джавы чекед эксепшены все равно хуйня из за лямбд и стримов, которые превращаются либо в трай-кэтч месиво, либо сники-throws-лицемерие. И я еще не говорю про просачивание чекед эксепшенов в интерфейсы - такие концепции говнокодер типа тебя скорее всего даже и не осмыслит.
Аноним 23/03/23 Чтв 17:30:34 2650229 891
>>2650208
>Чекен и анчекед эксепшены, хоть, по виду и очень похожи, являются фактически совершенно разными конструкциями.
срыв покровов итт
Аноним 23/03/23 Чтв 17:31:40 2650235 892
изображение.png 87Кб, 695x262
695x262
изображение.png 224Кб, 694x313
694x313
изображение.png 126Кб, 678x606
678x606
>>2650208
>Непроверяемое исключение — это ошибка в работе программы. Программа прерывает своё выполнение в этом случае и просит разработчика решить проблему.
ну вот в книжке написано, что вызывать через throw new NullPointerException() не надо, потому что это ошибка, которую программист должен не допускать. т.е. как я понимаю, если я хочу обращаться к методам объекта, то мне надо сначала проверить что-то типа if (obj != null) obj.getSomething(), а не вызывать эти методы в try/catch и не отлавливать их. соответственно, исходя из этого, я не понимаю в каких случаях я должен создавать свое исключение extends RuntimeException, если я их не должен отлавливать, а должен не допускать в принципе? т.е. какой смысл вообще наследоваться от RuntimeException мне?

в той же книжке даже пример приводят на основе Exception. книга если что java полное руководство шилдт 12 издание
Аноним 23/03/23 Чтв 17:32:07 2650236 893
>>2650220
>к сожалению нельзя уже никак исправить.

ИМХО конкретно этот проеб исправить относительно просто. Как поломается обратная совместимость, если просто перестать их чекать? В рантайме они и так все анчекед.
Аноним 23/03/23 Чтв 17:36:13 2650247 894
>>2650235
по сути разницы нет, кидаешь ты стандартный RuntimeException или наследованный от него. Но с особым MySpecialRuntimeException появляется возможность отловить только его, что в общем может понадобиться
Аноним 23/03/23 Чтв 17:39:46 2650262 895
>>2650247
да не в этом вопрос... бля, я что не понятно объясняю? КАК Я ПОНЯЛ Я ВООБЩЕ НЕ ДОЛЖЕН ВЫПУСКАТЬ RUNTIME ЭКСЕПШЕНЫ, ПОТОМУ ЧТО Я ИХ ДОЛЖЕН НЕ ДОПУСКАТЬ В ПРИНЦИПЕ

если это действительно так, то для чего есть эта возможность, как и наследоваться от RuntimeException?
Аноним 23/03/23 Чтв 17:44:38 2650276 896
>>2650262
Почему?

BudgetNeSwedenException ты можешь сделать как рантайм так и чекед эксепшеном
Аноним 23/03/23 Чтв 17:48:49 2650283 897
>>2650276
С не пойманными рантайм эксепшенами хорошо сочетается респонскод 200 ОК.
Аноним 23/03/23 Чтв 17:49:42 2650285 898
>>2650221
Моветон, потому что в умной книжке от Анальника Аналыча так сказано?
Аноним 23/03/23 Чтв 17:50:07 2650286 899
>>2650214
Стрелочка от анальника, ведь ни на что другое он не способен.
Аноним 23/03/23 Чтв 17:50:21 2650288 900
>>2650283
если ты его поймал - значит приложуха не упала и способна отвечать и работать дальше, значит 200
Аноним 23/03/23 Чтв 17:50:29 2650289 901
>>2650236
ну основной тезис, как я понимаю, в том, что потребуется смена парадигмы программирования, пусть и в локальном масштабе. то есть сейчас эксепшены, как сказано выше, используются как механизм ветвления. эдакий ifelse только через жопу. когда эти эксепшены только внедрялись там под них пиздец какая идеология подводилась в противовес сишным кодам ошибок. типа сделаем удобнее, быстрее, лучше, блаблабла.

по итогу оказалось что сишный способ возвращать код ошибок как результат процедуры проще и удобнее в разы чем этот эксепшный оверинжиниринг. но выкинуть его просто так нельзя, так как эта хуйня - часть идеологии языка
Аноним 23/03/23 Чтв 17:51:15 2650292 902
>>2650235
Наследование непроверяемых исключений нужно только для семантики. Чтобы залезть в консоль и увидеть, что ты долбоеб и ввёл неправильный токен от АПИ, а не мистический RuntimeException по любому поводу.
Аноним 23/03/23 Чтв 17:52:28 2650294 903
изображение.png 28Кб, 327x376
327x376
>>2650276
могу! но нахуя, если мне шилдт говорит, что я должен предотвращать появление runtime эксепшинов, а не выкидывать их и обрабатывать? написал код, куда уж нагляднее? глядя на этот пик приходит мысль зачем вообще наследоваться и создавать свои runtime эксепшены, если их надо попросту НЕ ДОПУСКАТЬ В ПРОГРАММЕ?
Аноним 23/03/23 Чтв 17:54:12 2650298 904
>>2650294
что за бред. Программа должна работать корректно. Если это невозможно - кидаешь эксепшен.
Возвращать некорректный результат только из-за нежелания кидать эксепшен - это неправлиьно
Аноним 23/03/23 Чтв 17:54:12 2650299 905
>>2650289
>эдакий ifelse только через жопу.
Не через жопу, во многих случаях это правильнее, а иногда без них вообще никак. If/else в контексте небезопасного инпута это префиксная обработка, а исключение — постфиксная.
Аноним 23/03/23 Чтв 17:54:36 2650302 906
>>2650294
Если у тебя 10 — инпут, то 1 — правильнее.
Аноним 23/03/23 Чтв 17:55:41 2650305 907
>>2650302
Ой блядь, не 10, а переменная "а".
Аноним 23/03/23 Чтв 17:55:46 2650306 908
>>2650294
ну так и есть, писать код вообще без самописных эксепшенов - вполне себе хорошая практика. относись к эксепшенам как к неудачному эксперименту при разработке языка и старайся их использование свести к минимуму
Аноним 23/03/23 Чтв 17:56:22 2650308 909
>>2650306
>>2650294
Ты нахуя сам с собой разговариваешь, дурик?
Аноним 23/03/23 Чтв 17:57:46 2650312 910
>>2650299
>Не через жопу, во многих случаях это правильнее, а иногда без них вообще никак.
как же сишка без эксепшенов работает, магия наверно.
Аноним 23/03/23 Чтв 17:58:24 2650316 911
>>2650312
А ассемблер-то как работает!
Аноним 23/03/23 Чтв 17:59:33 2650320 912
>>2650294
>>2650235

а все, я долбаеб, он говорил про throws, а не throw...... т.е. для runtime эксепшенов не обязательно явно их прокидывать выше для дальнейшей обработки
Аноним 23/03/23 Чтв 18:00:18 2650322 913
Аноним 23/03/23 Чтв 18:05:44 2650331 914
>>2650294
ну кстати твой пик вполне показателен.
у тебя блоки кода нихуя не равнозначны, и это одна из основных преензий к эксепшенам. если во втором случае ты впоне конкретно обрабываешь ситуацию деления на ноль то в первом случае ты обрабатываешь неведомую хуйню, то есть он у тебя может упасть и когда ты на ноль поделишь, а может упасть когда ты код на хитромудром процессоре с необычной архитектурой запустишь и у него там регистров не хватит для вычисления твоего деления. и если вдуматься то это пиздец. в жаве так то мало мест где можно стрелять себе в ногу - и это одно из них.
Аноним 23/03/23 Чтв 18:06:44 2650334 915
>>2650331
Почему ты продолжаешь гореть и разговаривать сам с собой?
Аноним 23/03/23 Чтв 18:07:35 2650337 916
go.png 205Кб, 1717x1674
1717x1674
>>2650312
>>без эксепшенов работает
го доказал что эксепшены не нужны
Аноним 23/03/23 Чтв 18:07:58 2650338 917
изображение.png 18Кб, 1272x127
1272x127
http://neerc.ifmo.ru/wiki/index.php?title=%D0%9E%D0%B1%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B0_%D0%BE%D1%88%D0%B8%D0%B1%D0%BE%D0%BA_%D0%B8_%D0%B8%D1%81%D0%BA%D0%BB%D1%8E%D1%87%D0%B5%D0%BD%D0%B8%D1%8F&mobileaction=toggle_view_desktop

ну вот написано тоже самое... я запутался бля... вот взять пример практический, пришли в контроллер параметры запроса, как мне их проверять? выкидывать и обрабатывать исключения и отсылать ответ этого исключения? или вообще без исключений напрямую как-то обрабатывать и отсылать ответ?
Аноним 23/03/23 Чтв 18:11:24 2650345 918
>>2650289
>эксепшены, как сказано выше, используются как механизм ветвления. эдакий ifelse только через жопу.

Ну вот я не понимаю, откуда нахуй взялась вот эта вот всратая идея, что делать контрол флоу эксекпшенами, это чем то лучше и чище, чем делать контрол флоу с помощью goto?

>по итогу оказалось что сишный способ возвращать код ошибок как результат процедуры

Мы ж не в 90х щас вроде живем. Есть способы и подескриптивней. Верни опшенал. Или затащи из ФП какой нить аналог Either/Maybe.
Аноним 23/03/23 Чтв 18:12:54 2650350 919
>>2650331
причем это изначально подавалось как ахуеть какой плюс, типа безопасный код, даже если регистров не хватит мы все равно ошибку поймаем. но на практике это вылилось в мегабайты непонятных стактрейсов ведущих в никуда и рождению принципа fail fast, который абсолютная противоположность тому подходу, который декларируется концепцией эксепшнов
Аноним 23/03/23 Чтв 18:13:14 2650351 920
Аноним 23/03/23 Чтв 18:13:52 2650352 921
>>2650294
>но нахуя, если мне шилдт говорит, что я должен предотвращать появление runtime эксепшинов, а не выкидывать их и обрабатывать

Относись к этому так: рантайм эксекпшен - это косяк по вине твоей, как разработчика. В этом смысле ты действительно должен избегать их появления в рантайме. Но это не значит что ты не можешь обьявить и использовать парочку рантайм эксепшенов для самопроверки.
Аноним 23/03/23 Чтв 18:14:25 2650355 922
scale1200.webp 31Кб, 1200x900
1200x900
Аноним 23/03/23 Чтв 18:16:02 2650357 923
>>2650338
>>пришли в контроллер параметры запроса, как мне их проверять?
ValidationApi
>>пвыкидывать и обрабатывать исключения и отсылать ответ этого исключения?
Они сами все выкинут, но если хочешь свое сообщение написать - перехватываешь в своем эксепшен хендлере валидейшЭксепшн и выдаешь свой текст.
Аноним 23/03/23 Чтв 18:16:39 2650359 924
>>2650338
если валидация не прошла - выкидываешь свой чекед BusinessException, ловишь его в контроллере, в случае реста выдаешь на выходе что-то типа

200
{
code: BusinessException
message: Budget ne sweden
}
Аноним 23/03/23 Чтв 18:17:13 2650361 925
>>2650345
>Мы ж не в 90х щас вроде живем.
ты то может и не живешь, но ноги этой концепции прям оттуда и ты пожинаешь ее плоды. просто в свое время была охуеть какая дискуссия на тему того что обработка ошибок в сишке говно и как нам ее решить, и эксепшены родились (точнее массово распространились) как раз в результате этой дискуссии.
Аноним 23/03/23 Чтв 18:18:53 2650366 926
>>2650359
>если валидация не прошла - выкидываешь свой чекед BusinessException, ловишь его в контроллере, в случае реста выдаешь на выходе что-то типа
>
вот вот, о чем и речь, то же самое сишное возвращение кода ошибки, только через жопу
Аноним 23/03/23 Чтв 18:21:43 2650368 927
>>2650361
Кек, интересно.

А у тебя часом не осталось хвостов на эту дискуссию? Я б почитал.
Аноним 23/03/23 Чтв 18:21:46 2650369 928
>>2650366
не нужно руками прокидывать твой код ответа функции по всему стеку вызовов.
Аноним 23/03/23 Чтв 18:24:30 2650374 929
>>2650369
ну так у тебя чекед эксепшн же, ну будешь не код ошибки прокидывать а декларацию throws в описании метода, какая разница
Аноним 23/03/23 Чтв 18:24:46 2650375 930
изображение.png 27Кб, 601x149
601x149
изображение.png 24Кб, 527x157
527x157
изображение.png 24Кб, 733x132
733x132
>>2650359
>>2650357
>>2650352

ну вот я так писал на спринге. он сам перехватывал этот эксепшн и отправлял клиенту. в этой ситуации разве это ошибка программиста? сомневаюсь, это наоборот обработка ошибок пользователей, но ведь это runtime эксепшн все равно
Аноним 23/03/23 Чтв 18:28:04 2650380 931
>>2650368
>А у тебя часом не осталось хвостов на эту дискуссию? Я б почитал.
в ранних книгах по яве это было обязательной главой, так как там был именно запрос на перевод программистов с си на яву и эти темы (чем ява лучше си и с++) полно освещались. они по сути и писались как учебник для тех кто решил сменить си/плюсы на яву. можешь поискать что-нибудь из книг года выпуска эдак 1996-1998.
Аноним 23/03/23 Чтв 18:28:23 2650381 932
>>2650375
Спринг, это как правило веб-сервер. А стопать процесс вебсервера из-за эксепшена == получить стопяцот недовольных хомяков, которые не смогли провести свои транзакции и точат вилы чтобы ими тебя выебать. Там тупо выхода другого нет.

Поэтому вместо этого спринг отдает код 500, который на НТТП-языке означает литералли то же самое - "реквест провалился из-за того, что Васян на сервер-сайде - долбоеб".
Аноним 23/03/23 Чтв 18:31:22 2650387 933
>>2650381
500 должно означать что сервер помер. Ошибка валидации это явно нормальная работа и сервер не помер. Значит 200
Аноним 23/03/23 Чтв 18:34:50 2650388 934
>>2650375
Кинопоиск кун, ты живой)
Аноним 23/03/23 Чтв 18:35:26 2650390 935
Аноним 23/03/23 Чтв 18:44:26 2650397 936
>>2650387
Это уже нюансы. В спринге ты добавляешь эксепшн хендлеры и в них сам решаешь, как маппить эксепшены на транспорт. И это кстати еще одна причина почему обьявлять рантайм эксепшены может понадобиться: спринг их различает по типу.

Или ты можешь пересесть полностью на чекед эксепшены. Но тогда тебе еще придется по всему стеку вызовов прокидывать руками бессмысленные throws-декларации, или как местный шиз рекомендует - контрол флоуить. А спрингу один хер похер - какие эксепшены маппить.
Аноним 23/03/23 Чтв 18:47:27 2650399 937
Что такое ранее и позднее связывание ?
Аноним 23/03/23 Чтв 18:53:11 2650405 938
>>2650381
Валидация это 400, хуйня не найдена - 404, ошибка по бизнес хуйне 417.
А 500 - да, либо вася долбоеб и НПЕ не учел или все наебнулося по какой то причине.
Аноним 23/03/23 Чтв 18:58:44 2650406 939
200.png 126Кб, 900x675
900x675
>>2650405
>хуйня не найдена - 404
here we are. 404 это приложуха не найдена
Аноним 23/03/23 Чтв 19:05:24 2650416 940
>>2650399
То, чего в джаве нет.
Аноним 23/03/23 Чтв 19:05:31 2650417 941
>>2650406
Дежурно напоминаю

ДВУХСОТКА-ДОДИК ЗАКАЗАЛ СЕБЕ ДОДОПИЦЦУ
@
ПИЦЦУ ПРИНЕСЛИ, НА КОРОБКЕ ФИРМЕННАЯ НАКЛЕЙКА "Я ПРОВЕРИЛ, ВСЁ ХОРОШО"
@
ДВУХСОТКАДОДИК ОТКРЫЛ КОРОБКУ, А ТАМ ГОВНО
@
В ГОВНЕ ТОРЧИТ ЗАПИСОЧКА "409 MESYA4NII BALANS NE SWEDEN"
@
ОХУЕВШИЙ ЗВОНИТ В ПОДДЕРЖКУ
@
НУ ВЫ ЖЕ ПОНИМАЕТЕ, ЧТО НАКЛЕЙКА ОТНОСИТСЯ ТОЛЬКО К ВНЕШНЕМУ ВИДУ КОРОБКИ
@
МЫ ЖЕ НЕ МОЖЕМ СМЕШИВАТЬ КУЛИНАРНЫЙ, УПАКОВОЧНЫЙ И ДОСТАВОЧНЫЙ ПРОТОКОЛЫ
@
ГОВНО В КОРОБКЕ ЗАКЕШИРОВАЛОСЬ
@
ТЕПЕРЬ ДАЖЕ ПРИ ОТДАЧЕ ПИЦЦЫ В ПИЦЦЕРИИ ДВУХСОТКА-ДОДИКУ БУДЕТ ПРИЕЗЖАТЬ ГОВНО В КОРОБКЕ БЛИЖАЙШИЕ 4 ЧАСА
Аноним 23/03/23 Чтв 19:08:23 2650420 942
>>2650417
ВСЕ ЗАПРОСЫ ЧЕРЕЗ POST
@
НИКАКОГО КЕШИРОВАНИЯ
@
PROBLEMS WEREN'T
Аноним 23/03/23 Чтв 19:11:32 2650423 943
Аноним 23/03/23 Чтв 19:11:54 2650424 944
Аноним 23/03/23 Чтв 20:20:37 2650475 945
.png 467Кб, 500x500
500x500
Это филиал бугурт-треда?
Аноним 23/03/23 Чтв 23:53:10 2650742 946
Для тестов можно обойтись System.out.println() ? Или лучше использовать Slf4j-Log4j ?
Аноним 24/03/23 Птн 00:06:50 2650750 947
Аноним 24/03/23 Птн 00:25:42 2650766 948
>>2650742
Тесты не нужны вообще. Если ты хороший программист, то сразу пишешь хороший и понятный код.
Аноним 24/03/23 Птн 00:26:14 2650767 949
>>2650742
Лучше логгером, можно всё таки разделять levelы, фильтровать, может пригодится
Аноним 24/03/23 Птн 00:26:46 2650768 950
>>2650766
Щас бы в 2к23 не знать про no code
Аноним 24/03/23 Птн 00:38:35 2650777 951
Аноним 24/03/23 Птн 02:00:15 2650825 952
>>2650766
Нет, нужны. Никто не пишет сразу без багов.
Аноним 24/03/23 Птн 04:41:06 2650850 953
>>2650742
ни то ни то, нахуй в тестах вообще какие-то логи
Аноним 24/03/23 Птн 04:45:37 2650851 954
>>2650742
в Assertions есть параметр message - тебе туда
Аноним 24/03/23 Птн 05:05:01 2650854 955
>>2650742
Тесты нужны только в компаниях уровня Гугла.
Ты — гугл?
Аноним 24/03/23 Птн 07:48:45 2650897 956
>>2650854
тесты и комментарии нужны только если у тебя говнокод. У тебя говнокод? Тогда пиши тесты и комментарии
Аноним 24/03/23 Птн 10:47:06 2650975 957
Аноны, вот отсюда вопрос:

https://www.baeldung.com/spring-boot-testing

mvc.perform(get("/api/employees")
.contentType(MediaType.APPLICATION_JSON))
.andExpect(status().isOk())
.andExpect(jsonPath("$", hasSize(1)))
.andExpect(jsonPath("$[0].name", is(alex.getName())));

Вот этим статик методы get, status, jsonpath, они вообще откуда? Что импортировать нужно что заработало?
Аноним 24/03/23 Птн 12:51:34 2651079 958
>>2650975
В балдуенге есть ссылки всегда на гитхаб с исходниками, там и посмотри импорты
Аноним 24/03/23 Птн 13:53:33 2651122 959
Udp - легаси, вопросы?
Аноним 24/03/23 Птн 14:26:04 2651160 960
>>2651079
Спасибо, очень полезно, пригодится не только в этой ситуации, я думаю.
Аноним 24/03/23 Птн 14:41:24 2651178 961
>>2651122
Сам не гамаешь - другим не мешай.
Аноним 24/03/23 Птн 14:56:56 2651210 962
>>2651122
В реализации jdk - да
Аноним 24/03/23 Птн 15:21:01 2651243 963
>>2650359
>>2650387
Вы что пидорасы человеку советуете? Чекед экспепшоны писать, 200 при ошибке, охуеть

Значит выдаю базу
- Чекед эксепшены нахуй не надо использовать, по факту рудимент. Unchecked используются в 99 процентах случаев, особенно для бизнес логики.
- После того как ты создал свой unchecked exception ты пишешь для него обработчик отдельный, в случае спринга это controller advice.
- 200 возвращается при успешном выполении запроса. НИКОГДА сука нельзя отвечать 200 и в теле писать текст ошибки. Http status codes для кого придумали?
Аноним 24/03/23 Птн 15:26:17 2651246 964
>>2651243
>Http status codes для кого придумали?
явно не для ручного задавания и попыток выразить ими бизнес-логику
Аноним 24/03/23 Птн 15:32:29 2651252 965
>>2650122
Не слушай быдло выше, он наверное пару месяцев отработал на говногалере и уже возомнил себя крудошлепом. Еще хорошей практикой является обработка эксепшенов, которые ероры. Только их очень сложно отловить, поэтому лучше по возможности все методы оборачивать в трайкеч и там уже что-то с ними делать, допустим выводить инфу об ероре в систем аут.
Аноним 24/03/23 Птн 15:43:50 2651263 966
>>2651246
Посмотри любой паблик апи, тот же самый github api. Они в зависимости от сценария могут и 200 отдать, могут 204, могут 304, 201, 422, дохуя. В прицнипе я соглашусь, что так много может быть и не нужно (смотря как в команде договоритесь), но остальные ваши советы это пиздец, даже джуны уже знают лучше
Аноним 24/03/23 Птн 15:56:37 2651274 967
2ch.png 7Кб, 760x153
760x153
2ch2.png 5Кб, 808x130
808x130
>>2651263
знать и я знаю, ещё я знаю что это очередные идеологи опять поднасрали и высрали свою шизу, которую зафорсили на всяких хабрах.
Если у тебя что-то сложнее http странички, то поверх накладывается свой бизнес-протокол со своими собственными ошибками. С http кодами они ну никак не бьются.

Скажи мне учоный в говне моченый, если мониторинг детектит 500 ответ, надо ли слать алерт и поднимать админа?
Аноним 24/03/23 Птн 16:05:31 2651284 968
>>2651274
Не смешивай сущности. Ребята выше обсуждали rest over http который предполагает использование http status codes. Если вы городите свои велосипеды или rpc то пожалуйста, но не надо новичкам рассказывать, что в ресте нормально возвращать ошибку в 200ке, это вредно

По поводу 500ок, ну тут зависит опять же от кейса, но у нас вот настроен мониторинг на % 5xx
Аноним 24/03/23 Птн 16:07:58 2651287 969
Как отправить через MockMVC следующий объект:

class articleDTO {
private String headline;
private String content;
private MultipartFile imageFile;
}

В если в imageFile поставить MockMultipartFile, то он не переделывается в жсон, и следовательно нельзя добавить через content(String body). Как решить это?
Аноним 24/03/23 Птн 16:19:32 2651300 970
>>2651284
рест это и есть форс. Недостижимый идеал, который даже теоретически недостижим и непонятен. Исходит из ложной идеи что все это объект, и у объекта может быть только 4 действия (круд).
Для веб-странички это применимо. Для ресурса типа картинки - тоже. Если что-то сложнее, какой-нибудь там бюджет, то у бюджета гораздо больше возможных действий.
HTTP изначально и создавался ради веб-страничек и картинок, для этого он хорошо подходит. Это уже потом где-то в десятых появился форс что http надо натягивать вместо бизнес-протокола. До сих пор страдаем

Предположим в коде случился рандомный RuntimeException, спринг это смаппил на http 500. Это аварийная ситуация? Ты бы хотел чтобы тебя в ночи будили из-за попытки тёти вали поделить на ноль?
Аноним 24/03/23 Птн 17:29:40 2651415 971
>>2651300
>и у объекта может быть только 4 действия (круд).
Я тебе щас страшную вещь скажу, но все, что сложнее этих 4 операций - это отдельная сущность.
Аноним 24/03/23 Птн 17:35:29 2651426 972
Аноним 24/03/23 Птн 17:42:24 2651437 973
>>2651415
а вот и попытка натянуть сову на глобус. Попытка всё сделать объектами с 4 операциями
Аноним 24/03/23 Птн 17:54:17 2651455 974
>>2651437
Ой, а что, в ООП как-то иначе должно быть?
>>2651426
Ты пидор.
Аноним 24/03/23 Птн 17:58:39 2651459 975
>>2651455
ооп не существует. В программировании глаголы (методы, функции), а не объекты с 4 действиями

"Распечатать отчёт" как ты через рест будешь делать?
"Распечатка отчета, создать"?
Аноним 24/03/23 Птн 18:01:25 2651466 976
>>2651459
Где он должен распечататься?
Аноним 24/03/23 Птн 18:02:15 2651468 977
Аноним 24/03/23 Птн 18:02:40 2651469 978
Аноним 24/03/23 Птн 18:08:12 2651482 979
>>2651469
Пользователь нажимает "Напечатать" и у него открывается новое окно с pdf
Аноним 24/03/23 Птн 18:09:00 2651486 980
image.png 5Кб, 450x135
450x135
Аноним 24/03/23 Птн 18:26:23 2651521 981
>>2651459
GET /cgi-bin/reports.fcgi?action=printreport&reporttype=kassovaya_kniga&knigaid=44736
Аноним 24/03/23 Птн 18:36:05 2651530 982
Аноним 24/03/23 Птн 19:58:46 2651613 983
>>2651300
>у объекта может быть только 4 действия (круд).

Кстати говоря, это нихуя не так. Если пройтись по определениям и гайдам по REST, ни в одном из них не будет ни слова про круд. Из 6 констрейнов, которые приписывают рестам, нет ни одного, сводящего API к этим 4 операциям:

https://restfulapi.net/rest-architectural-constraints/

REST и CRUD - две абсолютно не зависящие друг от друга вещи. REST не обязан быть CRUDом так же, как CRUD - RESTом.
Аноним 24/03/23 Птн 20:28:50 2651649 984
>>2651459
ООП не существует только в твой скудной голове, аналиэ.
Аноним 24/03/23 Птн 20:33:57 2651655 985
Рест только для обмена данными, долбоебы.
Аноним 24/03/23 Птн 20:46:03 2651667 986
>>2651613
>REST и CRUD - две абсолютно не зависящие друг от друга вещи. REST не обязан быть CRUDом так же, как CRUD - RESTом.
Обязан, так как >>2651655.
Аноним 24/03/23 Птн 21:17:57 2651684 987
>>2651613
если есть существительное, с которым можно только
PUT create
GET read
POST update
DELETE delete

где ещё взять операций?
Аноним 24/03/23 Птн 22:12:10 2651737 988
POST /api/anon/2651655/jopa

["hui"]
Аноним 24/03/23 Птн 22:16:19 2651740 989
>>2651737
Натягивание совы на глобус. Рест не предназначен для этого.
Аноним 24/03/23 Птн 22:17:09 2651742 990
Аноним 25/03/23 Суб 00:26:07 2651812 991
>>2651210
Пидорас,я тебе ебальник то проломлю
Аноним 25/03/23 Суб 00:27:00 2651813 992
Кто-нибудь использовал спринговский mail sender? Хули так долго? Одно письмо в две строчки отправляется секунд 10,а если их сотню надо отправить,это же ебануться можно
Аноним 25/03/23 Суб 01:41:01 2651861 993
>>2651813
Это ебанутые протоколы. Это больше задержка, чем непосредственно время, потраченное на отправку. Отправляй каждое новое письмо новым потоком просто.
Аноним 25/03/23 Суб 08:01:30 2651952 994
>>2651861
> отправляй потоком
Это как?
Аноним 25/03/23 Суб 09:43:31 2652012 995
>>2651952
new Thread(() -> this.sendEmail("poped@kremlin.ru", "mamku ebal)0)0))))")).start();
Аноним 25/03/23 Суб 09:47:13 2652015 996
>>2651813
Все нормально работает, у тебя что-то сломано в конфигурации
Аноним 25/03/23 Суб 09:48:18 2652018 997
>>2651861
Никаких протоколов «тупить 10 секунд» не существует
Аноним 25/03/23 Суб 09:51:48 2652021 998
>>2652015
Покеж свои конфигурацию
Аноним 25/03/23 Суб 10:08:53 2652037 999
Аноним 25/03/23 Суб 10:56:29 2652085 1000
>>2651287
Аноны, ну подскажите, плиз. До сих пор не могу решить.
Аноним 25/03/23 Суб 11:12:30 2652098 1001
В Java 20 выпилили instanceof Point point
Аноним 25/03/23 Суб 11:18:21 2652104 1002
>>2652098
Нахуя? Кому мешало?
Аноним 25/03/23 Суб 11:19:41 2652107 1003
>>2652085
Когда вы используете MockMVC для тестирования контроллера, вы можете использовать метод multipart для отправки запроса multipart/form-data. Это позволит вам отправить файл вместе с другими полями формы.

В вашем случае, чтобы отправить объект articleDTO через MockMVC, вы можете использовать следующий код:

java
Copy code
MockMultipartFile mockFile = new MockMultipartFile("imageFile", "filename.jpg", "image/jpeg", "some image data".getBytes());

ArticleDTO articleDTO = new ArticleDTO();
articleDTO.setHeadline("Article headline");
articleDTO.setContent("Article content");
articleDTO.setImageFile(mockFile);

MockMultipartHttpServletRequestBuilder builder = MockMvcRequestBuilders.multipart("/your-api-endpoint");
builder.with(request -> {
request.setMethod("POST");
return request;
});
builder.with(request -> {
request.setContentType("multipart/form-data");
return request;
});
builder.file(mockFile);
builder.param("headline", articleDTO.getHeadline());
builder.param("content", articleDTO.getContent());

mockMvc.perform(builder)
.andExpect(status().isOk());
В этом коде мы создали объект MockMultipartFile для тестирования отправки файла. Затем мы создали объект ArticleDTO с заголовком, контентом и файлом. Затем мы использовали MockMvcRequestBuilders.multipart() для создания запроса multipart/form-data. Мы добавили заголовки запроса и параметры для объекта ArticleDTO. Наконец, мы использовали mockMvc.perform() для выполнения запроса и проверки статуса ответа.

Обратите внимание, что это пример и может потребоваться настройка в зависимости от вашего API.
Аноним 25/03/23 Суб 12:07:13 2652144 1004
>>2652107
Спасибо большое, но не совсем то. У меня метод контроллера принимает (@RequestBody ArticleDTO), а в том что описано это метод с тремя @RequestParam, один из которых файл, два строки.

Эх, походу придется переделывать апи под реквест парамы... Обидно, когда не можешь справиться с задачей как нужно, и приходится подгонять задачу под ответ.
Аноним 25/03/23 Суб 12:39:20 2652173 1005
>>2652085
Я нихуя не понял что нужно, закинь проект на гит, придумаем всем двачом
Аноним 25/03/23 Суб 19:15:14 2652657 1006
Аноним 25/03/23 Суб 19:51:00 2652706 1007
.png 43Кб, 1042x519
1042x519
>>2652098
Не воспроизводится.
Аноним 26/03/23 Вск 01:38:43 2652996 1008
Ку анчоусы, вопросец есть. Использую спринг секьюрити, написал фильтр для токенов и класс, который генерит эти jwt токены. Могу ли я как-то сразу подсунуть этот токен в хедер при успешном вводе кредов юзером? Ну то есть в саксес хандлере допустим взять и вставить новый хедер в реквест, чтобы потом сразу выдать юзеру страничку запрашиваемую.
Аноним 26/03/23 Вск 02:22:20 2653015 1009
Хочу из аннотейшн процессора на этапе компиляции вызвать рефлексию для обработки компайл-тайм аннотаций.
Там вроде отдельный рантайм поднимается.
javax.annotation.processing апишка очень многословная, неприятная и кривая, хуже рефлексии.
Попробовал рефлексией читать содержимое классов, параметры аннотаций, и сигнатуры методов. С рефлексией код попроще, но компилируется медленнее.
Еще почему то в AnnotationValue.getValue() параметр с типом String[] не кастится String[], идея в дебагере пишет, что там под капотом com.sun.tools.javac.util.List<String> вместо массива и пока не нашел как его скастить или сконвертировать.
Какие подводные вызывать рефлексию из аннотейшн процессора? Ну кроме скорости компиляции.
Аноним 26/03/23 Вск 04:35:09 2653039 1010
>>2651243
>НИКОГДА сука нельзя отвечать 200 и в теле писать текст ошибки.
Тыскозал?
Аноним 26/03/23 Вск 10:02:16 2653123 1011
>>2653039
Пчел, не позорься, не смешно. Ну а если ты не пытаешься в троллинг, то сразу становится видно, что нихуя кода ты в своей жизни не писал, потому что знал бы, что стандарты и best practices важная часть работы
Аноним 26/03/23 Вск 10:27:43 2653130 1012
соя.png 903Кб, 720x1079
720x1079
Аноним 26/03/23 Вск 11:55:47 2653195 1013
>>2653015
Как ты хочешь вызывать рефлексию для нескомпилированных классов?
Аноним 26/03/23 Вск 12:55:13 2653239 1014
>>2653123
restful это не стандарты и не best practices. Это натужный форс
Аноним 26/03/23 Вск 12:56:53 2653241 1015
>>2653239
натужный форс это твоя жизнь
Аноним 26/03/23 Вск 13:14:35 2653257 1016
>>2653239
Это де-факт индустриальный стандарт. От того что лично тебе это не нравится ситуация не изменится. Очевидно ты неадекватно оцениваешь современное положение дел. Тут вижу два варианта, либо ты ебать шутник, либо ты нихуя не знаешь

Новички, которые будут это читать, не будьте как этот васян, работать с такими челиками это пиздец
Аноним 26/03/23 Вск 13:26:04 2653274 1017
>>2653257
чтобы быть стандартом оно должно иметь четкое описание и требования. Рестфул это просто набор слабо привязанных к реальности рекомендаций
Аноним 26/03/23 Вск 13:26:27 2653275 1018
>>2653274
рекомендаций, которые каждый понимает по-своему
Аноним 26/03/23 Вск 18:57:26 2653597 1019
Когда в последний раз вы сталкивались с ситуацией "глаза боятся — руки делают"?
Аноним 26/03/23 Вск 19:04:57 2653605 1020
>>2653597
Все 4 года, что работаю.
Аноним 26/03/23 Вск 19:05:02 2653606 1021
>>2653597
почти каждая таска
Аноним 26/03/23 Вск 19:22:24 2653646 1022
ПЕРЕКАТ >2651134
Аноним 10/05/23 Срд 23:01:13 2694558 1023
C# хуйня
Настройки X
Ответить в тред X
15000
Добавить файл/ctrl-v
Стикеры X
Избранное / Топ тредов