Двач.hk не отвечает.
Вы видите копию треда, сохраненную 22 июня 2021 года.

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

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
Java #102 thread /java/ 2013248 В конец треда | Веб
Прошлый >>1961875 (OP) (OP) (OP) (OP) (OP)

Q: ЧТО СКАЖЕТЕ ЗА ДЖАВАРАШ?
A: Худшая инвестиция в твоей жизни. Огромное количество говнокода, оторванные от жизни задачки, 1000 заданий по выводу в консоль какого-то говна.
Сейчас все советуют Hyperskill. Более продуманный план обучения. Но, как и любой %COURSENAME% не гарантирует тебе успешного вката. Выучиться можно и самостоятельно, не отдавая свои кровные васянам-наставникам.

Q: Посоны, собираюсь учить джаву по 2/5/20 часов в день. За сколько дней я выучу достаточно, чтобы зарабатывать фрилансом?
A: На джаве фриланса нет. Хочешь фрилансить — дуй в ПХП/раби/1С тред. Но в последнее время увеличивается количество вакансий на удаленке в связи с ковидом. Но, возможно, как вся эта мракобесия закончится, всех обратно загонят в стойло.

Q: Значит, я должен буду всю жизнь сидеть в опенспейсе, конвертируя XML в эксепшны? Ура, мне подходит! С чего начать?
A: Книги: https://libgen.is

Q: Хули все книги на английском?
A: Без английского ты не нужен и можешь смело идти нахуй. Ну или в 1С-тред.

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

Q: Пока читаю, все понимаю, а сам ничего сделать не могу. Что делать?
A: Практика, больше практики. Уровня laba1.pas: http://codingbat.com/java http://codehunt.com https://hyperskill.org все говно, есть литкод Примеры той-проектов: http://eax.me/programming-language-learning/

Q: Я выучил кор, достаточно ли этого, чтоб взяли на работу?
A: Лол, конечно нет. Вот майндмап с джава-технологиями: https://coggle.it/diagram/WqgTTNMJtPiHph_q/t/java-development-in-2018

Q: Слышал, SQL знать надо обязательно. Где его учить?
A: Начни с малого: http://www.w3schools.com/sql/default.asp Затем переходи к: http://www.sql-ex.ru/

Q: Всё это хорошо, но без алгоритмов меня на работу не возьмут.
A: Не все конторы дрочат на подход Яндекса который спиздил подход гугла. Но для крупных фирм знать алгоритмы маст хев уже на уровне джуна/трейни, вот курсы от Принстонского университета: https://www.coursera.org/course/algs4partI То же самое но в бумаге: Роберт Седжвик, Кевин Уэйн - Алгоритмы на Java

Q: Я готов к первому собеседованию.
A: Проверь свои знания здесь: http://www.quizful.net/test И здесь: http://www.careercup.com/

Q: Вопросы на собеседование.
A: http://jsehelper.blogspot.ru/2016/01/blog-post_59.html : куча вопросов с ответамине всегда правильными http://becomejavasenior.com/blog/2015/07/01/327-interview-questions-java-developer/

Перед тем, как задать вопрос Как вайти в айти?, ознакомься с вики:
https://github.com/qqqlll/Java-Thread/wiki
https://github.com/random76/Java-Thread/wiki
2 2013253
Нахуя перекатил-то? Нормально же сидели...
3 2013262
>>13248 (OP)
Настоящий предыдущий тред: >>1980802 (OP)
4 2013263
ШАПКА НЕ НУЖНА
image.png283 Кб, 600x500
5 2013270
>>13248 (OP)
Ни аниме, ни книг с упражнениями, ни матерей. Как обычно.
6 2013276
>>13270
Зато в шапке смехуечки и q&a с ответами от болящего школьника.
7 2013535
топовейший язык и платформа, не то что всякое goвно
8 2013610
В какой книге лучше всего написано про ооп?
Нихуя не могу понять когда использовать абстрактные классы, а когда интерфейсы
9 2013637
Java for Dummies -> Head First Java -> Java Beginner's Guide -> Effective Java -> Core Java -> Java Complete Reference -> Thinking in Java -> Java Методы программирования.
Перечислил мейнстримные книги по кору в порядке возрастания сложности, ничего не забыл? У Блинова отвратительный академический стиль изложения, так что сунул его в самый конец.
BNNEZ-5jU7M.jpg64 Кб, 307x394
10 2013683
11 2013690
>>13610
Если можешь обойтись без абстрактных классов - обходись без них.
12 2013698
>>13637
Effective Java тут явно лишняя. Это книга ближе к паттернам, хоть и применительно к жабке.
13 2013719
Вы забыли "Жаба позорная".
14 2013841
>>13248 (OP)

>Прошлый >>1961875 (OP) (OP) (OP) (OP) (OP) (OP)


Оп-оп-оп-оп и ты пидор!
0dbd40f0f13a6958e6fb8fdbf9bcfb21fa56cfbe00.gif99 Кб, 320x277
15 2013875
>>13637

>У Блинова отвратительный академический стиль изложения, так что сунул его в самый конец.


А я Блинова читаю и мне норм лол...
16 2013888
>>13875
Опять ссаное аниме в треде
17 2013889
>>13888
Так и должно быть.
18 2013890
>>13610
Абстрактный класс нужен, когда тебе нужно создать такой класс, который не сможет образовывать собственные объекты, но из которого могут появляться подклассы. Типа, абстрактный класс Животное по определению не может создавать объекты, ибо слишком размытое определение что есть "Животное" вообще. Но его подкласс "Котик" является более конкретным случаем Животного, и тут уже объекты логически обоснованы.
Интерфейс - это что-то типа контракта, который заключают классы, его реализующие. Класс, называемый клиентом, обязан реализовать все методы, которые есть в интерфейсе. Короче говоря, абстрактные классы нужны тогда, когда тебе нужен класс, из которого нельзя получить объекты, но который должен быть родительским для подклассов, а интерфейс это обязанность для классов реализовывать некий функционал, им присутствующий по дефолту.
737a7f00-ccb7-11e9-8665-cd8fb0842d18.png995 Кб, 1024x1024
19 2013893
>>13888
Аниме и джава - братья навек!
20 2013923
>>13719
я хотел написать, но тред к тому моменту уже засрали и я не стал.
21 2013930
>>13888
Откуда в джава ненависть к аниме? Это как то связано с красноглазами или байтоебами?
22 2013964
>>13930
Анимехейтеры это ньюфаги-школота, не обращай внимания
hw.png43 Кб, 767x475
23 2014008
В ЧЕМ ЛИЧНО Я НЕ ПРАВ?
24 2014183
Жаба позорная
25 2014304
>>14008
ты до джавы на перле писал?
26 2014314
>>14304
А что?
27 2014474
>>13890
Окей, а тогда нахуя мне иметь возможность создавать абстрактные методы в абстрактном классе? Тогда интерфейсы можно вообще не заводить, а для класса Животное просто создать абстрактный метод, который будет заставлять его потомков издавать звуки или ходить, например. Та же самая обязанность выполнять какой-то функционал, присутствующий у животных по дефолту
28 2014505
>>14314
Нахуй слез? Продолжал бы в маил.сру сидеть.
29 2014548
Скажите это картинка из вашего треда?
31 2014600
>>14474
Рыбы тоже относятся к животным, но не ходят, а плавают. А абстрактный метод всё-равно должен быть реализован, будешь писать заглушку-костыль? И хождение, и плавание, и полет это поведение и должно быть в интерфейсе.
32 2014611
>>14600
Если писать в соответствии с биологией, то в человеке должен быть переопределенный метод дышатьЖабрами() и тысячи строк мертвого кода, в том числе реализующий движения хвостом.
33 2014617
Я не знаю какой язык выбрать. Знаю вёрстку, но во фронтенд идти не хочу, в бэк через пхп тоже не особо хочу, т.к. боюсь его выбирать в качестве первого языка.
Думаю, начать с джавы. Именно для того, чтобы изучать программирование с помощью этого языка. Дальше пойти в котлин или куда-нибудь ещё, или на джаве остаться, хз.

Что думаете? Джаву потяну?

25 лет, вышка айтишная, но в вузе я проёбывался. На джаве когда-то списывал змейку и защищал курсач по этой игруле. Не аутист, адекватен, с математикой всё максимально плохо. Последнее, что помню - квадратные уравнения и биквадратные. Всё.
34 2014636
>>14617
иди в ньюфаг тред, мы тут серьезные вопросы решаем. >>1008826 (OP)
35 2014800
>>14636

>серьезные вопросы


>Опять ссаное аниме в треде


Классика, сидит сурьезный двачер и решает тут серьезные вопросы))
36 2014836
>>13610
Если у классов-потомков нет какой-то общей логики, которую можно вынести в protected-методы или поля общего родителя, то используется только интерфейс. Если такая логика есть, то используется и интерфейс, и абстрактный класс.
37 2014920
>>14617
А разве, чтобы написать змейку на свинге не нужно ебаться с многопоточкой и прочее говно?
38 2014921
>>14474

>Окей, а тогда нахуя мне иметь возможность создавать абстрактные методы в абстрактном классе? Тогда интерфейсы можно вообще не заводить


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

>>14611
Это нарушает I из SOLID, но в человеке много легаси, и его сложно переписать на новые технологии.
39 2015029
>>14920
Я что, ебу что ли. Было три класса: один за тело змейки отвечал, второй за яблоко и рандомное появление на поле и третий класс отвечал за само поле. Зачем ты всё усложняешь? Я отдалённо слышал что-то про многопоточность и, честно, не понимаю, почему ты такой долбоёб
40 2015031
>>15029
А отрисовывалась она в консольке что-ли? А события стрелочек управления, как отрабатывала?
41 2015052
>>14800
Аниме куда сурьезней очерднего вкатуна неспособного написать laba1 самостоятельно.
42 2015055
Всем привет, я работаю 2 года фронтендером, до этого 2 года был верстальщиком. По уровню нахожусь между джуном и мидлом, к концу года думаю смогу быть мидлом. Работаю над крупным проектом в большой компании. В стеке использую react + mobx + typescript. В данный момент мне наскучил фронтенд, задачи по большей степени кажутся однообразными, даже если смотреть на работу сеньеров. Только у архитекторов, что-то интересное. Хочу вкатится в java, пока еще не решил бэкенд или андроид. Скорее первое. Но страшно начать, все таки я много времени потратил на фронтенд, уже есть определенные успехи в плане карьеры, хорошо платят. Не хочется начинать все с нуля. Стоит ли менять направление? Немного про себя: 28 лет, пришел в IT после работы на заводе слесарем.
43 2015057
>>15031
Не знаю, я тогда не до конца понимал что и как работает. Делал вот по этому принципу (списывал)
45 2015059
>>15055
забыл добавить, жены, детей и ипотеки нет. Живу в мухосранске с населением 600к человек.
46 2015061
>>15052
А нахуя мне писать laba1, говна ты кусок?
47 2015076
>>15059
Мне кажется ты больше пригодишься стране, как слесарь на заводе.
48 2015077
>>15031
На свинге, он же написал, там все довольно просто. Кейлисенеры отбрабатывают клавиатуру/мышь.
49 2015089
>>15061

>>А нахуя мне писать laba1


>>На джаве когда-то списывал змейку


Это и называется laba1.
Вместо того чтоб задавать тупые вопросы ты мог просто погуглить отличия языков и области их применения и решить что тебе ближе, но вместо этого ты пришел сраться в тред. С таким подходом тебе нечего делать в айти. 1С - твой предел.
sage 50 2015448
>>15089
Ты мне это в лицо сказать сможешь, чмоня? Ты где живёшь нахуй? Давай встретимся, я тебя блядь быстро на место поставлю и научу за своим базаром гнилым следить!
sage 51 2015452
>>15089
Пидарок бля!
52 2015542
Аноны, подскажите, как правильнее все организовать.
В общем, хочу попробовать сделать веб-приложение(впервые работаю со спрингом), которое будет по апи подтягивать базу данных, чтоб после этого я мог с ней работать и выводить определенную инфу пользователю. Подскажите, чего посмотреть/почитать, чтоб разобраться, как заставить сработаться апи и спринг, что куда правильнее импортировать и как, в общем, это будет работать(извиняюсь за смутные объяснения, не сильно пока вкуриваю, до этого только с алгоритмами/массивами/регулярками работа). С меня как обычно нихуя
1458237495178088052.jpg50 Кб, 600x600
53 2015585
image.jpg201 Кб, 1048x1206
54 2015710
55 2015778
У вас такая душная шапка...
Даже про Minecraft ни одного словечка.
56 2015921
>>15778
Каждый школьник перекатчик придумывает и высирает свою якобы смешную и полезную шапку

Каждый тред новая шапка
57 2016172
>>15542
Какой api? Ну, в смысле, http вэбсервис дергать надо, или имеется ввиду jdbc api? Api - слишком общее понятие, надо конкретнее
58 2016299
>>15542
гугли spring boot crud

>>как заставить сработаться апи и спринг


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

>>что куда правильнее импортировать


Зависимости - стартеры бута - веб, дата. Аннотации - по гайдам смотри.

>>до этого только с алгоритмами/массивами/регулярками работа


ты же понимаешь что такое слои приложения, дао/репозиторий, мвс, внедрение зависимостей? Будет трудно сразу разобраться в спринге не понимая этих базовых вещей.
59 2016745
Есть дельные курсы по спрингу, чтобы максимально кратко и информативно? За 16-20 часов нужно изучить самые основы, чтобы на собесе на мидла пригласили на мидла, а с чистым спрингом ни разу не работал, лол просто хотя бы пройти. Ну или спринг Бут, че там популярно
60 2016807
стоит ли вкатываться сейчас в java? или лучше выбрать C#?
61 2016821
>>16807
Иди в МВП тред спроси, там тебе все детально распишут.
62 2016856
>>16807
В чём смысл таких вопросов? Очевидно, что в этом треде сидят те, кто считает, что лучше вкатываться в джаву, чем в шарп. В шарпотреде наоборот.
63 2016858
>>16807
Литералли одинаковые языки с одинаковым синтаксисом
Чем шарп лучше жабы.png248 Кб, 1850x777
64 2016877
>>16807
>>16856
Из шарпотреда.
65 2016878
>>16745

>максимально кратко и информативно


Видео Letscode на ютубе, например. Но там просто ктрл с - ктрл в. Ну и баелдунг, гайды на сайте спринга.
66 2016883
>>16877
Первый пункт абсолютно верный. То же самое относиться и к Котлину и к Грейдлу. Когда у тебя большая команда, надо строго следить, чтобы народ писал единообразно иначе код потом не прочтешь.

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

А в Грейдле у тебя один встроенный способ сделать что-то, но только в версия с 3.4.1 по 5.7.6. Два плагина для того же самого. И КУЧА возможностей накостылить решение кодом прям по месту. Кто что на СО нашел, то и зафигачил в билд.
67 2016887
>>16877
Как быть начинающим? У C# Junior вакансий больше, у Java - только с мидла начинаются, редко встретишь Java junior вакансии(hh.ru)
sage 68 2016895
>>16887
Джуны не нужны никому, без опыта даже не лезь)
69 2016898
>>16895
А где опыт взять?
sage 70 2016900
>>16898
Это уже твои проблемы мань)
71 2016911
>>16887
У Java Junior вакансий больше, у C# - только с мидла начинаются, редко встретишь Java junior вакансии(hh.ru)
72 2016928
>>16895
Попустись, чмоня, сам с джуна ведь начинал.
73 2017005
Как хорошо когда дядя тимлид, берешь и без задней мысли с минимальными знаниям sql и джава кора устраиваешься джуном на 50к.
74 2017012
>>17005
Я бы скорее в 1С или JS вкатился, чем через кумовство в джаву.
75 2017013
>>17012
Да почему, мне то интересно, и я хочу развиваться в этос направлении, только вот сколько мне бы пришлось искать работу и набираться каких-то эфемерный знаний и опыты без реального проекта.
76 2017058
Допустим есть контроллер, который получает запрос, посылает три запроса на три других сервиса, и если нет ошибок, то возвращает объект, используя полученную информацию. Поскольку запросы могут обрабатываться долго, нужно посылать все три запроса сразу, чтобы они обрабатывались параллельно. Знаю про WebFlux, а к обычному нереактивному Web это можно как-нибудь прикрутить?
77 2017167
>>17005
Ах ты блять продвигатель кумовства и коррупции

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

Лицемерный зумерок
78 2017369
Существовало ли в java понятие функционального интерфейса до появления лямбда-выражений?
79 2017377
>>17369
ФИ это просто интерфейс с одним методом, и они конечно были и до лямбд. Но название ФИ им дали когда появились лямбды.
80 2017398
>>17167
Термин "коррупция" может быть применим только к государственным действиям, потому что только государство распоряжается отнятыми у граждан деньгами и может эти деньги пустить не по обещанному при отъеме назначению. Если кто-то хочет в свою команду устроить племянника без знаний, то это его проблемы и он в случае чего сам понесет убытки.
мимо
GustaveDoré-Inferno22(fragment).png185 Кб, 540x374
81 2017427
>>17398
Коррупция (от лат. corrumpere «растлевать», лат. corruptio «подкуп, продажность; порча, разложение; растление») — термин, обозначающий обычно использование должностным лицом своих властных полномочий и доверенных ему прав, а также связанных с этим официальным статусом авторитета, возможностей, связей в целях личной выгоды, противоречащее законодательству и моральным установкам.

Нельзя быть коррумпированным на полшишечки.
82 2017433
Накидайте роадмап для джуна который хочет в бэкэнд какого нибудь банка (да я долбаеб)
Навернул Хорстманна
Очевидные Hibernate/Spring/Doker
Что то проебал?
83 2017438
Ребят, где я хуй?
Осваиваю ВЕСНУ, хочу чтобы значения брались из .properties-ов, в методе где должен гетать УРЛ возвращает нуллпоинтер - не берет значение из проперти.
(Если вручную присвоить логин/пароль/урл - то все работает как надо, но я хочу с ебучими пропертями разобраться, я их уже как только не прописывал, и через "value=", и полный путь указывал).
image.png35 Кб, 615x320
84 2017442
>>17438
Настолько хуй, что первый пик потерял
85 2017519
>>17438
Во первых автовайри сразу URI, спринг сам сконвертирует значение проперти.
Во вторых судя по скрипнам у тебя весна не бутовая, значит скорее всего забыл какой-то бин типа PropertiesResolverAwtowiringBeanFactoryPostProcessor создать.
86 2017521
>>17519
Хотя нет, всего лишь PropertySourcesPlaceholderConfigurer. Причем он должен быть статическим.
87 2017542
>>16878
Информативно конечно, но мне кажется как то не структурированно. Хотя спасибо
88 2017548
>>14008
А пробел где?
89 2017560
>>17519
Тыща благодарностей!
90 2017588
>>17438
Дороу, что за ВЕСНА, курсы какие то что ли ? Я вкатыш просто, хз что учить
91 2017591
92 2017610
Посматривая на другие языки(js в основном, еще немного питона и шарпов) - я понял насколько же консервативность джавы охуенна.
Там постоянно вводят фичи и сахар, причем дай бог четверть оказывается полезными.
Заебался уже в js - и это у нас есть и это и это. Но половина из этого устарело, а еще четверть нахуй не нужно и дублирует функционал.
93 2017617
>>17610
База.
94 2017620
>>17617
Хуяза.
95 2017626
>>17620
Ладно.
96 2017650
>>17626
Хуядно.
97 2017671
Так ли сильно важно использовать аннотации и можно ли полностью обойтись без них?

Даже если мы берем самую простую и известную Оверрайд, то ее можно не писать и все будет работать
98 2017674
>>17671
Можешь на XML программировать
99 2017689
>>17610

>>вводят фичи и сахар


В джаве можно просто подключить очередной фреймворк/либу и написать @Sahar и @YobaFeature(name="ne_govno").
100 2017695
>>17671
Аннотации - это не просто необязательные метаданные, во многих либах/фреймворках кастомные аннотации меняют поведение того, на что ты их вешаешь. Они могут генерировать интерсепторы, либы могут в рантайме искать классы/поля/методы с определёнными аннотациями и что-нибудь с ними делать через рефлексию. До пятой джавы аннотаций не было, из-за этого для многих либ приходилось писать текстовые конфиги (xml, ini, properties и прочее). Но сейчас удобнее почти всё делать аннотациями, и не стоит акцентировать на этом внимание.
101 2017707
>>17689
Лучше, когда эти фичи есть их коробки, ибо только в таком случае можно ждать от разрабов IDE поддержку этого говна. А так приходится для всяких ебаных ломбоков обмазываться сторонними плагинами разной степени хуёвости, и это даже хуже препроцессора c/c++, он хотя бы стандартный, и с ним умеют работать IDE.
102 2017778
>>17689
С другой стороны решил немного поучить js после того, как запутался в аннотациях springmvc. Может потому что я почти не знаю http.
103 2017815
>>17778
Тебе http протокол, а не js изучать надо
104 2017931
>>17815
Да, наверно http нужнее, зря я так рано в js полез. Но я что-то психанул. Надо уж теперь закончить и хотя-бы кор js-а добить, раз уж начал. Многие говорят, что потом пригодится.
https://developer.mozilla.org/ru/docs/Web/HTTP
вот этот на 2/3 переведенный мануал будет норм для обучения?
105 2017935
>>17778
>>17931
Зачем тебе "учить" HTTP? Ты что, собрался свой HTTP-сервер на сокетах писать? Других причин быть не может.
106 2017955
>>17935
Ну я смотрю мануал по спрингу, а там про куки, сессии, cors авторизацию и некоторые другие вещи и я очень смутно представляю что все это такое.
Не знаю почему у меня именно с mvc непонимания. DI и data более-менее понятны.
А как до реста дошел мне захотелось js изучить. Не долбиться же с json-ками через постман.
107 2018216
>>17433

> Что то проебал?


'c' в Docker
108 2018221
>>17955

> Не долбиться же с json-ками через постман.


А тесты тебе на что?
109 2018227
>>17433

>Очевидные Hibernate/Spring/Doker


>Docker


Вот и выросло поколение, 5 лет назад про эти докерны никто и не слышал
110 2018238
>>18221
Я хотел бы учиться через написание реального приложения. А потом уже и тесты и все что угодно. Но пока я вообще не понимаю фронт и не до конца понимаю хттп.
111 2018239
>>18238

>Я хотел бы учиться через написание реального приложения. А потом уже и тесты


Ну и дурачок.
112 2018251
>>17955
Гугли непонятные понятия, читай статьи (даже на википедии), экспериментируй, этого хватит до конца жизни.
Потыкай JS с реактом, но сильно можешь не углубляться. Алсо, в этом треде один шизик продвигает Vue, его не слушай.
Толстяка с тестами шли нахуй, до них всегда добраться успеешь.
113 2018543
>>18238
Так тесты- это часть реального приложения
114 2018601
Пацаны, а по хорошему методы equals, hashCode и toString надо во всех дочерних класса одного класса переопределять? По книге Хортсманна нихуя не понял чет
115 2018678
>>18601
Если в дочерних классах появляются новые поля которые влияют на равенство объектов - то да надо.
toString() - ты делаешь для себя, чтобы при отладке и в логах можно было посмотреть состояние объекта.
116 2018694
ебать по всему интернету искал норм FAQ. Не думал что на дваче встречу
117 2018893
Тут хотел сделать задание интересное. Типа надо класс одномерный массив сделать, используя также класс элемент, и различные действия с ним выполнять. Хорошо, меня это заинтересовало. Я начал делать класс элемент обобщенным, ведь не знаешь какие именно элементы будут в массиве, захочется например шлюх с порнохаба коллекционировать в массиве, а он тебе только числа позволяет добавлять. Затем делаю в классе Одномерного массива одномерный массив с обобщенным элементами.
Так вот, меня интересует, этот класс Одномерный массив тоже надо делать обобщенным? Ведь иначе получается сырой тип массива и перед компиляцией он уже Object.
И ещё вопрос, ведь при компиляции он все равно Object становится, но у меня в этом же классе есть методы сложения и вычитание например. Не буду же я шлюх складывать(потому что это можно узнать с помощью имя_массива.length или имя_списка.size()). Как можно проверить например, что этот обощенный тип принадлежит к классу Number? Или тут делать только обобщенный метод, где как параметр может приниматься массив T extends Number?
118 2018910
Выход 17 lts заставит конторы слезть с хотя бы 8? Или мы с ней ещё надолго?
119 2018957
>>18910
Там хоть один из 4 глобальных проектов введут на уровне полной поддержки?
120 2018972
Посмотрел https://www.youtube.com/watch?v=Y4UO8vqbLlE и обосрался. Вкатун-терапевт говорит, что полгода плотно изучает язык, и потом 40 минут без остановки отвечает на любые хитровыебанные вопросы по core-hibernate-spring-sql-maven и проч.
Медики действительно такие вундеркинды? Надо скрывать от них существование ойти.
121 2018974
>>18910
Надолго. Вот когда перестанут обновлять 8, все основные либы и софт откажутся на ней работать, и потом в ней найдут критические проблемы, которые оракл откажется фиксить, тогда может и перейдут на 11.
122 2018975
>>18972
Они не вундеркинды, просто привыкли ебашить как не в себя и ответственно относиться к своей работе. Если б ты программы писал как человека лечишь, ты думаешь ты был бы хуже?
123 2019060
>>18972
>>18975
2/3 комментов про то, что он пиздит.
124 2019141
>>18975
Если бы я был рыбой, я был бы хуёвой рыбой. Плавал бы как попало, всё время бы, блядь, тонул.
125 2019433
>>16299
со слоями и репозиториями все понятно, за подсказки спасибо
126 2019463
>>18893
ты хочешь сделать свой собственный лист?
127 2019466
>>18910
перейдут на 11, если спринг сделает жава11 минимальной необходимой версией
128 2019470
>>19466
Выпилят спринг, лишь бы сидеть на любимой восьмёрке.
129 2019481
>>18974
Уже сейчас не фиксает, но есть куча контор которые предоставляют OpenJDK 8 LTS.
130 2019491
>>18972
Он по верхам нахватался, но знает слабо. По ответам же видно, что он плавает и собеседующий его вытягивает на ответы. На интерна может и пойдет но он не студент профильного вуза, на джуна его не возьмут. Ему еще полгода-год учить жаву.
an-2.jpg124 Кб, 780x529
131 2019500
>>19141

>>я был бы хуёвой рыбой. Плавал бы как попало, всё время бы, блядь, тонул.

132 2019526
>>19141
Я был бы хуёвой рыбой
Плавал бы как попало
Всё время бы, блядь, тонул.
Врезался б в подводные глыбы
Икры бы метал я мало
И плакал, ползя по дну
133 2019772
>>19463
Да, скорее всего так точнее. Вроде и обычный список, но с помощью методов он будет модифицирован под мои хотелки соответственно. (как я описал, что складывать и вычитать может только элементы типа Number, а иначе посылать; также иметь ограниченный размер как у массива - ведь список автоматически увеличивает размер)
134 2019942
>>19491
Ещё он может, как анон из предыдущего треда, поискать платную стажировку за 150к. Может и возьмут.
135 2019982
>>18893
>>19772
Похоже, ты хочешь сделать какой-то всратый костыль, которого не должно существовать в природе.
136 2020235
>>18910
Вон Котлин 1.5 уже перевели! с 6 на 8 блядь
137 2020314
>>18972
"Java core начинал с Якова Файна, затем Headfirst, затем Шилдт 10 издание. SQL тоже Headfirst очень неплохой, по Hibernate отличная книга Java persistence API with Hibernate. Spring учил по Spring in Action, Pro spring 5. Вот в таком порядке примерно все и изучал и, параллельно, различные посты по каким-то темам"
Это типа реально за полгода после работы все прочитать?
138 2020375
Чем вам всем так не нравится восьмая джава? Чего вам не хватает? Не ради траленга интересуюсь, а ради общего развития
139 2020377
>>20375
Энтерпрайз, плез.
140 2020379
>>20377
Какие есть нужные фичи в 16, которых нет в 8?
141 2020394
Почему вы не съебываете за бугор? Там же в разы легче найти работу.
16197699793130.jpg64 Кб, 307x394
142 2020396
>>20314

>начинал с Якова Файна


Я думал, это мем такой, а это реальность. Кузница гениев. Первый кирпичик в здании сеньора-помидора.
Я сам ещё не вкатился, но мне кажется, что все эти книги прочитать за полгода реально только если ты уже программист и перекатываешься с другого языка.
Потому, что если ты совсем без бекграунда, то сначала нужно будет выделять в голове место под самые абстрактные и базовые конструкции, типа что вообще такое программирование, зачем этим занимаются, где востребовано, как выглядит, зачем это лично тебе, как выделить этому время и проч.
Ну или действительно перед нами гений. Тогда надо от имени двача заслать к нему гей-подселенца, чтобы в будущем иметь рычаги влияния на русского Илона Маска.
143 2020399
>>20394
За бугор съебать сложнее, чем найти работу здесь.
144 2020423
>>20394
В Японию хочеца...
145 2020424
>>20377
Отвечай на вопрос, сука! Или ты пиздабол
146 2020430
>>20424
Пиздабол в чём, что мне джава 8 не нравится, а на самом деле нет?
147 2020443
>>20430
Так напиши, чем конкретно. За мат извени
148 2020470
>>20396
Ну он выше написал, что он сперва cs50 навернул, но это наверно не включено в полгода.
149 2020497
>>20394
Джунов и уж тем более вкатунов никто не перекатывает.
150 2020507
Подскажите проекты на жаве на гитхабе с чем-то подобным
https://www.youtube.com/watch?v=bE0WD-KYuks
151 2020523
>>20507
Ну и хуйня.
152 2020762
>>20375
Всем нравится. Просто в более поздних версиях жавы завезли сахарочек. Более удобная работа с опшионал, set.of, list.of, в 15 текстовые блоки
153 2020795
можно ли сделать на джаве сервак для обработки запросов без фреймворка,как на пхп?
154 2020802
>>20795
То, что в пхп, нельзя назвать "без фреймворков", скорее там и так фреймворк из коробки. В джаве ничего подобного нет, можно только написать свой фреймворк на сокетах. Ну и к пхп ближе всего JSP, которого в Java SE нет.
155 2020804
>>20802
короче придется ковырять монстра по имени спринг?
156 2020805
>>20804
Да, только это не такой уж и монстр. Spring Boot не сложнее фреймворков для пхп.
157 2020902
>>20804
сервлеты
158 2020907
>>20902
Хуйлеты.
159 2020971
Топ 1 книга для вкатуна ? можно на ангельском.
160 2020972
>>20971
451 градус по фаренгейту
161 2020984
>>20971
Хорстманн
162 2020987
163 2021121
>>20795
>>20804
Спринг бут как раз и нужен чтоб создавать сервак для обработки запросов одной строкой, а не писать его самому на чистой джаве.
164 2021550
Вообще кто нибудь видел проэкт с нуля на джаве?
165 2021574
>>21550
Да, и хуле?
166 2021580
>>21574
И какое направление?
Опять тырпрайз?
167 2021622
>>21580
Много разных проектов, как тырпрайз так и нет, но в основном тырпрайз.
168 2021796
>>21550
Новые микросервисы регулярно пилим и иногда дербаним на части легаси монолит.
169 2021835
>>20507
Всякую симуляцию физики в основном пишут на плюсах. На джаве как правило обычное перекладывание джейсонов на спринге
170 2021875
>>21796
Это не с 0 проэкт
171 2021924
>>21875

> проэкт


http://gramota.ru/slovari/dic/?word=проект&all=x

А что такое проект с нуля? Новая система, новая кодовая база, что тебе еще надо? Новый бизнес?
172 2022101
Гуру джавы, подскажите, пожалуйста. Вот есть методы с объектами разных классов, но вокруг них обертка одна. Уровня открыть соединение, что-то сделать, и закрыть. В метод с дженериком не получается собрать, потому что нужно по ходу дела доставать сам класс, какие еще есть варианты?
173 2022112
>>22101
Передавать еще Supplier или Function.
174 2022158
>>22101
Добавить параметр Class<T> clazz
175 2022623
Открыл учебник по жаве, на каждый пук написан класс с методом. Как вы их запоминаете оопдебилы ?
176 2022710
>>22623
Открыл Мой компьютер, на каждый пук создана папка с файлом. Как вы их запоминаете пк-дебилы?
177 2022739
Есть ли хоть одна действительно веская причина, по которой в язык надо было добавлять Wildcard? Вместо вопросительного знака везде можно поставить любую свободную букву, и смысл будет тот же, работать будет так же. Только иной раз придётся перед названием метода дописывать дженерик, тоже непонятно зачем. Нахуя это всё?
178 2022747
Fa
179 2022850
>>13248 (OP)
Планирую запускать selenium-скрипт у себя на серваке - он должен будет периодически проверять доступность моего сайта и отсылать диагностическую информацию в лог. Подобное вообще может работать на удаленном серве? Ведь там браузер нужен
180 2022855
>>22739
upd
Учебные материалы, когда доходят до wildcard, все как один включают режим дебилов и забывают про типизированные переменные напрочь, хотя это предыдущий параграф/страница. Пример - тутор от оракла: https://docs.oracle.com/javase/tutorial/extra/generics/wildcards.html
"So what is the supertype of all kinds of collections? It's written Collection<?> (pronounced "collection of unknown"), that is, a collection whose element type matches anything. It's called a wildcard type for obvious reasons. We can write:
void printCollection(Collection<?> c) { ... } and now, we can call it with any type of collection."
Возьми да напиши Collection<T>, тоже будет collection of unknown, тоже будешь call it with any type of collection. Кого ебёт, что к этой Т ты больше не будешь обращаться?
Окей, чтобы скомилировалось и работало, дженерик ВНЕЗАПНО придётся дописывать перед войдом.
181 2022856
>>22850
Надо запускать его в headles mode https://stackoverflow.com/questions/46920243/how-to-configure-chromedriver-to-initiate-chrome-browser-in-headless-mode-throug

но вообще для мониторинга сайтов есть другие инструменты
182 2022885
>>22856
Какие другие?
Мне надо проверять работу пары виджетов, бывали случаи когда они отваливались либо работали неправильно, в основном из-за косяков при билде фронта
183 2022902
Объясните пожалуйста в кратце как это работает, нихуя не понимаю

strings.forEach(System.out::println);

Почему в println не передаются аргументы? Как он понимает что ем унужно именно значение элемента в списке strings вывести? А если туда другие объекты передавать?
184 2022955
>>22902
Передаются, просто ты используешь сокращённый синтаксис лямбда-выражений (method reference). В более развёрнутом виде твоя строка выглядит как:
strings.forEach((s) -> System.out.println(s));
что, по сути, тоже сокращение. Если ты ещё не проходил лямбда выражения, то не используй пока что эти штуки. Пиши через обычную петлю.
185 2023040
>>22885

>Какие другие?


Мы используем New Relic, но есть много других сервисов мониторинга прода. Они предпочтительней самописных потому что если сам сервис мониторинга ляжет, его быстро поднимут.

>Мне надо проверять работу пары виджетов, бывали случаи когда они отваливались либо работали неправильно, в основном из-за косяков при билде фронта


Ну такое и правда только самому проверять. New Relic это больше про общую работоспособность сайта.

В общем юзай headles mode. И сразу совет, если будешь делать рассылку алертов - обязательно делай скриншот страницы, это прям очень-очень помогает при определении проблемы.
186 2023261
Анончики, нужна помощь. Не бейте, я совсем нубас, не могу никак решить следующую задачу, она меня уже с ума сводит.
В общем, задача заключается она в написании простенького калькулятора (число-операция-число-результат). Программа должна работать бесконечно, если пользователь вводит корректные данные, но если пользователь вводит букву q то программа должна завершиться (именно завершиться, а не уведомить об ошибке). Вот что у меня пока есть:
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
do {
System.out.println("Введите число");
int a = sc.nextInt();
sc.nextLine();
System.out.println("Введите операцию");
String s = sc.nextLine();
System.out.println("Введите число");
int b = sc.nextInt();
if (s.equals("+")) {
int res = 0;
res = a + b;
System.out.println(res);
}
char c = s.charAt(0);
if (c == ('q'))
break;

} while(true);

Сейчас это работает если вместо математического знака ввести q. Но как мне сделать так, чтобы программа завершалась если пользователь введет q вместо ЧИСЛА?
Вот ссылка на этот же вопрос с тостера, если кому вдруг там удобнее будет посмотреть https://qna.habr.com/q/984843
187 2023394
Хочу запускать бенчмарки JMH поднимая контекст спринга только один раз, как это сделать?
188 2023476
>>23261
Всегда строку принимай, а не инт.
Проверяешь, равна ли она "q".
Приводишь строку к инту, если можно.
189 2023508
>>23394
Просто напиши цикл и currentTimeMillis() тебе и этого хватит, не нужен тебе JMH.
190 2023510
>>23508

>пук

191 2023569
>>23510
Чел, ты не понимаешь зачем нужен JMH и почему он работает так. Поэтому тебе и такое решение сойдёт, всё равно ничего хорошего ты не намеряешь.
192 2023579
>>23569

>пук

193 2023627
>>23569
а чем тебе не нравится идея проверять бенчмарками спринговое приложение?
194 2024006
>>23476
О, спасибо, сейчас попробую
195 2024110
>>23627
Потому что JMH это фреймворк для микро бенчмарков. Спринговый контекст это не микро бенчмарк. И дело не только во времени старта контекста, а еще в том, что спринг добавляет кучу прокси.
196 2024184
Fff
197 2024698
>>24110
Мне надо бенчмаркать пользовательские скрипты, которые загружаются через рест апи. И для этого должен быть отдельный контроллер.

>пук

199 2024788
>>24698
Еще раз:

>ты не понимаешь зачем нужен JMH и почему он работает так


JMH это бенчмарк для тестирования микро эффектов в сравнении. Типа что быстрее AtomicLong или LongAdder и на сколько.

Зачем бенчить пользовательский скрипт, который постоянно меняется - вообще непонятно. Хочешь побенчить свой скрипт - ну напиши тест в JMH но со статическим скриптом в ресурсах.
201 2024802
>>24788

>Зачем бенчить пользовательский скрипт


Чтобы выяснить, что быстрее работает: AtomicLong или LongAdder

>пук

202 2025016
>>24777
>>24800
Ну да, одно и тоже. Если вижу эклипс - сразу выключаю, понятно что либо нищий индус, либо говно мамонта.
203 2025055
Насколько много всякого говна сейчас нужно выучить чтобы вкатиться в жабакодинг?
204 2025085
>>25055
- Кор
- SQL
- Спринг
- Сервлеты, Хибернейт, ЖЮнит и прочее по мелочи
11.png45 Кб, 673x458
205 2025438
Как заменить данный IF/ELSE?

Число методов может начать расти, а идти по ним нужно в строгом порядке, пока не будет выдан нужный результат.
206 2025468
>>25438
Сделать список функторов или что там вместо них у вас в джаве и идти по нему в цикле пока не получишь нужный результат.
207 2025484
>>25438
Паттерн стратегия должен решить твой вопрос
208 2025517
>>25438
по порядку чекаешь, если эррор то выводишь и гоуту(алерт)
если нет, то отмечаешь. потом выполняешь по порядку.
209 2025568
>>13248 (OP)
Как вы считаете, сколько часов в день оптимально заниматься кодингом чтобы через год хотя бы начинать ходить по собесам? Мне интересно программирование, но из-за того, что сначала я прям накинулся на все это и сидел сутками, а также поставил себя во временные рамки (год, а лучше быстрее) ловлю дизмораль. Последнюю неделю не делал практически ничего, провел дни в приготовлении "вот щас посижу и начну, вот-вот", из-за этой прокрастинации и безделья чувствую себя паршиво в психологическом плане.
210 2025674
Нужно ли дрочить рефлексию? Хотсманн пишет что особо нет, но я хуй знает. На работе часто встречается?
211 2025677
>>25674
Очень редко.
212 2025808
>>25674

>Нужно ли дрочить


Да, каждый день.
image.png75 Кб, 697x716
213 2026232
214 2026237
>>17438
твой код вызвал у меня флэшбэки. Я лет 6 назад подобной хуйнёй занимался. В смысле, писал репортилки по джире для манагеров-идиотов.
Не задерживайся там дольше года. Поверь, над нормальным продуктом работать гораздо интереснее.
215 2026238
>>26232
У тебя не то, методы не ленивые. Тут нужна цепочка респонсибилити.
216 2026358
>>26238
да не, всё то. Присмотрись лучше.
Мы тут по стриму sullier-ов идём с фильтром, и отдаём результат вызова с первой непустой коллекцией. Т.е. если первый метод вернул не пустую коллекцию, то мы не станем вызывать второй и третий. Если первый вернёт пустую, а второй не пустую, то третий метод дёргать мы не будем.
217 2026395
>>26358
Нихуя себе.
218 2026626
Решил к вам вкатиться, а то хули бля все бабки гребут ща лопатой, один я как лох. До этого работал в яндекс доставке. Короче, как вы и советовали, прочитал 4 тома Кнута, потом Седжвика этого ебаного, выучил кор, спринг, скл, гибернейт, в общем, самые основы более-менее схватил. На всё про всё ушло месяца 2-3. Ща ещё линух освоить надо, вчера вот начал. Ну так вот, чё типа дальше делать?
image.png400 Кб, 480x360
219 2026629
>>26626

>прочитал 4 тома Кнута, потом Седжвика этого ебаного, выучил кор, спринг, скл, гибернейт, в общем, самые основы более-менее схватил. На всё про всё ушло месяца 2-3.

220 2026634
>>26629
Чё высрать-то хотел, картинкопидор?
221 2026664
>>26634
То что ты пиздишь. Нельзя прочитать 4 тома Кнута за 2-3 месяца.
222 2026668
>>26626
Если задачи решал и пет-проекты писал, можешь уже по ходить по собесам.
Ещё можно потыкать вёрстку/js и докер, лишним не будет.
223 2026679
>>26634
Я думал, что ты просто пиздабол, но ты ты превзошел мои ожидания ты еще и мудак, который не может понять тонкого и прозрачного намека.
224 2026723
>>26626
Если ты за три месяца до сих пор не вкатился и ещё не на стажировке хотя бы, то лучше забей на это дело. Видно же, что не твоё, так зачем мучиться. Есть и другие хорошие сферы для вката.
225 2026746
>>26723
Толсто.
226 2026858
>>26664
Конечно, нельзя, там же нет цветных картинок и тележек с нулями-единицами. Мань, если ты нишмог-ниасилил, то и говори в таком случае только за себя. Там ведь больше 4 томов, но я же не написал, что прочёл все (это было бы уже неправдой).
>>26668
Спасибо, попробую.
>>26679
найс бубарех)
227 2026885
>>26626

>прочитал 4 тома Кнута


>>26858

>Там ведь больше 4 томов, но я же не написал, что прочёл все (это было бы уже неправдой).


Эталонный, дистилированный мудак и пиздабол из палыты мер и весов!
Вначале пиздит что прочел 4 тома Кнута за 2 месяца, 2 тома в месяц что уже пиздеж стопроцентный. Но этого ему показалось мало и он решил пиздеть дальше, что там больше томов и прочел он не все. Кретин, ты бы хоть википедию открыл и посмотрел, сколько томов "Искусство программирования" написано. Хотя можешь спиздануть, что Кнут тебе лично выслал черовики еще не изданных томов, но пока руки не дошли прочесть.
228 2026886
>>26358
Тут разве не сначала дернутся всё методы, а уже потом произойдёт фильтрация? В Котлине, чтобы это предотвратить есть asSequence, в ванильных стримах не помню есть ли такое.
229 2026901
>>26886
Тебе сука вывод программы даже скинули, даун ты тупой.
230 2026915
>>26858
Мань, ты никого не наебёшь здесь, ты ничего не читал из Кнута, иначе бы уже работал где-нибудь системным прогером на крестах за ~100к.
231 2026948
>>26885

> Кретин, ты бы хоть википедию открыл и посмотрел, сколько томов "Искусство программирования" написано.


Хм, ну да, обсренькался. Почему-то казалось, что их больше будет, их по-дебильному выкладывают чё-то. Выходит, я всё прочитал у него. Кстати, скажите, Concrete Mathematics надо читать или не пригодится?
>>26915
Я его начал читать три месяца назад, дебс. Как бы я устроился куда-то за это время?
232 2026956
Если вам выделили угол - то сидите спокойно и не орите. Почему я должен слышать голос со стороны параши? Рты позакрывали. Ещё одна падла вылезет отсюда и протечёт в .NET тред - будут приняты меры. Свободны.
233 2026978
>>26956
Кыш-кыш, шарпоеб
image.png156 Кб, 400x378
234 2026984
>>26956

> Если вам выделили угол - то сидите спокойно и не орите. Почему я должен слышать голос со стороны параши? Рты позакрывали. Ещё одна падла вылезет отсюда и протечёт в .NET тред - будут приняты меры. Свободны.

235 2027138
>>26626
Пиздишь, видимо. Ну, или ты гений.
Если думаешь, что делать дальше - иди работать.
236 2027205
>>26948

>, я всё прочитал у него


>скажите, Concrete Mathematics надо читать или не пригодится?


Манька, ну зачем ты выросла таким пиздаболишкой? Если бы ты прочитал Кнута, все четыре, блядь, тома, у тебя бы не было вопроса, нужно ли читать Concrete Mathematics или нет.
image.png1,1 Мб, 1016x687
237 2027240
А теперь весь тред кормит залетного толстяка.
238 2027264
Анон, подскажи, какие туториалы по Спрингу есть и где их найти? Может, есть где спираченные лекции баелдунга?
239 2027268
подписался
1604670364916495.jpg424 Кб, 1080x1485
240 2027289
>>27240
Потому что нужно отвечать на основной вопрос, а не АРЯЯЯ КНУТА НИЗЯ ПРОЧИТАТЬ ЗА 3 МЕСЯЦА.
241 2027319
>>27289
Потому, что входные данные исключают возможность того, что человек на полном серьёзе спрашивает, что ему дальше делать.
242 2027351
Как лучше реализовать фильтрацию. Перед тем как отдать данные клиенту, нужно пропустить список через цепочку фильтров. Как это архитектурно правильно делать? Типо можно через стримы пропустить офк. Или строить цепочку в духе паттерна Цепочка обязанностей.
243 2027379
Почему интерфейс Iterable не считается функциональным интерфейсом? Ведь у него один абстрактный метод, как и положено.
244 2027402
>>27351

>Или строить цепочку в духе паттерна Цепочка обязанностей.


this
image.png196 Кб, 2774x661
245 2027404
>>27379

>Ведь у него один абстрактный метод, как и положено.


>считаю я плохо

246 2027409
>>27404
Там Iterable, а не Iterator.

> читаю я жопой

asd.jpg42 Кб, 640x390
247 2027418
>>27409
а ты не очень умный, да?
мимо-другой
248 2027419
>>27409

>не могу проверить простейшее утверждение



Iterable<String> stringIterable = () -> List.of("A", "B", "C").iterator();
249 2027422
>>27418
А ты не можешь отличить абстрактный метод от неабстрактного?
>>27419
Я-то могу, анон спрашивает, почему нет аннотации @FunctionalInterface.
250 2027448
>>27422

>Я-то могу, анон спрашивает, почему нет аннотации @FunctionalInterface.


Анон спрашивает

>Почему интерфейс Iterable не считается функциональным интерфейсом?


Iterable является функциональным интерфейсом, потому что у него один абстрактный метод. А @FunctionalInterface это просто свистоперделка, которая просто на этапе компиляции позволяет проверить, что у интерфейса один абстрактный метод. Что-то типа @Override - отсутствие ее не мешает оверайдить, но наличие дает дополнительные проверки.
251 2027477
>>17058
Executor
изображение.png10 Кб, 687x177
252 2027491
Зачем вот тут нужун буффер? Почему нельзя читать сразу из потока?
253 2027498
Сложно будет на жабе написать приложение, которое будет принимать http реквесты и делать с ними CRUD? Нужен ли для этого фреймворк, или на ванильном языке можно?
254 2027514
>>27491
Чтоб можно было читать построчно, а не посимвольно насколько я это помню
255 2027568
>>27498
Если использовать фреймворк например спринг, то можно прям по тьюториалу все намутить за день.
Если на ванильном, то конечно поебаться придется знатно.
256 2027576
>>27568
сервлеты это ванильно или фремймворк?
257 2027581
>>27576
В java se сервлетов нет, так что не ванильно, только сервлеты и фреймворком назвать нельзя.
Зато голые сокеты/треды 100% ванильны.
258 2027896
Ну вот я узнал что такое джава кор, куда дальше? В спринг? В мейвен? Куда вкатываться и как.
259 2027898
>>27896
в скалу
260 2027900
>>27898
На моноколесе с разгону
261 2027905
>>27900
пепе-жокир.жпг
262 2027907
>>27896
Сначала SQL. Далее потыкай JDBC для любой СУБД.
Дальше мавен, научись в нём подключать зависимости (неважно, какие. пусть хоть те же JDBC-драйвера вместо ручного указания жарника в classpath) и собирать jar with dependencies, всякие профили и модули можешь потом.
Ну и спринг, легче всего начать сразу с бута. Перед спрингом можешь опционально потыкать сервлеты по какой-нибудь мурзилке типа этой https://metanit.com/java/javaee/
263 2027916
>>19526
охуенно
264 2027968
Сап, ананасы. Есть одна вакансия с релокейтом в Эстонию, как я и мечтал. HR прислала стек – Java 11, Spring Boot, PostgreSQL, Docker, Kubernetes, AWS.

Собсна, прошу вашей помощи. Что почитать по многопоточке, учитывая, что за 3 года мне НИ РАЗУ блять не пришлось с нею работать, что выдрочить по кору, куда смотреть с докером и кубером (с последним так же ни разу не работал), какую еще хуйню меня могут спросить? Проект: создание системы автоматизации реферальных программ

Выручайте, очень хочу попасть в эту хуйню
265 2028150
>>27514
Построчно можно и через сканер читать, буферы нужны, чтобы двигаться вперёд назад
266 2028154
>>28150
Хотя пизжу, просто обёртка, чтобы самому не аккумулировать
267 2028177
>>27968
Начни с JSR133
268 2028207
>>13248 (OP)
Шилдта вкатывальщику стоит изучать?
Шилдт "Руководство для начинающих" и "Полное руководство"?
269 2028217
>>28207
Я не осилил, читал Хорстмана.
270 2028220
>>28217
Тот, что в двух томах?
Там же вроде не для вкатывальщиков а для тех, кто уже знает программирование.
271 2028229
>>28207
"Для начинающих" - стоит. Выглядит как сокращённая версия полного руководства. Сам по ней получил первое представление о коре.
>>28217
Хорстман же наоборот сложнее. Чем Beginners guide - так точно сложнее. Я бы не смог его читать как первую книгу.
272 2028244
>>28229
Моей первой книгой по жабе был хорстманн в 2012, тогда зашло отлично, лучше всех других последующих. А как сейчас хз.
мимопроходил
273 2028247
>>27968
Как нашел вакансию?
274 2028250
>>28247
Сами написали
275 2028252
>>25568
Лучше всего просто писать то, что тебе хочется писать, но на технологиях, которые нужны для собеседований. Мне кажется, это единственная возможность не выгореть еще до начала работы, лол. Браузерку какую-нибудь напиши.
276 2028254
>>27968

>Что почитать по многопоточке


Почитай Java Memory Model, что такое happens before какие гарантии есть, а каких нет, волатайл, синхронайзд и java.util.concurrent что там есть.
277 2028271
>>28254
Спасибо, анон, буду читать
278 2028284
>>28271
Только не читай сам JSR-133, ты просто утонешь и ничего не поймешь. Есть много объяснений на пальцах. У того же Шипилёва было много простых статей на тему https://shipilev.net/blog/archive/settable-future/
279 2028285
>>25568
Пока ты учишься, перед тобой стоят те же проблемы, которые у тебя будут и на работе. Выбери несколько дней недели, в течение которых ты по этой теме ничего не делаешь и даже не думаешь об айти. Если днём ты учишься, то вечером выключай компуктер и постарайся на что-нибудь максимально отвлечься, как можно сильнее погрузиться во что-то другое. Тогда на следующий день утром ты снова будешь свеж и восприимчив к обучению. Если же мысли про айти и вкат никогда не будут покидать твою голову, то они там протухнут, а энтузиазм, обучаемость и способность сохранять внимание - пропадут.
Ты спрашиваешь "Сколько часов в день оптимально заниматься" - я считаю, это количество часов зависит как раз от того, насколько хорошо ты потом переключаешься и отдыхаешь. Твоя задача в том, чтобы нащупать стабильную посильную нагрузку, а потом постепенно увеличивать это количество часов.
280 2028416
>>28229
Т.е. сначала можно прочитать
Шилдт "Руководство для начинающих" и "Полное руководство"
А потом переходить к Хорсттману?
281 2028534
>>13248 (OP)
Мне тут один пидор сказал что ява мертва и надо на спринге делать. Дать ему с вертухи?
282 2028543
>>28534
Спринг - это ФВ для Java, лол
283 2028548
>>28543
ФБ?
284 2028568
>>28548
фреймворк
285 2028573
>>28534
Тащемта, спринг - это не язык программирования, а операционная система.
https://en.wikipedia.org/wiki/Spring_(operating_system)
286 2028583
287 2028585
>>28583
Это Спринг Фреймворк, а не Спринг.
288 2028588
>>28585
Анальник
Initial release1993; 28 years ago
289 2028590
>>28588
Developer: Sun Microsystems
16202975412990.png317 Кб, 630x630
290 2028592
>>13248 (OP)
Вот думаю может мне болт положить на плюсы и перекатиться. Есть подозрения что моя шарага имеет неправильный подход к обучению. Первые пол-года обучали С потом С++. На втором курсе будут снова плюсы а потом Java. Слышал мнение что это не самый лучших подход. И понятно что не буду для десктопа писать. Не думаю что там вакансий много.
291 2028596
>>28592
Я так и сделал, хотя изначально планировал вкат в плюсы. Работу на плюсах найти сложно, да и вообще ощущение, будто на них пишут только сеньоры.
292 2028598
>>28590
дисконтиньюд
как и твой мозг
нахуя людей путаешь
293 2028601
>>28596
На нах пишут бэк. А в бэк вкат сразу не возможен.
294 2028610
>>13248 (OP)
Кто Защеканского читал? Впечатления? Он же стырил идею у Фоулера.
295 2028640
>>28416
Читай двухтомник Хорстманна, у Шилдта тоже самое только много воды.
296 2028650
>>28601

> в бэк вкат сразу не возможен


Чому?
297 2028685
>>28640
Открыл первый том, в предисловии же
"Как и все предыдущие издания этой книги, настоящее издание по-прежнему адресуется
серьезным программистам, которые хотели бы пользоваться Java ()ля разработки
настоящих проектов. Автор этой книги представляет себе вас, дорогой читатель, как
грамотного специалиста с солидным опытом программирования на других языках,
кроме Java"
298 2028687
Вообще стоит ли изучать книги по Java которые вышли до 2018 года?
299 2028725
>>28640
Daniel Liang
JOYCE FARRELL
Wu, C. Thomas
300 2028726
>>28207
Daniel Liang
JOYCE FARRELL
Wu, C. Thomas
301 2028729
>>28416

>А потом переходить к Хорсттману?


Нет, после Шилдта будет бессмысленно. Только "Полное руководство" не читай от корки до корки, он не задуман как самоучитель, это справочник, куда нужно смотреть когда появятся какие-то конкретные вопросы. Прочитай "Руководство для начинающих", этого хватит.
302 2028748
>>28685
Вот всегда пишут такую хуйню и все равно растягивают объяснение оператора while на целую главу.
303 2028762
>>28685
Хорстманн для новичков в программировании норм, но вплоть до определенного момента. На коллекциях будет уже не очень понятно, о чём идёт речь, если нет определенного бекграунда (алгоритмов и структур данных). Но это не какой-то продвинутый материал. Любая другая книга по Джаве для начинающих заменит двухтомник Хорстмана, хоть Блинов (но его я не советую читать).
304 2028765
Картинки на ОП пиках правда,что даже простая прога будет жрать ресурсы?
305 2028785
>>28765
Какой-нибудь консольный калькулятор отожрёт насколько мегабайт. Что-нибудь свинговое жрёт ещё больше. Спринг бут может несколько сотен метров занять. Жирный энтерпрайз проект больше гига займёт.
Это не значит, что они все реально столько потребляют, джава резервирует какое-то количество памяти, чтобы не просить у ОС каждый байт.
306 2028808
>>28765
Да. Поэтому джава мертва и не надо на ней писать или учить ее.
307 2028837
Парни подскажите пожалуйста. Есть лист с объектами разных классов, как с помощью стрима найти любой объект указанного класса?
308 2028838
>>28837
StreamEx.of(list).select(Element.class).toList();
309 2028927
>>28837
Optional<String> abc = List.of("abc", 1).stream().filter(String.class::isInstance).map(String.class::cast).findFirst();
310 2028930
>>28927
>>28838
Смотрите на ванильные стримы, насмехайтесь над ними.
311 2028945
>>28930
Вычищатель, спок.
312 2028952
Тут всё еще спрашивают про актуальность java?
Есть смысл изучать и с головой погружаться во всю экосистему и инфраструктуру java вместе с ЕЕ, МЕ, Котлинами, Андройдами и спрингами, облаками? Или есть более перспективные альтернативы?
313 2028954
>>28952

> Тут всё еще спрашивают про актуальность java?


Открой hh.ru, введи в поиске "java" и другие языки, посуди об актуальности по количеству вакансий сам.

> ЕЕ


Вытеснено спрингом

> ME


Вытеснено андроидом
314 2028955
>>28954
Ты забыл Java Card
315 2028960
>>28954
Ну, я и имею ввиду мобилки, ентерпрайз и т.д. под спрингом и андройдом. Облачные технологии это ведь тоже про Java?
316 2028961
>>28955
Вроде, эта хуйня на 3 BILLION сим-картах, не интересовался.
>>28960
Да.
317 2028970
>>28952

>Или есть более перспективные альтернативы?


Есть. 1C Битрикс
318 2028974
>>28945

>пук

319 2028975
>>28974

> среньк

320 2029093
Сап, DvachOverflow

Подскажите гайд как сохранять файл (тектовый, например) в MongoDB, который принят в контроллере.
Не имел дело с монгой ранее да и с сохранением файлов не работал толком
321 2029106
>>29093
Ну так пиздуй гуглить.
323 2029109
>>29107
Спасибо, Анонче
324 2029260
Сап, джавач.
Может подскажет кто, как собрать из стрима листов List<SomeType> все в единый List <SomeType>? Короче для каждого листа потока вызвать addAll к выходному листу?
325 2029261
>>29260
flatMap
326 2029268
>>29261
как это применить?
328 2029309
Почему лямбды в джаве так сложно понять, а в свифте аналог интуитивно понятен и не страшный?
329 2029314
>>29309
Потому что в джаве нет функций, единственный способ передачи кода в другой метод до появления лямбд - передать объект с методом, и чтобы вписать в этот механизм лямбды, пришлось придумывать костыли. Лямбда в джаве - это почти синтаксический сахар над анонимным классом (new MyType() { ... }), но работает несколько иначе.
330 2029334
>>29309
А в чем сложность?
331 2029363
>>28284
Вредный совет. Имхо читать стоит именно jsr-133 и только на английском. А если после останутся вопросы, то обращаться ко всяким книжонкам.
332 2029373
>>29334
Не знаю, попытался понять и чота не получилось, забил и все делаю без лямбд. А вот в свифте как-то сразу схватил как это работает. Мб синтаксис виновен.
333 2029396
>>29373
Если ты про стримы, то нужно просто немного практики. Если конкретно про лямбды, то не понимаю, в чем там сложности.
334 2029430
>>29396
Стримы и лямбды. Я вообще.не шарю.
335 2029577
>>29430
Лямбда по сути - анонимный класс. Надеюсь, стало понятнее)
336 2029578
Зашел в тред, чтобы посмотреть, что нового появилось в Java со времен 1.4.

> JSR-000376 JavaTM Platform Module System



Вышел.
337 2029615
>>28416
Да, но полное руководство прочитывать не надо, как анон выше сказал. Книга вообще называется "Complete Reference", но переводчики обосрались уже в названии. Добро пожаловать в мир переведённой технической литературы.
>>28729

>Нет, после Шилдта будет бессмысленно.


Схуяли? Шилдт даёт базовое, поверхностное представление о языке и синтаксисе, а хорстманн - более глубокое понимание, которое потом проверяют на собеседованиях. Например, в Beginners Guide хешмапы ни разу даже не упоминаются, то время как у хорстманна описаны даже .synchronizedMap и ConcurrentHashMap.
image.png609 Кб, 770x531
338 2029662
14918569298170.png428 Кб, 604x407
339 2029793
Доброго дня, аноны.
Есть задача сериализовать ебанутую хеш-мапу следующего вида:
HashMap<Method, Map<List<Object>, Object>>
через стандартный интерфейс Serializable.
Но, как я понял, я проебался в том, что все вложенные типы мапы тоже должны быть Serializable, иначе получу NotSerializableException. А у меня там лежат обжекты, которые соответственно не помечены как Serializable, соответственно, при попытке сериализации летит эксепшон. Что можно сделать, в данном случае? Возможно как-то все-таки сериализовать мапу встроенным механизмом явы?
340 2029837
>>29793

>через стандартный интерфейс Serializable.


Извиняюсь, имел в виду стандартный ObjectOutputStream, через который сериализуются объекты классов, имплементирующие маркерный Serializable.
341 2029842
>>29363

>Имхо читать стоит именно jsr-133 и только на английском.


JSR-133 имеет смысл читать только если у тебя есть хорошая подготовка, ты понимаешь проблемы многопоточности, примитивы синхронизации. И тебе нужно глубокое понимание темы, для реализации конкарент библиотеки или чего-то подобного. Обычному прикладнику - это вообще не нужно.
342 2029850
>>29793
Чтобы сериализовать через ObjectOutputStream надо чтобы объект реализовывал интерфейс Serializable без этого никак. Если поменять объект ты не можешь, то или унаследуйся от него и реализуй Serializable или заворачивай его в свой объект в котором реализуй сериализацию руками.
https://pastebin.com/kLaFQKsr
343 2029878
Максимально близкий тред, наверное, и спрошу. Кто-то знает как в salesforce создать свой territoy managment? Вообще никакой инфы по кастомному не нашел. Мне бы хоть принцип понять.
344 2029894
>>29615

>Шилдт даёт базовое, поверхностное представление о языке и синтаксисе, а хорстманн - более глубокое понимание


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

>Например, в Beginners Guide хешмапы ни разу даже не упоминаются


О нет, в "Руководстве для новичков" не упоминаются хешмапы, которые проходятся в любом учебнике по алгоритмам и структурам данных, а гугла не существует и поэтому мир рухнул, Шилдт ненужен, Хорстман навсегда!
В "Полном руководстве" Шилдта всё есть. Читаешь бегиннерс гайд и потом поглядываешь в полное руководство по темам, которых там не было. Вот и всё. Серебряной пули в программировании нет, когда речь об учебниках. Я вообще по Блинову учился.
345 2029974

>>202984


От галеры зависит. На нашей, например, без многопоточки не вывезешь. По крайней мере, если нет понимания в чем вообще проблема. Поэтому на собесах всегда спрашиваем, правда достаточно простые вещи.
И действительно, редко кто справляется. А кодерки, которые не будут вагонами, очень нужны, поскольку заниматься обучением никто не будет.
346 2029975
>>29842
От галеры зависит. На нашей, например, без многопоточки не вывезешь. По крайней мере, если нет понимания в чем вообще проблема. Поэтому на собесах всегда спрашиваем, правда достаточно простые вещи.
И действительно, редко кто справляется. А кодерки, которые не будут вагонами, очень нужны, поскольку заниматься обучением никто не будет.
347 2030072
Хорстманн лучше Шилдта только тем, что там есть десятки готовых программ по темам, которые проходишь. А для околонулевого важно запустить, покрутить, изменить готовый код, а не смотреть куски кода, которые еще надо придумать как применить.
А по наполненности он немного хуже. Из околоновичковых в плане глубины вообще философия джавы лучше всего, но она устарела на 10 лет.
Сокращенный Хорстманн - плохой совет, там очень много пропускается в плане деталей. Это как раз для свитчеров с других языков. Начинал с нее, дойдя до ооп - нихуя не понял. Перешел на Шилдта и Хорстманна одновременно, в итоге выбрал Хорстманна.
348 2030108
в javafx не рисует на Canvas прозрачным ни fillы, ни clearRect, ни просто рисование Color.TRANSPARENT, нихуя не работает, сначала работало, а потом в какой то момент перестало, бекапа офк у меня нет, гуй не трогал вроде, ну к канвасу никаких эффектов и тд не применял, чудо способы не помогают
вообще мне пох на него, просто я хз как его почистить
349 2030109
>>30108
забыл добавить Arch Linux не ставьте этот рак, котаны
350 2030112
>>29430
Ты сейчас назвал две абсолютно разные технологии, просто стримы сильно завязаны на лямбдах.
Для понимания и использования "лямбд" не надо особо ничего, это концепция, идея. Довольно простая. Со стримами сильно сложнее, потому что это не только идея, но и куча довольно сложных для понимания API-инструментов, надо их изучить и поиметь с ними практику.
351 2030154
>>29894

>О нет, в "Руководстве для новичков" не упоминаются хешмапы


Это руководство занимает 700 страниц, первый том хорстманна - 800+. Хорстманн описал даже синхронизированные версии этой базовой структуры данных, в то время как шилдт её даже не упомянул. Ты, наверное, очень долго думал, кого из этих двух авторов обвинить в большом количестве воды.

>в любом учебнике по алгоритмам


>гугла не существует


Ну и зачем ты тогда читал своего Блинова? Дрочил бы себе гугл и справочники, там всё есть.
352 2030284
>>29975
JSR-133 нужен если ты пишешь свой примитив синхронизации, свою версию ConcurrentHashMap или вообще JRE.
Прикладникам достаточно знать что такое happens before и когда у нас есть гарантии happens before. И для этого совсем не нужно читать JSR-133.
353 2030402
>>30072

>философия джавы лучше всего, но она устарела на 10 лет.


У неё есть продолжение "On Java 8".
354 2030416
Почему считается говнокодом одновременное @Entity и @Data ?
355 2030418
Что было для вас самым сложным в изучении джавы? Даже если сейчас для вас это нубская концепция для ретардов, было ведь время, когда вы смотрели на набор букв перед собой и охуевали.

inb4: нихуя сложного, на изичах вкатываюсь как сыр в масле и ссу на даунов хохлов забыли спросить
356 2030430
Пару месяцев назад взяли java разрабом в Один Банк, опыта нет, самоучка. Все это время после устройства, не считая пары недель внутренних курсов для новых сотрудников, я предоставлен сам себе. Попал в команду где никто с java не работал, их проект только собираются переводить на спринг и так называемый техлид должен будет сдать экзамен по джавовскому стеку, и выходит что меня взяли на будущее чтобы потом когда нибудь потихоньку проект мигрировал и вся команда обучалась джаве. Меня это не устраивает, я надеялся попасть в окружение профессионалов и впитывать знания, набираться опыта, а не сидеть хуи пинать. Посоветуйте какие направления в разработке и технологии копать, чтоб к сентябрю съебать от сюда в какую нибудь нормальную ИТ контору с норма зарплатой
357 2030452
>>30430
Учитывая что у тебя нет опыта не рыпайся. Это наоборот заебись что проект будет по сути с нуля, многому научишься.
358 2030466
>>30430
>>30452
Охуеть, как ты вкатился если не удупляешь что ты сейчас в лучшем положении для роста. Почему ты хуи пинаешь, а не проявляешь инициативу тоже вопрос.
359 2030493
>>30430
Будешь менять место работы сможешь рассказать как вы переписывали что-то на спринг. Чуток приукрасишь скажешь с какими сложностями, плюсами и минусами столкнулись и вот тебя синьором берут.
361 2030572
>>30430
рассказывай сколько сам учился до первого оффера и как ходил по собесам. интересно же
362 2030606
Есть здесь такие же бедолаги, что работают с JSF?
363 2030608
>>29850
Спасибо, анон! Была мысль обернуть их в ДТО, просто я думал, что все поля объекта тоже должны быть сериализуемыми, и поля этих объектов - тоже и т.д. Думал, что он считывает их как бы циклично в глубину и так сериализует в файл, и именно по этой причине не сериализуется мапа. А почему у тебя на примере в обертке именно Externalizable, а не Serializable?
364 2030695
Подскажите, пожалуйста, как отформатировать целое число в форму
%3d
те
1 = 001
13 = 013
1543 = 1543
365 2030703
>>30695
Серёг String.format или для консольки System.out.printf
366 2030884
>>30695
Звоните 03
367 2030892
>>30466
Вкатился потому что имею хоть какие то начальные знания в отличие от моей команды вместе с техлидом. Инициатива моя никому не нужна, подразумевается что я сижу и готовлюсь к тому техстеку который прописан в документации к проекту, что я в принципе и делаю. Но я хочу реальный опыт и сейчас, а не когда то там в будущем.

>>30452
>>30493
Спасибо большое за советы. Понимаю что они грамотные, но видя то как все долго раскачивается боюсь если я не буду рыпаться потеряю кучу времени в пустую и смогу рассказывать об этом опыте только года через 3.

>>30572
Учился с полного нуля гдето 1.5 года, но без системно и когда повезет со временем, потому что семья и все сопутствующие ништяки. Так что можно раза в 3 быстрей до моего уровня дойти. По собесам особо не ходил, потому что жил в мухосрани и связываться со мной не хотели, а те кто связывались сводили к тому что нет опыта. Так что тупо повезло что на мой отклик обратили внимание, а на тех собесе вызвал симпатию за счет того что "горят глаза", потому что мне это действительно нравится и я хочу чтоб это было моей основной деятельностью, а не по остаточному принципу.
368 2030913
>>30892
Ну у тебя есть время будучи на зарплате подучиться чтобы потом попасть в норм контору если тут уж совсем тухло будет.
369 2030925
Че пиздатое по мейвену посмотреть? Если еще и на рутрекере есть или бесплатное вообще заебись.
370 2030942
>>30913
ну вот именно это же я спрашивал первоначально) кто что советует подучить, в какие технологии больше углубится, какие просто посмотреть, какие знать для чего используются. В какую сторону воевать в общем, пока есть возможность.
371 2030979
>>30925
Посмотри pom.xml
372 2030993
>>30979
Ну структуру это кала я знаю, но все же хотелось бы попа дробнее.
373 2030995
>>30993
Че тебе хотелось бы поподробнее блядь? Какие же тупые вопросы, я хуею.
374 2031011
>>30995
Где и как это исопльзуется блять. То что это автосборщик мне нихуя не говорит, и то что во вкладке депендесис прописываются зависимости тоже. Неужели это все, что нужно знать о нем?
375 2031016
>>31011
Тебе сейчас, очевидно, вообще не нужно о нем ничего знать.
376 2031027
>>31011
Ещё нужны модули и профили, а всякие плагины с репозиториями настраиваются по ситуации через stackoverflow.
377 2031051
>>30925
бамп вопросу
и по грейдлу бы тоже самое
378 2031128
>>31011
Про Lifecycle почитай, этого хватит.
379 2031159
Сап двощ. Почему после цикла на выводе какой-то кал? Где я ошибся?
380 2031164
>>31159
j<10; j++
381 2031221
Поясните, вот для питона/жс есть дохуя пакетов(pip/npm install), а у джавы что, мавен?
382 2031229
>>31221
Да.
383 2031249
>>31221
Если ты про сборщики то maven и gradle.
Если про репозитории - мавен централ, в котором есть все и некоторые мелкие в которых экзотика.
384 2031250
если есть у кого то промокод для JetBrainsAcademy скиньте на asswecX!xan6610ANUSmabX_ilPUNCTUMr|q0u
385 2031335
>>31221
А сколько должно быть?
386 2031365
>>31164
Спасибо анон, всё заработало, благодарю! Похоже в глазки долблюсь
387 2031379
>>31159
Всегда лоллировал с этих IDE на телефоне. А тут ими даже кто-то пользуется.
388 2031389
>>31379
Да почему, для чего-то сверх простенького вполне себе даже юзабельно. Обычно я набрасываю алгоритм в голове, а потом неспешно в год перевожу если нет пэки например пока я на природе.
389 2031414
Какие ограничения на количество полей в сервисах спринга (класс @Service/Component). Может ли сервис иметь собственные поля, помимо инжектнутых @Autowired? Или делать сервис как бы без состояния? Чтобы методы принимали типы предыдущих вызванных методов?
390 2031425
>>31414

>Какие ограничения на количество полей в сервисах спринга (класс @Service/Component)


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

>Может ли сервис иметь собственные поля, помимо инжектнутых @Autowired?


Да можно иметь поля которые не инджектется а инициализируются в конструкторе, это вполне ОК. Можно даже получить в конструктор какую нибудь фабрику у нее вызвать createXXX() и в поле сохранить результат, а саму фабрику никуда не сохранять.

>Или делать сервис как бы без состояния? Чтобы методы принимали типы предыдущих вызванных методов?


Сервис не должен хранить бизнес состояние. Бизнес состояние должно храниться в базе или еще каком нибудь персистентном хранилище. В идеале сервер должен быть стейтлес, чтобы в любой момент его можно было остановить и запустить новый инстанс.
Но это не касается каких-то внутренних полей которые нужны для функционирования сервиса и не содержат бизнес состояние.
1572255329848.png1,3 Мб, 2560x1440
391 2031512
>>13248 (OP)
Столько лет знаком с джавой, а и не знал что маскот такая секси
image.png458 Кб, 700x394
392 2031542
393 2031544
>>31542
я про количество/разнообразие если что
394 2031553
>>31544
Понятно.
395 2031591
396 2031736
>>31512
Это не аниме тяночка.
397 2031740
Сап, джавач.
У меня есть обычный джавовский предикат. Мне надо вытянуть данные из бд с учётом этого предиката. Как его можно перегнать в критерию/спецификацию?
398 2031954
>>31740
Просто берешь и без задней мысли перегоняешь в SQL
399 2032151
>>31740
Мб только в джуке что-то такое есть.
400 2032152
>>31954
Это конечно можно, но этот самый предикат скорее всего будет динамически меняться. Хотелось бы получить какой-нибудь гибкости, а не хардкодить запросики
401 2032154
402 2032155
>>32154

>пук

403 2032180
>>31740
Я делал так написал свой мини язык условий наподобие SQL. Дальше пользователь описывает условие на этом языке фактически в UI набирает фильтры на поля. Дальше состовляем из них предикат который можно и в Яве использовать и который легко конвертируется в where.
404 2032191
>>32180
Понял. А что скажешь про querydsl?
405 2032228
>>32180
Ну ты и шизик.
406 2032241
>>32191
Выглядит неплохо, сейчас бы я наверное бы его использовал для той задачи.
image.png22 Кб, 650x124
407 2032272
че поцаны, SIGSEGV?
408 2032281
>>32272
Решето?
409 2032295
>>32272
Выглядит как любая ошибка в го
410 2032298
>>32295
>>32281
NativePointerObject можно как на ссях, но на джаве в ноги стрелять
411 2032339
>>32298

>NativePointerObject


Это который из JCuda? Ну как бы не большое достижение, с помощью JNI завалить JVM.
412 2032423
в intellij idea после cleanup все поля сортирует в алфавитном порядке сопровождаясь охуенным количеством illegal forward reference, в arrangement во всех правилах стоит keep order, я даже пошел на крайние меры и сделал сброс настроек в code style плагинов не стоит вроде, есть способы пофиксить?
413 2032490
>>31542
>>31544
Зачем нужно 20 вариантов одного и того же если уже есть 2 хороших и проверенных временем сборщика?
414 2032499
>>32490
А ты не заметил, что каждый недоязык на JVM создает свою систему сборки. SBT у Scala, Leiningen у Clojure, и только Котлин решил возглавить существующую систему.
415 2032614
>>32499
Так а зачем?
416 2032810
Подскажите интересный проект, который можно написать, используя преимущества джавы.
417 2032814
>>31221
Питон это пиздец с контролем версий, не понимаю, как вы там живете.
418 2032835
>>32814
Сидят на древних питонах и либах, баги в либах правят сами, благо всё опенсорс и не надо пересобирать. Куча контор форкает джангу и переделывает её под себя. Ну и проекты не такие большие, как в жабе. Жить, в принципе, можно, пхпшники и жопаскриптеры же как-то живут.
419 2032840
>>32810
Кредитный конвейер
420 2032843
>>32499
У котлина грейдл.
421 2032848
>>32810
Основные преимущества джавы в её экосистеме, голая джава мало чем лучше шарпа или крестов. Вот и пиши что-нибудь для экосистемы, обёртки над спрингом, недостающие плагины для градла, убийцы градломавенов, плагины для идеи, или что-нибудь, облегчающее разработку под андроид.
422 2032852
>>32843
Грейдл kotlin DSL.
423 2032853
>>32852
Да, я его имел в виду.
424 2032905
Всем прувет.
Посоветуйте пожалуйста материал для изучение стека
JavaEE, Beans, CDI, JBDC
Не так давно начал изучать сервлеты, на ютубе нашел только один более менее годный источник
https://www.youtube.com/watch?v=U3YS-U_N3vo&list=PLiJ76e8LBYQVOHd1G3vva9FGV66sdV3N1&index=3
У остальных лио информация выходит куцая, либо мало рассказывают.
Параллельно читаю от Энтони Гонсалвеса (тоже где то советовали) материал по EE

Буду крайне благодарен совету добро-анонов!
Вкатился неделю назад
425 2032912
>>32905
Зачем тебе ЕЕ? Спринг учи.
426 2032927
>>32912
Ну в стеке EE используется
427 2032957
Доброго времени суток, кто-нибудь подписывал, xml`ные сообщения , с помощью gost сертификатов и ПО валидата?

Если да, можете пожалуйста скинуть, на что можно опираться как пример, а то не очень понятно, как достать pkcs и какой провайдер использовать в java?
428 2032978
>>31512
Честно говоря - полная хуйня.
429 2032986
Object
430 2033071
>>32810
у жавы нет преимуществ полумертвый язык из 90х повязший в судах и легаси который вот вот всё
431 2033086
>>13637

>У Блинова отвратительный академический стиль изложения


Заинтересовал, чекаю.
432 2033145
Джавускрипт придумали хохлы
433 2033146
bump
434 2033167
>>30402
Хуя, почему её нигде не упоминают? Это секретная книга?
435 2033174
>>33146
Ты шо, дурак?
sage 436 2033194
>>33174
Хуямп.
437 2033202
>>33167
Читаю "Thinking in Java", потому что там задания есть.
438 2033265
Какой хоткей повесить на вкладку мавена в идее? macOS
Что обычно у жавистов принято туда биндить?
16191954607160.png125 Кб, 400x400
439 2033267
>>33071

>у жавы нет преимуществ полумертвый язык из 90х повязший в судах и легаси который вот вот всё

440 2033386
Сколько стоит разработать простое приложение с графическим интерфейсом и 4 кнопками? Суть приложения нажимаешь на кнопочку и появляется текст или всплывающее окно с информацией. Сколько по времени этой займет?
441 2033390
>>33386
Примерно час. Пиши сам.
442 2033401
>>33390
Если бы я умел...

Спасибо, что ответил. Просто курсач горит, сам нихуя не умею да и программирование хуй знает зачем мне нужно.
443 2033667
>>33401
кмон, этот функционал описывает любой чел на ютубе, который захотел делать свои курсы, в первом же его видево

могу научить пользоваться дочкой гугла - поиском ютуба
444 2033740
Сюка, почему все нужные мне сейчас штуки есть только в последних версиях спрингбутовых либ...
445 2033763
>>33740
Я пишу на четвёртом спринге, мне норм.
446 2033776
>>33763
лох
447 2033796
>>32840
Ресурсы процессора брать с продажи memory другим программам?
image.png16 Кб, 298x291
448 2033934
Анон, привет, реализую в спринге запросы к postgres с помощью jdbcTemplate.query(), используя ResultSetExtractor.
Подскажи, пожалуйста правильно ли понимаю, что просходит во время выполнения запроса и как это можно оптимизировать.
Ниже лог jdbc-драйвера:

May 17, 2021 8:51:21 PM org.postgresql.core.v3.QueryExecutorImpl processResults
FINEST: <=BE DataRow(len=87)

May 17, 2021 8:51:22 PM org.postgresql.core.v3.QueryExecutorImpl processResults
FINEST: <=BE DataRow(len=87)
May 17, 2021 8:51:22 PM org.postgresql.core.v3.QueryExecutorImpl receiveCommandStatus
FINEST: <=BE CommandStatus(SELECT 2192)
May 17, 2021 8:51:22 PM org.postgresql.core.v3.QueryExecutorImpl receiveRFQ
FINEST: <=BE ReadyForQuery(I)
May 17, 2021 8:51:22 PM org.postgresql.jdbc.PgResultSet getBigDecimal
FINEST: getBigDecimal columnIndex: 4

May 17, 2021 8:51:26 PM org.postgresql.jdbc.PgResultSet getString
FINEST: getString columnIndex: 2

Выходит, что выполнение запроса на стороне БД и получение строк клиентом занимает около 1с, когда остальное время занимает обработка ResultSet (после получения всех строк)
Если это так, то каким образом можно оптимизировать?

В коде ResultSetExtractor значения полей собираются в объект, который сохраняется как элемент hashmap.
449 2034058
>>30284
Ну, спорить не буду. У каждого человека свой способ познания. Мне зашёл jsr133, кому-то, вероятно, не зайдет.
450 2034060
>>33740
А что тебе нужно?
451 2034104
>>33934

> каким образом можно оптимизировать?


Выбросить спринг и начать жить
452 2034517
Интересно, а пидорасы из жетбрейнс сами-то юзают идею?
453 2034696
>>34517
Даже STS пишется на идее. Эклипсом и нетбинсом пользуются только индусы и доедающие за ними хохлы.
454 2034701
>>34517
А что ещё юзать? Дохлый эклипс? Текстовые редакторы не катят, если у тебя там не тудулист с функцией мувисерчера
image.png511 Кб, 800x400
455 2034977
456 2034992
>>34060
Фича одна.
457 2034996
>>34992
Ну так бэкпортируй.
458 2035131
>>34996
Анус себе бэкпортируй.
459 2035161
>>35131
Вот это злоба, это всё из-за хипстерских фреймворков для идиотов.
dashboard-welcome-page.png137 Кб, 1082x729
460 2035273
>>34977
А че он такой желтый? Это уже FALL
461 2035277
ЧЯДНТ? Если не закомментить строку 82 и 84 то какие-то точки вместо текста. Если закоментить то всё норм, но соответственно системным шрифтом.
462 2035284
>>35161
хипстерский ломбок, а спринг это очень сильное колдунство.
image.png21 Кб, 635x160
463 2035289
>>35277
Так тоже не работает нихуя
464 2035290
>>35277

> ЧЯДНТ?


Путаешь аргументы Font.
new Font("Arial", Font.BOLD, 14);
465 2035291
>>35284
В спринге аспект хипстерскости проявляется в буте.
466 2035293
>>35290
Спасибо как же это тупо, сука
467 2035385
Почему .toString() переопределён для коллекций, но не переопределён для массивов? println выводит содержимое в первом случае, и какое-то говно во втором.
468 2035515
>>35385
Классы для массов не заданы заранее, а динамически создаются при первом создании массива данного типа. Подозреваю, что в первых версиях, для упрощения реализации JVM решили не переопределять никакие методы toString(), equals(), hashCode() у классов массивов.
469 2035766
>>35385
А тебя ебет?
470 2035773
>>35766
Нет, мне похуй.
471 2035862
>>35773
Ну и всё, завяжи лямку ёбанарот.
472 2035971
>>35773
Почему ты за меня ответил? Может, я тоже хотел ответить.
473 2035974
А в какой пакет класть кастомные реализации каких-то внутренних компонентов спринга, которые непосредственно к бизнес логике отношения не имеют?
474 2035979
Стоит ли откликаться на вакансию джуна, если в требованиях есть алгоритмы, а я от них в обморок падаю? Забить хуй и попытаться энивей или потом опозорят хихикающие травители-тимлиды?
Пытался освоить алгосы как можно быстрее, но любой учебный материал требует матана, блядь.
475 2035983
>>35974
core, config, security, common и подобное.
476 2035987
>>35979
Знаний на уровне задрачивания Кнута никто не требует. Если можешь пояснить за сложность ArrayList, LinkedList, HashMap и TreeMap, этого тебе хватит на много лет вперёд.
477 2035991
>>35983

>core


Мимо, это же не бизнес логика.

>config


Там спринговые конфиги лежат.

>security


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

>common


Мимо, этот компонент только в одном месте используется.
Еще варианты?
478 2036943
>>30430
Был в похожей ситуации в Зелёном Банке
.png30 Кб, 852x232
479 2037091
final, finally, finalize
480 2037094
>>37091
На пару finalizers больше
Rosselhozbank.jpg36 Кб, 275x200
481 2037132
>>36943

>>Зелёном Банке


А до джавы какой стек был?
482 2037208
Есть какие-нибудь нормальные open-source java проекты для изучения?
51jrhDk-UiL[1].jpg54 Кб, 500x500
484 2037277
>>35979
А как же "Грокаем алгоритмы"? Или ты думаешь, что на собеседовании кто-то будет грокать твой анус мат.анализом?
485 2037321
>>35979
В каких конкретно алгоритмах тебе понадобился мат анализ?
486 2037422
>>35974
Бамп.
487 2037432
>>35974

>А в какой пакет класть кастомные реализации каких-то внутренних компонентов спринга, которые непосредственно к бизнес логике отношения не имеют?


В полиэтиленовый.

Чел, ты не можешь придумать имя пекаджу, ты уверен что правильно выбрал профессию?
488 2037434
>>37432
Зато я тебе могу имя придумать, хочешь?
489 2037494
>>37434
Мамке своей придумай.
490 2037546
>>37432
Если ты и правда спрашиваешь, то если стандартный пекедж org.springframework.stereotype, то ты делаешь что-то типа org.springframework.stereotype.custom. Разве так сложно?
491 2037579
>>37546
ты че нахуй ЕБАНУТЫЙ? причем тут стереотипы?
sage 492 2037584
>>37579
А при чём тут орг?
493 2037732
>>37132
Студент универа:
C#, Delphi, JS, html + css, Perl
494 2037838
>>37732
Помянем
16165103643670.jpg4 Кб, 170x170
495 2037917
>>36943

>Зелёном Банке

496 2037937
>>37917
Скоро вся тематика будет сплошь из инцелов, карланов, знаменитостей тредов, захвата Европы, набегов, в чём он не прав, рюкзакодебиллв, дочкек и пориджей.
497 2037999
Присутствуют ли в треде люди, перекатившиеся из другого стека? Сильно ли проседали по деньгам в первое время или наоборот? Было ли сложно итд. Пилите истории успеха. Пожалуйста
498 2038028
>>37999
Я хочу перекатиться в кресты, но для начала надо дорасти но сеньора в джаве.
499 2038058
>>38028
Экий шутникъ
500 2038250
>>13535

>gradle


>maven


>топовейший язык и платформа


Please go
501 2038331
>>38250
Ту да, гоферы не потянут такие технологии
502 2038450
Тезис:

Читать книги по программированию - имеет смысл только тогда - когда ты научился программировать

Как к этому относиться, анон?
503 2038453
>>38450
А как учиться программировать, если не по книгам? По курсам и видосикам?)))0)
504 2038454
Есть смысл в 2021 учить Джаву или лучше сразу в Котлин вкатываться?
505 2038457
>>38450
Хуезис.
506 2038461
>>38454
Ты не вкатишься в котлин без знания джавы.
507 2038491
Есть какая-нибудь годнота для получения базового представления об алгоритмах и структурах данных? Эта >>37277 не заходит.
508 2038496
>>38491
Крепкая университетская база
509 2038497
>>38496
Что-нибудь, что не займёт 4 года.
510 2039106
>>38491

>алгоритмах и структурах данных


Одноименная книга Роберта Лафоре.
511 2039222
>>35979
Ебанатов с алгоритмической секцией на собесах на рынке не так уж много. Мне встречались только Яндекс, мэйл, Тинькофф и дойчбанк. Ни в одну из этих контор не рекомендую идти на джуна. Выбить нормальную зарплату с ростом скилла не получится. Инфа 100%
512 2039232
>>39222
Хотя, нигде не получится, если честно. ЗП растёт только со сменой места работы.
514 2039474
>>39232
Враки. Ща такой кризис кадров, что любой конторе выгодней давать тебе больше денег, нежели ебаться и искать замену. С джунами попроще, да, но уже начиная с мидла, можно(и нужно) смело просить больше бабок по кд.
515 2039535
>>39474
чем обусловлен кризис?
516 2039544
>>39450
Выглядит очень неплохо, благодарю.
517 2039548
>>39544
upd промахнулся. Это Лафоре >>39106 книга заинтересовала. А Cracking Coding Interview всё равно читать собирался. Странно, что там алгоритмы есть - я думал, это книга с лайфхаками, а не учебник.
518 2039749
>>39535
Глобальной цифровизацией.
519 2039788
>>37937
она уже, анончик
520 2039791
>>38491
открываешь список классических алгоритмов и пытаешься их реализовывать. Если не получается, смотришь видео, где их реализовывают, пытаешься все понять. закрываешь видос и через час садишься писать сам.
521 2039808
>>39791
В видосах HD-негры льют воду и играют в угадайку со своими друзьями. Я лучше книгу почитаю.
522 2039860
Почему у строк .length(), у массивов .length, а у коллекций .size()? Они там ебанулись?
523 2039897
>>39860
Потому что у строк и массивов длина, а у коллекции размер.
524 2039936
>>37579
Это был пример, дебилушка.
525 2039941
>>39897
Двачую.
526 2039958
Размер строки
@
Размер массива
527 2039997
>>39474
А ещё не понятно, зачем тебе платить больше, если ты и так работаешь. А если заплатить больше тебе, то остальные тоже захотят. Проще слить одного, а потом за пол года найти очередного лоха. Ну или не лоха, а за нормальную цену. Зато все работают на старой ставке. Я проходил такое сам, и видел на примере других коллег.
528 2040025
>>39997
Я не он, в большинстве компаний так и делают, как ты говоришь, но чекни затраты на найм норм специалиста в хорошую компанию. Это очень дорого + человек в проект будет включаться полгода, чтобы выйти на полный перфоманс. Так что в некоторых хороших местах стараются удерживать. Сам я пока что зп повышал в основном сменой работы.
Алсо, по поводу:

>зачем тебе платить больше, если ты и так работаешь


Сейчас не та индустрия. Не платят больше - просто сразу уходишь.

>А если заплатить больше тебе, то остальные тоже захотят


А если не заплатят, они узнают твою новую зп и тоже съебутся. У меня так и было примерно.
529 2040033
>>38454
php, js. Нахуй тебе это говно мамонта
530 2040042
>>35277
кодировку проверь
531 2040122
>>39997
Потому что нанимая нового, ты будешь нанимать но рыночной цене, а внутри конторы можно повышать по чуть-чуть держа цену сильно ниже рыночной, изредка подбрасывая кость в виде +10-20к.
В этом суть. В этом стратегия компании. Но девелоперы могут её частично контрить, запрашивая более резкие повышения. Но тут нужно быть наглым. Челик выше правильно написал, что наём нового сотрудника это куча геморроя, начиная от собесов и заканчивая тем, что он будет ещё какое-то время входить в проект.
532 2040210
>>37999
Бамп вопросу.
533 2040330
Вот вы говорите Лафоре. А примеры там вообще на апплетах написаны на java4. Не слишком ли старье?
534 2040363
>>40330
Алгоритмы не менялись уже сотни тысяч лет, еще на древних египетских скрижалях двоичные деревья инвертировали.
535 2040413
>>40363
ну это конечно так, но с на языке с жинериками их можно немного иначе реализовать. А жава4 это язык без них.
Апплет кстати даже в ие не смог запустить, пришлось через апплетвью в жава8 запускать.
213231.jpg61 Кб, 964x640
536 2040661
>>40330
Вчера начал читать, апплеты там не то что старые, но даже какие-то бестолковые, те что ко второй главе, как минимум. Визуализация сомнительная и исполнение такое же. Сам текст книги мне тоже местами не нравится - например, как объяснялись кастомные array классы и Big O. Очень много воды, повторений, и как-то не по делу.
Возможно, за эти 20 лет качество книг по Computer Science действительно выросло. Пикрил - наглядное изображение интерфейса в понимании автора.
Но охват тем, судя по содержанию, хороший, так что попробую ещё почитать. Всё-таки подкупает нацеленность автора на доступность изложения.
537 2040990
>>39897
Раз ты такой умный, то объясни почему массивы, коллекции, строки индексируются с 0, а столбцы в ResultSet с 1?
538 2041118
>>40990
а как индексируются столбцы в sql?
539 2041127
>>41118
По именам.
540 2041160
>>13875
Блинов прикольно лекции ведет, а книга и правда душная.
541 2041233
>>40661
Просто мне напомнили одновременно про эту книжку и про ханойские башни. И я пролистал главу и включил код из книжки и иллюстрации на апплетах и реализации алгоритмов. Ничего так.
542 2041359
Какой же кринжовый оппост, госпаде.
543 2041362
>>41359
Перекатывайте сами.
544 2041364
>>41362
Я???
545 2041380
>>41362
500+ постов еще набить надо.
546 2041391
Может кто-то в двух словах объяснить, как JSF напрямую обращается к бинам? JSF раскладывается на сервлеты — это понятно. Но как тот же JS на странице триггерит методы в бинах?
547 2041408
Ааа всё я всё понел
548 2041410
>>41408
Рассказывай.
549 2041414
>>41410
Ну короче если в двух словах, и я правильно понимаю, то происходит это примерно вот так:

1) jsf страницы на сервере разбираются на сервлеты;
2) из сервлетом рендерится чистый html;
3) далее когда страница уже была загружена, мы можем исполнять js;
4) ну а потом обратная связь происходит банально через http запросы/ответы.
550 2041425
551 2041430
>>41425
Никаких комментариев?
552 2041436
>>41414
Понял, спс.
553 2041443
>>41436
Ты уже создавал свои веб приложения на JSF?
554 2041462
>>41443
Нет, я создал его на реакте.
1490782619061.jpg37 Кб, 512x512
555 2041468
sage 556 2041506
>>41359
Че тебе не нравится? Все правда и по делу.
557 2041660
>>41506
Нихуя не по делу, очень много графомании. Как минимум, в вопрос про книги можно включить ВНЕЗАПНО книги, пусть вкатун сам выбирает, что ему по зубам: Java for Dummies -> Head First Java -> Java Programming for kids -> Java Beginner's Guide -> Core Java -> Java Complete Reference -> Thinking in Java -> Java Методы программирования. Чаще всего рекомендуют Beginners guide и Core Java.
Далее, в ответе на вопрос "я выучил кор ..." кроме ссылки можно текстом перечислить мейнстримный стек технологий, с которым уже можно собеседоваться: Core (+ Collections, Streams, Concurrency), SQL + JDBC, Spring, XML, Hibernate, Git, Алгоритмы и структуры данных, Шаблоны проектирования.
В ответе на "сам ничего сделать не могу" - нихуя непонятно, что за лабапас? Три ссылки - это кто-то старательно перечислял говно? Лучше сделать нормальную ссылку на leetcode.com.
Далее, в вопросе про алгоритмы упоминается Седжвик - нахуя? Это книга не для вкатунов, с таким же успехом можно советовать Кнута. Желательно вспомнить более простые манускрипты, выше например упоминались Грокаем алгоритмы и Роберт Лафоре, должно быть ещё что-то.
К вопросу про собеседования можно добавить Cracking the Coding Interview, потому что её везде советуют, и упомянуть десятки тестовых собеседований на ютуб-канале Eugene Suleimanov, годнота же (https://www.youtube.com/playlist?list=PLlsMRoVt5sTMMCwd_gLaaZMkQhzVh9hLA).
558 2041718
>>41660
Вот это ты душнила.
559 2041726
>>41660
Забыл самое главное - в шапке обязательно должно быть аниме.
560 2041762
>>41660
Тред в бамплимите и ты имеешь право его перекатить, если вдруг ты не знал.
561 2041768
>>41762
Если ты не знал, не имеет. Ты недавно здесь, да?
562 2041772
>>41768
Вчера зарегистрировался.
563 2041947
Аноны, пробую в MongoDB
Поднял образ монги в DockerDesktop.
Как подключиться к нему в MongoCompass?

Компас какую-то БД по дефолту поднимает? Заходишь в Компас без запущенного докера - подключается по дефолту к Бд. С подключенным докером - такая же херня.

Поясните, плез.
564 2042030
>>41947
Нахуй ты в джава тред пришел, пидорас?
565 2042036
>>42030
Так я это для джавы делаю) Чтобы потом в java-приложениях юзать монгу
Я натурал
566 2042243
>>42036
Монга написана на С++, спрашивай в С++ треде.
567 2042300
>>42036
Компас написан на электроне, спрашивай в js треде.
Посмотри куда биндится сервер в докере и подключайся по нему в компасе. Если ты полный набор комьюнити эдишн ставил, то у тебя с компасом еще и локальный сервер в самой системе поставится, в винде можешь посмотреть его в службах.
568 2042381
2chOverflow, привет.
Я подаю в контроллер спринга текстовый файл. Мне надо прочитать его и записать в БД (в MongoDB).
Я принимаю файл с помощью MultipartFile, а планирую читать с помощью BufferedReader'a других вариантов не знаю, мб получше есть.
Но спринг ругается т.к. BR хочет java.io.File и не может скастовать MultipartFile в File (даже если приведение втуляю, которое сама же IDE и предлагает).

Нашел один из вариантов - сохранить где-то файл локально, а потом считывать его уже в File. Ну и т.д.
Без этого шага как-то можно?
Не бейте, а помогите, пожалуйста

>>42300
Спасибо за ответ!
569 2042483
>>42381
MultipartFile.getInputStream()
image.png19 Кб, 878x231
570 2042501
>>42483
Спасибо, а можно-таки более развернуто? Для тупых

Я могу нагуглить оф. док, ток в английском слабо шарю же.
Т.е. я если сделал MultipartFile file, то потом у file вызываю .getInputStream() и он мне..че делает?) Дает поток?
Я могу обозначить новый файл, из которого читать типа File file2 = file.getInputStream;
?
И потом уже читать из file2 ?
Так, получается?
571 2042855
>>42501
Вызываешь getInputStream() и он тебя ебет в жопу.
572 2043290
Очевидно, что ни loom, ни valhalla, ни panama в java17 не будет.
Причем их распиарили уже года 3 назад, а разрабатывают уже лет 6-7.
Они там ебобо чтоли?
573 2043380
>>43290
Иди и помогай им.
574 2043493
>>42501
Я могу ответить на конкретные вопросы, но писать код не буду.
У тебя есть InputStream из которого можно читать байты, можно его завернуть в InputStreamReader и уже читать символы. Полученные байты/символы можно писать в OutputStream/Writer.
575 2043497
>>43290
17 это LTS релиз, даже если бы они были готовы никто не будет добавлять такие большие изменений в LTS релиз.
Вначале их выпустят в обычном релизе в preview режиме.
576 2043746
>>43497
Но пиарить эти проекты начали еще при java 10.
Толку было с этими минорами/мажорами, если по факту между 10 и 17 разницы будет в 2 раза меньше, чем между 7 и 8.
image.png150 Кб, 200x272
577 2043779
>>43493
А ты хорош. Вот только там есть метод transferTo для этого всего, а содержимое, если захочется, можно взять просто через getBytes без всякой хуйни.
578 2044876
>>43746

>Толку было с этими минорами/мажорами, если по факту между 10 и 17 разницы будет в 2 раза меньше, чем между 7 и 8.



Между 10 и 17 много изменений, как синтаксических так и внутренних которые не видны на прикладном уровне:
- text blocks
- records
- switch expressions
- var
- Pattern Matching for instanceof
- Sealed Classes
- 2 новых GC
- foreign memory
- перепилили реализацию сокетов нужно для loom
- nested classes
579 2045105
>>44876

>nested classes


че
580 2045202
>>45105
Раньше внутренние классы полностью реализовывались компилятором. Например чтобы внутренний класс имел доступ к приватному полую родителя - компилятор генерировал специальный метод доступа. JVM никак не различала внутренний и обычные классы.
Теперь есть JEP 181: Nest-Based Access Control. Не помню зачем, но это нужно было для value типов.
581 2045276
>>44876
Это все вместе по прежнему в 2 раза меньше, чем между 7 и 8.
582 2045363
>>45276
Ну давай перечисли, что там появилось в 8ке.
583 2045494
>>45363
Полноценная поддержка лямбда-выражений.
Ключевое слово default в интерфейсах для поддержки функциональности по умолчанию.
Статические методы в интерфейсах.
Ссылки на методы и конструкторы.
Функциональные интерфейсы (предикаты, поставщики и т. д.)
Потоки (stream) для работы с коллекциями.
Новый API для работы с датами.
584 2045623
>>45105
лучшее из мира жс
585 2045633
>>45276
Дальше будет только меньше. В языке остается все меньше вещей чтобы развернуться и не сломать километры индусского легаси кода. Вот и остается только вм и мусорку пердолить
586 2045647
>>45633
Но дженерики для примитивов из вальгаллы, легкие треды из лума это же клево. И то, что всякого мусорного сахара меньше, чем в других языках это хорошо.
Но вот эта хуйня с кормлением завтраками бесит.
587 2045686
А зачем вам много изменений в языке? Вы хотя бы на текущем состоянии станьте синьором, а потом уже урчите о новых фичах.
588 2045691
>>45686
Кобол, спок.
589 2045730
>>45686

>спервадобейся!

590 2045767
>>45730
Нет, спирвадабейся было бы, если начал задвигать телеги по типу "Сначала создай такую мощную платформу, которая станет промышленным стандартом в тырпрайзе, а потом вкручивай туда новые фичи каждые полгода".
591 2045799
>>45767
Какой же ты душный, пиздец просто.
592 2045815
>>45799
Я не душный, это у вас всех ветер в голове.
593 2045823
>>45815
И слава богу, без ветра все бы от тебя уже задохнулись.
594 2045866
>>45686
Но фичи пообещали и не дают!
595 2046031
За чей счет разрабатывается джава? Где посмотреть список спонсоров которые решают какую фичу впилить следующей?
596 2046082
>>45686
А зачем цикл релизный цикл 2 раза в год если ничего толком не выходит
597 2046241
>>45494

>Потоки (stream) для работы с коллекциями.


>Новый API для работы с датами.


Ну прям достижение, теперь не надо JodaTime и Guava подключать!

>Полноценная поддержка лямбда-выражений.


>Полноценная поддержка лямбда-выражений.


>Функциональные интерфейсы (предикаты, поставщики и т. д.)


Вот это единственное заметное нововедение.

>Ключевое слово default в интерфейсах для поддержки функциональности по умолчанию.


>Статические методы в интерфейсах.


Чуток сахарку в компилятор досыпали, достижение!

Ты концентрируешься на каких то мелочах, но которые используются в повседневной жизни. Но при этом игноришь вещи которые требуют действительно сильной переработки JVM но незаметны снаружи. Те же compact strings, var handlers, off-heap память с ручным управлением. Понятно что Spring-REST макаке это все не нужно, а новые даты нужны. Но для написания эффективных инфраструктурных вещей типа in memory data grid это наоборот очень важно.
598 2046499
Что за долбаебы еще пишут на JAVA когда уже есть KOTLIN?
599 2046504
>>46499
Зачем есть капусту когда есть картошка
600 2046518
>>46499
Я не вижу смысла менять язык тупо ради сахарка. Всё равно инфраструктура везде одинаковая, и нет разницы, каким синтаксисом с ней работать.
601 2046529
>>46518
DELPHI 7 деды так же говорили в свое время про C#
602 2046553
>>46529
Шарп и делфи соотносятся намного меньше, чем жаба и котлин. Например, разумно в каких-то задачах переходить с жабы на шарп, потому что там не только сахар. Но с жабы на котлин - хуита какая-то, для вкатывальщиков поиграться.
603 2046570
>>46529
демагог ебаный
604 2046574
>>46553

вакансий уже 1 к 3.
еще 3-4 года и котлин выкинет вас на мороз
605 2046615
>>46574
Ну и приходи тогда через 3-4 гида, а сейчас возвращайся в свой тред, в котором один пост в две недели.
606 2046777
Как перехватить исключение и продолжить работу в штатном режиме?

При использовании try catch у меня выполняется блок catch и дальше программа замораживается или заканчивает выполнение.
607 2046784
>>46777
Код.
608 2046794
>>46777
Перехватывай там где не замораживается или не заканчивает выполнение.
609 2046798
>>46574
Осталось перенести андроид на сервера и тогда точно капец
610 2046807
>>46777
Необходимо перехватить исключение и продолжить работу в штатном режиме.
611 2046816
>>46777
>>46807
Это тебе в FoxPro тред, у него такая фишка была.
612 2046843
>>46798
Кто пишет сервера на JAVA в 2021? я серьезно

GO , питон, мало норм языков что ли?
613 2046845
>>46843

> питон


Ну это уж совсем толсто.
614 2046850
>>46845
Почему? чем РЕСТИКИ на питоне хуже JAVA рестиков?
У вас спринг сделан из говна и палок, а в питоне все четко.
еще куча интеграций с нейроночками
java - реально говно, мертвый язык
615 2046855
>>46850
Ты лучше расскажи чем рестики на питоне ЛУЧШЕ java рестиков?
Почему люди должны начать писать их на питоне?
616 2046860
>>46843
пэхэпэ забыл
617 2046868
>>46794
Там в цикле перехват идет и в конце catch стоит continue. Итерации цикла зависят только от одной либы, которая нормально работает.
У меня из другой нативной либы вылетают разные exceptions включая "unknown" рандомно на разных иттерациях, но они независимы.
Получается либа падает от них что ли, какая-то залупа происходит в общем. Примерно раз в 2000 итераций(каждая от секунды и больше), там дохуя всего вычисляется, каждый раз в новых местах выбрасывает, может вообще не выбрасывать.
Вообще там многопоточка, но я много раз перепроверял, конкуренция может возникнуть только при чтении, запись в уникальные объекты для каждого треда.
Может либа кривая или как-то внутри себя не воспринимает адекватно многопоточность.
618 2046873
>>46843
Глянь на hh, толстяк.
619 2046881
>>46843
Delphi забыл https://youtu.be/Qt6hP5EzBME?t=194

Хуяк-хуяк мышкой и в продакшн!
620 2046884
>>46868
Понятно...
eclipse-ellipse-foreshadowing-lunar-moon-period-rhyme-rhymi[...].jpg36 Кб, 500x362
621 2047015
622 2047243
>>46241
Ну а почему я должен смотреть не с позиции спринг-рест макаки, если их подавляющее большинство из тех, кто пишет на жаве?
1536425566043.png63 Кб, 512x512
623 2047767
Ищу уже битый час, и никак не могу нагуглить такой вопрос: что рендерит JSF компоненты и как это происходит? Может кто-то дать ссылку или объяснить в двух словах? Как JSF компоненты рендерятся в HTML?
624 2047784
>>47767
шо это за зверь, выглядит вроде норм, но оказался не нужон, проиграл js фреймворкам?
625 2047788
>>47784

> проиграл js фреймворкам


Нет, он с ними и не играл. Это другая область. Это в J2EE стеке юзают, правда очень мало где.
626 2047984
>>47243
Ты можешь смотреть с любой позиции, которая тебе нравится.

Но

>если по факту между 10 и 17 разницы будет в 2 раза меньше, чем между 7 и 8.


и

>если для круд-макаки изменений между 10 и 17 разницы будет в 2 раза меньше, чем между 7 и 8.


разные вещи.
627 2048317
Открывайте рот, ссу вам в лицо
Мимо КОТЛИН ГОСПОДИН
628 2048400
>>48317
Нет, не мимо. Ты всё тот же шиз, срущий здесь несколько дней. Тебе сложно представить, как жалко выглядят со стороны твои попытки семёнить.
629 2048484
>>48317
Мы же за одно брат...
sage 630 2048494
>>48484
Какой он брат тебе? Скалистов вспомни.
learnjava31201.gif211 Кб, 550x808
631 2048538
Накидайте всяких таблиц, схем и прочей инфографики, чтобы наглядно и лучше видеть всякие подводные труднозапоминаемые моменты. По типу пикрилейтед.
632 2048539
633 2048540
634 2048565
>>48538
У любого нормального человека при виде подобных схем, где ввод-вывод рассосали на 30 классов, будут сомнения, нужно ли это всё задрачивать. И это нормально, потому что не нужно. Подводные труднозапоминаемые моменты почти никогда не учат и не пишут руками, для них один раз делают обёртку и потом её используют, и неважно, как она устроена. На любом проекте будет какой-нибудь свой FileUtils, и даже её юзать его придётся крайне редко, ибо почти все данные в проектах на жабе хранятся в БД и конфигах.
1507969485342.png487 Кб, 739x710
635 2048616
636 2048636
>>48616
Что это за хуйня, кстати?
637 2048672
>>48484
Я на 10 шагов впереди.
Ты для меня как неандерталец с своим ДЖАВА
638 2048673
>>48636

ЭТО говно ДЖАВА
добро пожаловать в мир говна из 100000 классов и подметодов
639 2048700
Нормально ли использовать Oprional для хранения полей с возможным null значением? Я просто использую его для того, чтобы про это не забыть, но IDE ее выделяет.
640 2048707
>>48700
Не нормально. И хранить поля с возможным Null значением тоже.
641 2048718
>>48700
Зачем тебе тогда вообще Optional? Есть единственный правильный способ его использовать, и если ты в нём хранишь нулл, либо саму переменную Optional делаешь null, это явно не нормально.
642 2048721
>>48616
эх жиза)
643 2048730
>>48707
А как их хранить, если они могут не присутствовать?
image.png113 Кб, 571x934
644 2048759
>>13248 (OP)
знаю, вы не любите залетных, но я вот хотел посчитать среднее значение выпадение кубиков в настолке, там кидаешь несколько кубиков и выбираешь наибольшее, можно разные плюшки покупать для повышение своего урона и один из них шлем, он суммирует одинаковые значения. два кубика с помощью эксель посчитал, а вот с тремя уже сложнее и пришлось гуглить и ставить ide. так вот, можно как то упростить этот код? мне просто хотелось бы посчитать для 4 кубиков, может есть более элегантный способ решить задачу
645 2048793
>>48636
Похоже на стектрейс.
>>48672
На деле там максимум десяток классов, а остальное фреймворки создают.
646 2048809
>>48730
Как null. А в геттере делаешь Optional.ofNullable
647 2048810
>>48759

>можно как то упростить этот код?


Да, можно.
648 2048968
>>48809
И какой в этом смысл?
649 2048981
>>48968
Чтобы заебать всех, кто попытается потом в этом говне разобраться.
650 2048999
>>48759
пчел, просто сделав for(1..6) ты сможешь убрать этот непомерно длинный, нетестируемый if-else, хуй знает зачем ты вообще его написал
651 2049283
>>46031
Да Гослинг в соло пишет
652 2049289
>>49283
Че прям райан гослинг?
653 2049358
>>49289
Конечно. А ты что думал?
654 2049851
>>48999
Что за гуглить, чтобы понять о чем ты? По поиску циклы для java мне выдаёт мой вариант.
655 2049858
>>49851
DiceUtils.rollD6(3)
656 2049994

> Process 'command 'C:/Program Files/Android/Android Studio/jre/bin/java.exe'' finished with non-zero exit value 1


Товарищи, срочно нужен совет как фиксить эту залупу. Интернет и лог молчат как партизаны. Происходит после импорта.
657 2050026
>>49858
ты про либу на жс? это ж тупо рандомизатор, ни одной задачи из тех что нужны анону она не решает.
658 2050075
>>50026
Нет, это из библиотеки dvach-commons. Сила апачей и легиона.
659 2050175
>>50075
А что, если действительно сделать. Будут там рулетки и прочая хуета
660 2050235
>>50175
Это нужны те кто может решать мидл задачи на литкоде, а как выяснилось тут большинство макаки умеющие только в спринг.
2eba504f-fbf4-41ff-b4ed-6e87af2e4eaa.jpg12 Кб, 739x89
661 2050782
Помогите, ковырялся в спринге и в один момент отвалился thymeleaf, и я теперь ничего с этим сделать не могу, может кто знает как пофиксить
662 2050985
>>50782
Как вариант - загуглить всплывающую подсказку. Мне кажется, конфиги потекли
706212.jpg41 Кб, 376x450
664 2051295
Зачем для описания лямбда-выражения необходим функциональный интерфейс?
Какой смысл писать лишний код в виде интереса для описания лямбды?
665 2051296
>>51295

>лишний код в виде интереса


в виде интерфейса
быстрофикс
666 2051299
>>51295
Это не намеренная фича, а просто костыль, чтобы не надо было ебаться с добавлением функций в язык.
667 2051311
>>50985
>>50992
Попробовал все предложенные Гуглом решения и ничего не изменилось, никакие из предложенных решений не помогают, поэтому то сюда и пишу. Теперь ни в каких проэктах лиф не работает.
668 2051318
Сап,

Осваиваю CRUD'ы. В частности, интересует JpaRepository-методы.

Если у меня таблица в БД (Postgres) ненормализованная. поле Id неуникальное. Могу я вытягивать с помошью rep.getById() / findById()?
Или в таком случае не будет работать?
Мне нужно все объекты вытянуть с одинковым id .

Тогда надо брать findAll(), получать List и потом с ним уже шаманиться?

СНе бейте, целый день ковыряюсь. Уже не соображаю ниче
669 2051328
>>51299
А как бы это выглядело, функции в джаве с джавовским фундаментом? В шарпах есть?
670 2051330
>>51295
Затем, чтобы зафиксировать типы.
671 2051344
>>51328
Прям функций в шарпе тоже нет. Вместо функциональных интерфейсов есть делегаты, у них чуть более лаконичный синтаксис:
delegate int MyDelegate(int x, int y);
И потом его указывают в аргументах метода. Может быть объявлен на уровне класса или неймспейса (аналог нашего пакета, но можно сразу несколько публичных определений в одном файле писать), но создавать его "экземпляры" глобально нельзя. И есть пачка встроенных делегатов, чтобы не писать каждый раз: void f(Func<int, int> myDelegate) { ... }
Ещё есть локальные функции, выглядят как методы, но описываются внутри методов.

В джаве есть статические импорты, можно было бы юзать их, а для передачи в методы придумать какой-нибудь сахар типа шарповского Func<>.
672 2051359
>>51330
Типы самих лямбда-объектов? Не совсем понял тебя.

>>51299
А, вот как. Вроде же не так сложно было бы добавить один новый интерфейс функции, для хранения новых объектов/функций.
673 2051360
>>51359

>Типы самих лямбда-объектов? Не совсем понял тебя.


Типы входных и выходных параметров и их количество.
674 2051388
>>51360
Ну а зачем оно нужно? Разве не проще было бы сразу в самом лямбда-выражении описывать выходные параметры и возвращаемое значение
675 2051505
Что лучше?

if (CONDITION) return arr.get(index / 3);
else return arr.get(index);
или
return arr.get(CONDITION? index / 3 : index);

Я еще где-то видел, что тернарный оператор сильно уступает if else, если не используется при максимально простом случае. Только там был по моему c или c++.
int x = CONDITION? 1 : 2;
676 2051543
>>51505
arrayIndex = CONDITION
? index / 3
: index;
are[arrayIdex]
677 2051545
>>51543
Табы проебались
678 2051599
>>50782
По скрину не понятно в чем проблема. Теги th: идея не понимает? Странички не парсятся? Или все работает, но тебя это выделение смущает?
679 2051637
>>51318

>Могу я вытягивать с помошью rep.getById() / findById()?


Да можешь. Можно вообще по любому уникальному полю так делать.
image.png4 Кб, 258x123
680 2051705
>>51599
Идея не понимает теги th: и при сборке выдает whitelabel error, хотя в предварительном просмотре все правильно работает и отображается. А если нажать fetch external resource на лифе, то выбивает пикр.
681 2051736
>>51359

>А, вот как. Вроде же не так сложно было бы добавить один новый интерфейс функции, для хранения новых объектов/функций.


Тогда надо делать кучу новых API которые будут принимать "функцию" вместо интерфейса.

Например есть методы сортировки которые принимают Comparator, ты берешь и лямбдой его имплементишь и все работает. Любой старый код просто работает.
У интерфейсов есть дефолтные методы которые позволяют реализовывать дополнительный функционал, типа and() у предикатов.

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

>>51388

>Разве не проще было бы сразу в самом лямбда-выражении описывать выходные параметры и возвращаемое значение


В лямбда выражении нужно реализовывать некий контракт. А описывать контракт надо в методе который принимает лямбду. В принципе Котлин позволяет так делать
fun foo(bar: () -> Int) = print(bar())
Почему в джаве не стали так делать сложно сказать, подозреваю что из-за сложностей с привидением функций. Т.к. нет чистых функций то для каждого
() -> int
надо создавать свой интерфейс и сделать так, чтобы () -> int объявленные в разных местах - были эквивалентны.
682 2051862
>>51705
whitelabel error обычно признак того что страница которую выдал контролер не существует, а тимлифовские страницы при неправильном рендере выдают 500 со стектрейсом.
У тебя скорее всего проблема в контролере или резолвере(если ты менял стандартный спринг-бутовский). Ну и зависимости перезагрузи, может там либа отвалилась в идее. xmlns на работоспособность тимлифа не влияют, они просто для удобства.
683 2051919
>>51862
Спасибо, постараюсь еще покопаться, отвалилось оно как раз когда в контроллере ковырялся, просто не думал что это вообще как-то сломать можно
684 2052518
>>51505
index = CONDITION ? index / 3 : index;
return arr.get(index);
685 2052589
>>52518
int index2;
if (CONDITION) {
index2 = index;
index2 = index / 3;
} else if (!CONDITION) {
index2 = index;
} else {
throw new RuntimeException("invalid condition");
System.exit(1);
}
int result;
result = arr.get(index);
return result;
686 2052591
>>52589
Ты головой стукнутый?
687 2052617
хуйней насрали
https://habr.com/ru/post/560336/
688 2052622
>>52617
Скучно, одни API да кишки JVM.
689 2052624
>>52622
Паттерн матчинг завезли? Жуй.
690 2052667
>>51736
Спасибо, анон.
691 2052740
Аноны, посоветуйте книгу по паттернам, чтобы именно на Джаве. Чет погуглил и ничего адекватного не нашел
6013495492.jpg166 Кб, 1062x1500
692 2052767
>>52740

>>чтобы именно на Джаве


Разве что пикрил, остальные книги про архитектуру, которой язык не особо важен.
693 2053224
>>52767

>Packt

694 2053230
695 2053231
>>53224
Шиз из нюфаг-треда, ты?
696 2053234
>>53231
лол, нет.. В целом качество многих публикаций данного издательства оставляет желать лучшего, на счет конкретной книги хз, хотелось пукнуть))0)
697 2053281
>>52767

>Даешь Раз Пук

698 2053570
>>52767
Не могу понять что нарисовано на картинке? Это какие то рубины? Или это куски мяса?
699 2053609
>>53570
Похоже на зерна граната.
700 2053697
А вот если юзать JdbcTemplate вместо хибернейта, то как делать валидацию без hibernate validator? Только на фронте проверять? Я не думаю, что на реальных проектах не валидируют на стороне сервера.
701 2053728
>>53697
Юнит-тесты пишут, берут h2 или hsqldb, устанавливают для них синтаксис настоящей используемой СУБД и гоняют на ней тесты для DAO. Конечно, они не совершенны, маленькая in-memory СУБД не будет покрывать весь синтаксис оракла, но для большинства запросов хватает.
702 2053848
Котаны, я тут подумал, часто ли такое встречается - написал говно, и приходиться писать ещё больше говна чтобы это как то работало?
Я - только учусь, обосрался с классами и вместо того чтобы все переписать полез в хэшмапу и итераторы, хотя их ещё не знаю. Работает, лол. Часто ли такое происходит на реальной работе?
1618845779919.jpg31 Кб, 593x321
703 2053855
704 2053869
>>53848
На реальной работе порой бывает ТАКОЕ! ШОК!, никакой фантазии не хватит нарочно до этого додуматься. Иногда не знаешь, с какой стороны подступиться к задаче, и пишешь простыню говнокода, а затем внезапно замечаешь, что всё сходится, и переписываешь 100 строчек на 10.
705 2054090
>>13248 (OP)
Реквестирую гайд по экспресс-вкату в джаву для шарписто-питониста.
Около 10 лет пишу на дотнетах и 3 года на питонах, понадобилась джава для решения чисто утилитарных задач: написать плагин для keycloak/elasticsearch/jetbrains'о-IDE, засунуть java-only либу в веб-сервис, чтоб дёргать её из дотнетов/питонов, и т.д.

Т.е. я умею в кодинг/ООП/паттерны/многопоточность и всякое language-agnostic, надо освоить java-специфичные штуки.

Вот эти вот class-loading, системы сборки, менеджеры пакетов, jar/war, подводные камни и грабельки.
Есть ли такой роадмап/гайд/книга?

Чтоб вкатиться в дотнеты из другого языка, надо прочесть 3 книги: CLR via CSharp про платформу, какой-нибудь CSharp in a Nutshell про язык и что-нибуть конкретное про фреймворк - AspNet/WPF/etc. Есть ли такие 3 книги для java?

Я видел интересующие меня темы на hyperskill, но до НГ было не до этого, а теперь оно платное и моя жаба недовольна.
706 2054154
>>53848

>Часто ли такое происходит на реальной работе?


Всегда.
707 2054176
>>53855
Эта таблица херня полная потому что:
- она устарела, перм гена уже нет
- она описывает некоторые GC и даже не указывает для каких именно эта картинка верна
В общем не читайте.
708 2054246
>>54176
Есть норм статьи с актуальным описанием?
709 2054367
>>54176
Джава тоже устарела и что
710 2054791
>>54090

> Вот эти вот class-loading, системы сборки, менеджеры пакетов, jar/war, подводные камни и грабельки.


Думаю, для этого достаточно пары статей в инете. Если нужно что-то более глубоко, по тем же системам сборки, то добро пожаловать в доку
711 2054878
>>54246
Надо искать статьи по конкретным GC.
https://wiki.openjdk.java.net/display/shenandoah/Main
https://www.youtube.com/watch?v=WU_mqNBEacw

Плюс есть еще OpenJ9 от IBM у которого свои GC
https://developer.ibm.com/languages/java/articles/garbage-collection-tradeoffs-and-tuning-with-openj9/

А еще есть Epsilon GC который вообще не собирает мусор.
712 2054906
>>54176
Разве хип относится к гц, а не к самой жвм? Что мешает использовать эту пикчу с другими гц?
image.png87 Кб, 1852x452
714 2054989
>>54906
Разделение на регионы и аллокация новых объектов это часть подсистемы GC. Потому, что именно GC знает где сейчас надо аллоцировать объекты, размеры регионов и их типы. Например у Shenandoah GC вообще нет поколений, но есть регионы. А у Parralel GC есть поколения, но нет регионов.
715 2055002
Помогите с Н2. Не могу поменять кодировку в настройках, из-за этого инфа, взятая из data-h2.sql на запущенном приложении была иероглифами, хотя сам этот файл был в utf-8.
Решил это долбоебским способом, поменяв в идее кодировку data-h2.sql на ср1251. Но хотелось бы узнать как правильно настраивать H2.
Я сейчас подумал, а что если в jdbc-строке (jdbc:h2:db) прописать эту пропертю, как я делал с MODE.
Хуй там. Unsupported connection setting "PROPERTY.FILE.ENCODING"
716 2055028
>>54989
Понятно, вот только Shenandoah тоже принимает xmx и xms чтобы ограничить хип.
717 2055049
>>55028
GC это не какой-то отдельный механизм который просто убирает мусор и все. Он очень тесно связан со всеми остальными системами JVM. Шипилёв в каком-то видео говорил, что больше половины кода шенанды - это изменения в JIT.
718 2055061
Ребята. А вот как сегодня лучше канкаренси изучать? На хабре читал мол ту же книжку канкаренси на практике 2006 + плюс главу по канкаренси из современная джава ин экшн 2018. Это норм?
719 2055476
>>55061

>>канкаренси на практике 2006


Есть издание 2019 года. Там и про фьючерсы написано.
720 2055516
>>55061

> канкаренси на практике 2006


Если судить по пакету java.util.concurrent, полноценное апи для многопоточности появилось только с жавой 1.5 и с тех пор там мало что поменялось. И книга больше не про апи, а про разжевывание конкурентности, многопоточной архитерктуере, примитивы из которых это апи строится и в таком ключе. Апи не сложно загуглить прямо сейчас, но структурированной инфы про конкурентность ценней чем тут будет сложно найти.
721 2055520
>>55476
Что-то не нахожу.
722 2055533
Помогите идиоту, как мне кукисы засунуть в жаваселениум? Меня ебет строгая типизация до крови, не понимаю как привести к типу Cookie. В пердухоне, например, можно легко запиклить-распиклить кукисы, не парясь над типами данных (см. https://stackoverflow.com/questions/15058462/how-to-save-and-load-cookies-using-python-selenium-webdriver)

Минвайл в жаве я не осиливаю считать господи ты помилуй жсон с куками из тхт, который этот же селениум мне и выдал. Читать c помощью Files.lines(Paths.get(fileName))) тоже не предлагать, потому что там Stream<String> (или его можно закастить к Cookie?)

Еще немного и я перестану забивать микроскопы кувалдой и просто напросто открою пайчарм. Обалдеть вообще, взрослый человек, подает надежды, а кукисы из файла считать не может.
723 2055534
Блядь, почему аннотация @ReadOnlyProperty не поддержана ни в одном из спринг дата проектов?
724 2055566
>>55533
гугл джава селениум куки бесплатно https://www.selenium.dev/documentation/en/support_packages/working_with_cookies/
725 2055576
>>55534
Что мешает просто не делать сетер?
726 2055583
>>55576
То.
image.png27 Кб, 807x208
727 2055585
>>55566
Не, фигня, это для ручного ввода каждого элемента кукикосов, а я хочу все что есть одной строкой сунуть.

Как же хорошо питонистам, а
728 2055607
>>55585
По ссылке что я кинул питоновский апи точно такой же как и на джаве.

> ля ручного ввода каждого элемента кукикосов


Что такое элементы кукисов?
729 2055787
>>28592
>>28592
а что за шарага?
730 2056041
>>28601

>На нах пишут бэк. А в бэк вкат сразу не возможен.


Чего блять?
03430ab1da92033a2f67846e789e8447.jpg61 Кб, 563x628
731 2056299
Сап, джависты.

А сколько часов в день вы занимаетесь кодингом?
Хотя бы примерно. Будет круто, если распишете подробно. Сколько кодите, сколько чего-то читаете, мб еще какие-то курсы смотрите.

И еще интересно: что делаете после кодинга (после работы)? Играете в игры? Гуляете? Бухаете? Смотрите фильмы/сериалы?
732 2056438
>>56299
отдельный тред создай и там спрашивай
733 2056464
>>56299
В МВП спроси.
734 2056573
В шапке про SQL написано "Затем переходи к: http://www.sql-ex.ru/", там кто-нибудь регистрировался? Годно? Там без регистрации можно только насладиться дизайном сайта из 90-х, как я понял.
735 2056653
>>56573
Это обычный в энтерпрайзе с JSP.
736 2056755
Норм кидать из контроллера исключения не связанные с хттп? Типа UnsupportedOperationException если в базовом контроллере есть такой-то эндпоинт, а я не хочу чтобы он вызывался. Или вместо этого просто кидать 404?
737 2056833
>>55534
Для каких целей ты хочешь ее использовать?
738 2056842
>>56755
Зачем ты его тогда сделал, если не хочешь, чтобы он вызывался?
739 2056865
>>56842
Он в базовом контроллере, но в некотором дочернем контроллере он не нужен. Ну не суть, уже разобрался.
740 2056944
>>56833
Для своих.
741 2057310
Что такое спринг? Я закончил с джавакором (хотя я к нему, конечно, ещё вернусь), сейчас вот читаю Spring in Action 5, вдумчиво так читаю, копипащу куски кода, пытаюсь пынять, что происходит и зачем, но нихуя не доходит. Чувствую себя сосочкой-девочкой, которая делает хуйню методом тыка. Так СЛОЖНА не было, пожалуй, ни на одном из этапов изучения кора.

Так всё-таки что это такое? И умоляю, скажите, что я не один такой долбоёб.
742 2057319
>>57310
Ты не один.
В начале вообще нихуя не понятно, за спринг строится на слишком большом числе идей и паттернов. Легче всего повторять по туториалу, запоминать последовательность действий, чтобы магия работала. Затем, когда первые круды зарвботают, можно вникать в смысл dependency injection и прочей хуйни.
16062396573210.jpg69 Кб, 604x604
743 2057390
>>56865
Наследование контроллеров, в воздухе разлился сладкий запах ООП.
744 2057400
>>57390
AbstractController
@
ConcreteControllerImpl
745 2057417
>>57390
>>57400
В чем я не прав?
746 2057428
>>57400
Этот пост сначала как шутку прочитал.
>>57417
Какие методы наследуешь?
747 2057440
>>57428

>Какие методы наследуешь?


Стандартные. Пост, патч, етц.
748 2057485
>>57310
Спринг - это большой фреймворк. В самой основе его - идея того, что взаимодействие между инстансами классов приложения (объектами) можно передать некоему отдельному "управляющему" объекту.
Этот "управляющий" объект согласно описанным в конфигурациях(xml-ки или java классы со специальными аннотациями) правилами инстанциирует управляемые объекты и "соединяет"(сетает поля) их с другими объектами.
Если это понятно, то дальше возникают вопросы: а как спринг разруливает, какие классы инстанциировать раньше, а какие позже. И там уже всё станет понятно, если почитать эту книжку
749 2057494
>>55534
потому что нет причины не делать что-то. И наоборот, есть только причины что-то делать
750 2057500
>>55002
а попробуй запускать h2 с -DmyAwesomeProperty=UTF-8
751 2057555
Чет я не совсем понял, если прописать
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id>copy-dependencies</id>
<phase>prepare-package</phase>
<goals>
<goal>copy-dependencies</goal>
</goals>
<configuration>
<outputDirectory>${project.build.directory}/classes/lib</outputDirectory>
<overWriteReleases>false</overWriteReleases>
<overWriteSnapshots>false</overWriteSnapshots>
<overWriteIfNewer>true</overWriteIfNewer>
</configuration>
</execution>
</executions>
</plugin>

<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<!-- <classpathPrefix>lib</classpathPrefix> -->
<!-- <mainClass>test.org.Cliente</mainClass> -->
</manifest>
<manifestEntries>
<Class-Path>lib/</Class-Path>
</manifestEntries>
</archive>

</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>11</source>
<target>11</target>
</configuration>
</plugin>

То мавен упаковывает все библиотеки для всех платформ.
Если это так, то гарантированно все будет работать на всех платформах? Чет мне кажется, что с большой вероятностью не все библиотеки имеют компоненты для всех платформ, и я просто нагружаю jar-ник мусором. Можно ли упаковывать библиотеки только для выбранной платформы и получать за одно предупреждение, если чего-то не хватает?
Я немного ахуел с jar-ника весом больше гигабайта.
751 2057555
Чет я не совсем понял, если прописать
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id>copy-dependencies</id>
<phase>prepare-package</phase>
<goals>
<goal>copy-dependencies</goal>
</goals>
<configuration>
<outputDirectory>${project.build.directory}/classes/lib</outputDirectory>
<overWriteReleases>false</overWriteReleases>
<overWriteSnapshots>false</overWriteSnapshots>
<overWriteIfNewer>true</overWriteIfNewer>
</configuration>
</execution>
</executions>
</plugin>

<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<!-- <classpathPrefix>lib</classpathPrefix> -->
<!-- <mainClass>test.org.Cliente</mainClass> -->
</manifest>
<manifestEntries>
<Class-Path>lib/</Class-Path>
</manifestEntries>
</archive>

</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>11</source>
<target>11</target>
</configuration>
</plugin>

То мавен упаковывает все библиотеки для всех платформ.
Если это так, то гарантированно все будет работать на всех платформах? Чет мне кажется, что с большой вероятностью не все библиотеки имеют компоненты для всех платформ, и я просто нагружаю jar-ник мусором. Можно ли упаковывать библиотеки только для выбранной платформы и получать за одно предупреждение, если чего-то не хватает?
Я немного ахуел с jar-ника весом больше гигабайта.
752 2057595
>>57555
Если речь не идет про граальвм, то jar и скомпилированные классы в нем работают под одну единственную платформу JVM и 99% либ не важно где они будут запускаться. Некоторые либы содержат в себе пребилды из бинарников, но обычно они сразу включены для нескольких платформ. Как поступить с отдельно взятой зависимостью нужно смотреть в доках этой конкретной говнолибы.

> Чет я не совсем понял, если прописать


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

> Я немного ахуел с jar-ника весом больше гигабайта.


Найди в/рядом с билдом папку lib и посмотри что там жирнее всего. Потом найди откуда эта зависимость взялась в проекте.
Я например ахуел когда увидел что commons-collections занимал 20 с лишним метров, при чем его принесла васянская говнолиба на пару строк кода, за что была выброшена нахуй.

> Можно ли упаковывать библиотеки только для выбранной платформы


Можно изъебаться с java-module, тогда по идее в билд уйдет только то что нужно, но на многое не рассчитывай
Можно изъебаться с pro guard, но на жаве я с ним не работал

> Я немного ахуел с jar-ника весом больше гигабайта.


Еще возможно ты неправильно указал скоупы зависимостей и весь javaee рантайм ушел в билд https://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html#dependency-scope
753 2057854
НАПИСАЛ РЕКРУТЕР
@
ПРЕДЛАГАЕТ ПИЛИТЬ ГРЕЙДЛ
@
А ТЫ ЛЮБИШЬ МАВЕН
754 2058009
>>57854
Люби в свободное от работы время.
755 2058029
>>57854
Senior Maven Developer
756 2058554
>>57310
В этой книжке не объясняется теория спринга совсем. На ютубе есть алишев, там 20 видосов по самому начальному уровню спринга - ди+начало мвс. После этих видосов берись за книжку. Ну или про спринг читай, но это талмуд.
image.png146 Кб, 2280x1069
757 2058783
Анон, помоги!

Суть задачи такова:
На вход дается набор строк, объединенных в коллекцию. Нужно посчитать, сколько раз повторяются слова длиннее 4х символов (ну и ещё чтобы чаще 10 раз встретились) и вывести ответ.

В итоге получается херня: при обработке первого текста получается такая срань.

Логика такая:
привожу к нижнему регистру (это условие задачи)
бью все, что не буквы (ещё такую регулярку поставил line = line.replaceAll("[^\\p{IsAlphabetic}]", " "); )
бью строку на слова по пробелу
перебираю каждое слово по логике: если есть, то добавляю к значению единицу, а если нет, то добавляю в коллекцию со значением 1
потом сортирую это дерьмо, не добавляя неподходящие варианты и все.

Подскажи, где ошибка?

https://ideone.com/qzxd9C
image.png49 Кб, 243x829
758 2058790
>>58783
Блядь.
Точно.
Ошибся с расположением и все в одном цикле болталось, как говно в стиралке.

Правда, я хз, почему такой всратый результат получился. Я где-то кодировку неправильную указал или что?
str.JPG39 Кб, 1029x384
759 2059063
>>58783

>>Нужно посчитать, сколько раз повторяются слова длиннее 4х символов (ну и ещё чтобы чаще 10 раз встретились) и вывести ответ.

760 2059118
>>58790

>Правда, я хз, почему такой всратый результат получился. Я где-то кодировку неправильную указал или что?


Для массивов в Java не переопределен toString() это дефолтный из Object поэтому надо явно делать Arrays.toString() если хочешь посмотреть содержимое.
image.png220 Кб, 603x434
761 2059407
Привет, джавач, вот тебе очередная статистика по постам в день за последние 5 тредов.
762 2059408
>>59407
Иди нахуй.
763 2059411
>>59408
Не пойду, кто-то должен это постить, а если не я, то кто?
496-4964664angry-npc-hd-png-download.png60 Кб, 860x1078
764 2059490
Ребята, нужно логаутить юзеров в springe
Самого себя я логаутую с помощью SecurityContextHolder.getContext().setAuthentication(null);
Как мне разлогинить другого юзера по имени(или айди)?
(В гугле какие-то лютые костыли находятся)
765 2059521
>>56573
Годно
766 2059528
>>58554
Лучше по Трегулову на юдеми, либо торрентах
767 2059549
>>59528
не нашел на торрентах.
768 2059554
>>59549
Нормис ебаный, дебил
https://nnmclub.to/forum/viewtopic.php?t=1427342
769 2059563
>>59554
спасибо братец, думал этот трекер сдох давно.
770 2059568
>>59407
А что, с прошлой статистики уже 7 месяцев прошло? Вот это время летит.
771 2059573
>>59490
Звучит как какая-то хуета
772 2059575
Джаваны. А насколько нужно знать sql/конкретные базы, чтобы вкатиться джуном?
Для spring in action мне хватило книжечки на 200 страниц крупным шрифтом(Алан Бьюли).
А на собесах будут дрочить нормализациями, задачками на сложные джоины, спрашивать кап теорему, особенности реализации транзакций?
773 2059621
>>58783
Ебать, спасибо за ресурс.

Поясните, почему это нормально для джавы, лол?

https://ideone.com/Skrx33
774 2059635
>>59568
Прошлую в апреле постил.
775 2059638
>>59575
Не будут, если написал пару крудов, то уже знаешь всё. За нормализацию спросят максимум до третьей формы, джойны возможно, транзакции вряд ли меня таки спросили, но меня базисты собесили
776 2059641
777 2059718
>>59490
Можно попробовать удалить все его сессии:
persistentTokenRepository.removeUserTokens(username);
или истечь:
for (SessionInformation info : sessionRegistry.getAllSessions(username, false)) {
info.expireNow();
}
778 2059728
>>59621
Ты про что именно?
779 2059755
.>>59490

>(В гугле какие-то лютые костыли находятся)


Потому что ты что-то не то пытаешься сделать. Опиши поподробней задачу.
780 2059762
>>59755
Администратор отключает юзера(банит например), нужно его разлогинить сразу
781 2059793
>>59762
А как пользователь авторизовывается в приложении - форма+сессия в куке или OAuth?
Сколько инстансов сервера поднято (один или несколько)? Где хранятся сессии если авторизация через сессионую куку?
782 2059838
>>59793
Слоожные вопросы пошли
Стандартная хуйня из коробки
Форма+кука в памяти получается
783 2059914
>>59490
Вот как спринг разжижает мозг человека
784 2060059
>>59575
Джоины, юнион, транзакции и асид, индексы, уровни изоляции и какие проблемы они решают. Ну и нормальные формы тоже чуть-чуть бы знать. На sql-ex 20 первых задач хотя бы
785 2060063
Суп, жабаны. Идея предлагает при старте включить следующуюю фичу:

>Download pre-built shared indexes


>Reduce the indexing time and CPU load with pre-built JDK and Maven library shared indexes


Что это за индексы? Стоит ли включать их загрузку?
786 2060066
>>60059
Все это, если что, знать можно неглубоко, сильно не запаривайся, про всякие кап теоремы точно только ебанутые Джуна спрашивать будут. По моему опыту вообще всем пофиг, что ты там говоришь, главное уверенно. А в глубину очень редко копают, и в основном это нюансы кора и спринг, в основном транзакции. Но это я про миддл собесы, как там у джунов хз
787 2060068
>>59407
Анон, с этими шрифтами нужно что-то делать...
788 2060069
>>60063
Для быстрой навигации между определениями идея ищет все классы из проекта, из jdk и используемых зависимостей мавена и строит по ним индекс, причём частично перестраивает при каждом изменении конфигурации мавена или пре реимпорте. Ну и тебе предлагают не индексировать каждый раз это всё, а скачать уже построенные индексы для ждк и популярных либ из мавена, которые всё равно везде одни и те же, и нужно будет строить индекс только для классов твоего проекта.
789 2060072
>>60069
Понял, спасибо за разъяснение. Тогда включу, пожалуй.
790 2060073
>>60068
Comic Sans хорош, просто у меня разрешение экрана маленькое.
791 2060083
>>60073
Не, тут даже не в разрешении дело. Это плохой шрифт, он плохо выглядит в современном вебе. Плюс у тебя выравнивания какие-то странные, все буквы пляшут абы как. Подложка вокруг них вообще пиздец, она под шрифт не попадает никак да и не нужна вообще, у тебя нет за ней контрастного изображения. Короче, возьми любой нормальный современный шрифт без курсива, без жирного, без подложки и выровняй всё нормально, особенно нижние даты - они должны быть выровнены по нижней (левой для даты) границе, а не по верхней. Опционально, вокруг рамок аниме-тяночки неплохо бы сделать градиент в белый или в цвет любой другой выбранной подложки, чтобы картинка плавнее ложилась под график. Удачи!
image.png189 Кб, 609x482
792 2060097
>>60083
Спасибо, добавил градиент в прозрачный, взял Arial, даты выровнялись сами. Не дизайнер я.
793 2060101
>>58783
Дополнительный вопрос: а какие есть простые способы отсортировать TreeMap по значению и по алфавиту (типа, вначале самые частые слова, а потом уже среди равных по алфавиту), кроме старндартного перебора с if/else?
794 2060177
>>60059

>> На sql-ex 20 первых задач хотя бы


Какой то странный сайт из 90-х. Списков задач нет, одни рейтинги кругом.
795 2060197
>>60101
Написать компаратор
796 2060200
>>60177
Да, древний сайт, но это просто задачник, там надо зарегаться, советую попробовать. 20 задач решишь - этого хватит для собесов.
797 2060201
>>60177
С джава рашем близко не стоит даже
798 2060214
>>60201
Двачую, где вообще цветные картиночки?
799 2060273
>>59521
>>60059
Горит жопа с этого sql-ex. "Найдите номер модели, объем памяти и размеры экранов ПК-блокнотов, цена которых превышает 1000 дол." - вывожу объём памяти HDD, а они имели ввиду RAM. Ну и само словосочетание - "ПК-блокноты". И это только третье упражнение. Непонятно, как они там тестируют глубокое понимание запросов, если не могут задачу сформулировать нормально. Ещё и при регистрации фамилию требуют, пиздос.
800 2060296
>>57310
начни с Алишева на ютубе, потом spring in action 3. В этой книге хорошо написано про core и mvc
801 2060315
>>60296

>spring in action 3


Добутовская древность с 3 спрингом с хмл-онли конфигами?
802 2060332
>>60200

>>20 задач решишь


я 3 каким то образом решил, но не понял как остальные решать, он мне одну и ту же подсовывает.
>>60201>>60214
не знаю как там в жавараше, но литкод и его аналоги удобны и понятны
803 2060344
>>60332

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


Слушай, а может ну его, программирование?
804 2060535
>>59838
Тебе надо заинжектить себе SessionRepository бин https://docs.spring.io/spring-session/docs/current/api/org/springframework/session/SessionRepository.html
И у него есть метод удаления сессии.
805 2060672
подскажите, как лучше сделать чтение файла(список url адресов) в несколько потоков?
и надо еще найти в файле русские слова длиной больше 3 - это лучше в процессе чтения добавлять в коллекцию? или сначала считать, а потом отфильтровать
807 2060832
Кто разбирается в аспектах? Подскажите как реализовать вызов метода, аннотированного кастомной аннотацией при вызове какого-то конкретного метода.
808 2060944
Есть задача, которая решается в тупую через поллинг или в умную через три мьютекса. Как ее решить?
809 2060960
>>60944

> Как ее решить?


Принести формулировку задачи.
810 2060964
>>60960
Реализовать локи с приоритетом.
811 2061090
>>60944
А вообще думаю через три мьютекса все равно не получится сделать.
812 2061111
>>60832
Что такое аспекты? Это фреймворк какой-то или что?
813 2061112
Анон, писать монолитный бэкенд в 2021 — это зашквар?
814 2061143
>>61111
Конкретно он имеет ввиду Spring AOP или AspectJ
815 2061151
>>61143
Интересно. Это типа ещё одна парадигма программирования? Я так по диагонали пробежался по статье на хабре.
816 2061164
>>61112
Сынок, ты знаешь что означает зашквар?
817 2061166
>>61151
Это почему-то называют отдельной парадигмой, но по мне так это всё равно что называть try-catch парадигмой. Суть там тупо в том, чтобы писать интерсепторы, перехватывающие, которые будут перехватывать все вызовы/завершения каких-то методов и делать указанные действия. Нужно во всяких/либах/фреймворках, в пользовательском коде используется редко, это аналогично рефлексии.
818 2061169
>>61164
Знаю бать, только я не в смысле тюремных понятий. Ну типа стыдно и непрофессионально делать монолитный бэкенд.
819 2061170
>>61166

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


Ого, а это уже интересно. Надо не полениться и поизучать.
820 2061173
>>61112
Никакого зашквара. Микросервисы решают одни проблемы и создают другие. Нужно знать, когда их применять, а не РЯЯЯ 2021 ДАВАЙТЕ СЕРВЕРЛЕСС FAAS МИКРОСЕРВИСЫ НА КАЖДУЮ ENTITY.
821 2061182
>>61173

> СЕРВЕРЛЕСС FAAS


Я в амазоне понимаю чуть более, чем нихуя. Просто надо написать бэкенд для очередного мессенджера, и я хочу сделать её с применением микросервисной архитектуры.
822 2061199
>>60944

>в умную через три мьютекса


Я не знаю требования и не видел алгоритм, но уже по описанию идея выглядит как адский велосипед, который возможно еще к дедлокам будет приводить.
823 2061213
>>60344
Ты небось еще и линуксоид? Иде ненужна, вим лучше вех?
824 2061226
>>61182
Это оверхед, ты просто хочешь поиграть, а по факту только вред от этого. Но если это пет проект, то почему бы и нет.
825 2061349
>>61226
Ну это не совсем пет-проект. Наш СЕО хочет чтобы мы развивались как девелоперы, поэтому дал такое задание, и мы в свободное время занимаемся этим. Вот я и хочу подобрать стэк и архитектуру сложнее чем я работал раньше.
826 2061425
Есть список url-ов на файлы. Как лучше распределить этот список между потоками(они будут делать операции над этими файлами), чтобы все потоки были примерно одинаково загружены?
828 2061492
>>61425
А потом окажется, что диск может работать только с одними данными за единицу времени, и треды будут отрабатывать по очереди, будто всё в одном треде делается.
829 2061694
А хуле никто ничего не пишет, м? Я не понял, вкатывальщики закончились что ли?
830 2061696
>>61694
Жаба сдохла
831 2061698
>>61696
Нет, не сдохла. Живее всех живых.
832 2061703
А можно в ExecutorService execute передать поток который уже в нем запускался, но поменять параметры
833 2061704
>>61696
Какие есть аналоги джаве в энтерпрайзе кроме шарпа и пхп? Джаваскрипт не предлагать.
834 2061712
>>61703
ты передаешь не поток (Thread), а Runnable
можно
835 2061721
>>61712
поток тоже Runnable, но смысла это не меняет
836 2061840
>>61721
Меняет. Поток выполняет себя сам и после того как завершился его нельзя запустить повторно. А Runnable можно выполнять сколько хочешь.
837 2061860
Есть один вебсервис. Пользователь вводит данные, они валидируется на фронте (хтмл/жс), потом пришедшие данные валидирует контроллер, потом отправляет дто в сервис, там его валидирует сервис, создает и передает сущность хибернейту и тот перед сохранением валидирует ее.
Так вот нормальное ли это поведение, если все происходит в пределах небольшого монолита/одного микросервиса или достаточно валидировать данные в контроллере, а дальше и так понятно что все будет нормально?
838 2061885
>>61860
А зачем столько валидаций? На фронте и контроллере по-моему достаточно. Зачем там городить огороды?
839 2061901
>>61860
Смотря что за валидация, проверку полей на NULL можешь сделать и в контроллере, но вот если у тебя там передаются id других сущностей, надо проверить, что они существуют, и это можно сделать только в сервисе.
На фронте первичная валидация нужна в любом случае, чтобы юзер сразу увидел поля с ошибками, выделенные красным, а не вводил каждый раз всё заново.
840 2061907
>>61885

>На фронте и контроллере по-моему достаточно.


Никогда так не делайте! Проверки на бекенде это обязательная вещь.

Проверки на фронте тоже желательны, они дают хороший UX - пользователь сразу видит где у него ошибка в форме.

>>61860
Да нормально, потому что код меняется. Возможно появиться новый контроллер, который будет использовать этот сервис и там забудут добавить валидацию.
841 2061935
>>61704
Аналоги тормознутому говну застрявшему в нулевых годах? Таких нет
16191954607160.png125 Кб, 400x400
842 2061950
>>61696

>Жаба сдохла

843 2061951
>>61704
Есть ещё Goвнище, но из двух зол лучше вообще ничего не выбирать
image.jpg141 Кб, 750x548
844 2061952
845 2062156
Анон. Осваиваю kafka+spring boot.
Поднимаю в докере кафку(+zookeeper).
Прописываю в docker-compose порты кафки, зукипера.
А где в спринге я это конфигурирую? в IDEA, например?
В коде? или в application.yml ?
Или как я должен указывать спрингу, где ему искать кафку?
Попробовал и те, и се порты ставить в compose. Спрингуля ругается..
846 2062251
>>62156
куча гайдов и примеров в гугле, пиздуй отседова
847 2062265
А есть ли какие-нибудь более-менее видосики-курсы на английском для вката с нуля?
848 2062274
>>62265
Нет, только книги.
849 2062294
есть ли для идеи какой нить плагин, чтоб было что то наподобие экселя, но формулы можно было хуярить на джаве?
850 2062297
>>62294
Нихуя ты придумал.
851 2062308
>>62294
Есть.
852 2062318
>>62308
найс, пруфы будут?
853 2062322
>>62294
Напиши сам, вместо джавы можешь сунуть груви.
854 2062334
Вопрос.
Есть воркер который что то селектит из БД пачкой и обрабатывает это дерьмо.
Что лучше 10 потоков которые будут селектить по N и потом это прокручивать или 1 поток который будет селектить и потом фор луп хуярит в 10 поток то что селектнуто?
855 2062337
>>62334
А да.. паралел стрим не предлагать.
856 2062341
>>62334

>воркер


Рабочий

>селектит


Выбирает

>фор луп


Цикл

Переписывай свою хуйню на человеческий.
857 2062342
>>62341

> Переписывай свою хуйню на человеческий.


Не переписывай, а рефакторь.
858 2062344
>>62341
1С-тред некст.
859 2062364
У спринг даты одни аннотации для маппинга, а для сериализации в json другие. Как вы с этим живете?
860 2062369
>>62364
Используем майбатис.
861 2062372
>>62274
Ну ладно.
862 2062378
>>62364
Используем JdbcTemplate здорового человека, а сериализацию описываем в WSDL.
image.png340 Кб, 640x446
863 2062417
>>62294
Для ОпенОфиса можно писать плагины на Яве соответсвенно можно написать функцию и вызывать ее из ячейки
864 2062421
>>62378

>WSDL


Wow. Such enterprise. Much WebSphere.
865 2062443
>>62369
У вас майбатис весь на аннотациях? У меня на новом проекте на XML мапперы почему-то
03A2B14D-6AC9-4AE4-83C8-2A9373D73C66.MP41,6 Мб, mp4,
464x848, 0:10
866 2062566
867 2062623
>>62566
Не понял прикола.
868 2062679
>>62566
Не вижу ничего смешного.
869 2062685
Что жавачушки, правда глаза колет?
870 2062703
Ни одной вакансии на джуна в моём городе(Екатеринбург, кроме сбера и то требуют год опыт продуктовой разработки), а я только почувствовал свою относительную готовность, есть три стула, либо перекатываться на C#, либо спамить на вакансии мидлов, либо валить в Москву/Питер. Что делать, лол?
871 2062708
>>62623
>>62679
Ну типа C# = see sharp. Розумієш?
872 2062727
>>62443
Да я видел и то и то. Разница там минимальная.
хмл вроде старый стак.
873 2062728
>>62334
Бампану вопрос. Никто не знает?
874 2062729
>>62566
Бля шо C# хуйня шо жава. Одинаковое дерьмо на 95%.
Скобочка с другой строки и указатели ох ебать, вот ето разница!
875 2062749
>>62729
Проперти, поинторы, перегрузка операторов, шаблонные строки как минимум который хотел бы видеть в жаве
876 2062756
>>62749
Ух как жить то без перегрузки операторов.
Котлин и весь энтерпрайз одна и та же одинаковая параша.
877 2062764
>>62756
Очень не просто, с бигдесималом например приходится в комментарии расписывать формулу, а потом ее имплементить через методы. Больше 4 операций уже выглядит как хуйня из разряда постройки фабрики фабрик. И всякие a.comareTo(b) > 0 вместо простого a > b туда же. Матрацы, вектора, вообще все что можно через алгебраические типы выразить в жаве превращается в нечитаемую хуйню.
Про структуры ещё забыл, чтобы не ебать кучу с гц. Они бы тоже не были лишними
878 2062768
>>62334
В частном случае, когда у тебя воркер работает на одном ядре и всё "дерьмо" - CPU-intensive задачи, эффективен будет вариант "2" с циклом.

В общем случае оба варианта - эскобар.jpg (в 1 случае лишние хождения в БД и лишние переключения контекстов для CPU-intensive задач, во 2 случае - простой всех ядер кроме одного, в котором крутится твой цикл for, и твой единственный поток будет большую часть времени в состоянии WAIT для IO-intensive дерьма).

Обычно делают так - берётся пачка задач (из БД или из очереди) и распределяется для параллельного выполнения в пуле потоков, где их кол-во = NubmerOfCores*2.

Детали (размер "пачки дерьма" и кол-во потоков в пуле) зависят от твоего "дерьма" - это CPU- или IO-intensive задачи, как долго каждая из них выполняется, сколько у тебя ядер и насколько быстрое у тебя IO.
image.png13 Кб, 1124x48
879 2062770
>>13248 (OP)
Пачему?..
880 2062774
>>62770
Открой visualvm и посмотри
881 2062805
>>62768
Окей, а если таких воркеров 20+ разных? У каждого свой фор луп.
882 2062823
>>62729
Настолько хуйня, что такой большой % рынка занимает.
883 2062828
>>62764
По рукам бы тебе за такую архитектуру.
884 2063022
>>62805
Вариант "2" с одним ядром на воркер.
885 2063038
>>62828
Для макаки даже сравнить 2 числа превращается в архитектуру фабричныхпроксифакторибинов. А по рукам нужно было гослингу дать и выгнать нахуй ещё на ранней стадии за решения которые исправляются до сих пор
886 2063079
>>63038

> фабричныхпроксифакторибинов


У тебя травма после энтерпрайзной галеры похоже.
guava-math, apache.commons ? Не, не слышал.
В джаве в 99% случаев есть нужный велосипед.
Нет зачем лучше пилить свои костыли.
Как вершина такого долбоебизма это обычно свой MathUtil с кучей приватных методов и без покрытия тестами.
887 2063080
>>61952
>>61950
как же я ору с этой хуйни
888 2063082
>>63022
Спасибо. Пойду напишу говна в проект, лул.
889 2063204
Вопрос к тем, кто вкатывался и вкатился: что в итоге интереснее - учиться или работать? Имеется ввиду трудоустройство как брекпоинт.
890 2063219
Сел я тут ебашить это ваше говно и во второй же день уже есть вопросы. Почему с меня требует два ввода? Пока была одна + вывод изначальной тоже требовало два. И только с выводом одной всё было нормально, по-человечески. Что я не учёл?

Алсо, норм ли SoloLearn для поёбывания Java "для себя"? Изучу основы, перекочусь под Андроид чтобы клепать односортное говно и выкидывать исходники на GitHub в открытый доступ. Хочу, пока есть время и бабки родителей, набить руку и портфолио аккаунт на Гите, чтобы потом размашисто тыкать его в рожи кому надо будет.
891 2063231
>>63079
При чем тут библиотеки, тесты, архитектуры пиздоглазая ты обезьяна. Прочти ещё раз о чем идёт речь сначала ветки, желательно не жопой. Велосипедов полно, а того что нужно просто на уровне жвм или синтаксиса языка нет. Что непонятного?
892 2063622
>>63219

> Почему с меня требует два ввода?


Потому что ты два раза вызываешь ввод.
893 2063624
>>63204

> трудоустройство как брекпоинт


Как это понимать?
894 2063631
>>63204
Интереснее работать, если в шею не гонят с дедлайнами. Ну и от проекта зависит конечно же.
895 2063768
>>63622
В каком месте второй раз? Тут только System.in при получении значения, не более. Все последующие действия - ебля с полученным. Или Джава не так логична и правильна, как языки для гетеро?
896 2063782
>>63768

>>В каком месте второй раз?


7 строка
897 2063800
>>63768
Все совершенно не так, нет никакой "ебли с полученным".
В 5 строке ты вообще ничего не читаешь, только создаёшь объект, который будет читаешь, если ты к нему будешь обращаться. Не будешь обращаться - не будет и читать.
В 6 и 7 ты буквально говоришь "прочитай следующее число и верни". Дважды просишь ввести с клавиатуры и вернуть тебе значения, вот он дважды и требует ввод.
Ещё попробуй ввести оба значения значения через пробел и нажать Enter
1622681333097.jpg19 Кб, 500x426
898 2063955
Двач, мне надо несколько сервисов объединить, чтобы у них был базовый УРЛ, и чтобы доступ был только после авторизации. Я долбоёб-ньюфаг, никогда этого не делал. Нашёл несколько гайдов но чую там много лишней мне не нужной информации. Можешь подсказать какие-то годные туториалы, какими возможно ты сам руководствовался?
899 2064003
>>63624
Чтобы кто-нибудь вместо ответа на вопрос не стал рассказывать, что после трудоустройства обучение продолжается и проч.
900 2064046
>>64003
Без обучения никак. По крайней мере несколько первых лет.
901 2064054
>>64046
Ладно. А с интересом-то что?
902 2064060
>>64054
Работать интереснее. Реальный опыт получаешь, так скозать. Реальный не в плане кода (ведь когда ты кодишь свои "домашние" проекты, то ты тоже получаешь реальный опыт кодинга), а в плане организации процесса и каких нибудь инструментов, например той же джиры.
903 2064063
>>62265
Есть. Вводишь в ютубе "java full course" или "java for beginners" и выбираешь. Можешь попробовать мемного thenewboston или вылизанного mosh. Выбери то, что не будет тебя насиловать.
904 2064377
>>63800
Спасибо, анонче, видимо, я просто не слишком далеко зашёл в изучении этой фигни. Ладно, ты мне помог, вроде понял.
image.png28 Кб, 642x269
905 2064380
>>63800
Спасибо, фиксанул. Теперь как надо пашет. Кстати, через пробел работало, читало два числа.
906 2064924
Сап, аноны. Открываю Линкедин, а там каждый второй пидор постит себе на стену ссылку на credly.com, мол, смотрите какой я пиздатый, я теперь AWS Certified Solutions Architect.

Я тоже хочу. Только нахуй оно надо, как вкатываться, что читать и есть ли от этого хоть какой-то буст в зп?
907 2064956
>>61840
Поток ты запускаешь через start, а метод run можно вызывать сколько угодно раз. Так вот, куда ты передаешь Runnable будет использовать именно run
908 2065053
>>64924
В России это не очень важно, контор которые сидят на AWS не так много. А вот если работать на западного барина, это важно.
image.png2,4 Мб, 1200x1200
909 2065171
Прочитал тред, а так же вне треда сталкивался презрительным отношением к спрингу, вчера общался с товарищем с другой компании и его коллегами, те обсуждали, что спринг - "изи говно, даже бабушка моя на нем че угодно напишет (с)". В то же время каждая первая вакансия (по крайней мере ру) хочет весну чуть ли не как базу. Почему так нахуй? Подразумевается что тру-сеньоры пишут на "чистой" джаве+мавен (например)? Я вот продолжаю знакомится со спрингом >>17438, мне он пока кажется сложнее и мудренее чистой джавы (джун).
1545816076333.jpg53 Кб, 403x403
910 2065249
>>65171

> презрительным отношением к спрингу


Это у кого оно презрительное?

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

Особенно это охуенно ощущается, когда ты пытаешься поднять веб-приложение на JE22 стэке, и тебе надо подключить 1488 зависимостей, которые ещё и конфликтуют между собой, настроить ебучий энтерпрайзный веб-сервер (ну или поебаться с томкатом), и потом ещё подключение с бд.

В спринге ты ПРОСТО ставишь пару аннотаций, пишешь пару конфигов в application.properties, и не ебешься ни с внедрением зависимостей (для чего изначально спринг и был создан), ни с подключением к бд, ни с мэппингом сервлетов, и т.д.

Батя грит малаца, харашо зделали.
911 2065332
>>65249

>Это у кого оно презрительное?


Да вот, говорю же, послушал "выпукников ойти специальностей с 10летним стажем", а чуть ранее увидел пост (посты?) этого анона >>50235

Спасибо за пояснение, я просто немного мнительный, боюсь привыкнуть к удобству и пиздец, но это мне уже голову лечить надо наверное.
912 2065344
>>65332
Ну задачки на литкоде тебя безусловно прокачают твоё понимание алгоритмов. Но дело в том, что рыночку нужны так называемые макаки в основном.
913 2065368
Кодварс vs Литкод?
914 2065384
>>65368
По задачам.
915 2065391
>>65384
Логические.
916 2065450
>>65171
Лол, не рассматриваю вакансии без спринга вообще, даже если предлагают какие-то аналоги или свою самописную хуйню. Спринг нужен почти всем, кто его хейтит - долбоеб
917 2065501
>>65450
Всегда были копротивленцы.
918 2065553
>>65450
А если это игровой сервер, где куча асинхронщины и многопоточки с low latency?
919 2065556
>>65553
То это не жаба.
920 2065564
>>65556
А что? Только плюсы и раст? На джаве тоже периодически вижу вакансии, где ищут разраба с очень хорошим знанием Concurrency и NIO.
921 2065651
>>62364
Бамп, я все еще подавлен.
922 2065744
>>65553
Реактивщина?
923 2065745
>>62364
Используем дто
924 2065747
>>65745
Ну хуй знает, у меня сущность из одной базы пересылается в другую. Зачем там дто непонятно, но парсинг сделан через json.
925 2065749
>>62364
Аннотации JPA или что? Какого маппинга?
926 2065750
>>65749
Да, @Transactional и все такое.
927 2065754
>>65750
Тогда я не понимаю при чём здесь вообще json.
928 2065755
>>65750
А всё понял что ты имел ввиду сорри
929 2065756
>>65754
Надо одним и тем же полем мне надо ставить и @JsonIgnore и @Transactional, вот я о чем.
930 2065757
>>65756
А, ну да, немного неудобно. Ну я ДТОшки юзаю, и MapStruct.
931 2065759
>>65756
А зачем тебе такие поля?
932 2065762
>>65759
Надо.
933 2065764
>>65762
Может это должен быть какой-нибудь temporal объект? Модель отражает то, что хранится в бд. Довольно странно использовать там @Transient поля
934 2065768
>>65764
Это просто геттер чтобы достать данные, которые лежат где-то внутри вложенного объекта. При сериализации он не нужен, а вот в коде с ним работать удобнее.
935 2065774
Джавач, какой лучше сервер выбрать для виртуалки, на которой будут работать 6 микросервисов? Виндовс не предлагать: он слишком дорогой.
936 2065775
>>65774
Какую ОС точнее. А ещё точнее какой дистрибутив линукса.
937 2065778
>>65775
Бери Oracle Linux или Ubuntu.
RHEL и CentOS платные, адекватных аналогов CentOS еще не завезли.
не понятно нахуя ты это в жаба треде спрашиваешь
938 2065780
>>65778
Спасибо, возьму убунту, по ней дохуя инфы.
А в каком треде? В ОПС?
939 2065899
Какая сейчас ситуация с трудоустройством без опыта.
Я так понимаю, нихуя не устроиться, если не уметь вертеться и пиздеть.
940 2065909
>>65899
Вертеться и пиздеть не надо. Если теорию знаешь, можешь решить задачу или тестовое и можешь связать хотя бы два слова, этого хватит.
941 2065914
>>65909
Просто без этого даже на собеседование не попадешь. Надо писать на корпоративную почту или отвечать на вакансии мидлов, написав, какой ты крутой классный, стрессоустойчивый и рвешься работать и вообще видишь светлое будущее этой компании, пожалуйста, уделите мне время, я уже согласен быть лошадкой и купил смазку за свои деньги. И лучше таких сообщений в день слать по 50.
Так по крайней мере на Ютубе говорят.
942 2065918
>>65914
Можешь на линкедине аккаунт завести и хров из своего города подобавлять, ну и бомби своим резюме кампании своего города, не может быть такого чтоб тебя на собеседование не позвали.
943 2065985
>>65564
95% вакансий не про это. Тут своя специфика
944 2065989
>>65909
Пиздеж, сам попробуй с нулем опыта на собес напроситься, ну максимум штук 10 собесов за месяц пройдешь, и то, если повезёт. Таких обычно на говно стек заманивают и потом сложно на другой перейти.
945 2066002
>>65332
Этот >>50235 анон писал в ироничной манере. Спрингом все макаки в треде владеют, потому что спринг нужен на работе. А вот алгоритмы пишет 1 из 100, да и то потому что работает над чем то очень специфическим. а загуглить правильное решение ему лень. Алгоритмы вроде как нужны и важны в теории, но на практике они полезны только для собесов.
946 2066004
>>65918

>>аккаунт завести и хров из своего города подобавлять


А как херки реагирую на то что какой то ноунейм без опыта добавляется к ним?
947 2066007
Много ли среди Явистов широкопрофильных специалистов, или энтерпрайз предполагает, что ты будешь пилить ДАО и бизнес логику, не расширяя кругозор?
Даже больше интересует не работа, а то, что из себя представляет ява разработчик.
Просто если ты всю жизнь работаешь над пазлом, который поймет 5% программистов, но не понимаешь или не интересуешься остальными 95%, это как-то уж очень аутистично. Я понимаю, что бизнесс логика очень сложная и надо много что знать, но есть ли при этом стимул отойти от этих тонкостей и ловли exeptions и написать какой-нибудь скрипт или нейросеть на питоне или парсер, например?
Получится так, что проработаешь ты 10 лет, станешь ахуеть специалистом, но в другой области будешь разбираться хуже среднестатистического студента или продавца Васи, который просто увлекается программированием, если есть время. А если при этом ява станет не актуальна и появится какой-нибудь Питон Спринг, содержащий в себе обычный, когда понадобится уже только 1%, кому не повезет разбирать его по кускам и настраивать все большее количество embed логики, пиздец же просто.
948 2066082
>>66007

> Явистов


> ява


Чел...
949 2066098
>>66004
Нормально реагируют, у вкатунов петы вместо опыта как-то же новые люди в сфере появляются
950 2066180
>>66007
По-разному, бывает и девопсом, и си/сд или миграции какие. Где-то задачи на фронт могут быть
951 2066546
DDD в джаве применяется?
952 2066580
Аноны, как можно написать на джаве телеграм бота с меню ? Например, есть кнопки
1) О компании
2) связаться с нами
Если нажать на кнопку "о компании" появляется новое меню с кнопками
1.1) о нас
1.2) наша цель
Если нажать на них то выводится какая-то информация

При нажатии связаться с нами, бот спрашивает имя и эл.почту у пользователя.

Помогите пожалуйста !
953 2066585
>>66580
Что такое rest запросы знаешь?
954 2066684
>>66546
DDD не нужен
956 2066864
>>65914
Я нашел без этого всего. Пооткликался на стажерские вакансии, на первом же собесе устроился.
957 2066867
>>62378
Мои соболезнования твоей команде. Уверен, половина из них уже думает, куда бы съебать.
958 2066869
>>66864
Можешь расписать уровень своих знаний на тот момент? А то не совсем понятно сколько знать нужно чтоб на стажировку приняли.
959 2066924
>>66869
На джаве писал лет 5 некоммерческих, чисто для себя, была пара жутких пет проектов, которые никому не показывал, кроме друзей. На собесах просто упоминал, что что-то такое писал. Спринг не знал вообще. Была вышка техническая.
Ну и в целом устроился почти за еду, норм зп где-то через полгода была.
960 2066930
>>66924
Но это все необязательно, понятное дело. По факту тебе нужно знать core, порешать на sql задачки и основные алгоритмы на уровне легких задач с литкода уметь. Да и то последнее уже будет преимуществом перед другими.
961 2066944
Анон, в чём я не прав?
1600698420494.PNG10 Кб, 475x110
962 2066952
>>66944
Отбой, разобрался.
963 2066959
>>66952
хули вы все в джау лезете со своим говном?
964 2066966
>>66959

> со своим говном


С каким своим?
965 2066973
>>66966
Да.
966 2066977
>>66973
С каким говном?
967 2066978
>>66977
Со своим.
968 2066986
>>66978
Что тебе не нравится? Нативный запрос в базу данных?
969 2067066
Кто-то делал jwt аутентификацию на спринг секурити?
970 2067085
>>67066
ну разве что по примеру этого чела для курсача
https://www.youtube.com/watch?v=her_7pa0vrg
971 2067103
>>67085

> 5 часов


SSHHHHHHHHIIIIIIIIEEEEEEEEEEEEEEEEETT
972 2067258
Подскажите, пожалуйста, что означает варнинг 'func()' called explicitly в идее? В гугле ничего внятного не нашёл.
973 2067265
>>67258
Отвечу сам себе:
я называл метод finalize, забыл, что такой же неявно вызывает jvm.
974 2067283
975 2067292
>>67283
Я уже вроде чуток разобрался. Надо ещё какие-то курсы по Spring Security навернуть для закрепления.
976 2067460
Посмотрел на Apache DbUtils - выглядит охуенно, какие подводные?
image.png1 Кб, 132x48
977 2067462
>>62378

>JdbcTemplate


Пиздец.
978 2067466
>>67462
Старше спринга.
979 2067467
>>67460
Да какие особо могут быть подводные у тонкой обертки над jdbc
980 2067554
>>66952
Расскажи, зачем тебе здесь два джоина?
981 2067601
>>67554
Хуй знает, я его высрал с горем-пополам и так. Так что не спрашивай. А вообще я дурачок, я же сделал мэппинг many-to-many, и нужные данные можно получить просто через гет.
982 2067604
>>13248 (OP)
В ДС возможно еще вкатиться без вышки и опыта? В вашей компании рассматривают самоучек или только студентов?
983 2067610
>>67604
В моей смотрят, чтобы ты не был долбаебом. Если есть стремление что-то изучать, умение рассуждать и тд, то должно быть норм. Ну и теоретические знания, конечно
984 2067612
>>67604
Только спринг конфиг сайентистов
985 2067649
>>67610
>>67612
Понял, а лучше сразу пет проекты на спринге писать или нужно java ee изучить перед этим?
И теория имеется ввиду по бэкенду с линуксом, протоколами, архитектурой, апи и докерами или теория по алгоритмам и компутер саенс?
986 2067656
>>67649

> нужно java ee изучить перед этим


Необязательно, но будет полезно понимать, что такое сервлеты. На них, собственно, вся эта хуйня и строится.
987 2067929
>>67649
Можешь сначала спринг поучить, но придется мириться с магией под капотом. А потом уже в кишочки лезть. Я так делал

Теория - жава кор, чуть хибер и спринг
image.png82 Кб, 1379x657
988 2068148
Слушайте, сел разбирать axis2
Пошел читать их гайд.
В итоге качаю крайнюю версию 1.7.9, ее собираю антом, когда на томкате проверяю, он выдает что уже архив битый.
Как то в гайде написано что мол на все вопросы есть документация, а по ссылке на документацию там уже ничего нет.
Подскажите плиз, может делаю чего не так?
989 2068188
>>68148
Зачем тебе Axis? Когда его тыкал, сложилось впечатление, будто он устарел ещё лет 10 назад. Документация не исчерпывающая, когда гуглишь инфу, попадаются сайты из нулевых, причём инфа на них тоже в основном по тривиальным вещам. Наверное, сейчас если и нужен SOAP, то в виде CXF или Spring-WS.
990 2068192
>>68188
Вкатился в один проект, а он тут используется в нескольких местах.
И да, по устарелости я охуеваю. Когда ищешь последние вопросы по нему, и видишь даты 2011 - 2012 года. Либо с тех пор его дропнули, либо чего.
991 2068194
992 2068205
>>68192

> Вкатился в один проект, а он тут используется в нескольких местах.


Та же хуйня. Решил в результате не связываться с ним надеяться, что больше никогда не увижу. Осторожно редактирую xml-конфиги по объяснениям тимлида, иногда выгружаю wsdl и больше не трогаю.
993 2068209
>>67462
Тоже postgresql крутиться. Тоже на каждом форуме хоронят.
994 2068244
Как же у меня бомбит со spring security. Просто дерьмо из жопы сука ебучее, которое не дебажится нихуя. Просто блять ахуенно понятно куда ёбанные реквесты уходят сука и нигде нет внятной документации кроме индусских туториалов
995 2068256
>>68244
Неосилятор, лол.
>>67085
996 2068272
Пиздос. MockMvc проебывает все куки, кроме последней. Сегодня 2 часа дебажил, пытаясь понять, почему авторизация есть, а признаком сессии нет
997 2068629
>>68256
То что он там делает, я знаю как сделать. Мне надо микросервисы защитить.
998 2068648
>>68629
Тебе в /w
999 2068679
JDBC вообще нужен для вката, нет? Потом ведь всё равно хибернейт учить.
1000 2068683
>>68679
Есть поехавшие шизы, которые на JdbcTemplate хуячат до сих пор и гордятся этим. С другой стороны - а хули там учить-то?
1001 2068688
>>68683

>а хули там учить-то?


Справедливо.
1002 2068837
>>68683
Толсто.
1003 2068866
>>68679
В чем проблема читануть про него любой одностраничный туториал? Весь jdbc сводится к вызову 3-4 методов.
1004 2068883
>>68837
Что именно?
1492720417033.jpg8 Кб, 200x200
1005 2069127
>>68648
Ну остряк не по годам. Я уже и без тебя разобрался.
1006 2069157
>>69127

>Я уже и без тебя разобрался.


Держи в курсе, окатыш.
1007 2069437
>>69157
Как ты окатыша во мне сдетектил?
1008 2069632
>>69437
А я окатыша сразу вижу.
1009 2069638
Хуятыша.
1010 2069640
>>69638
Порвало.
1011 2069641
>>69640
Хуервало.
1012 2069743
>>69641
Хуехуервало.
1013 2069816
переката не будет жаба всё
1014 2069820
>>69816
датнет 5 убил жабу .......
image.png232 Кб, 334x288
1015 2069834
>>69820

>датнет 5 убил жабу .......

1016 2070302
Вкатываюсь в тесты. Если в коде, на который я хочу сделать юнит тест, есть вызов другого модуля (на который уже я сделал юнит тест) - это уже интеграционное тестирование и оно должно делаться по-другому?
1017 2070325
>>70302

>Если в коде, на который я хочу сделать юнит тест, есть вызов другого модуля


Это значит что ты пидор.
1018 2070337
>>70325
Не значит.
1019 2070353
>>70302
Просто сделай моки для другого модуля и подсунь его своему модулю вместо настоящего.
1020 2070367
>>70353
Хорошо.
1021 2070678
Привет народ,есть небольшой вопрос. Есть следующая конструкция

if (x > 10){
do something
} else {
Введите корректное число
}
Так вот,если я первый раз введу неправильное число меня перекинет в ветку else и если я там еще раз введу неверное число код выполнится так как после элса ничего не прописано. Так вот,как написать проверку так чтобы пока не введу корректное число программа не продолжалась
1022 2070686
>>70678
while (true) {
Ввести x;
if (x > 10) {
break;
}
Введите корректное число
}
do something
1023 2070703
>>70678
while (true) {

// считываем число из консоли
number = reader.readLine();

if (number > 10) {

// выполняешь нужные тебе действия
// break;

}

}
1024 2070718
>>70686
>>70703
А если брейкать нельзя и нужно просто выдать требование ввести нормальное число?
1025 2070731
int x;
while ((x = scanner.nextInt()) <= 10) {
Введите корректное число
}
do something

Без брейка. От цикла ты никак не избавишься.
1026 2070737
1027 2070747
>>70731
Дай бог тебе здоровья,я тебя так сильно люблю,ты просто не представляешь. Счастья, здоровья и чтобы девушка красивая у тебя есть была
1028 2070757
>>70747
Обращайся
1029 2070858
Сап двач нужно написать алгоритм для ИИ противника в карточной игре. Суть игры в следующем:

"В эту игру играют два игрока, у каждого из которых на руках 12 карточек с числами от 0 до 11.
Первый игрок выбирает карту из имеющихся у него на руках и выкладывает на стол рубашкой вверх. Число на выбранной карте будет являться "атакой" игрока. После этого второй игрок выбирает карту из оставшихся у него на руках и также выкладывает её рубашкой вверх. Это его "защита". После этого игроки одновременно переворачивают карты, и защищающийся игрок получает столько штрафных очков насколько "атака" первого игрока превышает защиту "второго". В следующем раунде игроки меняются местами.
Игра заканчивается, когда у игроков не остаётся карт на руках. Выигрывает игрок получивший меньше всего штрафных очков."

Я не совсем дурак и догадался,что ИИ должен запоминать какие карты ты бросил и на основе этого делать ход,но я совсем не понимаю как реализовать это програмно. Можете не решать за меня полностью,а подсказать как мне это все воплотить в жизнь. Уповаю на вашу помощь
1030 2070888
Что сейчас чаще используют в проде на серверах:
OpenJDK vs Java HotspotVM? Или может RedHat JVM?
В чем отличия опенждк от хотспот вм? Я так понимаю, наличием каких-то сервисных фич? Насколько они важны?
1031 2070892
>>70858

>>но я совсем не понимаю как реализовать это програмно


Придумай логику его действий. Если игрок скинул 9,10,11 он что должен делать? А если 0,1,2? Атаковать сильными и дефить слабыми, или наоборот? Соблюдать баланс? Тут как раз написать код легко, если алгоритм будет понятен. Потом хоть цепочку иф-елсов строй.
1032 2070925
>>70731
Рекурсивную функцию можно сделать, это если без цикла
1033 2070970
>>70888
Используют то, на что есть лицензия или исторически сложившееся. Последние обновления Oracle JDK не позволяют бесплатно запускать код Java в промышленных целях, а все остальные реализации можешь выбирать на свой вкус - Amazon, Bellsoft, Zulu, IBM - какая компания больше нравится, их реализацию и выбирай.
1034 2070977
>>70888
У меня адопт
1035 2071205
>>70925
Делать так в жабе - это всё равно что удалять гланды череж жопу.
1036 2071318
>>70888

>OpenJDK vs Java HotspotVM?



Это одно и то же, оракловская джава по сути то же самое, что и в опен ждк, просто с техподдержкой и некоторыми ограничениями.
1037 2071534
>>70731
Еще можно сделать это отдельной функцией и вместо break будет return.
1038 2071587
>>70888
есть две вм это Hotspot и OpenJ9. Вторая говорят меньше памяти кушает и чуть шустрее стартует, но у нее меньше пользователей. Остальное все сборки, бери adopt и не ошибешься (там есть выбор между двумя)

есть еще graalvm, но это для интересующихся компилить java в почти нативный код (вроде как с вырезанной рефлексией, поэтому ее почти никто не использует)
1039 2071676
>>71534
Двачую, но начинающего программиста это 99% запутает. Поэтому прибегать к рекурсии не стоит.
1040 2071701
>>71676
При чем тут рекурсия, просто цикл в отдельной функции

int readNumber() {
while (true) {
number = reader.readLine();
if (number > 10) {
return number;
}
}
1041 2071734
>>71701
Да это я в глаза ебусь, и где-то увидел про рекурсию. Но говнокод я всё равно написал.

public static int number(int number) throws IOException {
if (number > 10)
return number;
return number(Integer.parseInt(reader.readLine()));
}
1042 2071735
>>71734
А можно ещё лучше

public static int number(int number) throws IOException {
return number > 10 ? number: number(Integer.parseInt(reader.readLine()));
}
1043 2071770
>>71735
Легким движением пользователь может вывалить программу со стековерфлоу.
на самом деле не легким конечно, стек в джаве глубокий, заебешься пока СО вызовешь
1044 2071772
>>71770
Та может. В проде никто и не делает рекурсий, но штука прикольная на самом деле. Хотя я помню как бегал с горящей жопой, потому что не понимал что в коде вообще происходит.
1045 2071783
>>70892
Да я вот пока сам в раздумьях как бот отвечать должен,по факту что так что так рандом получается тк бот не должен знать какими картами ты ходишь,а только запоминать те,что ты уже выкинул. Работать эффективно в любом случае будет только когда останется только одна карта
image.png22 Кб, 716x309
1046 2071952
1047 2071969
быстро и четко- книжка по спрингу на русском и шоб не гавно мамонта и бесплатно или что вообще почитать по ему, но шоб бесплатно
1049 2071983
>>71981
спасибо
1050 2071991
>>71952
перекатывайтесь в 1с
1051 2072064
А у меня есть книга «Spring in action» самая свежая редакция за 21 год.
1052 2072118
Как в постмане правильно передать дату в теле пост запроса?
1053 2072120
>>72118
Так ты ж правильно передаёшь. Что возвращается с контроллера?
1054 2072121
>>72120
а всё вижу
1055 2072122
>>72118
department_id пропустил после patronymic
postman.png19 Кб, 621x348
1056 2072125
>>72122
Не совсем понял, но если так, то тоже ошибка.
1057 2072135
>>72118
yyyy-MM-dd
controller.png231 Кб, 1920x1080
1058 2072138
>>72135
Не помогло. А в модели дата должна быть java.sql.Data? Может тут причина. Через идею добавляется нормально, но там календарь открывается при добавлении даты.
1059 2072142
>>72138
Поменяй на LocalDate
1060 2072154
>>72138
Рекомендую для таких случаев подготовить репозиторий с h2, где бы анон смог загрузить себе проект и протестить у тебя. Так бы было легче тебе помочь.
1061 2072159
>>72154
Можно даже завести отдельный гитхаб для такого дела, если боишься ДЕАНОНА. А то вот так гадать пальцем в небо такая себе практика.
1062 2072175
>>72118
Блин, только сейчас заметил у тебя же формат даты задан. Ну так и пиши в этом формате вместо 01-01-2000 должно быть 01/01/2000.

Ну и в целом использовать API DTO как entity это прям полное говно.
1063 2072182
>>72154
>>72159
Я туповат просто. Чтобы это сделать надо подключить h2 к проекту, создать отдельные слои репоситориев и сервисов для h2? А потом на гитхаб это загрузить?

Я вот еще заметил что. Добавил в бд через идею просто одно поле employee. Потом читаю через постман, а там даты отличаются. Может тут проблема?
1064 2072187
>>72175

>Ну и в целом использовать API DTO как entity это прям полное говно.


Есть где посмотреть пример как правильно делать rest? В ютубе и просто в статьях у всех по разному.
1065 2072189
>>72187

>В ютубе и просто в статьях у всех по разному


Как думаешь почему?
1066 2072190
>>72182
Проверь в каком времени ты даты хранишь в PG и в каком у тебя приложение забирает.
Выглядит так, как будто ты несколько часов из оригинальной даты вычитаешь из-за временных зон.
1067 2072191
>>72189
Там в разное время эти видео и статьи выходили. Где-то 2015 года, где-то позже. Мне понять хоть какая структура должна быть правильная.
image.png11 Кб, 401x277
1068 2072192
Есть спрингрест+джаксон
Есть ентити Юзер и какой-то Объект, юзер владеет несколькоми объектами
Возможно ли настроить сериализацию в жсон что бы при сериализации юзера выводились только айди объектов которыми он владеет, а при сериализации объекта все его поля и айди юзера
Блять как же нехочется городить еще один слой в виде дто
1069 2072205
>>72187

>В ютубе и просто в статьях у всех по разному.


Ты не поверишь, но в проде тоже у всех по-разному
1070 2072206
>>72182

> Чтобы это сделать надо подключить h2 к проекту, создать отдельные слои репоситориев и сервисов для h2?


Да. Создай новый проект, скопируй туда репозитории, сущности, контроллеры. Только вместо postgres, подключи h2. И залей на гитхаб, чтобы анон мог склонить себе и посмотреть в чём проблема.
1071 2072208
>>72192
@JsonView посмотри
1072 2072209
>>72187
Есть разные подходы, разные фреймворки и единых правил нет. Просто есть некоторые вещи которые прям совсем плохо. Совмещать entity с DTO - это плохо. Потому что завязывает внешний API сервиса со структурой базы, можешь случайно отдать наружу какие-то приватные данные просто добавив поле в entity, часть полей ни при каких условиях не должна приходить от клиента дата обновления записи, кто обновил и т.п..

Ра уж ты используешь Спринг посмотри их петшоп.
3-doors-2-goats-and-a-car-problem.png46 Кб, 799x457
1073 2072217
bf5151990e825612ef51db7cabd046d7.gif24 Кб, 400x400
1074 2072228
1075 2072233
>>72228

Ползут три черепашки. Первая говорит, что впреди никого сзади две.
Вторая говорит, что впереди одна, сзади одна.
И третья говорит, что впереди одна, сзади одна.
Как такое может быть?
scale1200.jpg76 Кб, 970x546
1076 2072249
Я нашел свою даунскую ошибку. В постмане в теле запроса имена писал как в базе данных, а надо как в коде модели. От постмана в этих полях с датой просто null приходил.
1511158277316.jpg36 Кб, 960x715
1077 2072253
1078 2072395
Здарова, братушки! Какие преимущества я получу, если вместо Intellij IDEA я буду использовать Eclipse?
1079 2072404
Какой петпроджект написать для освоения джава кора?

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

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

Третья идея - написать что-то с графикой, какой-нибудь 2д рендер карт. Типа загружаешь данные из условного OSM, а прога тебе выдает .png или .jpeg местности. Правда это наверное слишком сложно и я неосилю, в вузе на компьютерной графике очень поверхностно все было, поэтому я ниче не знаю.

Еще когда-то думал клиент для двачей написать, но опять же нахуй он нужен. А раз применения нет никакого, то и писать желание пропадает.

Может у вас есть море софта, которым вы пользуетесь каждый день и хотите что-то автоматизировать? Я вот просто задачи на литкоде решаю по нескольку часов в день, остальное время скроллю двачи и смотрю на разных инстасосалок. Больше ничем по жизни не занимаюсь и не увлекаюсь, на улицу не выхожу, хобби никаких нет, в игры не играю и не с кем не общаюсь. Откуда тогда брать идеи?
1080 2072407
>>72395
Никаких. Думаешь, все просто так отказались от эклипса в пользу идеи?
1081 2072408
Какой смысл обычно в прослойке EntityService для EntityRepository?
1082 2072410
>>72395
Привыкнешь ко вкусу говна
1083 2072415
>>72408
В реальных проектах это не прослойка из методов, состоящих из единственного обращения к репозиторию/дао, а самая жирная часть приложения с тоннами бизнес-логики.
1084 2072417
>>72404
Да и насчет инстапарсера - мне эта идея нравится больше всего, но боюсь что на гитхаб такое выкладывать нельзя, а в резюме вставлять - тем более опасно, в блеклист внесут и потом работай на заводе до смерти. В блеклист внесут потому что такая идея только поехавшему сычу придет в голову, нормальные люди пользуются инстой, спокойно подписываясь на знакомых, и им не нужно отдельно следить за этим, особенно за удаленными фотографиями.
1085 2072418
>>72395
Рак печени.
1086 2072492
>>72233
Третья наебать пытается.
1087 2072506
>>72233
третьим был иван дурак
1088 2072510
>>72404
Ну я сейчас пилю приложение для автоматизации бизнеса, за ориентир взял zoho books, там в юзергайдах объясняется как что работает под капотом. Выбрал именно эту тему потому что там немало интересной бизнес логики.
1089 2072614
Менять из одного потока volatile или статическую переменную другого потока, а в другом потоке только ее читать - это безопасно? Я так понял, volatile используется только на не статические поля.
1090 2072669
>>72614
volatile - это что такое?
мимо сеньор из гугла
1091 2072680
>>72669
Отменить кэширование переменной разными потоками.
1092 2072682
>>72680
Ты на С что ли пишешь?
1093 2072689
>>72682
Нет, это статья 12 года на хабре
https://habr.com/ru/post/164487/

Тебе другие сеньеры по голове бы настучали
https://habr.com/ru/post/164487/#comment_5659639
, если бы ты, конечно, использовал такую логику.
1094 2072726
Нормальная практика создать иннер класс для структуры используемой в этом классе?
1095 2072735
>>72614
В общем, я нашел ответ на свой вопрос, изменение и чтение volatile будет потокобезопасным, если к ним применяются атомарные операции. Те ivar++ будет не потокобезопасным.
К статическим полям это точно так же относится, тем более хуже, если к ним не атомарные операции применяются.
Те код из этого >>72689
хаба пораша, человек пытается чему-то учить, но сам совершает грубые ошибки и не в чем сам не разобрался, но зато плюсики получил.
1096 2072737
>>72726
Да.
class EntityController {
public static class Entity {
public static class EntityService {
oublic static class EntityRepository {
}
}
}
}
1097 2072750
>>72737
Лол
1098 2072752
>>72726
HashMap.Entry
1099 2072781
>>70858
Бля пацаны, реально как бы не думал никакой действенный алгоритм в голову не приходит,поиогите пожалуйста
1100 2072782
>>72781
Сколько платишь?
1101 2072831
>>72782
Три картинки с котиками (очень милыми)
1102 2072865
>>70858
Нихуя не понятно, игр больно сложная.
1103 2073112
Кто нибудь знает как в мавене с коммандой строки запустить по-очереди все дочерние модули?
1104 2073216
На Яве используют Докер?
1105 2073226
>>73216
Да.
1106 2073240
>>73216
На ИЖе используют.
1107 2073531
>>72415
А какой смысл для каждой сущности делать свой сервис? Просто в каждом индусском туторе такой шаблон. Можно же делать просто один сервис который инкапсулирует сразу все эти дао и репозитории
1108 2073536
>>73216
Использую screen -S
1109 2073619
>>73531
Можно вообще все в одном файле делать
1110 2073670
>>73619
Двачую.
1111 2073692
>>73619
Я про это и говорю, зачем для каждой сущности плодить сервисы. Несколько дао для одной сущности имеют смысл, потому что что-то может хранится в бд, что-то сериализуется в файл. В туторах же по спрингу назначение сервиса это тупо прокси класс для доступа к репозиторию. При чем единственный мотив его существования это "ну у каждого ентите должен быть свой сервис".
Если сервис это бизнес логика, то с таким подходом, когда у каждой сущности свой сервис, появляется путаница кто за что отвечает. Когда в одном сервисе требуются данные из другого, когда сущность содержит другую сущность, которая содержит третью чей сервис должен их контролировать, в сервисах возникают перекрестные зависимости и тп.
Намного логичней разделять сервисы по смыслу работы приложения, а не по сущностям. И смысл не должен сводиться к только принести из бд хуйню, потому что если на столько всё просто, эти прослойки нахуй не нужны.
1112 2073704
>>72510
Тоже на работе в зохо сидите? Мои соболезнования.
1113 2073705
>>73692
Потому что каждая сущность независима. У каждой есть своя цель и своя бизнес логика. Если есть логика, которая задевает несколько сущностей, то будет второй слой сервисов, и т.д.
1114 2073708
>>73692
Делай как хочешь.
1115 2073727
>>73705
Какова твоя цель?
1116 2073729
>>73727
Выебать твою мамку.
1117 2073731
>>73729
Я почему-то не сомневался в твоём ответе.
1118 2073754
>>73705
Как сущность квартира может быть независима от сущности дома? Удалять квартиру нужно в ее в логике или логике дома?
1119 2073758
>>73731
Только это не я ответил
1120 2073763
>>73754
Ты работаешь с квартирой, а не с домом. Это логика только квартиры а точнее, ее сервиса.
Если же ты не работаешь независимо с квартирой, и все происходит только через дом, тогда это скорее всего будет в сервисе дома
1121 2073790
>>73763
Так почти ни с чем независимо не работается, потому что полностью независимых сущностей нет. Вот и выходит практичнее все писать в одном месте, чем связывать 100500 сервисов между собой, которые неизвестно как работают, откуда тащат данные, в рандомных местах ловят дедлоки, потому что перекрестные зависимости, туда же порядок инициализации приложения и других вещей. Это будут одни костыли на костылях в итоге, в котором не разобраться.
1122 2073807
>>73790
А как ты собираешься поддерживать твой мегасервис, когда в нем будет 500+к строк? Как юниттестить?
1123 2073843
>>73790
Ты придумал какие-то проблемы на ровном месте. У дома есть свои операции, не связанные с квартирами, и у квартир есть операции, не связанные с домом. Если дому в каких-то частных случаях надо работать с квартирами, он обратится к сервису квартир. Иногда встречаются операции, которые однозначно к какой-то основной сущности не отнести, в таких случаях либо просто добавляют её в любой из сервисов, либо создают новый сервис для такого вида операций.

> которые неизвестно как работают, откуда тащат данные


В том-то и дело, что это неважно. Почитай, что такое абстракция.

> в рандомных местах ловят дедлоки, потому что перекрестные зависимости


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

> туда же порядок инициализации приложения и других вещей


Это может вызвать проблемы только при циклических зависимостях, которые бывают редко и решаются просто: нужный сервис забирается из контекста уже после старта приложения, а не во время.
1124 2073883
А синхронизация по объекту означает, что его мьютекс блокируется для всех методов во всех объектах всех классов, где есть этот объект и синхронизация по нему?
1125 2073953
1126 2074025
>>13248 (OP)
1. как сделать многомерный массив, который будет создан после ввода данных пользователя? типа пользователь пишет 4, 6 и создается 4 мерный массив с 6 ячейками.
2. как создать универсальный цикл, который будет отрабатывать вот этот массив, который неизвестной размерности. Есть простое правило, например выбрать наибольший индекс и оставить в этой ячейки и нужно такое правило прогнать по всем ячейкам. как такое можно сделать? полное правило звучит так: выбери наибольшее из индексов, но если есть одинаковые значения то их нужно сложить, а потом сравнить еще раз и выбрать наибольшее.
1127 2074049
>>73843

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


> Не ловят.


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

> Почитай, что такое абстракция.


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

> Сервисы обычно не хранят состояния, и это гарантирует, что с объектом в любой момент времени будет работать только какой-то конкретный сервис.


А где хранится состояние сервиса времени? Не в бд же миллисекунды записывать
1128 2074072
>>74049

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


Такие локи бессмысленны, их никто никогда не ставит. Локи нужны для синхронизации данных, сервисы никаких данныых не содержат.

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


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

> А где хранится состояние сервиса времени? Не в бд же миллисекунды записывать


Не в сервисе. Сервис никогда не хранит никакого состояния. Сервис может обратиться к операционной системе, чтобы получить время, но внутри себя он ничгео не запоминает.
1129 2074279
Аноны, я совсем-совсем в жаве нюфаня. Писал по гайдам индусов маленький проект, выдаёт при сборке такие ошибки. Поиск проблемы в тырнете не увенчался успехом
1130 2074354
>>74279
Убери final с переменных.
1131 2074385
>>74354
Убрал, всё тоже выдаёт. Ничего не изменилось
1132 2074391
>>74354
Нагуглить смог только то, что такая ошибка много у кого начала возникать с новым jdk, мол на 15 всё дышит и пердит, а с 16 ошибка (
1133 2074401
>>74279
Это из-за модулей девятой жавы. У тебя где-то в папке src лежит файл module-info.java в который нужно явно прописывать какие зависимости нужны твоему модулю. Легче его просто удалить нахуй тогда все может начать работать. Или гугли текст ошибки после двоеточия, тут ничего корректного не сказать, может быть из-за любой зависимости которую не перевели на девятую жаву
1134 2074403
>>74401
конкретного
1135 2074456
>>74401
Расклад такой, я снёс 16 и поставил 15 jdk. И о чудо lunch succeeded
1136 2074460
>>67604
Давай давай, расскажешь о успехах)
1137 2074463
Но теперь другая беда, ананасы. В api 30 getExternalStorageDirectory устарело, чем заменить строчку, чтоб не больно было в анусе ?

>методнэйм(Environment.getExternalStorageDirectory())

1138 2074479
Аноны, спрзу извиняюсь за тупой вопрос.

Я, короче не могу понять, как должны правильно взаимодействовать например rest-api написанный на джаве и какой то веб интерфейс на той же джаве с спрингбутом

Банально запустить два этих сервера, и посылать с клиента http запросы на этот апи?
изображение.png1,4 Мб, 960x1280
1139 2074487
>>74460
>>67604

>Давай давай, расскажешь о успехах)



Фотка коллеги моего другана, который уволился с работы и начал вкатываться, на вкат потратил меньше года, 2 месяца сам обучился и 7 месяцев с ментором делал разные проекты за бесплатно, но за 10 процентов от будущей зп в течении пары лет. Москвка. ему 30, юридическая вышка, работал продаваном одинэсником, английский не знает. Оферов было штук 5 всего из 15 собесов
1140 2074489
>>74487
Вкатился джавистом офк
1141 2074514
>>74479
В самом банальном варианте - да
1142 2074562
>>74487

> 229к


> леново


Проиграл с этого танкиста
1143 2074568
>>74463
Это ведроид? У них свой тред есть, а тут спрингобоги сидят.
1144 2074570
>>74562
Ну дык на новый ноут наверное заработал себе, я думаю.
1145 2075190
>>74487
Курсы продаешь? Тот ментор был ты?
1146 2075220
>>75190
нет, какой то наиль алишев курсы организовывал вроде.
1147 2075292
Доброго дня. Шатаю литкод (точнее - он меня), т.к. с алгоритмами беда вообще оказалась. Сделал по подсказке через map + чтение строки с конца, но что-то по памяти и скорости выполнения оказалось говно. Посмотрел решение другого чувака - памяти юзает на 1 мб больше, но выполняется за 4 мс, вместо моих 15. В чем разница? Что он не сплитит строку в массив?
1148 2075300
>>75292
Как минимум это + не вызывает одни и те же методы по 2 раза за итерацию + не ищет в мапе прошлый индекс, а кеширует его
15967033059310.jpg8 Кб, 200x200
1149 2075439
>>73807

>юниттестить


Что, пишешь юниты на положить в базу жсончик и достать из нее, мокая базу?
sage 1150 2075476
>>75439
Зарепортил залётную вебмакаку.
1151 2075555
>>75300
Спасибо за пояснения.
Без родной IDE-шечки вообще страдаю, лол, никто чек-стайлом или сонаром дерьмовый участок не выделит.
1152 2075589
А можно ли лочить мьютексы параметров метода. Например, сделать метод с Object параметром и по нему синхронизировать?
А если мы потеряем ссылку в методе, то объект сразу перестанет синхронизироваться или мьютекс освободится только после окончания синхронизированного блока?
1153 2075592
>>73112
Через запятую
1154 2075599
>>75589

>лочить мьютексы


Ты на С что ли програмируешь, сука?
1155 2075615
>>75599
А что такова?
1156 2075656
>>75589
Счетчик монитора переключается когда исполнение входит/выходит в синхронайзед блок. Можно, но тебя даже идея предупредит что ты делаешь хуету какую то. Если нескольким объектам нужен общий монитор, создай его извне и передавай им через конструктор.
1157 2075740
>>75476
Оооо юниттестер порвался
1158 2075757
>>75740
А что плохого?
sage 1159 2075769
>>75757
Плохо только то, что вебмакаки ни для не работали с бэкендом и в силу своих комплексов пытаются себя убедить, что там нет ничего, кроме круда для БД.
1160 2075902
>>75769
Но ведь 99.9% приложений - веб. Или ты про обычные крады?
1161 2075937
Перекат то будет?
1162 2075949
>>75937
Нет.
1163 2075997
>>75949
Хорошо.
1164 2076143
>>75769
Тебе кто разрешал от весла отрываться? А ну пшел покрывать репозитории юнитами.
1166 2076533
>>75555

>>Без родной IDE-шечки вообще страдаю


пишу код в иде, вставляю и запускаю копипасту статистика подсчитывающая фейлы тестов говорит молодца
Обновить тред
Двач.hk не отвечает.
Вы видите копию треда, сохраненную 22 июня 2021 года.

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

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
« /pr/В начало тредаВеб-версияНастройки
/a//b//mu//s//vg/Все доски