Этого треда уже нет.
Это копия, сохраненная 8 апреля 2021 года.

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

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
Java #97 thread /java/ 1802373 В конец треда | Веб
Прошлый >>1769582 (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
15966939029260.png903 Кб, 853x1024
2 1802436
Маняме сраное!
3 1802442
ШАПКА НЕ НУЖНА
IMG20200609180857.jpg91 Кб, 810x776
4 1802473
Бедный Дюк
5 1802797
Жаба позорная
6 1802935
>>1802157 →

>2) Результат зачем-то проверяется на объект-константу (типа как Integer.MAX_VALUE - это паблик статик файнал объект), хотя достаточно было бы возвращать null



NO WAI!

https://youtu.be/QwycPnpp6uQ
7 1802947
>>802935
потому что иди нахуй хуйлан очкастый
8 1802980
>>802935
Развели процедурщину в объектно-ориентированном языке. Бог дал им эксепшены, нет, будем прокидывать ошибки и сравнивать их коды. Так и до голанга какого-нибудь недалеко.
9 1803030
После достижения какой длины HashMap происходит конвертация списка в дерево ммммм? Без гугла, блядбь, вы собеседуетесь в БИТРИКС.
10 1803032
>>803030
мне поебать
11 1803042
>>803030
Я зелёный, поэтому отвечу, что никогда, я уяснил на лабах в институте, что в хеш-таблицах такого вида всегда список, и ни про какие деревья там речи не было.

работаю джавистом больше года в одном банке
13 1803051
>>803046
Чего только не придумают. Хочу хеш-таблицу, в которой вместо списков тоже хеш-таблицы.
image.png678 Кб, 1086x731
14 1803077
Даже уж и рефералку оставить нельзя на пуперскылл, с нее же профитов 0 (ноль)
image.png51 Кб, 1090x525
15 1803094
Нахуй спринг бут, мы сами всё умеем.
16 1803095
>>803094
Зачем и нахуя
17 1803107
>>803095
Чтобы победить магию автоконфигурации.
Можно и от ебучих аннотаций избавиться, написать xml-конфиги.
18 1803109
>>803107

>Чтобы победить магию автоконфигурации


Зачем и нахуя
19 1803112
Бамп
20 1803114
>>803109
Магия плоха просто в силу того, что она магия. Она почти непооддерживаемая, и никогда не знаешь, когда и где может выстрелить.
21 1803117
>>803114

>Магия плоха просто в силу того, что она магия


В спринге нет магии. Если ты не понимаешь, как работает автоконфигурация и аннотации, то ты тупой.
22 1803128
>>803117
Автоконфигурация и есть магия. После запуска бута контекст засран сотней невесть откуда взявшихся бинов мутного предназначения, и без чтения про каждый хуй пойми, как оно там работает по умолчанию. Ну уж нет, лучше всё руками делать.
23 1803130
>>803128

>Автоконфигурация и есть магия.


В спринге нет магии. Если ты не понимаешь, как работает автоконфигурация и аннотации, то ты тупой.
24 1803131
>>802373 (OP)
А есть у джавы готовый шаблон MVC как у .NET? Просто у C# .NET можно создать готовый сайт с настроенным рест апи и интерфейсом. Есть что такое на джаве, может фремворк какой или что? СОС
25 1803136
>>803130
Мда
26 1803140
>>803131
UPD
Вот типа приклейтеда, но на джаве. Я в идеи ничего не вижу...
27 1803144
>>803131
>>803140
Это потому что у тебя едя коммунити, в ultimate выбор побольше. Также есть start.spring.io, всевозможные архетипы и некий Spring Roo.
28 1803145
>>803144

> едя


Идея.
29 1803305
>>803131
Spring MVC очевидно. Трудно сказать как шарпе он или нет, шарпом не пользовался. Но веб сайт хэлоу ворлд склепать можно за пару минут.

Если у тебя не ультимей - инициалайзера встроенного нет - воспользуйся внешним https://start.spring.io/
Можно сразу накидать нужные зависимости, спринг сам все сделает.
Скачаешь архив заготовки проекта - откроешь в идее и работай дальше.
30 1803337
>>803128 >>803130
Поддерживаю, не знаешь как работает спринг под капотом иди учи там ничего сверх сложного нету
31 1803348
>>803337
Если изучать как работает магия под капотом, то безусловно станет понятнее. Вот только магия от этого не перестанет быть магией.
32 1803359
>>803348
Если фокусник объяснит, как он вытащил тебя из пизды мамаши именно ту самую карту из колоды, то его магия не перестает быть магией?
33 1803360
>>803359
Если проводить аналогию, то да.
34 1803363
>>803360
Так это что угодно, что требует больше 1 минуты на построение последовательности действий, назвать магией. Хватит лениться и иди разбираться.
35 1803366
>>803363
Это относительно. И лучше стремиться к очевидности.
36 1803400
>>803366
Прелесть исходников спринга в том что разбираясь в них ты хорошо поймешь как работает АОП и как работает рефликсия, потому что это основа на которой лежит спринг, если же данные темы у тебя вызывают вопросы или читая исходники ты не знаешь что делает условный .getClassLoader то возможно стоит вернутся к изучению javaCore
37 1803406
>>802373 (OP)
Мы не анимешники.
38 1803416
Помогите дауну, у меня лыжи не едут. Нашел проект https://github.com/ezst036/EasySeats-Java. Документации нет. Скачал, нашел build.xml, запустил ant, появилась папка build, в ней еще папки ну и основное это папка с кучей классов. Как приложение-то запустить?
39 1803419
Можно ли в идея коммьюнити подключить JDBC драйвер от MySQL? Я чёт гуглил, но там ушлые пацанчики только про ультимейт версию говорили. В Эклипс там быренько все настроил, но чёт к интерфейсу так и не могу привыкнуть.
40 1803422
>>803419

>в идея коммьюнити


>подключить JDBC драйвер


Лучше устройся кассиром или грузчиком. Программирование тебе не по зубам.
41 1803428
>>803419
рутреккер в помощь если ты не разработчик, Который следит за версиями идеи, то скачай какую нибудь 16-18 года к ним как раз ключей куча в интернете
42 1803448
>>803419
Есть сторонний плагин database navigator, но с ораклом он у меня работал криао (>>1779035 →) хотя может с мусклом будет норм.
43 1803451
>>803400
При чём тут вообще исходники спринга? Каждый раз в них лезть что ли, когда что-то непонятно? А кор - это основа, и вопросов к ней быть не может.
15911756445890.png134 Кб, 312x348
44 1803454
>>803422
Ваше мнение очень важно для нас. Пожалуйста, оставайтесь на линии...
45 1803457
>>803448
С плагином Database Navigator всё заработало, класс:3
46 1803463
>>803451
Ну да каждый раз лезть, а как ты вообще что то учишь? базовое знание возможных методов, без изучения реализации это уровень джунов - мидлов. Или ты всегда в гугл за ответами лезешь?
47 1803465
>>803463
Д О К У М Е Н Т А Ц И Я
О
К
У
М
Е
Н
Т
А
Ц
И
Я
48 1803467
>>803465
помянем молодого
49 1803659
>>803406

> Мы не анимешники.


Мы кейпоперы
50 1803675
Насколько необходимы знания алгоритмов и математики в java-бэке, в перспективе на высоком уровне разработки? Я не то, чтобы прям неосилятор полнейший в этих вещах, но удовольствия они мне не доставляют точно. Поэтому думаю, стоит ли выбрать бэк?
51 1803687
в java любят сосать письки кстати)
52 1803704
>>803675

>но удовольствия они мне не доставляют точно.


Это значит, что ты не хочешь думать в принципе. Твой удел - формошлепство по шаблонам.
53 1803757
>>803144
>>803305
Спасибо!
54 1803780
>>802373 (OP)

> Java #97 thread /java/


Оп хуй 97 гр опять за свое?
55 1803809
>>803704
По-твоему, думать нужно только в алгоритмизации и математике?
56 1803840
>>803780
Чем старше тред, тем опхуй моложе.
57 1803849
>>803675

> алгоритмов


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

> математики


Этот вопрос пора добавлять в шапку. В обычном бекенде максимум будет арифметика или простейшая статистика.
58 1803890
>>803849

>В обычном бекенде


А какой еще бекенд есть? без иронии говорю, просто сам не специалист в этой области
59 1803902
>>803890
Это я так назвал бекенд "в самом общем случае".
Ну, в теории может быть что угодно, какой-нибудь специфический бекенд со сложными научными расчётами . Но такое обычно пишут не на джаве, а если и пишут, то расчёты отделяют от бекенда. В общем, не бери в голову, с таким вряд ли столкнёшься.
60 1803919
>>803675
Даже работая ждуном мне приходится вертеть хешмапы со значениями из хешмап делая выборки из разных таблиц, работа с бд напоминает sql-ex на харде, блок схемы что в экран не влезают уже никого не удивляют, между stream() и collect(toList()); может быть не один десяток строк. Использую лямды чаще чем ругаюсь матом, хотя совсем недавно я не мог простейшую flatmap функцию сам написать. И всё это надо делать быстро, чтобы понять куда пропали данные с фронта прежде чем на это обратят внимание и исправить свой косяк. И работать оно разумеется должно тоже быстро.
Если ты асимптотическую сложность сраного квиксорта запомнить не можешь - лучше даже не пытайся. Хотя может где и есть места, где надо поля раз в месяц переименовать, не знаю.
61 1803939
Методы MockMvc для загрузки multipart файлов не работают что ли (MockMvcRequestBuilders.multipart)? Не понимаю, почему один способ работает, другой нет. Весь сука день сижу и не могу поверить, потому что все примеры в интернете как будто рабочие.
62 1803980
Чето разрабы идеи куда-то не туда идут. Попрятали все действия в подменюшки.
63 1804077
>>803919
Бля как страшно, а я только спрингбут прожевал
64 1804125
Анон, помогай.
Пилю лабы по джаве. В заданиях малоадекватная для современного JUnit хуета вроде Создать класс для методов тестирования, производный от класса основной программы и Создать объекты классов программы и тестирования в функции main(), хотя в гугле и даже в методичках нихуя не от чего не производно я так понимаю это значит наследовать основной класс в тестовом, блядь, везде отдельный тестокласс с @Test аннотациями и запуск тестов из него отдельно, а не из основной программы, как оно собстна и должно быть.
Так вот. На похуй пишу по-правильному, препод скорее всего и так примет если конечный результат будет как в задании, но вот теперь задача состоит в том чтобы собрать в новом пакете новой лабы предыдущие из прошлых лаб и запустить все тесты из всех лаб одновременно. Я пилю проекты руками из консолечки мавеном, пишу и запускаю в вскоде с джава-расширениями. Кое-как нагуглил как собрать предыдущие пакеты в джарники и подключить их в новый, и даже как соединить все тестоклассы в один, но теперь проблема в том, что из этих джарников только основные классы импортятся, а тестовые - хуй. Как сделать чтобы можно было? Или что делать-то теперь, бочку?
image.png256 Кб, 532x321
65 1804441
G22fLrKF68.jpg117 Кб, 493x604
66 1804452
сап, Аноны

я начал учить Java
уже три дня усиленно вздыхаю над ней.

либо я тупой, либо уже просто задеревенел за 30лвлов (тож =тупой).
чет трудно дается некоторые вещи, начиная с банальных пониманий основ ООП, как организуются классы, как ссылки с классов на классы/преременные мутить. ну и другое

подскажите какие-то мб каналы ютуб или книгу где разжевывают для тупых основы
67 1804478
>>804452
У всех так при изучении в начале, и сильно проще потом не будет.
68 1804544
>>804478
то ли успокоил меня, то ли нет)
69 1804547
>>804452
тем не менее, есть какие-то курсы где понятно объясняют основы?
множество курсов, которые я успел пролистать - там будто уже для знающих рассказывают.
мб для учивших другие языки. а мне бы для тупого
70 1804560
>>804547
Тебе не основы джава надо учить, а основы программирования и ООП тогда.
72 1804751
>>804720
Максимум ССЗБ, нарочно до такой хуйни и не додуматься.
Решил с нуля без кора вкатиться в андроид, так ещё и сразу в котлин, но не осилил Боже, я наконец-то понял, откуда в котлин-треде столько тех, кто ничего другого не учил. Скачал философию джавы, нихуя не понял, решил сначала выучить C, причём сразу по K&R. Опять нихуя не понял, решил учить Computer Science по каким-то мутным книгам и курсам.

> Начинаю осознавать, что для полной картины понимания Computer Science, мне необходимо будет заново учить алгебру, а затем и ВысшМат


Ну это просто эпик.
73 1804792
К универу готов.
74 1804802
Слова Service и Controller в названиях классов спринга несут в себе какой-то сакральный смысл? Это такая стратегия наименования классов?
75 1804815
>>804802
Да, Controller - точки входа; Service - бизнес-логика, Repository - доступ к БД, ещё есть Component - всё предыдущее является компонентами.
76 1804820
>>804792
Корзина должна быть в правом нижнем углу.
Ещё я бы убрал идею с панели задач, легко на неё случйно кликнуть, а затем ждать, пока запустится, чтобы закрыть. Ну и добавил бы туда git-bash рядом с cmd.
77 1804821
>>804792
Опущенка.
78 1804822
>>804820
Хорошая идея, анончик.
image.png6,9 Мб, 2552x1427
79 1804826
>>804820
Хуле мой гитбаш слешики на винде не туда поворачивает
80 1804828
>>804826
Потому в десятке есть WSL, какой гитбаш нахуй.
81 1804829
>>804826
Всё по-линуксовски. /c/Users/anonsdvacha/Desktop
82 1804830
>>804828
Точно, посмотрю как это на манжаре ставится.
83 1804831
>>804830

>Хуле мой гитбаш слешики на винде


Долбоеб.
84 1804832
>>804831
Я это к тому писал, что при гуглинге на эту тему, везде говорили о том, что гитбаш вроде как умеет разворачивать слешики.
85 1804833
>>804828
В WSL слышал докер не пашет, хотя сам не пробовал. Ну и это всё-таки линукс со своим собственным окружением, когда гит баш - это более удобная замена командной строке.
86 1804834
>>804832
Он и разворачивает, преобразуя налету пути винды в пути unix, и наоборот. Правда, иногда это вызывает проблемы.
87 1804836
>>804833
WSL уже две версии есть. Во второй докер точно работает. Но даже первая включается из обычной cmd при вызове bash.
88 1804837
>>804834
Тогда я что-то не так делаю, пойду разбираться.
89 1804840
>>804836
Последний раз, когда читал про вторую, она была бетой, и ждал, когда выйдет нормальная.
90 1804881
>>804792
а где тему таку скачать?
91 1804906
92 1804907
>>804881
Нян кот там же отдельно находится
93 1804909
>>804821
чего тебе пригорает то?
94 1804982
>>804792
Глаза не устают иконки искать на таком пестром фоне?
95 1805031
>>804982
Да вроде норм.
image.png181 Кб, 467x522
96 1805106
привет, вот тут чувак рассказывает про инкапсуляцию ООП на простых вещах (на примере стиральной машины.

довольно доходчиво.
есть ли еще где объяснения подобного характера?

https://youtu.be/T_hrGXkD934
97 1805107
>>805106

>есть ли еще где объяснения подобного характера?


А тебе одного мало? С первого раза не понял?
98 1805109
>>805107
я имею в виду, не только по ООП.
а еще по другим принципам кодинга
в java, например
99 1805159
>>805106
Блин это же наоборот все усложняет, понимание ооп, мне кажется, приходит со временем, типо по началу можно писать код просто в один большой мето тоесть писать в процедурном стиле как деды делали, а потом уже будет легче понять ооп главное в js не иди а то там то вообще хаос
100 1805202
>>805159
Кстати вот согласен, полгода назад первый раз сел за программирование и когда впервые столкнулся с ооп вот эта вся дрочь с "взято из реальной жизни" очень запутывала и отвращала. А когда почитал примеры кода - стало немного понятнее. Особенно, когда прочитал про первые несколько паттернов(фабрики, шаблонный метод) и решил по ним задачу.
Хотя пока задачки мелкие процедурный удобнее и ооп нужно в 10% случаев.
Но может все вот эти философские моменты и не до конца вкурил и определения инкапсуляции и полиморфизма из головы вылетели сразу. Зачем эти философские штуки вообще нужны?
101 1805219
>>805202
Скажем так сокрытие реализации, наследование и.т.д. это просто признак хорошего тона при написании классов, условно если ты будешь делать все методы паблик никто не умрет же, но есть условности при которых прайват методы считаются методами для обработки внутри класса, вообще имхо лучше не ооп читать а солид, там все как то более точно описано
102 1805234
>>805219
До солида дойду, как с джавакором разберусь. А со всеми овер20 паттернами из этих: https://refactoring.guru/ru/design-patterns/catalog не надо разбираться?
103 1805245
>>805234
Мое мнение по поводу паттернов, они 100% не панацея, и использовать их постоянно ведет к говно-коду, потому что все паттерны кроме некоторых типо фабрики и сингелтона написаны сразу для максимальной масштабируемости, но в 90% случаев эта масштабируемость не нужна от слова совсем. в крации если получаешь кайф от разборов примеров то почему не поизучать
104 1805342
В мультитрейдинге не могу понять чем отличается ожидающий тред от блокированного?
105 1805358
>>805342
Ожидающий тред это тред которого насильно заставили ждать через .wait, блокированный это тот который долбится в блок synchronized или метод с аналогичной сигнатурой
107 1805485
Анон, нужна книга, лично рекомендованная тобой(важно уточнить оригинал или перевод), я по сто раз уже начинал несколько книг, сыпаться начинаю в районе многопоточности, откладываю, вспоминаю через неделю, все повторяется, лол.
108 1805486
>>805409
Проблема в том, что в этом — сама суть Java: язык, в котором на разработчика надевают смирительную рубашку, так что даже человек без опыта, изучивший Java на двухнедельных курсах может что-то писать по данному ему техзаданию.

Kotlin в эту нишу не вписывается от слова «совсем»… с чем разработчикам, долго работавшим на Java, тяжело смириться.

P.S. Собственно если вы посмотрите на историю развития Java — то это постоянная борьба между людьми, которые хотят новые фичи, так как это позволяет писать более читабельный код — и людьми, которые пытаются их не допустить, потому что они также позволяют читать менее читабельный код…

Смирительнорубашечники на месте?
109 1805489
>>805485
Значит у тебя тупо мотивации нет, иди сделай то, к чему лежит душа кроме кудахтера, дрочки и пожрать, а потом возвращайся.
110 1805507
>>805234

>https://refactoring.guru/ru/design-patterns/catalog


Классная штука. Дает глубокое понимание?
111 1805512
>>805507
Прочел все в ленивом темпе за выходные, для общего понимания пойдет. Один хер все лепится в темплейт-формате.
112 1805525
Какой же yaml охуенный. Почему он еще не используется везде вместо json?
113 1805528
>>805525
Л Е Г А С И
Е
Г
А
С
И
114 1805609
>>805486
Толсто.
115 1805611
>>805525
Почему ты сравниваешь формат для конфигов и формат для сериализации данных? Ты бы ещё сравнил html и json.
116 1805630
>>805611
В чем принципиальное отличие? Yaml это вообще то надмножество json.
117 1805638
>>805630
В том, что нет никакого смысла везде тащить функциональность, которую никто не будет использовать. Хоть и надмножество, применяются они для совсем разных задач. Тебя ведь не удивляет, что нигде из коробки не поддерживается XQuery, а только его подмножество XPath. Потому что всё равно никто бы не пользовался.
118 1805643
>>805638
Но тут ведь как раз есть смысл тащить его, потому что при сериализации и передаче по сети не нужно будет добавлять двойные кавычки везде.
119 1805647
>>805643
Для тех, кого реально беспокоит количество передаваемых байтов, придумали бинарные форматы. А экономия на кавычках почти никакого прироста не даст.
120 1805652
>>805647
а ну да)
121 1805687
>>804840
Решил я всё-таки попробовать WSL2 с докером, полёт нормальный. Можно теперь обойтись без всяких уебанских winpty. Держу в курсе.
IMG20200912164946878.jpg175 Кб, 1200x900
122 1805745
>>805525
Двачую, охуенно
123 1805757
bump
124 1805900
Анончики, надо сделать веб приложение обработки заявок.
Логика такова, что вход на сайтик осуществляется через вход под именем юзера, либо сервиса, либо адиинистратора.
Юзер может создать заявку, в ней указано имя, дата создания, фото и комментарий.
Сервис может менять статус с "в ожидании" на "в исполнении" и "выполнено".
Администратор видит все поля.
При смене статуса на почту юзера и администратора приходит уведомление о статусе и времени.

Поля заявки:
имя, адрес, время создание, время отклика на заявку, время исполнения, имя сервиса, комментарий, фото.

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

Это мне не в борланде формочки лепить..
125 1806031
>>805900
Spring Secure для логина и доступов можешь использовать.
И посмотри гайдов простейших для работы со спринг бутом.
http://zetcode.com/springboot/postgresql/
https://www.youtube.com/watch?v=jH17YkBTpI4
126 1806082
>>805486
А расскажи нам про С++, как на нем здорово писать, что аж препроцесор для ошибок люди пишут.
https://vittorioromeo.info/index/blog/2016_camomilla_released.html
127 1806091
>>806031
Спасибо за наводочку.

А что юзать для выгрузки данных из таблички в текстовое поле в хтмл?
128 1806635
>>806091
Загугли Thymeleaf spring, или mustache spring. Если хочешь что бы формочки, кнопки красивые были то есть простой js фреймворк bootstrap
18918-kotik-plachet.jpg94 Кб, 604x453
129 1806875
Сап, java-гении.

учу java уже четыре дня и голова пухнет.

научите меня заполнять массивы вводом с клавиатуры.
например, есть 2 класса: first и second.
в первый вводятся с клавы 2 значения последовательно.
наприме имя и возраст. 5 человек, например.

в классе first есть переменные name и age.
могу ли я сделать так, чтобы у меня был объект chelovek c параметрами name, age. и потом подставлять их в другой класс в массив?

ну или подскажите где почитать про это.
130 1806907
>>806875
я ниче не понял, что ты написал, но что-то сделал
учу-джаву-4-месяца
131 1806909
>>806875
И для такого используется ArrayList, создание каждый раз нового, как сверху дико неоптимально.
132 1807019
ORACLE покупает tiktok. Ничего себе новости.
133 1807076
>>807019
Лол, нахуя?
134 1807088
>>806875
Пиши на C, там проще.
135 1807105
>>807019
>>807076
Там не совсем так, они хотят стать технологичесим партнером ТикТок. В первую очередь, они хотят перенести данные с клаудов Гугла и Амазона в свой клауд, и обеспечить полную защиту этих данных от китайских властей.
136 1807106
>>802947
Да ладно, я просто вбросил, сам-то на работе уже 10 лет null возвращаю
137 1807108
>>807088

ну началооось
138 1807109
>>805486

>которые хотят новые фичи, так как это позволяет писать более писабельный код


Поправил.
139 1807245
>>807106
Посмотрел ролик Немчинского людям, которые только начинают работать в сфере, он категорически противопоказан. Иначе получим повсюду возвращение условного EmptyComponent, из базы когда этого компонента там нет от слова совсем и кучу find методов хотя они норм, но не каждый чих же
140 1807364
>>802373 (OP)
Прошу помощи.

В этом семестре, в универе у нас изучение джавы. Дали задание, но про сам язык ничего не объяснили.

С чего начать, чтоб быстро и эффективно войти в курс дела? Книга/курс/сайт? Джава программистом не собираюсь становится, просто надо понять базу языка.
141 1807368
>>807364
https://metanit.com/java/tutorial/
Самый понятный из коротких туториалов, что я встречал на русском. Но мне не хватило практики и некоторые моменты без задачек я не понял. Задачки на https://hyperskill.org, но там сейчас регистрация по рефералкам, а с января будет платный.
142 1807456
>>806907
спасибо, стало яснее

а как учил(учишь)?
image.png190 Кб, 700x531
143 1807477
144 1807480
Подскажите, когда мне может понадобиться бин со скоупом prototype/request/session/global session?
145 1807495
>>807480
Их можно использовать в стейтфул бинах. Но учитывая принятую повсеместно в джаве анемичную модель, можешь о таких скоупах забыть.
146 1807500
>>807480

>prototype


Вообще в ЖЕПе по DI такой скоуп был как бы дефолтным. Но в спринге сделали лучше. А зачем он - хуй знает.

>request


Хранить токен пользователя, например.

>session


Хранить параметры сессии.
147 1807506
Жопа 15 вышла все в бункер

>55 new emoji characters

148 1807510
149 1807518
>>807510
Надейся. Lts только 17 будет.
150 1807520
>>807518
Блядь, я думал хотя бы 16.
151 1807649
>>807456
Java. Библиотека профессионала. 11 издание Кей Хорстманн + https://hyperskill.org + иногда https://metanit.com/java/tutorial/
image.png7 Кб, 439x112
152 1807668
>>807649
Я два месяца пообтирался на гиперсреньке, 140 топиков жопы, ессеншлы и прочие интересности выдрочил. Потом сделал 9 проектов, смотрю, а все остальные это какое-то дрочево массивов.

>массивы в 2020



Думаю, куда дальше перекатиться.
153 1807678
>>807518
А кто нибудь в курсе, как они в LTS поддерживают фичи который в preview state? Как есть в моменты выхода или апгрейдят на финальную версию?
image.png8 Кб, 218x231
154 1807691
В череде вопросов на собесе вам задают:
- Как реализовать DI-контейнер?

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

Ваш ответ?
155 1807693
>>807691
Ты ебанутый? Нахуя велосипед переизобретать?
156 1807695
>>807691

>DI-контейнер


нахуйнадо. нормальные посоны пробрасывают фабрики!
157 1807708
>>807691
Если бы я делал по-тупому, создал бы класс со свалкой статик-полей и synchronized геттерами-сеттерами. А так, наверное, была бы только одна мапа<Class, Object> и пачка методов для инициализации и поиска.
158 1807724
Собесился кто в Люксофт? Сильно ебут? Если да, то по каким темам, что подтянуть перед еблей?
159 1807756
Сука, гиперскилл дальше 25$/месяц, что делать, аноны
Вроде норм ресурс, но мне чот не охота в такую делюгу рога макать
На гиперскилле всё вроде норм разжёвывается
Или то ресурсов у меня нормальных для изучения не было?
160 1807762
>>807756
там вроде если ты что-то быстро делаешь, то фри триал до 3х месяцев продляется, а за 3 месяца можно этот гиперскилл весь пройти и проекты все сделать
161 1807763
У меня кончились адекватные идеи, нужно реализовать одну хрень, причем с расчетом что этот кусок кода будет выполняться быстро, часто и не жрать лишней памяти. У меня получается пиздец как не оптимально.

Есть два множества (Set) объектов, хотя фактически может быть хоть массив в реализации так-как множества приходят по сети уже готовыми. Допустим А и Б.
Нужно найти в первый результат одновременно все элементы которые есть только в А но отсутсвуют в Б. И второй результат только элементы из Б но без А.
Да в готовой библиотеки есть готовый метод. Но в своей базовой реализации он медленный. И его нужно вызвать дважды, а мне желательно за один проход все сделать.
162 1807774
>>807762
В том то и дело, что я попроходил и ебловал
А потом когда вошёл во вкус, так сказать, уже поздновато, блять
Теперь чую, мне только хуи во вкус будут входить, блять
163 1807777
>>807774
зарегайся по новой, хуле
image.png11 Кб, 292x168
164 1807818
>>807763

>за один проход все сделать


как-то так можно, наверно. на жабу сам перепишешь, на ней всё так же будет +-
165 1807823
>>807756
на английском использовал его?
166 1807825
>>807668
Без понятия, я осилил 170 и 8 проектов. Думаю еще 100 осилить и еще 10 проектов до нового года, потом наверно пойду учить андроид.
Осталось очень много важного - многопоточность, лямбды, стримы, базы данных, спринг бут, паттерны.
Для меня гиперскилз это кроме задачек еще и в первую очередь тренировка английского, там очень примитивный язык, а у меня инглиш был околонулевой. Ну и я задачек по темам с автотестами не видел лучше.
167 1807873
>>807691
Делаем свою анотацию прихреначиваем её к полю, во время старта приложения мониторим все объекты на наличие этой антации, собираем все объекты в одну кучу и вызываем, их конструктор через рефликсию а ещё лучше через классы cglib, так как так быстрее, после создания экземпляра класса смотрим нет ли у него требующихся для заполнения полей, заполняем через рефликсию, если есть, готово. Спринг делает так же? а ну простите, я тупой
168 1807875
>>807763
Set<Integer> intersection = new HashSet<>(s1);
intersection .retainAll(s2);
s1.removeAll(intersection);
s2.removeAll(intersection);
Вот решение, не знаю о каких двойних проходах идет речь
169 1807879
>>807691

>>- Как реализовать DI-контейнер?


Это ж просто хешмапа с наворотами. HashMap<Class, Object>. В спринге просто сделали вместо обжекта специальбный контейнер - бин, чтоб метаинфу хранить. Можно тож сделать, если хочется.
170 1807988
>>807708
>>807873
>>807879
А теперь самое интересное - как построить дерево зависимостей и определить порядок инициализации.
А потом усложняем вопрос - как сделать так, чтобы можно было и циклические зависимости делать.
171 1808025
>>807988

> порядок инициализации


О каждом бине хранился бы где-нибудь список его зависимостей, например, List<Class> в самом классе бина. Ну и при запуске бежим по ним, смотрим, проинициализировано ли, и если нет, рекурсиано обходим зависимости и инициализируем.

> циклические зависимости


Разве что ленивая инициализация, инициализировать не при запуске контейнера, а при попытке непосредственного обращения к бинам из других бинов.
172 1808030
>>807988
циклическая зависимость делается через прокси классы, которые если отбросить все сложности, в данном случае, просто лейзи объекты
173 1808055
>>808030
Можно без прокси, если инжект делается через сеттер или поле. Спринг так умеет по моему.
174 1808076
>>807825
Это в каком разделе автотесты там?
175 1808088
>>807875
Тут ты три цикла гоняешь, вместо одного.
176 1808091
>>808088
я гоняю 2 цикла в том примере, intersection просто для красоты, можно делать вот так:
Set<Integer> buff= new HashSet<>(s1);
s1.removeAll(s2);
s2.removeAll(buff);
Нам в любом случае придется проверить и s1 и s2, так как задача так поставлена
177 1808097
>>808088
Не ты прав меня чет контузило походу
image.png61 Кб, 1904x1033
178 1808105
>>802373 (OP)
Бля какая ебля с этой хуйней, пиздец. Решил попробовать покодить на Джаваскрипте, скачал ебучий еклипс, и мне просто не дает писать. Сука, ну че за хуйня?
179 1808122
>>808105

> джава-тред


> джаваскрипте


> эклипс


Ну ты конечно пчел.
image.png30 Кб, 613x650
180 1808140
А как быстро (приблизительно) должна происходить запись (insert) ста тысяч объектов в Postgres через JPA/Hibernate?

Сделал примерно как на пикрелейтеде по статье https://vladmihalcea.com/the-best-way-to-do-batch-processing-with-jpa-and-hibernate/

Однако сто тысяч записей вставляются почти 2 минуты. Так и должно быть разве? Это ж медленно пиздец, не?
181 1808187
>>807825
>>807668
Одно разочарование этот hyperskill. Та же laba_2.pas, только в профиль. С таким гиперскиллами в IT-компанию разве что уборщиком возьмут.
182 1808188
>>808140

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


Вовсе нет, не очень быстро, но и не медленно что пиздец. Если хочешь напиши на чистом JDBC и PreparedStatement.addBatch() и посмотри время там.

В целом там много параметров:
1. Какие запросы генерит хибер, батчовые ли они.
2. Размеры вставляемых данных - чем меньше тем лучше.
3. Какие на таблице индексы/констрейны/триггеры - все это конечно тормозит вставку.
4. Надо подобрать оптимальный размер батча.
5. Оптимизация самого постгреса.
183 1808254
>>808188
Спасибо, уже нашел проблему. Оказывается, для Postgres нужно обязательно ставить reWriteBatchedInserts=true, иначе JDBC-драйвер всё равно будет использовать отдельные инсерты. 2 минуты уменьшились до 20 секунд.
184 1808280
>>806909
Ну, чисто технически, под капотом ArrayList при превышении capacity происходит то что ты написал. Нахуя я это пишу, ведь ты хотел написать ему как проще
185 1808296
>>806907
Несколько советов тебе:
1. Пик2 - Убери сканнер из конструктора. Если тебе понадобится создать экземпляр класса то этот сканнер тебя заебёт. Лучше новый метод написать аля fillWithScanner().
2. Для каждого свойства писать отдельные геттеры & сеттеры. Ну это ты и без меня знаешь.
А вообще, анон выше задачу хуёво объяснил, сотюда все вытекающие.
186 1808328
>>808187
Мне нужен был сайт со стуктурированным учебным планом, чтобы я основы понял и задачки порешал. Клон двача изволь сам делать.
image.png638 Кб, 1051x905
187 1808332
188 1808361
>>808332
JDBC топ
189 1808375
>>808332
Спринг топ.
191 1808388
Приветствую уважаемых, вопрос такого рода: кто-то сдавал экзамены OCA/OCP и если да, то те знания, которые ты задрачиваешь чтобы сдать экз окупаются или это тупая трата времени?Да, я молодой йоба 19lvl Спасибо за ответ.
192 1808395
>>808361
Ну а хули нам, разработчикам... Влом по ResultSet'у пробежаться?
193 1808412
>>808388
Экзамен не сдавал, но луркал много по этой теме. Малоэффективно с точки зрения профессиональной прокачки, чуть более эффективно при поиске работы, но основное применение этого экзамена — когда галера может тебя подороже продать заказчику как сертифицированного java-разработчика. Что сказывается на твоей зп, вот тебе и окупаемость. Кстати, называются теперь Java Programmer I и II.
194 1808513
Какие либы для тестов используете?
195 1808517
>>808513
Spring-test, TestNG, Mockito. Стандартнее некуда.
196 1808534
>>808412
>>808388
Кстати, с октября этого года экзамен для 11 джавы останется только 1, старые два будут неактуальны. В новом экзамене 90 вопросов, стоит 225 баксов, не мало, но дешевле чем два по 150. Для восьмерки схема сертификации остается прежней.
Само наличие сертификата конечно мало чем поможет, хотя в каких то гос подрядчиках может повысить твою ценность (в тендерах бывают указывают требования наличие в команде OCP - это полная хрень с объективной точки зрения, но что уж поделаешь, российская бюрократия). Но подготовка имеет все же смысл, будешь знать какие-то тонкости, прокачаешься в новых api, там же и на многопоточку есть вопросы (хотя и простые). В некоторых конторах все еще имеют место быть паззлеры и бреинтизеры - как раз тренировка.
Короче, если есть 225 баксов, время на подготовку и пока не видишь свою карьеру в будущем - почему бы и нет? Хотя понятно что это и не замена боевому опыту
197 1808535
>>808517
Junit мне кажется стандартнее.
198 1808537
>>808105
Нахуй тебе эклипс чтобы покодить на джаваскрипте? Открываешь браузер, f12, и кодируй сколько влезет в консоли
199 1808544
>>808537
ппп-п-пук подсказки ИДЕ
200 1808551
>>808537
Это как рассуждать, зачем нужны IDE, если есть вим/нотепад++/сублиме.
Макакаскриптеры теперь тоже любят размазывать логику, и навигация по коду без помощи IDE там пиздец.
201 1808552
>>808388
Привет, я ждал тебя.

Плюсов не так много, но они есть:
1) Пока готовишься, пробегаешься по всему языку, что не может не сказаться положительно на твоем опыте
2) Можно на hh поставить охуенную плашку с сертификатом и бантиком, выглядит стильно, модно, hr'ы говорят "молодца" (серьезно, на это сильно прям клюют - количество предложений увеличилось в 2 раза, у меня правда бэк сеньеровский был, а для джуна может и не прокнуть)
3) Неплохо апает самооценку, типа "нихуя, я и так могу?" и можно потом на дваче хвастаться. Но тут аккуратнее - если с первого раза не затащишь, то словишь дизмораль.

Вообще экз достаточно сложный, в плане того что надо думать очень быстро, практически интуитивно. Первым делом смотришь, есть ли в ответах вариант "не компилится", и если нет, то очень быстренько чекаешь логику и идешь дальше, а если есть то ты попал, нужно внимательно читать код, ища ошибку. По правде сказать, по книжкам складывалось впечатление, что будут наебывать часто и много по ошибкам компиляции, а на деле все очень благоразумно - чекать парные скобки или запятые не приходится, все методы названы правильно (т.е. не будет такого что у коллекций .length() вызывают), все ошибки компиляции что есть это в основном из-за сигнатур методов, и из-за принадлежности метода к конкретному классу. Вопросов с "компиляцией" где-то 50%, может даже меньше. По времени расклад такой: первые час-полтора делаешь медленно и аккуратно ~30% вопросов, изучаешь систему, помечаешь некоторые вопросики для ревью позже. Далее охуеваешь с того что у тебя остался всего час, а вопросов еще больше половины, открывается второе дыхание, отбрасываешь неуверенность и начинаешь ебашить, ничего более не помечая. Как то-так.
202 1808590
>>808187
Ну слушаю твою альтернативу насчет задачника для новичка.
203 1808610
>>807823
Ага, с восприятием английского проблем нет, да и нормально там все рассказывается
Есть конечно ебанутые задания, но они редки
204 1808611
>>807777
А чтобы учить всякое дальше, чем на перво акке, придется ли предыдущее перепроходить?
205 1808625
>>808611
Там все скипнуть можно. То что прошел на первом - скипаешь и играешь дальше.
206 1808628
Как в этих ваших явах/котлинах с байтовыми stdin/stdout работать?

Пишу:
var input = System.`in`.readAllBytes()
System.out.writeBytes(input)
System.out.flush()

Ожидаю, что на выходе будет то же, что и на входе, но нет, получаю какую-то байтокашу.
207 1808632
>>808611
Тебе рефералку дать что ли? Там еще +3 месяца будет. К январю весь сайт можно выдрочить.
208 1808704
Объясните, как мне запаковать хеловорд с 2 классами на джаве 11 в исполнительный джарник , чтобы я мог запускать на других пк без установки jdk/jre (ведь отдельного jre на 11 вроде нету, а переставлять на основной комп ранний jdk и засорять path я не хочу).
вот тут есть ответ :

https://ru.stackoverflow.com/questions/886352/Где-скачать-jre-11

>Если же вы хотите послать свою программу конечному пользователю, у которого теперь нет подходящего JRE и который не хочет устанавливать JDK, вы должны создать рантайм среду (некое подобие старого JRE), которая будет включать лишь необходимые Java модули, включая модуль вашей программы.



Но я вообще нихуя не понял еще с этапа создания модулей и сборкой мавеном. Можете объяснить на пальцах, там вроде легко должно быть.
209 1808705
Какой самый простой способ сделать Makefile из под шиндоуса для учебного проекта (без каких-либо packages), сделанного в main.
210 1808710
>>808076
под автотестами я имел ввиду проверку задач тестами онлайн. Хз че там, юнит тесты? Не владею терминологией.
211 1808712
>>808704
как ты хочешь сделать исполнительный именно jar`ник, если в системе нет jdk jre. Упаковывай в exe свой jar и jdk (вроде jre сейчас отдельно не идет), а лучше возьми native image graalvm
212 1808721
>>808712
Я хочу то, что челик на стековерфлоу объяснил. Но я не понял полную последовательность действий.
Запихать какие-то модули с jvm то ли в отдельную папку, то ли в джарник. Я ничего ни о мавене, ни о модулях не знаю, ньюфаг.

Или еще как то. Короче мне нужен простой способ поставить джава машину 11 на комп пользователя, чтобы весило поменьше и не надо было ковырять всякие path.
213 1808804
>>808590
Любой литкод с задачками по основам языка. Хоть джавараш. Хекслет выглядит весьма годным и приближённым к реалиям разработки, но вся годнота платная. Я в своё время основы жабы выучил на курсе Седжвика по алгоритмам, но тогда уже работал программистом на другом языке.

Самая засада в том, что до уровня "пишу консольные приложения и гоняю массивы в три потока" можно научиться где угодно, но без баз данных, гита, веба и спринга с хибером ты нахуй никому не сдался. А это всё постигается в работе над настоящим проектом.
istockphoto-1220659828-170667a.jpg16 Кб, 416x416
214 1808822
>>808552
Спасибо за инфу. Давно проходил тесты? Сдавал для себя, чтобы работу найти?

другой анон
215 1808840
>>808721
Для начала тебе нужно создать не просто jar, а java-модуль, упакованный в jar. Потом запускаешь утилиту jlink, как в примере, но со своими названиями. Она создаёт тебе в указанной директории рантайм джавы и батник для запуска твоей программы. Всё это хозяйство (джарник и директорию с рантаймом) берёшь с собой и запускаешь на другом компе с помощью всё того же батника.
216 1808853
>>808804
Кстати и с гитой, бд и.т.д ты тоже не особо кому то оперся, так немного знаешь методы разных либ, по хорошему дальше утыкаться носом в какую нибудь технологию и нюхать пока не прозреешь.

Но соглашусь, только на первой работе понял как работает вся эта кухня вместе.
217 1808856
>>808840
Слушай, а с веб приложением так можно? Типа, открыл экзешник и у тебя джава поставилась, томкат взлетел и тд?
218 1808863
>>808856
Если приложение под спрингом делаешь, он автоматом томкат подрубает с jar-ника. Так что никакой разницы быть не должно. другой анон
219 1808864
>>808704
Раз у тебя возник такой вопрос, то скорее всего для твоей задачи тебе нужна не джава, а более подходящий инструмент. Способы, конечно, есть, можно хоть пхп запаковать в экзешник, но зачем забивать гвозди микроскопом?
220 1808869
>>808863
Точно, спасибо.
221 1808970
>>808822
В 18-19гг., менял работу, поэтому хотелось уверенности (п.3), продать себя подороже (п.2) и подготовиться к собесам (п.1).
222 1809012
Анчоусы, помогите. За 5 дней надо выдрочить структуры данных и многопоточку, готов ебашить по 12 часов в сутки. Какие книги посоветутете?

Если что, опыт в 2 года разработки имеется и массу всего знаю, хочу подготовиться к собесу, чтобы ни по одному вопросу не проебаться
223 1809020
>>809012
Я изучал через исходники джавы, просто заходя в директорию и тестируя каждый метод каждого класса, по другому не умею так как по книжках вылетает инфа через неделю, но по итогу самый простой совет просто гуглишь вопросы на собес джавы и на каждый у тебя должен быть ответ, если ответа нет идешь либо разбираться либо гуглишь ответ либо там уже ответ будет
224 1809132
>>808804
Жабараш платная, с идиотскими картинками и по отзывам хуже гиперскилса. Платить за гиперскилс я не собираюсь, так что сравнение не уместно. Ты бы еще "где угодно" - офлайн курсы назвал или универ.
Ты так говоришь где угодно, как будто тебе эту хуиту от жидбрейнса, как золотую пулю продают. Я до того, как такие задачки начать гонять шел чисто по учебники и вообще не догонял.
Ну и твои наезды вообще странные, особенно когда приводишь нерелевантный опыт. Само собой ясно, что гиперскилс это для совсем нулевых, для кого жаба первый язык.
Так я вот скоро закончу. Раз ты такой опытный - скажи, где я могу получить знания по джаве получше погоняв массивы в консольных приложениях.
225 1809135
>>808864
Побаловаться хочется, стало скучно учиться. Типа слишком сложно для такой мотивации?
226 1809140
>>809135
Нормально. Во всяком случае лучше, чем играть в дотку.
227 1809170
>>809132
Когда первый раз на работу пришел, со мной пришел ещё один чувак мой будущий коллега с которым мы проработали 2 года вместе, а потом разошлись по разным компаниям, так вот я дрочил джаву по книжкам дедов, а он прошел джавараш, по итогу у меня были более глубокие знания в некоторых областях, а он знал намного больше но вширь, и по итогу он уже гуглил бест практики для стримов, а я сидел и говорил "кто это такой ваш стрим?" Никаких выводов не делаю, просто история из жизни
228 1809173
>>809170

>а я сидел и говорил "кто это такой ваш стрим?"


Как тебя без стримов на работу взяли??? Или ты на заводе или в НИИ работаешь?
229 1809183
>>809173
Это был 2015 год, проект на java 6 + EE, каким стримы? Мы просто новую бизнес логику писали на 8, потому что какой то чувак выпросил обновить джаву
230 1809187
>>809170
Мне тут же в треде отсоветовали джавараши, да нагуливал я часть курса, она не очень. И если ты про стримы, которые фукциональные, а не ввода-вывода, то их вроде нет в их курсе.
231 1809193
>>809187
да, перепроверил, лямбд тоже нету.
232 1809202
>>809193
Значит джава раш тут не причем, он видимо больше интересовался джавой в то время чем я
233 1809208
>>809202
https://javarush.ru/quests Вот можешь посмотреть. Задачки у них под пейволом, но "теория" сейчас почему то открыта. Там уровень сильно ниже, чем в гиперскилсе.
234 1809223
>>809132

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


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

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


Обычно советуют после основ пилить свои проекты, изучая отдельные темы по мере возникновения проблем, пытаться коммитить в опенсорс. Но на практике это невероятно сложный и демотивирующий процесс, особенно после структурированного курса для начинающих. Мне кажется, что самое эффективное это либо обучение с ментором, которое стоит денег, либо пытаться попасть на стажировку за еду.
235 1809240
>>809223
Я живу в зажопинске, тут нет стажировок даже с доплатой с моей стороны. Где купить ментора и как его танцевать?
236 1809381
Обманули нас с project Loom в 15 версии.
237 1809450
>>809240
https://lmgtfy.app/?q=java+ментор

Есть целые конторы, есть отдельные менторы-фрилансеры. Работают удалённо. Говорят, можно даже на хэдхантере найти.
238 1809457
Ебать как много вкатывальщиков. Джаву покусал питон?
239 1809730
>>809457
А разве вся эта доска не наполнена вкатывальщиками чуть менее, чем полностью?
240 1809827
>>809457
>>809730
Опытным джавистам не до двачевания, все гребут в поте лица в опенспейсах, сидя спиной ко входу.
241 1809863
Товарищи джависты, помогите. Где можно найти гайд по правильной архитекутре программы?
Ну там где написано что куда, типа есть контроллер, он ложится в конфиги, есть апликейшн пропертиес, они ложатся в ресурсы и т.д.
Надо программу писать на работе, а я не ебу че каво.
Спринг+ градле, если что.
242 1809869
>>809863
Гугли "spring project structure best practices"
Ну и на гитхабе можно глянуть примеры, они все плюс-минус по одному шаблону.
243 1809870
>>809869
Спасибо большое, анончик.
244 1809871
>>809381
А когда его в 15 обещали? Учитывая масштабы влияния на JDK он еще минимум 2 года будет в EA.
! только шабить.png369 Кб, 853x887
245 1809881
>>809170

>первый раз на работу пришел, со мной пришел ещё один чувак


>он прошел джавараш


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

>либо обучение с ментором, которое стоит денег


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


Сходи в армию, там тебе и сержант будет, и бесплатно поработаешь.
Конченный, блядь, ты хоть понимаешь, как выглядишь перед работодателем? Любой блог открой, того же хохла, например. У него в каждом втором видосе идёт разговор про софтскилы, эстимейты, обучаемость.
И тут ты приходишь.
"Гражданин начальник, я не могу сам обучаться! Работать тоже не смогу, нужно чтоб сзади стоял погонщик и кнутом щёлкал. На нормальную работу меня не берут, я готов хуярить за еду (читай - от меня будут одни убытки)."
Инициативность? Самостоятельность? Любознательность? Способность быстро обучаться в условиях постоянно изменяющихся технологий и бизнес-требований? Впизду, берём этого! (Нет)
Вишенкой на торте идёт ещё и отсутствие в/о, верно?
246 1809912
опять мвпараша протекла...
247 1809920
>>809912
Да вообще пиздец.
248 1810064
>>809881

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


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


Парню надо было после собеса, написать на вас мудаков, отзыв на всех платформах отзывов о работодателях.
image.png9 Кб, 234x353
249 1810128
>>809869
Посмотрел, везде по-разному, накидал свой вариант, нормально? По терминологиям именований противоречий, вроде бы, нет. Хотя некоторые тонкости трудно различать.

Мимо
250 1810146
>>809863
Самое годное это книжка Мартина Фаулера "Шаблоны разработки корпоративных приложений" (Patterns of Enterprise Application Architecture). Это сухая теория, практически не устаревшая за 10 лет. Ещё у спринга есть "эталонный" проект Pet Clinic, можешь туда заглянуть.
251 1810156
>>809881
Ого, ну ты и порвался. Ты ещё скажи, что сам в джуниорстве не на рабочем проекте учился, а пришёл уже с готовыми знаниями после самообучения через интернет. Если ты, конечно, не школьник, изображающий себя бывалым гребцом.
252 1810168
>>810128
Слишком подробно. У нас в команде структура разбивается по функционалу, то есть там configuration, controller, repository, service, integration, model. Внутри уже лежат специфичные классы для разных бизнес сущностей. В спринг пет клиник наоборот, папки под отдельные бизнес сущности, а внутри разные по функционалу классы вперемешку. Не знаю, что лучше, решай сам.
253 1810169
>>810128
Контроллеры надо вывести из бизнес-логики.
Вообще, делать можно как угодно, прям жёстких требований к этому нет, вопрос лишь в семантике.
Можно хоть положить всё в один пакет, и будет работать, потому что обычно классам в одном проекте стараются давать уникальные имена.
254 1810180
>>810168
Понял. Ну, не знаю, лично мне нравится, когда каждый класс лежит на своей узкой полочке, аж дышать легче становится.

>>810169

>Контроллеры надо вывести из бизнес-логики


Точно, спасибо. Хотя тут пакет businesslogic скорее для разграничения конфигурации и логики приложения.
255 1810198
>>810180

>когда каждый класс лежит на своей узкой полочке, аж дышать легче становится.


А еще можно писать так, чтобы в классе было не больше одного метода.
256 1810206
>>810198
Если это результат разумной декомпозиции - почему бы и нет.
257 1810326
>>810156
Ни на одних курсах "войти в айти за 28 дней" не был, читал книги и по ним учился.
Другого пути нет.
258 1810341
>>810326
А как по одним книгам учиться? Вот читаю я книгу, погонял пример из книги, но не все и не везде понял. Для закрепления нужно бы задачки порешать, но в большей части книг задачек нет, а в тех, что есть - можешь сделать, но их никто не проверит.
259 1810400
>>808863

Jlink работает только с модульными jar. То есть всё твое приложение, включая все твои зависимости должно быть модульным. На сегодня 95% библиотек на жабе нихуя не модульные. Максимум добавили строчку в манифест с объявлением имени автомодуля и всё. Некоторые да же этого не смогли сделать за 3 года.
260 1810412
>>810128

Нахуй тебе такая глубокая вложенность? Чем более плоская модель - тем проще она в понимании.
Выкидывай "application", "businesslogic" и "domain" они никакой информации не несут. DAO и repository это одно и то же, выбери что-то одно.
15401314197230.png414 Кб, 1204x2069
261 1810454
>>810341

>в большей части книг задачек нет


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

>их никто не проверит


Я выше перечислил пару книг издательства Маннинг, там есть решения с тестами, где можно проверить.
На крайний случай всегда можно загуглить те же "99 problems in ...", пикрил, открыть литкод, открыть sql-ex.
Дальше уже просто открывать ХХ, писать хрюше - она найдёт тебе задачку. Если решишь - ещё и на работу устроишься.
262 1810459
>>810454
Кормен это алгоритмы вроде, сикп - лисп, непонятная книга по скале тоже само собой не джава. Зачем ты привел столько нерелевантных примеров? Я же не об этом спрашивал.
Я не нашел адекватных учебников для новичков с задачами, иду по Хорстману(там нет задач), решаю задачки в гиперскилсе.
263 1810461
>>810341
>>810459
Сто раз уже писали про "Методы программирования" Блинова.
264 1810465
>>810461
Но там старая 7 джава, хочется с лямбдами и стримами сразу.
265 1810612
>>802980
Динамический состояния представлять исключениями, это вообще костыль.
Без налла, как без анала, никак, просто надо как-то маркировать методы.
266 1810659
>>810459
>>810465
Это всё больше напоминает пасту про двач и нож.
267 1810698
>>810412

> DAO и repository это одно и то же


Есть мнение, что это не так, мол, DAO - это голый SQL, работающий с таблицами напрямую, а репозиторий на уровень выше, работает уже с сущностями через ORM. Ну и другое мнение, что хуйня это всё.
268 1810786
>>810698
в сервисе бизнослогика
в репозитории персистенс сущностей(юзает интерфейс дао или юзает интерфейс орм)
дао содержит реализацию персистонса(вместо дао может быть нихуя, если юзается орм)
269 1810791
>>810786
те, дао и орм — по сути одно и то же, ибо выполняют маппинг модели а схему бд и наоборот.
270 1810835
Есть ли для Eclipse темы с аниме девочками? Мику и Мегумин топчик
271 1810838
Я смотрю, эклипс второй по популярности после идеи, раз про него здесь так часто пишут. Надо бы попробовать, и если норм, снести ебаную идею, чтобы видеть её только на работе.
272 1810845
>>810838
У меня eclipse ассоциируется с индусами с их мерзким акцентом. Тошнит от него.
273 1810847
>>810845
Да и у меня тоже, хоть и не видел его ни разу.
274 1810907
Поставил эклипс. Юзабилити какое-то совсем хуёвое, будто переход на Borland C++ Builder с какой-нибудь современной вижуал студии. Даже STS так себе. Снёс.
275 1810913
>>810907
Ясно, держи в курсе.
276 1810920
>>810913
Ладно.
277 1810937
А хули грейдл сложный такой?
278 1810940
>>810937
Потому что это шаг назад, шаг к усложнению. Вместо декларативного описания тут чуть ли не пишешь скрипты сборки, со всеми вытекающими последствиями.
279 1810943
>>810940
А хули он популярный тогда?
280 1810945
Да и котлин DSL хуйня ебаная, скрипты на груви выглядят короче и понятнее.
281 1810952
>>810943
Достаточно много людей думает, что новое всегда значит лучше. Да и копнёшь чуть дальше пет-проектов и хеллоуворлдов - везде мавен, даже если и были попытки юзать градл, то потом выкидывали.
282 1810953
>>810952
Спринг переехал на грейдл.
283 1810960
>>810953
Ага, и написал дохуя плагинов, скриптов и конфигов, чтобы работало нормально, он-то может себе позволить. А большинству нужно пилить фичи вместо ебли с системой сборки.
284 1810969
Ну пиздец же просто.
285 1810973
>>810969
Кто бы что ни говорил, но статическая типизация хуёво подходит для скриптоты.
286 1810991
>>808534
Интересная информация про новый вид сдачи экзамена,благодарю.
Готовлюсь по дефолтным книжкам OCA OCP от Boyarsky, думаешь будет достаточно для сдачи нового экза? просто если сейчас есть 2 экзамена - 2 книги, то с новыми порядками я даже не знаю, вряд ли литература соответствующая появится.
>>808552
Спасибо за развернутый ответ, слушай, я живу в умирающем миллионике, тут что-то с пунктами сдачи туговато и я пока не разобрался есть ли в моем городе что-то такое(если что не проблема скататься в какой-нибудь дс).Можно ли через какой-то сайт посмотреть пункты сдачи по РФ? Туповатый вопрос, понимаю, но может ты сам сталкивался)
287 1811033
Как проекты пилятся в компаниях? Вы берете тз и сами решаете какую сегодня фичу запилить или вам дают четкие задания реализовать такой-то класс или такую-то логику? Я имею ввиду, вы всегда четко знаете, что вам нужно реализовать? Часто приходится самому что-то выдумывать?
288 1811034
>>811033
А тебя ебат?
289 1811037
>>811034
Не понял вопроса.
290 1811050
>>811033
Есть заказчик, и он говорит, что за фичи ему нужны, и заводит задачи в джире. Причём какие-то фичи ему нужны поскорее, а какие-то могут подождать. И ебитесь как хотите. Ну а дальше бизнес-аналитики расписывают, что именно нужно сделать, тимлиды создают задачи поменьше и распределяют, кто, когда и что будет делать. Если ты джун, то частенько тимлид расписывает задачу подробно с указанием того, как именно нужно реализовывать, на какие места в коде обратить внимание и т. д. А если поопытнее, то как правило сам уже всё понимаешь и делаешь.
291 1811054
>>811050
Понятно, спасибо.
292 1811064
>>805687
В новом git-bash (2.28) запилили какую-то экспериментальную фичу, из-за которой можно и winpty больше не писать. Продолжаю держать в курсе.
293 1811151
>>810991
Я - не те аноны, но скажу.

Сдавал 1z0-808 в августе, готовился по книжке Боярски и мок-экзаменам Enthuware. Последнее очень рекомендую, вопросы сложнее, чем те, что на реальном экзамене, и главное, к каждому вопросу есть описание и дискуссия на сайте. 10 баксов стоят, можешь поискать ломанные.

Пункты сдачи можешь посмотреть на сайте Pearson Vue, там же, где будешь бронировать экзамен. Есть опция сдавать из дома, т.н. Proctored exam, но это то еще удовольтсвие: ручкой и бумагой пользоваться запрещается, смотреть в камеру, вставать нельзя, глаза отводить нельзя. По-моему, лучше в соседний город съездить.

Удачи.
294 1811187
Что скажете по поводу данного бандла?
https://courses.baeldung.com/p/lss-rws-certification-class
295 1811238
>>811187

>Евгений Парашев


Товар говорит сам за себя.
296 1811329
Есть шанс сейчас полностью выбрать один из двух стеков java (+kotlin) или C# (.Net Core)
Я совершенно не ньюфаня, просто предоставляется возможность полностью погрузиться в одну из платформ, но внятной и глубокой информации по этому выбору нет (везде что-то поверхностное).
Есть у кого интересные мысли по поводу той или иной технологии, любое мнение будет полезно.
297 1811357
>>811238
Окей, умник. А если серьёзно?
298 1811381
>>811329

>но внятной и глубокой информации по этому выбору нет (везде что-то поверхностное).


У обоих платформ есть свои достоинства и недостатки. Из плюсов Java- более распространенная больше вакансий, больше библиотек и фреймворков видел доклад, где чуваки делали Java-.Net интероп чтобы использовать Java библиотеки, хороший тулинг. У Java есть альтернативные JVM - да, не все сидят на Oracle JDK. Java поддерживается и развивается, не только Oracle.

У .Net и C# - больше сахара. Все необходимые инструменты - IDE, пакетный менеджер, система сборки, без изысков, но есть. Платформа развивается.

В целом C# более продвинутый язык чем Java, но JVM превосходит .Net Core как платформа и по количеству и качеству фреймворков и библиотек.
299 1811487
Динамикопетух на связи
Писал около 2х лет на Ноде, к которой с недавнего времени добавился ТайпСкрипт. Подумываю взять статически типизированный язык и в перспективе перекатитсья в него. Присматриваюсь к Жаве, но что-то мне сдается что большинство вакансий будут дремучим легаси, а мне б этого не хотелось. Какие версии Жавы на данный момент чаще всего юзаются в коммерческой разработке? (бэк, энтерпрайз или мобилки)
300 1811490
>>811487

>мобилки


6

>тырпрйз


8

>бэк


lts
301 1811504
302 1811617
>>811504
уже? отстал от жизни чутка
303 1811633
>>811504

>> 6


>8


Kotlin
<:o)
304 1811995
Учу джаву чуть больше пары недель. Дрочу пока книжки, ну и пишу код, естественно. Мой первый ЯП, до этого абсолютный 0.

Примерно через неделю после начала изучения, я записался на белорусский онлайн курс по JS. Для общего развития и из интереса. На днях осознал, что изучение обучение на курсе внезапно занимает дохуя времени и страдает джава. Так вот вопрос - стоит ли так разрываться меж двух языков или лучше сконцентрироватьяс на одном и забить на курсы? Я вообще не уверен, нужны ли мне знания по JS, но осознаю что инструменты и задачи у них абсолютно разные.
305 1812005
>>811995

>


>


я учу java неделю примерно и уже в ахуях от нее) а разрываться на 2 ЯП.. я бы не стал. тем более, если тебе эт не надо)
306 1812006
>>811995
Все же решил сконцентрироваться на джаве. Но все же готов выслушать мнение ананасов о том, насколько тупа или охуенна затея учить два языка одновременно
307 1812016
>>812005
Да к тому же у меня автошкола + подработка, и времени считай вообще в обрез.

И я тоже ахуевал, и продолжаю порой ахуевать от джавы, но это хорошо же =) Главное влиться в поток и там уже попрет. В начале всегда сложно. Ну, надеюсь что так и будет лул
308 1812019
>>812006
я бестолочь в языках, но мне чет мне кажется, что тут большинство тебе скажет, что это просто извращение без особого толку. сам себя запутаешь

>>812016
ахах
еще и автошкола) ты че, перфекционист?
настроил много планов, но тем проще будет тебе обосраться

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

>Какие версии Жавы на данный момент чаще всего юзаются в коммерческой разработке? (бэк, энтерпрайз или мобилки)


У нас основная 11, и некоторые сервисы переводим на 14.
310 1812026
>>812019
Мне уже 25, времени как сейчас уже не будет. Тем более что хочу вкатиться в джаву и начать работать в этой сфере.

А ты какой лвл?
311 1812030
Что ж, ждём лабы, вопросы по синтаксису и перекатs после 500.
312 1812038
313 1812091
>>802373 (OP)

>Q: ЧТО СКАЖЕТЕ ЗА ДЖАВАРАШ?


>A: Худшая инвестиция в твоей жизни.



Почему тогда люди прошедшие его или даже прошедшие около половины находят работу?
314 1812095
>>812091
Это никак не связано с джаварашем.
315 1812098
>>812095
Почему ты так думаешь? Проходил там курсы?
316 1812099
>>812098
Нет.
317 1812100
>>812099

>Это никак не связано с джаварашем.



Тогда откуда ты знаешь?
318 1812101
>>812100
Я дата саентист.
319 1812102
>>812101
Прям как в том анекдоте, про Битлз. Я сам не слышал, мне Мойша напел.
320 1812143
Сап кто не спит, как наименее болезненно подтянуть знание явы с семерки до актуальной?
321 1812186
>>812091
Покупать джавараш не обязательно, ставишь эмулятор андроида, ставишь их апкашку, пишешь в идее, копипастишь в эмулятор. Но это прям пердолинг, проще раз отдать за месяц 1200р (это со скидкой для новичков) и понять нужно тебе это или нет не нужно
322 1812261
>>812091
Я вот честно не понимаю откуда столько хейта в их сторону. Там охуенно можно прокачать знания джава кора. Все эти задачки по выводу говна в консоль даются только на первых где-то 10 уровнях. Дальше сложнее темы идут.
images.png4 Кб, 243x208
323 1812264
Ребят подскажите плиз.
Делаю аплекуху со статьями и нужно вывести самые популярные, как сделать эту логику?
Думал добавить статье поле long rating; и просто делать инкремент на каждый GET запрос на эту статью. Потом доставать статьи с наибольшим числом.
Так норм будет или есть получше решения?
324 1812312
>>812264

> добавить статье поле long rating; и просто делать инкремент на каждый GET запрос на эту статью


Так это и работает же, нет? Зачем какую-то гига-сложную логику придумывать?

мимо вкатывальщик
15599217500270.jpg187 Кб, 716x960
325 1812337
Сап. Нужен совет бывалых. Хочу сделать сайт-библиотеку (для портфолио чтобы показать на собесе), чтобы была возможность сортировать их по категориям, популярности и авторам. Бэк: spring boot, spring data, postgresql, lombok, mapstruct. На фронте будет react. Нормальный стэк выбрал или говно?
326 1812344
Двощ, как протестить сервис с замоканным дао?
@Transactional
public boolean isUserSetForDate(UUID id, LocalDate date) {
User user = this.dao.getById( id );
return user.getListOfDates() -тут НПЕ
.isDateBooked( date );
}
@Test
void isPlaceSetForDate() {
User user = new User();
mockRepo.save( user);
Assertions.assertEquals( this.userService.isUserSetForDate( user.getId(),LocalDate.now() ),false ); /TODO correct/

}
327 1812348
>>812344

> /TODO correct/


Галерное задание какое-то делаешь чи шо?
328 1812349
>>812348
Почти. Учусь.
329 1812351
>>812344
Вообще, если логику сервиса тестить, можно ли его мокать?
330 1812353
>>812349
Выглядит серьёзно. На чём учишься?
15195482696863s.jpg5 Кб, 220x220
331 1812361
>>812312
Интересует вопрос защиты от спама F5 и накрутки рейтинга одним поехавшим юзером
332 1812363
>>812353
Не понял вопрос. Окологалерные курсы, тз.
333 1812369
>>812361
Создай таблицу с ip и id поста и добавляй туда записи при первом просмотре, а посты сортируй по group by post_id order by max(count(*)) desc.
334 1812373
>>812363

> Окологалерные курсы


В этом и был вопрос. А какая галера? Сложно попасть туда?
Cover.jpg311 Кб, 2160x2160
335 1812376
>>812373
Попроще,чем в ЕПАМ, беларусы - аутсорсеры. Хотя отсев неплохой, начиная с тестового на вход в курсы,заканчивая нагрузкой. Процентов 50 уже слилось из 12,где-то.

Вот, поэтому мне нужен консалтинг по мокито, а то кукуха его не переваривает,увы.
336 1812382
>>812376
То, что отсев неплохой это неудивительно конечно. А вот то, что всего 12 человек пробовалось - это маловато как-то. Хотя они походу на стадии набора в группу отсеяли много.

> мокито


К сожалению не использовал его, поэтому ничего не могу сказать.
337 1812391
>>812382
Ну они в региональный отдел себе фармят людей
338 1812405
>>812391
Супер, удачи анончик. А расскажи ещё про ебам что знаешь.
339 1812413
>>812405
По слухам, фармят топ людей сейчас.Вкатится довольно трудно. Хотя лет 5 назад свитчились знакомые в СПБ без опыта работы, в целом, положительно отзывается,хоть и галера.
340 1812431
>>812413
Ну я здесь в Украине смотрел их требования, то вроде бы ничего такого сверхестественного на позицию trainee.
DVSDETVX0AEDSw3.jpg47 Кб, 620x464
341 1812468
Посоветуйте сервис для генерации и отправки эмейлов для микросервисной аплекухи.
ThymeLeaf and FreeMarker на спринг буте современное решение или есть уже сервисы(желательно фришные), которые всё делают лучше, красивше, удобнее?
342 1812529
>>812468
Я таймлиф точу, а так ангуляр для фуллстека более продвинутый лвл
343 1812530
>>812431
Трэйни != трудоустройство.Увы.
344 1812567
>>810326
>>810341
Вобщемта, я начал свою программерскую жизнь с того, что изучил сисярп практически по одной тоненькой книжке, ну ещё прошёл текстовый курс на Интуите (курсеры тогда ещё не было). И у меня была реальная задача: для диплома нужно было сделать программку-расширение, которая общалась с одной монструозной системой через .NET API.
345 1812571
>>812337
Нормальный стек, но за лобок спросят
346 1812641
Ldap auth юзается вообще?
347 1812647
Работающие аноны, подскажите, как у вас на галерах принято оформлять комменты к классам и методам. Строго Javadoc с перечислением параметров везде и всегда или какой-нибудь внутренний code convention, или вообще каждый как хочет комментит?
348 1812662
ПОЧЕМУ В ЕБУЧЕЙ ШАПКЕ НЕТ ИНФЫ, КАК СКАЧАТЬ ЕБАНЫЙ JRE ДЕВЯТОЙ ВЕРСИИ?????
349 1812665
>>812662
ПОТОМУ ЧТО БЛЯТЬ ЕГО НЕ СУЩЕСТВУЕТ, ПОСЛЕДНИЙ ЖРЕ, КОТОРЫЙ МОЖНО БЫЛО СКАЧАТЬ, БЫЛ 8
350 1812671
>>812665
А КОГДА ТОГДА БЛЯДЬ ПОНИМАТЬ
zalypa has been compiled by a more recent version of the Java Runtime (class file version 55.0), this version of the Java Runtime only recognizes class file versions up to 52.0
351 1812679
>>812671
Ждк включает в себя жре. Чтобы получить более новое жре, надо обновить ждк.
А потом ебаться с жлинк, чтобы сгенерировать жре отдельно, если нужно. или скачать здесь: https://adoptopenjdk.net/releases.html
352 1812692
>>812679
Я на эту хуету уже половину рабочего дня угробил. Топ 5 владельцев акций компании Oracle заправят кровью лично мне.
353 1812693

>заплатят


фикс
354 1812701
>>812671
Так скачай с оракла последний JDK и не парься. Ну или ещё можешь перекомпилять свою залупу под восьмёрку, добавив -target:

>javac -target 1.8

355 1812717
>>812701
Да нихуя анон, нихуя. Все пробовал, и один лишь вкус головки полового члена в своей ротовой полости ощущаю я. Вот я делаю вид, что мне никто ничего не должен, что я сам отчасти виноват в своих проблемах, что все мы в равных условиях и развиваемся по мере возможностей и издержек эволюции, но в глубине души прекрасно осознаю, что всякая сволочь, съевшая хоть булку хлеба на рубль со спекуляций на человеческих слабостях, продаж бесполезной хуеты и прочей капиталистической содомии, должна принести мне в жертву всех ближайших родственников, и в один прекрасный день это произойдет. Ибо в том, что я не родился в ламповом анимешном социалистическом раю, где нет места подобному пердолингу, виноваты вполне определенные пидорасы, не хотевшие участвовать во всемирном благоустройстве.
356 1812739
>>811033

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


Дают ТЗ. В нем дай бог хотя бы половина будет описана так, как это должно работать. В процессе кодинга ебешь мозги аналитикам, задаешь вопросы. Где-то ближе к концу аналитик осознает, что нужно переделать половину логики, потому что ему или заказчику это кажется пиздатой идеей. Доеиливаешь проект
357 1812742
>>812091

> >Q: ЧТО СКАЖЕТЕ ЗА ДЖАВАРАШ?


> >A: Худшая инвестиция в твоей жизни.



> Почему тогда люди прошедшие его или даже прошедшие около половины находят работу?


А откуда у тебя такая информация? На джавараше прочитал?))))00
358 1812744
>>812641

> Ldap auth юзается вообще?


Я использовал для одного проекта
359 1812746
>>812641
Прошёлся поиском по нашему проекту, юзается. По ощущениям, у нас юзается вообще всё ЕЕ-шное.
360 1812759
>>812744
>>812746
Знать нужно? Муторно выглядит, не каеф в это лезть..
361 1812761
>>812759
Это не ключевой навык, скорее всего, не будет такого, чтобы тебя развернули на собесе только из-за того, что не тыкал.
362 1812763
>>812761
Ну эт понятно, окей.
363 1812776
>>812759

> Знать нужно? Муторно выглядит, не каеф в это лезть..


Не нужно. Если и припрет на каком-то проекте, разберешься. Таким никто не дрочит на собесах. Я, ковыряю в носу, за неделю прикрутил spring security + ldap аутентификацию.
364 1812796
>>812717
схоронил
365 1812880
>>812344
Я как обычно наверное не понял сложности задания... Ты говоришь

>с замоканным дао


, ну так возьми этот замоканный дао, и сделай when(daoMock.getById(anyInteger()).thenReturn(user). Юзера ты уже создал, в чем проблемы? По необходимости твикай, создай еще юзера, создай зависимость от параметра.
366 1812949
>>812739

> Где-то ближе к концу аналитик осознает, что нужно переделать половину логики, потому что ему или заказчику это кажется пиздатой идеей.


ПЕРЕДЕЛЫВАЕШь
@
ТРАТИШЬ ДОХУЯ ВРЕМЕНИ НА ФИКС БАГОВ
@
ТЕСТИРОВЩИК ТРАТИТ ДОХУЯ ВРЕМЕНИ НА ПОЛНЫЙ РЕГРЕСС
367 1812990
>>812361

Каждый пользователь имеет свою сессию, что позволит тебе не засчитывать просмотры от обновления страницы и.т.п. Это первый фильтр.
Второй фильтр только через JS, чтобы просмотр статьи фиксировался только после нахождения на ней более 30 секунд (1 мин.)
368 1812992
>>812091
Ну они не только джава раш проходят потому что. Некоторые мои знакомые-вкатывальщики как раз прошли где то двадцать заданий, потом по-другому оттачивали уже навыки (с ментором или еще что-то). Вот и получается что джава раш было лишь одной ступенью к началу карьеры. Т.е. это вполне рабочая схема.
369 1813007
>>812571
Что спросят?
15714710723750.jpg99 Кб, 604x436
370 1813026
Мой проект ВСЁ, пидорят на другой. Джаву в глаза не видел, быдлокодил до этого три года на крестах, вышка есть. Так что входить и вкатываться мне не нужно, но нужно быстро переквалифицироваться. Просто хуярить майндмап из шапки и переписывать свои петы на Джаву?
371 1813142
Как называется класс для хранения подготовленных данных для последующего прокидывания их в различные бизнесс сервисы? не DTO
372 1813148
>>813142
POJO? Entity? Data-класс?
373 1813150
>>813148
Дата пойдет спасибо анон!
374 1813200
>>812742
Там есть раздел, истории успеха, где пишут люди которые нашли работу, которые там учились.
375 1813202
>>812717
javac --release 7 NameOfYourProgram.java
376 1813211
>>813026
Если у тебя веб-стек, то звучит как план.
377 1813216
>>813200
А те, кто там учился, но не устроился, тоже пишут?)))00
378 1813229
>>813216
Почему ты везде ищешь негатив?
379 1813233
>>813216
>>813200
Ошибка выжившего. "Я решил войти в айти, ходил на курсы и проходил джавараш. Было трудно, но я не сдавался! А потом нарисовался мой однокурсник и без собеседований взял меня в свой проект"
380 1813247
>>813233
Классика.
381 1813254
>>813233
У тебя на руках есть статистика или это просто личное ничем не обоснованное мнение?
382 1813256
>>813254
Это двач, здесь всё — личное ничем не обоснованное мнение
383 1813268
Может ли джавовый драйвер интерпретировать null-овый clob из оракла не как null, а как пустой?
Я нихуя не понимаю, у меня все работает, а баг известно где.
Гуглил, написано, может на каких-то версиях websphere application такое быть.
384 1813294
>>813268
Не знаю, при чём тут сфера, драйвер кладётся в неё отдельным жарником, и сфера в него по идее не должна лезть. Можно попробовать скачать разные версии драйвера и попробовать на них. Но сейчас проверил на 8 сфере и 12 оракле, для clob вернулся именно null.
2 butt.png407 Кб, 500x756
385 1813371
джава-куны и остальные простолюдины.

как вы предпочитаете кодить: под музыку или в тишине?
386 1813450
>>813294
Окай, спасибо
Я тоже проверял, и тоже получал null
387 1813472
>>813371
Под музон. Но я чаще не кодю а с коллегами болтаю...
388 1813565
>>813142

>Как называется класс для данных для прокидывания их в бизнесс сервисы?



>не DTO


Хм... Сколько букв?
389 1813581
>>813371
В тишине, под музыку тупо не могу сосредоточиться.
390 1813591
>>813371
Делание чего-либо под музыку безошибочно детектит пустышку без талантов. Такому человеку "нечего терять" в плане способностей к глубокой умственной работе, вот и похуй на шум. А музыка еще и создает иллюзию более насыщенного времяпрепровождения, прям такой движ по жизни, чтоб наш кабанчик, вырвавшийся из грязи в князи и прочитавший пару умных книг, не дай боже не усомнился в своей продуктивности. Ведь это так пиздато с видом Ерохи делать всякую бесполезную хуйню с КПД 15% и рассказывать скромным задротам, какие они ленивые уебаны теоретики.
391 1813601
>>813371
Под ASMR, только в которых слов поменьше, и строго обязательно на англ. - неплохой фон получается, и не отвлекает, и странным образом придает сил.
392 1813620
>>813601
терпеть не могу ASMR и шепот.
мя триггерит люто(
я не то что код не напишу, а еще завалю кого-то от злости
393 1813621
>>813591
чет полыхнуло)
394 1813628
>>813591
Ты не прав. Если делать типовые задачи( которые ты уже делал раньше и ничего нового там нет ), то можно и под музыку. Так даже легче не отвлекаться.
395 1813629
>>813620
Странно, всегда считал что мы здесь все интроверты-любители ASMR и цветных лошадок.
396 1813630
>>813628
Соглашусь, пожалуй...
397 1813635
>>813371
Я даже когда бегаю или в зале занимаюсь, не могу слушать музыку в наушниках - дезориентирует сильно.
398 1813640
>>813635
на вкус и цвет все фломастеры разные, как я понял
ecology-garbage-rubbish-tank-8705.jpg132 Кб, 800x512
399 1813641
эй, красавчики, можете максимально просто (для идиота) разъяснить суть конструктора в java.
как он работает и че он. зачем его использовать, зачем показывать явно?
400 1813642
>>813641
Иди нахуй, дегенерат.
401 1813643
>>813642
а какие еще варианты ответов?
402 1813645
>>813641
Показывать явно для всякой хуйни типа сериализации
403 1813648
>>813641
Ну вот есть класс с перечислением полей, которые будут у созданного объекта. Непонятно, как и чем эти поля заполнять при создании нового объекта, и конструктор как раз этим и занимается, то есть берёт аргументы, которые ты ему передаёшь, и основываясь на них инициализирует поля нового объекта.
sage 404 1813650
А вот и вопросы по синтаксису подъехали.
405 1813657
>>813650
ну а хуле
тред же по жаве)
че бы не задать?
а им лишь бы нахуй послать
sage 406 1813659
>>813657

Spring #98 thread
Прошлый >>802373 (OP)
407 1813663
>>813641
нужно только...рэйдж шудоу леджендс
408 1813676
>>813650
Инфоцыгане опять высрали какие-нибудь курсы наверное, сейчас же к нг будут появляться исследования типа сколько зарабатывает средний погромист)))
409 1813683
>>813676
Ура, по 500 человек на вакансию с модной молодёжной хипстерской джавой! Сотни вопросов про System out.println()! Лабы! Почему цикл for не компилируется!
410 1813803
>>813683

> Ура, по 500 человек на вакансию с модной молодёжной хипстерской джавой! Сотни вопросов про System out.println()! Лабы! Почему цикл for не компилируется!


Пацаны, хочу вкатиться. Какие книги читать, посоветуйте видосы, а че вообще по практике делать, как вкатиться за месяц и рубить 300к/нс
411 1813901
какая разница между скалой и котлином?
412 1813924
Анонче, разъясните пожалуйста за разницу между разработкой под андроид и энтерпрайз бекендом на джаве в условиях полевых действий.
Свои плюсы, минусы, насколько быстро веб заменит нативные приложения, насколько что перспективно и т.д.
Разговоры про котлин отставить.
413 1814198
>>813901
Котлин это остров, а Скала - актер
414 1814214
>>813371
Когда думаю - то чаще всего в тишине.
Когда задача уже готова в голове, осталось только перевести мысли в код - то иногда врубаю что-нибудь под настроение, вот недавно часа 5 под слеер хуярил, заебись ваще, если б жрать не захотелось то хрен бы остановился.
Так-то всё равно, главное в поток войти, а там уже хоть клоуны вокруг скакать будут, мне уже насрать.
415 1814243
>>813924
Андроид это ебля с разными версиями андроида и кучей разных устройств и разрешений. Плюс немного проблем с самой платформой - типа приложение выгрузили из памяти, до того как пришел HTTP reponse и все наебнулось.

Энтерпрайз - это ебля со 100500 разных фреймворков, невнятных и противоречивых бизнес требований (7 красных линий), просраных дедлайнов и все это сверху смазано девопсом - джар в докере, докер в кубернетисе, кубернетис в облаке, облако в 2-х зонах.

А еще есть верстка и жопаскрипт, это отдельная очень увлекательная дисциплина. Тут, для успеха, тебе понадобиться латексный костюм и кошачьи ушки.
416 1814272
>>814214
мне как-то оч хорошо думалось под альбо Despised Icon "The Ills of Modern Man"
417 1814308
>>813635
Двачую. Музыка для суходрочеров. Никогда не понимал на соревнованиях, нахуя перед подходом нюхать какую-то ссанину, по спине бить, музыку громче делать, кричать. Уебанство. Онли спокойствие, онли невозмутимая силушка, ух бля.
418 1814324
>>814308
кричать - это для того, чтобы пердежа не слышно было
419 1814370
>>814324
Кста, вот взвешивание за джва часа до выступления - та еще подстава. Может я хочу не срать день перед выходом, шоб нейроны бодрее бегали.
420 1814522
>>814243
Спасибо, анон.
421 1814606
>>812337
mapstruct я бы брать не стал. Остальное всё - норм
422 1814618
>>811033
Бывает по-разному. В команде здорового человека - проходят планирования с участием всех членов команды, задачи оцениваются с учётом всех мнений и набираются в план на итерацию.
В команде курильщика - хаос
423 1814653
Аноны посоветуйте как учить docker. Может знаете годные туториалы? То что нахожу в интернете либо не связано с джавой либо сложно.
424 1814657
425 1814662
>>814653

> либо не связано с джавой


Потому что это действительно несвязанные вещи, и изучаются отдельно друг от друга. Докеру без разницы, джаву ты в него пихаешь или C++. Джаве без разницы, на чём запускаться, лишь бы была JVM. Но докер и джаву можно юзать вместе, нужно специальным образом подготовить докер-образ, дать ему на вход java-приложение (хоть жарник, хоть сервер приложений с war/ear-никами) и тупо запустить.
Начать можно с видеомурзилок на ютубе, просто вбить "основы docker" и смотреть плейлисты.
Ну а дальше гуглить "java как сделать docker-образ". Кратко: создать файл с названием Dockerfile с таким содержимым:
FROM java:8
WORKDIR /
ADD myapp.jar app.jar
EXPOSE 8080
CMD java -jar app.jar

И запустить:
docker build -t myapp .
docker run -p 8080:8080 myapp

Здесь создаётся образ на основе существующего образа java:8 (из центрального репозитория докера), в него копируется файл myapp.jar, указывается порт 8080 и команда для запуска жарника. Дальше двумя командами билдишь образ и запускаешь, пробрасывая порт 8080. Вообще ничего сложного.
426 1814663
Раз уж тема про докер зашла, объясните в двух словах зачем оборачивать виртуальную машину еще одной виртуальной машиной?
427 1814671
Эх, думал что Тагир Валеев - единственный из известных мне умный северный кауказец-погромист, а он оказывается башкир
428 1814674
>>814663
Суть докера не в том, чтобы запустить приложение в виртуалке, а в том, чтобы изолировать приложение со своим окружением от остального мира, сохранить всё это и мочь быстро развернуть где угодно. Теоретически, можно и без виртуалки, просто как ещё создать изолированные окружения? Разве что chroot, но у него много своих проблем, да и на винде не работает.
429 1814678
>>814674
А сама jvm недостаточно изолирована что ли?
430 1814679
>>814678
Одной jvm мало, приложение юзает внешние файлы и всевозможные СУБД, очереди сообщений, кеши и прочие сервисы. И предлагается всё это разворачивать в докере, чтобы не мешать хосту.
431 1814686
>>814679
Понятно. То есть будет плюсом, если я разверну, например, небольшой интернет-магазин на докере?
432 1814690
>>814686
В общем-то, это может решить некоторые проблемы с конфигурацией и развёртыванием.
Если для собесов, то я даже видел тестовые задания, где один из пунктов - запаковать своё приложение в докер.
433 1814697
>>814690
Окей, учту. Спасибо.
434 1814792
>>814662
Благодарю! А как базу данных добавить? Изначально в Dockerfile что то прописывать?
435 1814801
>>814792
Два варианта:
- если БД на хосте, то просто подключаешься к её порту, но не через 127.0.0.1, а через IP хоста
- если тоже в докере, то к IP контейнера. Правда, обычно делают не через IP, а DNS-имена, которыми управляет сам докер, как в примере docker compose: https://hub.docker.com/_/postgres
15934292994160.jpg36 Кб, 510x328
436 1814921
Подскажите плиз. Есть микросервисная аплекуха, всё на спинг буте, клауде и т.п.
Есть апи гейтвей для фронта. Есть сервис авторизации, который возвращает аксес и рефреш токены.
Где лучше их проверять, что мол DELETE /mySecuredService можна делать только если токен валиден и у акка есть админ роль.
Вставлять фильтры в каждый сервис или это можно в апи гейтвее наконфигурить где-то со списком эндпоинтов всех сервисов, куда ходить незя, если ты не админ.
437 1814924
>>813641
Суть конструктора в инициализации состояния класса (инициализации его полей).
438 1814926
>>814921
SoapUI.
439 1814927
>>814921
Надо проверять это в микросервисе, потому что это его зона ответственности. Апи-гейтвей просто роутит запрос к этому микросервису и возвращает ответ, в данном случае ошибку.
440 1815312
>>814924
>>813648

спасибо, ребят
я вроде вкурил
441 1815316
Поясните своими словами что такое энтерпрайз разработка на Java.
Я так понимаю это логика какого-то айти бизнеса допустим. Или какой-то менеджер транзакций работающий по своим алгоритмам написанный на Java и т.д.
И как выглядит вообще эта разработка?
442 1815326
>>815316
Тупо аатоматизация бизнес-процессов. Проект выглядит так: у тебя сравнительно небольшие по количеству кода эндпоинты и DAO, но при этом ебически огромные сервисы, в которых куча условий, настроек, интеграций, сущностей и прочего. И бизнес-требования в духе "необходимо автоматически изменять статус заявок от таких клиентов в будни и в первые дни месяца, но только если есть такие-то данные и включены такие то настройки, а если нет, то делать что-то другое". Пишет это целая толпа разрабов, даже самые опытные из которых полностью не понимают, как работает проект, и поэтому все специализируются на какой-то части проекта, и они всё время общаются с аналитиками, чтобы хоть как-то худо-бедно прояснить, чего именно хочет заказчик.
443 1815342
>>815326
Походу реально придется катиться в пыху и жс.
444 1815346
>>815342
Ага, мало кому нравится копаться в легаси.
15951738281660.jpg175 Кб, 1280x1280
445 1815365
Ребзя с монгой работал кто?
Есть задача, ломаю голову уже несколько дней.
Допустим в монге хранятся сущности Food (String name, List<String> ingredients)

Задача такая: Я присылаю с фронта список ингредиентов "sugar","milk","meat","eggs"

И нужно вернуть из базы ответ с едой с хотяб 1 из этих ингредиентов, НО! отсортированной в порядке количества совпадений.
Т.е. еда у которой всё совпало 1я, у которой совпало 3 из 4х - 2я и т.д.
Можно это как-то через агрегаторы напилить, а то я ебусь уже столько времени и только на джавке написать сортировку смог.
446 1815384
>>815365
Используй эластиксерч вместо монги.
447 1815396
>>815384
Гениально, чтобы решить проблему с Х, надо использовать Y! Я тоже хочу попробовать дать совет по аналогии.

>>815365
Используй Postgresql вместо NoSQL-дрисни.
448 1815399
>>815396
В эластике есть специальные средства для сортировки данных по точности совпадения. А в постгре что есть?
449 1815411
>>815399
Вот это уже больше похоже на совет, почему лучше брать эластик.
450 1815420
>>815342
Ну есть и интересные проекты.

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

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

Есть интересные проекты, но их надо поискать. Опять же есть стартапы, где гринфилд и любые технологии.
451 1815577
>>815420
Эх, не люблю низкоуровневщину, но тоже интересно узнать больше о кишках платформы, проштудировать спецификации языка и жвм, да всё руки никак не дойдут из-за няшного спринга.
452 1815594
>>815577
Можно начать с няшных сервлетов.
453 1815600
>>815577

>проштудировать спецификации языка и жвм


JMM не забудь проштудировать!
454 1815713
>>815600
Да-да, тоже полезно, для общего развития.
455 1816268
>>815326

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


Хех, а я думал, только у меня такие шизики попались.
456 1816280
>>816268
Да везде такая хуйня, порой читаешь бугурт-тред и ощущение, будто твои коллеги пишут всё это.
457 1816358
>>812571
А в чем проблема с ним? 10 полей это уже 20 лишних методов.
Аноним 458 1816369
Такая история, планирую вкатываться в мидла джависта, опыт работы на джаве 2 аппа на ведро которых нигде нет. Основной опыт C++/C Контроллерчики, 2.5 года в микро-заводе (2 прогера на разработке).
English level ~ B1-B2. Reading docs and viewing vids on English without problems.

Джаву освоил сам, после крестов все ну ПРЯМ сильно проще.
Джава кор есть, даже немного прыгал в мультитреад, но насколько понял у мидлов редкая тема. Вкурсе про коллекции, и даже поделал немного код тасков.

Понимаю, что без маня-фреймворка, я - хуй. Берут ли с таким стаком на мидла?

Какие фреймворки для Java нынче востребованны, дрочить джуном после 2.5 года крестовиком за 500$ ну такое (дефолт зп джуна РБ)?
459 1816428
>>816358
Меня бесит, что идея от него красная, например. Пока не скомпилируешь не узнаешь где ошибся.
А так вообще удобная штука. Если не знать, что идея половину делает за 2.5 хоткея. Она должна быть встроена в язык.
460 1816432
>>816428

>идея от него красная


Поставь ломбоковский плагин на идею.
461 1816445
>>816369
А что значит в курсе за коллекции? В джаве какие-то особые коллекции которые надо знать?
мимокрок-рубист-пыхарь
Аноним 462 1816451
>>816445
Каждый мега гайд как стать кулл жавистом говорит, что я должен знать про коллекции мол ниибацца важно.

По факту задача сводится к почитать 2-3 раза сборник статей на хабре про коллекции, очень хорошо расписано, в отличие от популистских сайтов.
464 1816686
>>804751
Computer science - это информатика.
Зачем тебе информатика?
Просто учи JAVу
Сначала java за 21 день
далее javafx(можешь swing но он тепа подыхает) тут ты поймешь зачем учил джаву за 21д

отсюда легче плясать, можешь в сторону андроида, можешь в java ee

ps sql быстро учится, он и разрабатывался для операторов, а не для программистов
465 1816696
>>804820
как ты спиздил мою идею с корзиной?
нас таких много?
466 1816712
>>816696
Вроде, в XP корзина была по дефолту в том углу, оттуда и пошло.
15122579639680.jpg118 Кб, 800x800
467 1816742
>>804720

>Наверное, мои познания математики остались на уровне уроков математики 5-6 классов.


Типичный вкатывальщик в 2020.
А потом такому дауну местные олды с корками какой-нибудь бауманки или мехмата будут говорить, что SQL это хуйня, за пару дней учится.
И он искренне не будет понимать в чём проблема.
image.png38 Кб, 707x390
468 1816826
Джавач, после начала учебного года активность здесь немного упала. Как думаешь, с чем это связано?
469 1817002
>>816826

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


Все вкатывальщики домашку по матеше делать начали, либо с отпусков на смены на заводе вышли
470 1817151
Курсы по java ee(да и se рассматриваю) кто че скажет? Или это отьем денег?
Видел какой-то на 8 месяцев, мне кажется этого более чем достаточно.
100тр потратить за результат готов.
471 1817154
>>816742
я так проблему понимаю: многие учатся что бы учится, а нужно проекты делать.
мимо не itшник
472 1817175
>>817151
ну ты же понимаешь, что результат будет таким:

1. потрачено 100 к
2. пройдены курсы

если это твоя цель, то приступай
473 1817239
>>816566
спасиб, Анон
посмотрел
474 1817254
>>817151
JavaEE RIP, да здравствует JakartaEE!
ИМХО лучше пойти на курсы по Spring... :-)
475 1817316
Класс, которому нужна сущность из бд для выполнения какого-то действия, не связанного с бд, - сервис или кто?
476 1817427
>>817316
Напрямую использовать Entity кроме как в Репозитории и ДТО - плохая идея.
В сервисах и контроллерах лучше использовать свои модели, заточенные под конкретную задачу. А с БД работать через ДТО. :-)
477 1817456
>>817427
Ну, например, класс достает пользователя и в зависимости от его активности адаптирует содержимое конкретно для него (как рекомендации в ютубе). К какому слою отнести такой класс?
478 1817570
>>817316
>>817456
Ты хочешь что-то странное. Думаешь, как назвать класс? Называй как хочешь, хоть MyEntityUtils, хоть MyEntityHelper, хоть MyEntityProcessor. Не бойся, он не перестанет компилироваться, если его название не заканчивается на Service, хоть его и можно классифицировать как таковой.
479 1817690
>>817427

>Напрямую использовать Entity кроме как в Репозитории и ДТО - плохая идея.


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

В контроллерах да, там обязательно надо иметь отдельное DTO.
480 1817842
Подумываю свитчнуться на джаву... Но не охота терять в ЗП. Как вы думаете, если позадротить списки вопросов для интервью, смогу ли я сделать вид, что я сеньер с десятилетним опытом? (Ну параллельно поздротю хибернейт и спринг).
481 1817844
>>817842
Неа.
482 1817855
>>817844

На чем спалюсь? Веб-сервисы - они веб-сервисы, алгоритмы и структуры данных все те же. Попробуй прикопаться.
483 1817860
>>817855

На синьора врятли, а вот на мидла вполне. Резюме только правдоподобное подготовь. Напиши в ключе минимального пиздежа, максимального умолчания и однобокого представления фактов. Пиши что писал бэк и на java и на .net (или с чего ты там перекатываешься), создай впечатление что в основном писал на java, пиши что всегда интересовался другими технологиями и несколько последних проектов писал уже на .net но все же java больше по душе.
484 1817916
>>817860

>


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



То что хрюша через каналы способна пробить всю защищенную законодательством личную инфу в том числе о предыдущих местах работы и проектах, включая рекомендацию и вредные привычки, конечно же, не смущает?
485 1817921
>>817916

Херки даже резюме твое прочитать часто неспособны, это надо уметь читать.
И единственное, что они могут пробить - ху5м себе по лбу.
486 1817993
>>817916
Хрюшу наебать ничего не стоит, но вот смотрящий тимлид по твоим глазкам пиздабольским всё сразу поймёт
487 1818004
Пацаны, дело такое.
Создал в идее новый проект, открыл в новом окне старый, кое-то покопировать, и в этом окне слетела нахуй кодировка, SDK отсутствует куда-то, все классы переназвались в .java
Что за хрень? Идея не может работать в разных окнах одновременно?
488 1818011
Занимаюсь на джавараш и хайперскилл одновременно.

Плюсы Джавараш:
Много заданий

Комьюнити (форумы, комментарии)

Много статей

Минусы:
Тупой валидатор (не всегда, но бывает)

Короткие лекции типа сами гуглите доп инфо. Появился "Про" где лекции намного лучше, советую его паралельно читать.

Тупые и бесполезные задачи начинают проскакивать все чаще и чаще

Плюсы хайперскилл:
Проектная система - хорошо учит думать как в реале, продумывать программу. Джавараш оч сильно этого не хватает. Их тупые игры не в счёт.

Минусы:
Ужасные лекции (очень короткие, непродуманные, и с плохим английским)

Ужасный английский, иногда заметно, что Гугл транслейт пользовались [я заканчивал школу и универ в Британии, английский свободный, мне есть с чем сравнивать]

Слабое комьюнити

Медленный валидатор и медленный сайт

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

Очень частно не понятно что от тебя хотят в задании (плохой английский). Сначала тебе кажется, что надо написать что то на джаве, а оказывается, что математику надо знать

Очень мало заданий, материал объективно хуже усваивается чем на Джавараш.

ОЧЕНЬ много опечаток и ошибок в валидаторе, который не принимает правильное решение.

В общем не знаю кому там хайперскилл нравится, он сильно уступает Джавараш. Если только вы не типичный высокомерный математик который считает, что везде она должна быть и ничему больше учиться не надо
488 1818011
Занимаюсь на джавараш и хайперскилл одновременно.

Плюсы Джавараш:
Много заданий

Комьюнити (форумы, комментарии)

Много статей

Минусы:
Тупой валидатор (не всегда, но бывает)

Короткие лекции типа сами гуглите доп инфо. Появился "Про" где лекции намного лучше, советую его паралельно читать.

Тупые и бесполезные задачи начинают проскакивать все чаще и чаще

Плюсы хайперскилл:
Проектная система - хорошо учит думать как в реале, продумывать программу. Джавараш оч сильно этого не хватает. Их тупые игры не в счёт.

Минусы:
Ужасные лекции (очень короткие, непродуманные, и с плохим английским)

Ужасный английский, иногда заметно, что Гугл транслейт пользовались [я заканчивал школу и универ в Британии, английский свободный, мне есть с чем сравнивать]

Слабое комьюнити

Медленный валидатор и медленный сайт

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

Очень частно не понятно что от тебя хотят в задании (плохой английский). Сначала тебе кажется, что надо написать что то на джаве, а оказывается, что математику надо знать

Очень мало заданий, материал объективно хуже усваивается чем на Джавараш.

ОЧЕНЬ много опечаток и ошибок в валидаторе, который не принимает правильное решение.

В общем не знаю кому там хайперскилл нравится, он сильно уступает Джавараш. Если только вы не типичный высокомерный математик который считает, что везде она должна быть и ничему больше учиться не надо
489 1818044
>>817921
А ещё есть конторы, в которых херки даже не знают, чем занимается конкретный сотрудник, потому что комплаенс
490 1818068
>>818044

>потому что комплаенс


Как красиво объясняют собственную лень.
Не надо пиздеть - кто чем занимается, не compaince sensitive инфа. Детали - с кем идут перговоры, некий алгоритм - это да, это может быть закрытая инфа. Но то что Вася прогер трейдингового приложения, а Ганс директор, эта инфа не может быть закрытой.
491 1818123
>>818068
Ну изначально речь шла о пиздеже в резюме и пробивании прошлых проектов.
Подходил хр к лиду, и спрашивает, тут Сычев вписал в резюме опыт работы с еба-криптопровайдером и опыт настройки апп сервера, правда что это все в вашем проекте используется? Как-то подозрительно будет, и хр эта информация ни к чему.
492 1818164
Хелп
Как run app на микросервисах?
Есть 3 сераиса, а и б зависят от в. Также, а и в имеют run класс, в - сборка моделей. Как все это в идее стартануть ? Никак не хочет.
493 1818165
>>818164
Фикс
А и б имеют ран классы, в - модели просто
494 1818193
>>818165
В чем проблема? 2 сервиса поднимаешь на разных портах, а в конфигах укажи хост консула или что ты там юзаешь как сервис дискавери
495 1818392
Где прочитать про то как собирать в вашей джаве проект?

Сам я плюсовик. Ну так вот, довольно тупо получается, решил поковырять джаву т.к. возникла идея под андроид одно нужное только мне приложение замутить, пишу стандартный хелловорлд чтобы понять особенности построения программ, а в IDEA просто нет кнопки запустить. Buidl есть а Run - нет. Ну, я же не совсем тупой, нажимаю кнопку создать конфигурацию, там какая-то куча темплейтов. Ну я почесал репу, протыкал все, решил что, наверное нужно Application, там просят указать класс Main, я прописал путь к файлику с исходником где у меня метод Main, а Ok не нажимается. Не понимаю короче. Что тыкать чтобы собралось? Объясните? JVM, JDK и прочие J при установке поставились.
Наверное следовало из консольки собирать, было бы и привычнее и проще, а то тут какие-то Groovy, Gradle, JarApplication, JavaScratch и прочие непонятные штуки и какие тыкать - тоже непонятно.
496 1818411
>>818392
В джаве три основных системы сборки.
1. Ant - тот же Make, но в виде xml. Сейчас юзается редко, ибо сам умеет очень мало.
2. Maven - тоже xml, но другой: сборка проекта описывается декларативно. Из коробки сам умеет скачивать и разрешать зависимости.
3. Gradle - на основе Groovy, юзается в основном на твоём андроиде. Представляет собой что-то среднее между первыми двумя, ещё его можно сравнить с CMake + Conan.

По градлу можно найти какие-нибудь статьи, но из того, что я видел, всё пишется для тех, кто уже знает мавен. По мавену есть такая мурзилка: https://proselyte.net/tutorials/maven/ . Но если просто хочешь аппку для андроида, вникать во всё это не особо нужно. Вместо IDEA тебе нужна Android Studio, там уже всё настроено и прописано, можно юзать, даже не разбираясь в Gradle, и конфигурации создавать вручную тоже не нужно.

> из консольки собирать, было бы и привычнее и проще


Это только для хеллоуворлдов. В джаве в целом не принято делать руками то, что уже давно сделано и автоматизировано. Поэтому нужно смириться, что в свежесозданном проекте куча непонятных файлов, и непонятно, как всё работает вместе. Просто жмакать на волшебные кнопочки, и всё само.
497 1818415
>>818411

>Это только для хеллоуворлдов


mvn clean package работает везде одинаково.
498 1818417
499 1818419
>>818417
Пизда.
image.png813 Кб, 800x753
500 1818420
>>818419
Затраллел)))0)
501 1818423
Новый курс по Джаве ☝
https://www.youtube.com/watch?v=Qgl81fPcLc8
502 1818425
>>818423
Нигерский?
image.JPG202 Кб, 1200x1326
503 1818426
504 1818434
>>818392

Лучше начни с самого низа. В java все просто и понятно и понять как всё это бутсрапится займет у тебя несколько часов всего.
- Пишешь простенький helloworld.java
- Компилируешь его в байткод с помощью javac.exe (файлы с байткодом уже называются .class)
- Запускаешь получившийся скомпилированный .class файл с помощью java.exe
- ВСЁ. Фундаментально все эти этапы одинаковы для всех систем сборки java
- Теперь попробуй написать 2 java файла с разными классами, но чтобы один из них использовал другой.
- Так же скомпилируй и запусти
- Осознай что виртуальная машина java.exe работает именно с .class файлами и будет их подгружать из того пути который ты указал.
- Теперь чтобы не таскать папки с сотнями .class файлами придумали их все паковать в zip архив, который назвали .jar
- Чтобы можно было сразу понять с какого файла стартовать приложение придумали это описывать в спец файле MANIFEST в этом .jar архиве.
- А чтобы всё это ручками не делать используют Maven и Gradle которые делают то же самое + другие плюшки.
505 1818454
>>818392
Запускаемый класс должен иметь метод с сигнатурой psvm. Пишешь эти 4 буквы в идее, открывается менюшка автозаполнения, жмакаешь интер и у тебя получился метод, который можно запустить зеленым треугольничком слева на "полях", там где номера строк. Java в этом плане не ушла далеко от сишки с main, winmain, dllmain...
506 1818467
>>818454
Да и вообще от любого компилируемого языка.
голосовой ассистент.mp43,1 Мб, mp4,
480x480, 0:57
507 1818552
509 1818586
>>818454

> Запускаемый класс должен иметь метод с сигнатурой psvm. Пишешь эти 4 буквы в идее, открывается менюшка автозаполнения, жмакаешь интер и у тебя получился метод, который можно запустить зеленым треугольничком слева на "полях", там где номера строк. Java в этом плане не ушла далеко от сишки с main, winmain, dllmain...


Как будто что-то плохое
510 1818592
UI мобильных приложух тоже на Java пишется, анимируется?
511 1818765
>>818392

>в IDEA просто нет кнопки запустить. Buidl есть а Run - нет


Потому что в джаве запускается не приложение, а определённый класс с точкой входа (методом public static void main). Любой класс с таким методом можно запустить. Названия чувствительны к регистру, так что скорее всего у тебя был Main() вместо main()
512 1818829
/test/ не работает, так что я у вас проверю, не ругайтесь, няши.
[code lang="java"] var x = 10; [/code]
513 1818848
>>818829
Вот это фокусы. С дашчана работает, в браузере просто текст между тегами.
514 1818875
>>818004
Идея создает свои файлы для индексирования проекта, скорей всего у тебя почему-то второй проект перетер эти файлы первого. Обычно, когда ты пытаешься создать несколько проектов из одной директории такое.
515 1818888
>>818875
Что-тотипа, да.
На самом деле при открытии проекта надо не одиночный файл открывать, а папку проекта. Сглупил и не сразу понял.
516 1818975
Народ, а как сейчас обстоят дела с кроссплатформенными аппсами под Android/iOS? Есть что-то надёжное, что позволяло бы писать аппсы на жаве под iOS?
517 1819049
>>818975
Есть, уже давно придумали. Веб называется.
518 1819362
>>802373 (OP)
На sql-ex нужно решить все задачи или какого уровня достаточно для джуна?
519 1819415
>>819362
Ну я вот ни разу туда не заходил. Работаю уже год.
Достаточно мочь в самые основы - DDL/DML, нормальные формы, констреинты, джоины. Какой-нибудь ебически сложный SQL как правило только в OLAP увидишь.
520 1819524
Привет. Может есть у анона инфа по проекту джаваментор.
Истории, чей то опыт.
521 1819818
Аноны, как я знаю, тесты должны быть независимыми. Но, если я использую аннотации транзакции и коммита, то не могу в одном тесте сохранить данные в бд, считать их и потом удалить. Надо разбивать на разные тесты, которые запускаются в разном порядке. Для того, чтобы они запускались в правильном порядке, я использую сортировку по имени метода теста. Но, допустим, есть 3 теста, которые надо запускать по порядку, а остальные лучше рандомно, как быть в таком случае?
Я понимаю, это говнокод получается, но не знаю, как правильно тестировать работу с бд.
522 1819826
>>819818
@Before/@BeforeClass
523 1819847
>>819818
У тебя тест должен сетапить все необходимые ему данные - создать пользователя, дать ему права и т.п. Тест не должен использовать данные других тестов, потому что первый тест задисейблили или он стал фейлиться - посыпались все зависимые.
524 1820006
https://habr.com/ru/company/jugru/blog/521240/
Джава скоро обгонит го по скорости.
525 1820046
>>819818

В пределах одной транзакции все твои действия с БД видны для всех последующих запросов в рамках этой транзакции.
- ты начал транзакцию
- отправил запрос на удаление данных (транзакция еще не завершена)
- отправил запрос на поиск только что удаленных данных В РАМКАХ ЭТОЙ ЖЕ ТРАНЗАКЦИИ и тебе вернулось пустое множество, так как ты их уже удалил ранее В РАМКАХ ЭТОЙ ЖЕ ТРАНЗАКЦИИ (транзакция еще не завершена)
- добавил новые данные В РАМКАХ ЭТОЙ ЖЕ ТРАНЗАКЦИИ (транзакция еще не завершена)
- отправил запрос на поиск только что добавленных данных В РАМКАХ ЭТОЙ ЖЕ ТРАНЗАКЦИИ и тебе вернулись все твои добавленные данные, так как ты их добавил ранее В РАМКАХ ЭТОЙ ЖЕ ТРАНЗАКЦИИ (транзакция еще не завершена)
- рубль упал, все изменения напрасны, ты ролбекаешь транзакцию (транзакция завершена)
- после ролбека транзакции все изменения сделанные В РАМКАХ ЭТО ТРАНЗАКЦИИ отменяются и их как будте никогда и не было. Другие подключения к БД действующие в рамках своих собственных транзакций никогда о них не знали и не узнают.
526 1820056
>>820046
Что у тебя все так категорично? Ты сейчас описал самый высокий уровень изоляции, иди ознакомься с другими чтоли, учитывая что Serializable применяется гораздо реже предыдущих.
527 1820064
>>820046
Да, я перепутал транзакцию с сессией, которую Jpa repository, должно быть, открывает и закрывает при каждом запросе, и идет взаимодействие с БД, а не кэшем. Хороший способ тестить что угодно и роллбекать, не считая тонкостей с уровнями изоляции..
528 1820087
>>820056

То что я описал характерно для всех уровней (кроме совсем уж мусорного read uncommited).
Одна транзакция никогда не увидит незакомиченные изменения из другой транзакции, но всегда видит свои изменения.
529 1820114
>>820064

Главное пойми что транзакция как таковая есть только на уровне JDBC connection. Именно здесь она открывается и закрывается.
EntitytManager (та же Session хибера) это обертка над JDBC connection. Он будет держать транзакцию открытой пока ты ее лично не закомитаешь, ну или в конце своей жизни (а она у него короткая) если не было ролбеков он сам все твои изменения закомитит за тебя.
Спринговый тест контекст как раз и эксплуатирует транзакции для того чтобы не вносить изменения в БД, откатывая все транзакции по завершению тестового метода. Можешь почитать про это поподробнее -> https://docs.spring.io/spring-framework/docs/current/spring-framework-reference/testing.html#testing-tx
А так как на всех вменяемых уровнях изоляции другие транзакции не могут увидеть незакомиченные результаты из других транзакций то мы получаем систему где для каждого тестового метода БД выглядит одинаково, сколько бы параллельных транзакций не долбилось в пулл.
530 1820140
>>820114
Получается, кэш сессии и есть кэш самой дб, который она может подтвердить, а может наоборот. Мне казалось, он что-то, не имеющее отношения к бд, вроде оберток на стримы. А транзакции более мелкие промежутки для коммитов, которых может быть несколько в сессии, получается.
Спасибо, анон, я наконец-то понял хотя если что поправьте.
За магией Спринга не особо понятно, когда именно открывается сессия, а когда транзакции. Вот, например, у меня Jpa репозиторий сам работает без аннотирования транзакцией должен работать, хотя я пока только тесты по нему писал, а в тесте я помещаю его в транзакцию. Получается, он проверяет открыта ли сессия и если да, то присоединяется к транзакции, а если нет, открывает и закрывает после операции? А тесты когда открывают сессию, одну для всех, или для каждого свою.

> Можешь почитать про это поподробнее


Завтра почитаю, спать хочется.
531 1820147
>>820140

Скажи что ты подразумеваешь под сессией? Класс org.hibernate.Session?
532 1820150
>>819362
Я штук 30-40 решил, хоть и мало, но понимаю, что хуй бы сосал сейчас лиду, если б не это.
Знал бы - потратил бы времени больше чем на сраные алгоритмы.
Но вообще, соглашусь с другим аноном. Может так сложиться, что ты за год ничего сложнее обычных селектов не напишешь.
>>819415

>ебически сложный SQL как правило только в OLAP увидишь


Оказывается у этого и название есть.
533 1820152
534 1820185
>>820140
>>820152

В целом ты прав. Но я немного не понял что ты имеешь в виду под кэшем бд. Вообще можешь читнуть суперкраткую выжимку про кровь и плоть JPA - кэш -> http://tomee.apache.org/jpa-concepts.html

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


Да это прям эссенция декларативного подхода к транзакциям в спринге. Текущее подключение к БД ( в виде JDBC Connection или JPA EntityManager (за которым прячется Session хибера)) создается и сохраняется в кармашку текущего треда. Когда по ходу выполнения программы ты пытаешься сделать запрос через JDBCtemplate или же прокированный EntityManager то внутри себя он сначала проверяет есть ли в текущем треде уже созданный Connection или EntityManager и если да то использует его.

> А тесты когда открывают сессию, одну для всех, или для каждого свою.


Конечно для каждого свою. Session (тот же EntityManager ) это короткоживущий объект который просто инкапсулирует JDBC connection. Для каждого треда он будет свой.
15988797605480.jpg621 Кб, 1277x2160
535 1820244
Ребятки, а есть что-то типа справочника или учебника по ФХМЛ и ЯваФХ? Желательно на кириллическом.
Почему-то меня так напрягает смотреть видео на ютубе.
Пи кран дом
536 1820248
Вот смотрите
Есть либа А, в ней используется либа Б версии 2.0 в скоупе implementation (gradle)

Если я поключу в свой проект либу А, у меня не будет либы Б в класспасе, как я понимаю

А если я подключу мавеном и А и Б версии 1.0
Не сломает ли это работу либы А?
537 1820261
>>820185

> http://tomee.apache.org/jpa-concepts.html


Очень интересно.

Благодарю.
538 1820263
>>818975
есть react native но это медленно и на js. И еще есть flutter от гугла, он на дарте вообще и сырой, но следующая ос гугла для мобил будет именно на нем.
539 1820265
>>820248

>А если я подключу мавеном и А и Б версии 1.0


Если ты имеешь в виду, что будет, если у тебя будет одна и та же зависимость дважды добавлена (один раз напрямую, а другой раз транзитивно) с разными версиями - то на практике, зависит от того, какой класс первым будет загружен класс лоадером, лучше делать exclusion для одной из версий, чтобы не было сюрпризов.
540 1820272
>>820265
в мавене насколько я знаю будет использована версия, которая ближе всего в дереве зависимостей (т.е. та, которая не транзитивно подключается)

но

в моем случае, насколько я понимаю, gradle implementation scope не создает транзитивную зависимость

поэтому я пытаюсь понять, будет ли все работать в таком случае. т.е. в либе А будет работать либа Б_2.0, а у меня в проекте будет работать либа А и либа Б_1.0 (а под капотом в либе А будет Б_2.0)

блять как же сложно быть погреместиром
541 1820278
>>820272
Нет, мавен положит обе библиотеки в класс пасс, то, какая загрузится - зависит от порядка загрузки файлов класс-лоадером.
542 1820280
>>820278
Ок, я тут ошибся, но ситуация, когда у тебя две версии одной библиотеки попадают в класс пасс возможна.
sage 543 1820327
>>820265

>лучше делать exclusion для одной из версий, чтобы не было сюрпризов.


Лучше делать <dependencyManagement> секцию в корневом поме, тогда у всех будут гарантированно одинаковые версии, а в своих помах версии вообще можно будет не писать. И чтобы обновить библиотеку достаточно в одном месте поправить.
544 1820378
>>818975
На Delphi можно, лол
545 1820385
>>820378
Всё порывает тряхнуть стариной да попробовать, как оно там. Но чёт хуй её знает.
546 1820396
>>820385
Там всё очень плохо. Потому и устарело.
547 1820399
>>820396
Но живёт же вроде. Релизы выходят, FireMonkey их рекламируется, по рекламным постам там кросплатформенность ояебу, жаба сосёт с проглотом.
В реальности, говорят, всё грустнее. Вот хочется самому пощупать.
image.png122 Кб, 1280x1024
548 1820400
Чюваки
Вы скорее всего нахуй пошлете, но тем не менее.
Куда этот обосранныйлист пихать? В майн, контроллер или сюда на пике? В учебниках примеры с кнопками и лейблами.
image.png171 Кб, 1280x1024
549 1820423
Почему я не могу открыть второй проект в новом окне?
550 1820440
>>820399
Что ж, кто-то и на коболе пишет. Кобол живёт и здравствует.
551 1820444
Тут нужно сделать поиск с тем чтобы в строке поиска были доступны регулярки или недоступны по выбору.
я вот так написал:
if (isRegex) {
pattern = Pattern.compile(search);
} else {
pattern = Pattern.compile(search, Pattern.LITERAL);
}
Matcher matcher = pattern.matcher(text);
но что-то оно работает через раз как то непонятно.
552 1820446
>>820399
Не лезь, оно тебя сожрёт

10-лет-на-Delphi-кун
553 1820448
>>820399
Маленькие проекты для себя ещё можно делать, всякие круды десктопные для тёти Сраки, но что-то серьёзное уже через боль и страдания. Нет нормальных либ, нет сообщества, нет управления зависимостями, одна полуживая ORM, один полуживой тест-фреймворк. И куча багов. Эдакий .NET, если бы его поддерживал не майкрософт, а шарага из 10 человек.
554 1820471
>>820400
учись правильно задавать вопросы желательно сначала гуглу

из того что ты высрал нихуя не понятно что ты пытаешься сделать и что у тебя не получается
555 1820490
>>820471
Ну есть обсёрваблЛист, он засунут в листвью, он в инициалайз, инициалайз в документе ФХМЛ, он в майн. При запуске окна списка нифига не видно. Куда пихать слушателей для мультиполСелекшонМод, в метод в майне, в класс с контроллером или в этот метод, где он у меня?
sage 556 1820498
>>820444

>но что-то оно работает через раз как то непонятно.


Пример непонятной работы есть?
557 1820511

> гуй на джаве

558 1820517
>>820490
Нафига создаешь новый листвью? фхмллодер создает его для тебя и сетает в анотированное @фхмл поле, в initialize просто берешь getItems() и пихаешь туда свои строки. Ну или itemsProperty без задней мысли байндишь на какой-нить ListProperty
559 1820519
>>820511
На самом деле неплохой способ практиковаться в языковых конструкциях и ООП. События, потоки, обработчики, вот это всё. Так что пусть анон поковыряется.
560 1820526
>>820517
а у тебя еще и initialize статический, ну пиздец.
image.png15 Кб, 451x312
561 1820545
Ребят, я же просто сделал приложение со spring security. Как я сам у себя пароль украл? Или гугл так стал писать при любом логине без https?
562 1820568
>>820545

>Или гугл так стал писать при любом логине без https?


Зис. В гугле стоит сниффер, который просто засёк передачу твоего пароля в открытом виде.
Лечится запуском хромого с флагом, отключающим такую проверку не помню каким.
563 1820569
>>820511

>хуй на блюде

564 1820599
>>802373 (OP)
Чуть больше года работаю в ДС в небольшом интеграторе, за это время неплохо поднялся по скилам, но получаю по-прежнему 100к, имея в сумме уже 2.5 лет на джаве. Поднимать собирались но ковид дал повод зажидиться. Немного пощупав рынок понимаю что могу найти за 150к+.
Трабл только в том что я уже в последних 5 местах работал где-то по году с чем-то, плюс тут комфортно и есть чему поучиться дальше.
Как считаете, стоит ли сейчас менять работу или лучше досидеть до двух лет? Оправдывает ли это разницу с рынком в 50к
565 1820600
>>820599
Красно-черное дерево на бумажке напишешь?
566 1820712
>>820599
У меня для тебя плохие новости. Тебе не доплачивают 150 тыс.
567 1820738
>>820498
Там задачка это свинговское приложение и этот isRegex активирует JCheckBox(галка не стоит - поиск без применения рулярок, стоит - с регулярками). Вот думаю я ошибся в свинге или в логике. В чем ошибки - мне лень объяснять всю эту гуи-шнягу. Вообще подход то правильный? Можно как то по другому?
568 1820743
>>820712
250к это сеньор помидор
569 1820772
>>820738
В целом вроде примерно правильный, но для случая с "без регулярок" я бы лучше String.indexOf(String str, int fromIndex) использовал, в цикле если надо. Но это лишь потому что я никогда не использовал флаг LITERAL. А если он работает именно так как я только что прочитал - просто парсит строку-паттерн как литерал, игнорируя спецсимволы - тогда действительно можно унифицированно на паттерне сделать, если не встретится подводных камней.

Поэтому, в целом подход правильный, но вот тебе два момента для раздумий:
1) Ты можешь легко разделить "свинг и логику", просто как консольное приложение запусти в psvm, где будет только Pattern и Matcher и тестируй чисто логику без гуя. Более продвинутый путь - тестовый фреймворк: JUnit, TestNG.
2) Опасно от юзера принимать и исполнять сырой regexp без валидаций, это подвержено атакам (DoS). Если у тебя не сервер, а просто desktop app, то максимум что юзер сможет это повесить только себя, а не сервер, но все равно обидно будет для тебя как разработчика. Для дальнейшей инфы гугли "regexp attack".
570 1820785
>>820444
int flags = isRegex ? 0 : LITERAL;
Pattern.compile(search, flags);
...
571 1820789
>>820772
Мне просто еще кнопки-стрелки нужно там замутить по вхождениям в найденное, чтобы курсором на JTextArea ездить туда-сюда. Ну и я складываю в лист все пары начало вхождения/текст вхождения.
while (matcher.find()) {
isFound = true;
founds.add(new Pair(matcher.start(), matcher.group()));
}
Можно ли это без регулярок провернуть? Хотя можно наверно со счетчиком и циклом, надо попробовать, потому что что не так может быть в свинге я хз, глубоко в нем разбираться лень, да и тут не советуют. Если не поможет, тогда покурю немного свинг побольше.
Что с регулярками что-то не так я догадывался, если например ввести []emo, чтобы найти remove - в консольке сразу ошибки вылетают.
image.png20 Кб, 608x363
572 1820790
Эпоха уходит, джавач.
573 1820799
>>820790
чеэта?
image.png65 Кб, 811x789
574 1820805
>>820789
Вроде работает, сверяйся. И закомменченное тоже работает - без паттерна. Производительность не измерял.
575 1820816
>>820799
Это количество вхождений паттерна "мурзил" (от слова "мурзилка") в последних восьми джава-тредах.
576 1821047
>>820600
это даже в яндексе не спрашивают, чел. Я вот знаю алгоритм, знаю где используется, и даж, наверное напишу, но не за час, а, может, за день. Требовать такого на интервью - бесчинство. мимо 300к/сек
577 1821059
Йоу, ребят. Посоветуйте курсы какие-нибудь по Java. Я бы хотел вкатиться в EE, деньги не вопрос, лишь бы эти курсы давали что-то...
578 1821061
>>821059
Какие ещё курсы? Надо читать мурзилки.

https://metanit.com/java/javaee/

Но лучше бы спринг.
579 1821087
>>821059
Курсы не являются гарантией твоего дальнейшего трудоустройства
580 1821096
>>821047
А че там писать-то, лол.
import org.apache.collection.RBTree;
...
581 1821103
>>821096
А переворачивать тоже умеет?
582 1821113

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


а не пойти ли тебе самому нахуй? Дайте по джаве на русском учебник, английский в процессе буду учить. Пожалуйста.
583 1821114
>>821113
Хорстманн.
584 1821115
>>821114
Не нашёл на рутрекере книги для SE 9. Эта книга от Шилда сойдёт?
https://rutracker.org/forum/viewtopic.php?t=5715231
После неё что изучать? Спасибо.
585 1821116
>>821115
Шилдт лично мне не нравится. Много воды, мало толку.
Лучше сходи сюда: https://t.me/BookJava
586 1821117
>>821116
спасибо ещё раз
587 1821148
>>821096
Я тебе даже больше скажу:
import java.util.TreeMap;
588 1821150
>>821115
Зачем учить легаси-джаву 9, когда у Хорстманна переведён первый том по 11?
589 1821160
>>821150
а блин, думал 9 последняя. В любом случае, этот том для "подкованных" погромистов, с него начинать не стоит, думаю
590 1821185
>>821113

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


Это так не работает. Я читал SiCP и другие мурзилки в оригинале и одновременно учил язык.
Тяжело было, но сейчас худо-бедно читаю техническую литературу, so, блоги, даже на слух стал неплохо понимать. Осталось научиться писать и говорить.
image.png11 Кб, 576x332
591 1821196
Почему z и q 0.5, а s 1.0?
592 1821199
Заебался по сто раз искать
Где нормально 8-ой jdk скачать можно
593 1821214
>>821196
g и h оба целые, значит, результат деления целый, значит, дробная часть отбрасывается.
594 1821215
>>821214
спасибо, анон
596 1821394
>>821148
А оно там красно-черное? А если в следующей версии джавы будет не красно-черное?
597 1821429
>>820805
Спасибо что подсказал. Там на деле вся проблема была в правильном обновлении каретки при разных действиях в текстовой области в свинге.
598 1821434
>>821394
Инфа 100%
599 1821498
Чет погуглил какие вопросы задают мидлам-сениорам по Джаве, ничего не нашел. Может у кого-нибудь есть список вопросов или, что лучше, кто-то даже записывал вопросы с интервью? Поделитесь, хочу обмазаться и снова начать ходить на собеседования
image.png5 Кб, 809x26
600 1821584
601 1821614
>>821584
О, то, что нужно, заебись, спасибо!
603 1821859
С помощью чего работать с изображениями на веб сервере без облачного хранилища и только с базой данных? На сколько плохо хранить в бд, а не в каталоге файлов?
604 1822034
>>821185
ну хз, как по мне стоило сначала выучить грамматику и 2-3 тысячи самых распространённых слов, так гораздо легче на самом деле.
Учить чтением/сериалом со словарём это не лёгкий способ, как это позиционируют некоторые.
я это в книжке прочитал, а как все знают, в умных книжках не врут
605 1822045
Нахуй английский, по кору куча литературы на русском, хоть и не самой свежей, но кого это волнует, когда все на восьмёрке сидят. Дальше почитать пару мурзилок по базам данных и спрингу, опять же на русском, и можно уже работать, попутно гугля вопросы на qaru.site (или что там сейчас вместо него), сообщения коммитов и комменты в коде писать на русском, а методы называть с помощью гугл транслейта.

Впрочем, у меня в должностной инструкции было прописано, что я должен знать инглиш, но с моим B2 проблем не было.
606 1822070
>>822045
да я английский всё равно собирался учить так-то

>>821113
>>822034-анон
607 1822090
Что-то я не понимаю, если у нас
@RequestMapping(value = "/", method = RequestMethod.POST)
а в параметрах функции
@RequestParam("fname") String fname
@RequestParam("lname") String lname
То эти данные возьмутся из параметра или тела запроса?
608 1822096
>>822090
Из параметра:
http://localhost:8080/?fname=хуй&lname=пизда

Для выдёргивания данных из тела нужна аннотация @RequestBody.
609 1822103
>>822096
А как тогда сформировать запрос с телом, а не параметром
<form method="POST" enctype="multipart/form-data"
action="/upload">
File to upload: <input type="file" name="file"><br /> Name: <input
type="text" name="name"><br /> <br /> <input type="submit"
value="Upload"> Press here to upload the file!
</form>
если эта форма, получается, отправляет через параметр?
В туториале данные принимаются через @RequestParam.
https://spring-projects.ru/guides/uploading-files/

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

Мб она все таки выдергивает их из тела, если не может найти в запросе?
610 1822153
>>821859

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

Тебе бы почитать про HTTP запросы вообще и какой у них формат. Исторически параметры передавались либо GET запросом, прямо в строке:
2ch.hk/pr?abu=soset&admin=petuh
Или в теле POST запроса:
abu=soset&admin=petuh
Касательно того что POST запрос с типом multipart/form-data проходит автоматический парсинг с мапингом всех параметров это традиции еще времен сервлетов. Можешь почитать про это в документации https://docs.spring.io/spring-framework/docs/current/spring-framework-reference/web.html#mvc-ann-requestparam
612 1822236
>>822182
Ок, спасибо, анон.
613 1822357
>>822153
Мне кто-то тут говорил, что даже небо, даже Аллаха нужно хранить в ДБ.
614 1822364
>>822357
Это был я. Разумеется, это не так.

мимо
615 1822366
>>822364
Не верь ему, это был я. И это так.

мимо
616 1822367
>>822357

Все нужно хранить в памяти

мимо-хайлоад-архитект
sage 617 1822456
>>822367
А потом CTO будет ебать этого хайанус-архитекта, за проебанные данные пользователей.
618 1822462
>>822456
Говоришь это nosql-щикам, а они такие "ряяя транзакционных процессов в реальности не существует!".
619 1822687
Можно с помощью стрима обрезать List до первых 10 значений, если их будет меньше 10, то добавить new Object() вплоть до 10?
620 1822741
>>822687
Можно.
622 1822765
Зачем нужен депрекейтед в параметре метода? Вот как в примере. Чем это отличается от всего задепрекейтедного метода?
public boolean haveSuchAmount(@Deprecated int amount) {
return inStock >= amount;
}
623 1822766
624 1822771
>>822766
спс
625 1822787
>>822765
Это вообще компилируется?
626 1822796
>>822787
Даже локальную переменную можно задепрекейтить. Хуй знает, зачем.
627 1822807
>>822687
>>822741
Как это сделать???!!!??? Кааааааак????!!!1
628 1822808
>>822807
Обрезать List до первых 10 значений, если их будет меньше 10, то добавить new Object() вплоть до 10.
629 1822821
>>822687
У тебя задача получить желаемый список (пусть и традиционными циклами) или во что бы то ни стало сделать это стримами, чтобы была нечитаемо, неподдерживаемо и по-борщехлёбски? Если где-то задачки решаешь, шли нахуй такие задачи и пиши цикл.
630 1822822
>>822687
Не слушай его, корректно нельзя, только с внешними относительно стрима костылями. Чтобы выполнить то что тебе надо необходимо внутри стрима иметь представление об общем состоянии листа - количестве элементов, а этого без костылей не сделаешь. В общем, стримы - они не для этого. Даже самый простой случай "обрезать до 10 если больше" даст тебе новый лист, а не обрежет в текущем (collect(Collectors.toList()))
631 1822833
>>822821
Стараюсь перейти на стримы, у них читаемость должна повышаться наоборот, так что подумал, может есть какое-то хипстерское решение, которым это в два счета сделать.
>>822822
Спс.
633 1822843
>>822833
Сам факт использования стримов не повысит читаемость. Их нужно использовать в меру и с умом. Есть много кейсов, когда они что-то улучшают (обычно их предлагает сама idea), но далеко не всегда.
634 1822846
>>822807
public static List<Object> make10(List<Object> objects) {
return Stream.concat(objects.stream(), Stream.generate(Object::new))
.limit(10)
.collect(Collectors.toList());
}
635 1822851
>>822846
Ахуенно.
636 1822949
>>802373 (OP)
Всем привет
Хочу запилить приложение на мобилку. Простенькое, для личных целей (для целей локального коммьюнити, если точнее). Окончательно разочаровался найти какие-то видеоуроки по приложениям на котлине (изначально хотел делать на нем), потому прошу подсказать аксакалов: есть какие-то годные признанные отцами уроки по созданию android-приложения на java?
Мне простенькое запилить, особо в дебри погружаться не хочется, да и я не профессиональный программист.
637 1822966
>>822949

> годные признанные отцами уроки


Есть кое-что получше — мурзилки!
- https://startandroid.ru/ru/uroki/vse-uroki-spiskom.html
- http://developer.alexanderklimov.ru/android/

А вообще, тебе в андроид-тред.
638 1823023
>>822966
Спасибо!
639 1823055

>quizful


На собесе реально могут заставить искать ошибки в листинге на бумажке?
640 1823122
>>823055
Могут, но тут как правило больше на дизайн, чем синтаксис. Хотя есть уебаны с вопросами в стиле "что выдаст этот код" и ответами
- не скомпилируется
- выдаст ошибку
- напечатает хуй-пизда-джигурда
641 1823125
Кто-нибудь работал с apache drill?
642 1823140
>>823125
Никто, мы только роуты к контроллерам умеем писать.
643 1823166
Почему во всех бенчмарках jakson оказывается быстрее gson, а на самом деле когда я запускаю свой код, все ровно наоборот?
644 1823182
>>822833

>Стараюсь перейти на стримы, у них читаемость должна повышаться наоборот


Вкусовщина, же. На работе некоторые олды хуярят свои циклы везде, я норм читаю это. Сам делаю почти всё через стримы.
Мутабельность меня больше раздражает.
>>823055
Я больше скажу. Как-то искал ошибки в коде на js, хотя пришёл то я на другой язык устраиваться.
"Не ну а чё там синтаксис то схожий, ещё и динамикодрисня, ещё проще!"
Сам код был написан ещё в стиле "лаба1", стена текста.
Я просто сказал, что вся эта хуйня, сплошная, ошибка и антипаттерн. Теперь понимаю, как же мне повезло, что они не перезвонили.
645 1823191
>>822357
Ахахах, орнул.
А вот как насчет Liquibase или Flyway ? Что лучше ?
646 1823197
>>823191
Flyway проще, у Liquibase больше фич.
image.png124 Кб, 1280x1024
647 1823378
>>820517
Что значит "actual"?
648 1823383
>>808388
я сдавал OCA, сейчас готовлюсь к OCP
image.png147 Кб, 1280x1024
649 1823385
>>823378
Хочу сделать такую штуку, чтобы списки задач можно было редактировать. Реально вообще?
650 1823388
>>808388

Хз, как с откликами, мне просто сказали пройти для проекта и вернули деньги за сам экзамен

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

Для OCA достаточно хорошо разобрать книгу для подготовки к этому экзу. У меня на подготовку к тесту ушло 2 дня. Есть еще моки, которые я настоятельно рекомендую купить и пройти, потому что вопросы там очень сильно отличаются от вопросов в книжке, и они более похожи на тестовые. OCP же намного серьезнее и без моков и тщательной подготовки ты не сдашь
651 1823389
>>823385
Я плохо помню, что там в JavaFX, но я уверен, что там есть список, на элементы которого можно навесить какой-нибудь onClick и там уже открыть окошко редактирования твоего элемента. Поэтому конечно можно
image.png139 Кб, 1280x1024
652 1823390
ПОЧЕМУ ТАК НАХУЙ?
653 1823436
>>823385
Зачем это делать на JavaFX ? Зачем вообще на java писать настольное приложение ?
654 1823438
>>823436
Чтобы помочь производителям ОЗУ повысить продажи, зачем же ещё.
655 1823507
>>823436
Я больше не умею ни на чем.
656 1823512
>>823507
Оставь ты это говно мамонта и двигай в сторону android или spring! Иначе, попусту время тратишь только.
657 1823513
>>823507
По твоим вопросам складывается ощущение, что ты и на JavaFX нихуя не умеешь.
Возьми лучше что-нибудь реально более подходящее для десктопных приложений. C# + WPF или более новый UWP, например. Microsoft пишет хорошие туториалы для начинающих Oracle в этом смысле полное говно.
Ну или правда, перетекай на Андроид.
658 1823519
QT
659 1823522
>>823512
>>823513
Я и так хочу в андроид вкатиться, пытаюсь дома изучать. У меня рабочий комп андроид студио не тянет, поэтому ЯвуФХ ковыряю пока тут "работаю". Буду благодарен за туториалы по андроид, вдруг у кого есть?
И неужели я год яву дрочил чтобы в кресты вкатываться?
Сейчас вообще сижу ардуину насилую
660 1823607
Что должен знать джун?
Подрочил стандартную библиотеку. Сейчас дрочу Spring Boot. Потом думаю что-то свое без тутора написать на спринг буте. Потом на сервлетах. Потом какое-то REST приложение на спринге. Потом какую-нибудь имиджборду/форум написать и читнуть какую-то умную книженцию по джаве не для начинающих.
После всего этого можно будет начинать ходить по собеседованиям?
661 1823640
>>823607
Если плюсом к этому знаешь SQL, алгоритмы и структуры данных и очевидные мавен с гитом, то да, можно.
Правда, где-то требуют ещё и ЕЕ-стек.
662 1823645
>>823640
SQL знаю. Скоро в универе еще с МонгоДБ поработаем.
Из алгоритмов что надо знать? Кроме пузырька и квиксорта.
Мавен как надо знать? Что там кроме синтаксиса прописывания зависимостей знать еще надо? Гит кроме пуша что еще знать надо?
663 1823668
>>823645
Из алгоритмов, вообще говоря, почти нечего сложного - уметь пройтись по дереву, например, или бинарный поиск. Руками писать на работе не понадобится, но на собесе могут спросить, типа, как у тебя с алгоритмизацией.

Мавен - модули и профили ещё.

Гит - основные фичи, то есть ветки, мерж, ребейз, черри-пик.пулл, реверт, ресет. Ещё почитать про git flow.
664 1823709
>>823668
Спасибо, анон.
15305418219970.png63 Кб, 220x205
665 1823804
Учишься в вузе на специальности Информационные системы и технологии
@
Познания преподов заканчиваются на ООП и vml
@
На программировании ставят всем 3 автоматом
@
Дают доххулиард ненужных предметов
@
По ним задания с профильных факультетов
@
Доебываются до каждой мелочи
@
...
@
На последнем курсе умеешь с ахуенной математической точностью собирать ПК, считать погрешность своего пердежа до 10^100 точности, знаешь философов 19 века и золотовалютный резерв России 2003 года. Можешь написать змейку, используя только битовые операции.
666 1823855
>>823607
Мое имхо, но джун должен отлично знать javacore, и хоть немного понимать как происходит сетевой обмен.
Потому что знание как spring boot, так и hibernate будет плюсом, но особо роли не сыграет, так как ты еще не знаешь как это используется в коммерческой разработке. А твердое знание кора позволит тебе выбиться на фоне остальных, так как даже не все мидлы знают как банально работает многопоточка под капотом, как функционирует GC и какие виды есть, какой использовать лучше в различных ситуациях, не говоря уже о сокетах и тд.
667 1823858
>>823855

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


Приведи пример, когда это нужно знать, пожалуйста.
668 1823871
>>823858
Все зависит от выделенных ресурсов машины, на котором будет запускаться приложение. При скудных характеристиках рекомендуется использовать SerialGC, так как с возрастающим временем STW увеличивается время жизни программы, при возможных утечках.
На приложениях, которые чувствительны к скорости отклика, так же необходимо выбирать GC, так как ты никак не предскажешь когда все потоки уйдут в сон, чтобы вычистить память и сколько секунд это займет.
Не стоит недооценивать эту тему, особенно когда дело касается энтерпрайза и бабок.
669 1823873
>>823858
Я не тот анон, но расскажу свой экспириенс. У нас лид ключами ставит приложениям кому G1, кому Parallel. Плюс логгирование GC в файлик (ага, и такое есть, погуглите). И вроде еще какие-то пара GC ключей, не помню. Я так сильно не разбирался, но видимо разбирался он.
670 1823884
>>823804
Физкультуру забыл, нормативы - как будто тебя в спартанскую армию готовят, биться против персов.
671 1823891
Кто имел опыт написания байт-кода на asm - делимся своим куллстори
672 1823897
>>823166
ААА БЛЯДЬ НАХУЙ?
673 1823898
>>823385
Твой UX - говно.
674 1823904
В гуаве или апаче есть тип, которые возвращает результат или эксепшен?
675 1823912
>>823904
Каво, блять ? Научись вопросы формулировать, а то высрал какую-то хуйню
image.png34 Кб, 542x234
676 1823913
>>823912
Вот такую хуйню. У тебя уровень восприятия окружающего мира как у ребенка трехлетнего.
677 1823919
>>823891
Я не осилил, слишком высокий порог вхождения. Структура обычных нативных PE/ELF/COM мне показалась простой и понятной в сравнении с class-файлами.
678 1823991
Что делать, если Спринг не хочет создавать метод
List<Role> findByUsername(String username);
при
@ManyToOne
@JoinColumn(name = "username")
private User user;
?
679 1823998
>>823991
Выкидывать говнохибернейт и переписывать на SQL, у которого таких проблем нет.
680 1824087
>>823913
>>823904
Это не "результат или эксепшн", это "результат и эксепшен". За библиотечные не скажу, а сам такие обертки хуярил не раз.
681 1824097
>>823804
Учишься в шараге по специальности погроммист не в Рахе/СНГ
@
Тысяча и один курс по всему что можно придумать
@
На джавараше/хтмлакадеми/другой цыганщине учат в сто раз глубже
@
За то умеешь писать хелловорлды на реакте, андроиде, пхп, джаве, си, питоне, крестах, ассемблере и знаешь что такое архитектура Фон Неймана (и та глубже по википедии была изучена нежели на лекциях)
@
И знаешь что такое бит
682 1824131
>>823898
Лол, что такое UX?
683 1824134
>>824131
User experience.
Посему не UE - потому что люди у нас долбоёбы, XML туда же.
684 1824150
>>824134
Нихуя не понял, но очень интересно.
685 1824215
>>823891
У меня был, а что ты хотел узнать?
Screenshot20201006-11334601.jpg65 Кб, 1080x413
686 1824239
Это норм вариант(внутри контроллера), если я хочу обновлять по таймеру объекты всех активных сессий в HttpSessionListener? И ещё, где гарантия, что объект сессии не уничтожится в тот момент, когда я буду ее обновлять?
Лять, сначала подумал, что ВеснуБезопасность будет сложно подгонять под мой проект.
687 1824243
>>824134

>Посему не UE - потому что люди у нас долбоёбы, XML туда же.


Не у нас, сокращать слова начинающиеся на ex как X это стандартная практика в США. Можно вспомнить BM PC/XT - eXtended Technology который был еще в 83 году выпущен.
688 1824245
>>824243
Я знаю, просто мне неприятно от этого.
689 1824261
>>823804
В Рахе имеет смысл поступать в топвуз или не поступать вообще.
690 1824267
>>824261
Ну, бывают вузы куда хуже моего (ЛЭТИ), хотя не поступишь, не узнаешь.
691 1824268
>>824261
Нет, хуй ты куда устроишься без корочки хотя бы нижневартовского заборостроительного института.
692 1824314
>>823871

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


От бюджета скорее зависит.
Адекватные люди помнят, что их время стоит больше ещё одной плашки с памятью.
693 1824317
>>824268
Корочка поможет, но как счастливый билет её расценивать не стоит.
Деревья на листочке покрутить придётся, как и 5 крудов в качестве тестовых сделать.
694 1824331
>>824317
Будто с коркой МГУ не придётся этого делать.
695 1824334
>>824314

>Адекватные люди помнят, что их время стоит больше ещё одной плашки с памятью.


А опытные знают, что "плашка с памятью" в облаке стоит сотни, а то и тысячи баксов в месяц.
696 1824336
>>824331
Я про это и пишу.
Хотя слышал, что в нормальных вузиках можно легко на стажировку устроиться. А помощь при первом трудоустройстве это всегда благо.
697 1824350
Кто-нибудь работал с MySQL на макбуках через терминал?
Может подкините какой-то годный гайд?
В гугле все что не искал - постоянно в каждой ссылке разные ответы, разные команды на одни и те же вещи, половина не работает, половина с ERROR как результат выполнения и т.д.
Какая-то гомоебля. Еще чуть-чуть и как макака через MySQL Workbench создавать таблицы буду
698 1824355
>>823871
>>823873

Я надеюсь у вас отработана процедура выбора GC ? Написанны отдельные тесты на пропускную способность и время отклика + сбор реальной статистики с боевых машин?
699 1824391
>>824355
Миш, не души так.
700 1824404
>>824391
Ты опять выходишь на связь?
701 1824429
>>824404
Алло, Йоба, это ты? Плохо слышно, говори громче!
702 1824459
>>824350
Проще поставить виртуалку и там все разворачивать, потому что не представляю кейса опытной эксплуатации, где БД сидит на маке.
А так накатил на виртуалку любой линукс и из под нее стартанул, я на своем макбуке 19 года так делаю, полет нормальный.
703 1824463
>>824459
Можно сразу накатить докер.
704 1824500
Вы правда читаете эти огромные документации или ищите по мере надобности?
705 1824506
>>824500
Ищем мурзилки и читаем.
706 1824507
>>824500
По мере надобности конечно. Для получения нового апи обычно бывают официальные гайды, туториалы, мануалы, квикстарты и т.д, их как раз и читают все. А сухие доки - это просто справочник.
707 1824508
>>824245
А кого ебет?
708 1824511
>>824508
Меня. Я хочу, чтобы все называли так, как мне нравится, а не как принято.
709 1824608
>>824511
А кого ебет?
710 1824616
>>824608
Меня.
711 1824618
>>824616
Кто?
712 1824623
713 1824625
>>824623
Ты его ебешь?
714 1824628
>>824625
Его.
715 1824630
>>824628
Не еби.
716 1824636
717 1824792
>>823166
ААА БЛЯДЬ НАХУЙ?
718 1824849
Как чаще всего выглядит конфигурация в производственном проекте? Хмл или джава? Насколько сильно конфигурация расходится с шаблонами из документаций? Часто приходится ее ковырять? Часто приходится конфигурировать кишки спринга (писать самому сервлетные фильтры, например)? Часто приходится связывать бизнес логику со спрингом?
719 1825035
>>824459
Это не опытная эксплуатация. Это в целях изучения.
720 1825036
>>824849

> Как чаще всего выглядит конфигурация в производственном проекте? Хмл или джава?


Чем больше код легаси, тем больше в нём хмл. Явных преимуществ у хмл-конфигов перед джавой нет (есть только надуманные), а недостатков предостаточно.

> Насколько сильно конфигурация расходится с шаблонами из документаций?


Бывает, что и расходится. В документации обычно описаны самые простые случаи, в реальности всё сложнее.

> Часто приходится ее ковырять? Часто приходится конфигурировать кишки спринга (писать самому сервлетные фильтры, например)?


Крайне редко. Это ядро приложения, его настраивают один раз и потом редко туда лезут.

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


В бизнес-логике от спринга обычно только @Autowired и @Service.
721 1825068
>>824215
Лан, запилию одну прохладную хотя и хуй она будет кому интересна.

В общем в генераторе байткода в цепочке if-else-if был пропущен один else и вместо выполнения одного блока выполнилось 2 и был сгенерирован лишний байткод. Дальше при старте код вылетал с лютейшей ошибкой валидатора из которой вообще ничего не было ясно. И сам код генератора не менялся и был сломан с самого начала, просто из-за другого бага он раньше не вызывался.
В общем пришлось брать javap и смотреть байткод и пытаться понять, что не так.
722 1825096
>>825036
Понял, спасибо.
723 1825115
>>825036

>Явных преимуществ у хмл-конфигов перед джавой нет


А поменять конфиги на собранном проекте?
724 1825124
>>825115
Всё равно придётся пересобирать итоговый еар-ник, передеплоивать и перезапускать приложение, и ещё не факт, что запустится, если опечатался в хмл.
725 1825149
Как грамотно учить Спринг?
Я студент. Сейчас смотрю туториалы от Гоши Дударя по спринг буту. Но там вся суть заключается в том, чтобы смотреть и повторять. Понимания особого почему, что, куда и как нет.
После туториала планирую читать сервлеты, после сервлетов напишу на них что-то и взять почитать книгу по спрингу.
А вы как со спрингом начинали работать?
726 1825154
>>825149

>А вы как со спрингом начинали работать?


Прочитал пару мурзилок из блогов. Повторил то, что там было.
Сделал пару тестовых.
Потом спринг про пробежал по диагонали.
Вот уже полгода как работаю, но всё равно нихуя не понимаю. Когда-нибудь хочу всё таки выучить эту ебалу на уровне хотя бы 20% от уровня Борисова, может и пригодится когда-нибудь. Но и гуглить нужное по мере необходимости тоже несложно.
727 1825178
Блять. Есть где нибудь адекватная matrix compatibility между Curator Framework и Zookeeper? раньше же была на оф. сайте, куда дели, почему я не могу нагуглить?
728 1825191
>>825035
Ну а смысл в целях обучения наворачивать костыли, когда есть простое решение с кучей советов, которые ты можешь найти на просторах интернета, в отличии от накатывания бд на macos.
Такой хуйней никто не страдает, потому и разбирающихся людей в этом нет, как и банальной поддержки.
729 1825198
>>825068
Да, мутили тоже что-то типа пост-процессора для логирования активности методов, помеченных аннотацией.
Основная ебля оказалась в банальной разнице объектных типов на уровне языка и на уровне jdk. Для jdk нет никакой разницы напишешь ты long, int, short, byte или boolean, для него это все long и потому производить битовые сдвиги буфера оказалось гемором, так как память он выделяет по другому. Но это еще ничего относительно массивов на уровне байткода.
730 1825203
>>825149
Может наоборот сначала с сервлетами поработаешь, чтобы понимать что да как, а уже потом к спринту.
Потому что учить что-то, но не понимать для чего это и почему так - пустое трата времени, тебе все равно после изучения придется возвращаться к этому, чтобы подробнее разобрать.
А пока мог бы на сервлетах накатать вывод простой странички, потом потихоньку прикрутить web-фильтр для авторизации, а вот уже после этого смотреть про спринг - где, как и зачем он тебе в этом упрощает жизнь.
731 1825213
>>825203

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


Стандартный пост про то, что так и до изучения ассемблера можно докатиться.
732 1825225
>>825213
Пускай дрочится. Пару лет читает всё, готовится. Потом выгорит уже.
Меньше вкатышей = выше зарплата.
733 1825245
Какой из спринг клаудов желательно освоить? Нетфликс (Spring Eureka) по идее?
734 1825268
>>825245
Все клауды.
735 1825273
>>825268
Можно нет.
736 1825281
>>825273
А как иначе ты станешь горцем?
737 1825320
>>825281
Да жирно будет.
738 1825355
Насколько близко к реальному? https://youtu.be/XZIwI_bdNKU
739 1825394
>>824849
>>825036
>>825115
>>825124
А как же запуск к разными контекстами без xml? Рассовываем фичи приложения по разным xml-кам, на вход в main передаем нужный список, строим бины только из переданных контекстов. Все контексты при этом лежат в джарнике, ничего пересобирать не надо, а приложение меняет конфигурацию параметрами запуска. Никогда не интересовался как это делать по-другому, и так работает. Иначе нужно в конфиге делать фичам true/false, но бины все равно будут инициализироваться, значит их надо делать максимально ленивыми чтобы ускорить запуск, а это усложнение, синхронизация и тд.
740 1825397
>>825394

>А как же запуск к разными контекстами без xml?


Опять началось...
741 1825419
>>825394

> разными контекстами без xml


А, так это ты. Я сразу так и подумал.

Для настолько странной задачи в спринге есть профили.
@Configuration @Profile("profile1") public class Feature1 { ... }
@Configuration @Profile("profile2") public class Feature2 { ... }

И при запуске указывается ключик с нужными профилями: -Dspring.profiles.active='profile1,profile2'. И бины из неупомянутых профилей инициализироваться не будут.
742 1825433
ХУЛИ МАВЕН НОРМАЛЬНО СОБИРАЕТ А ИДЕЯ КРАСНЫМ ПОДСВЕЧИВАЕТ?
743 1825435
>>825433
Жиза, блять. Мне иногда помогает только удалить папку .idea и импортнуть проект заново.
744 1825436
>>825435
Переписал в другом порядке, заработало. Скурвились джетбрейнсы, мда.
image.png15 Кб, 597x137
745 1825438
>>825419
Спасибо, покажу нашему главному, хотя вряд ли он одобрит рефактор на аннотации, наверное скажет "наглядность потеряется, переезжать на пятерку" и т.д.
746 1825825
Что-то я ничего найти не могу.
Как проверить строку на соответствие какого-нибудь из шаблонов?
Типа такого
boolean cont = string.contains{"par1", "par2"};
747 1825828
>>825825
string.mаtchеs(peгyляpкa)
748 1825831
>>825828
Типа такого .matches("par1?par2?par3")?
А если я в массиве ищу?
749 1825868
>>825831
.matches("(par1|par2|par3)")
Но тут есть подводные, если шаблон будет содержать точки, скобки или еще что такое - то пойдет по бороде. Лучше прогнать несколько раз contains().
750 1825924
Скажите, разумисты, второе издание Java Head First всё ещё актуально как первая книга для вкатывающегося с нуля колобка или есть что-то получше?
751 1825981
>>825924
Хз, мне в свое время хед ферст вообще не зашел. Дебилоидная система повествования
752 1826107
Кидаю JSON через Postman: PUT
http://localhost:8080/masters/save/{"id":"fd28657d-2c2d-4f6e-adc3-22d1efb21f9f","calendar":{"bookedDates":{}},"fullName":"basil","dailyPayment":20.0,"speciality":"MECHANIC"}

Вылетает ошибка com.google.gson.JsonSyntaxException: java.io.EOFException: End of input at line 1 column 112 path $.dailyPayment - если кавычек вокруг дабла нет, если поставить,
то
com.google.gson.stream.MalformedJsonException: Unterminated string at line 1 column 113 path $.dailyPayment
Сигнатура метода:
@PutMapping("save/{json}")
public void saveMaster(@PathVariable String json)
ЧЯДНТ?
753 1826120
>>826107
Интересное api, где json суётся в url. Только не говори, что сам до такого додумался.
754 1826210
>>826107
url encode
755 1826377
>>826120
Cам. А какие варианты получить целый энтити через рест?
756 1826378
>>826210
если дабл вводить как целое число, ошибка не возникает
757 1826386
>>826377
Через тело запроса, см. @RequestBody. URL в первую очередь для идентификации ресурса, а не передачи данных. К тому же с ростом размера json можно рано или поздно столкнуться с ограничением на длину url (да, оно есть, и не такое уж и недостижимое, всего лишь ~2К символов).
758 1826387
>>826378
Ты че тупой?
759 1826399
>>826387
Sir,yes,sir!
image.png1,2 Мб, 1280x1024
760 1826522
Скачал полное руководство по яве (Шилдта) а там то же самое что для новичков, но подробно.
Что мне можно дальше учить? Английский?
761 1826529
>>826522
Хорстманн. А потом спринг.
762 1826538
>>826529
Спасибо
763 1826659
Почему эта тварина создает директорию, но не создает файл?
Каталог называл C://files C:\\files C:/files/
Байты не нулевые
Название файла правильное
Файлов в папке нет
Менял путь на документы
Эта хуйня еще утром, блять, работала, а теперь я ебусь с ней уже час, не понимаю, почему нихуя не сохраняет

File dir = new File("C:/files");
if (!dir.exists()) dir.mkdir();
File file = new File(dir, imgName);
file.createNewFile();
BufferedOutputStream stream =
new BufferedOutputStream(new FileOutputStream(file));
stream.write(bytes);
stream.close();
764 1826664
>>826659
ПОЧЕМУ ОНА БЛЯТЬ НЕ ПЕРДИТ НИКАКИМИ ЭКСЕПШЕНАМИ, ПРОСТО НЕ СОЗДАЕТ?
765 1826684
>>826664
ПИЗДЕЦ, Я НАШЕЛ ОШИБКУ, ЕБИСЬ ТЫ В РОТ.
766 1826702
>>826684
Не будь пидором, напиши ответ. Вдруг какому анону пригодится.
767 1826710
>>826702
В конструкторе было
File dir = new File("C:/files");
if (!dir.exists()) dir.mkdir();
вместо
dir = new File("C:/files");
768 1826738
Помогите придумать способ лучшем образом переписать функцию.
Дано:
public <T> Stream<T> function(int x1, int x2, int y1, int y2) {
final ArrayList<T> list = new ArrayList<>();
for (int y = y1; y < y2; y++) {
for (int x = x1; x < x2; x++) {
list.add(getObject(x, y));
}
}
return list.stream();
}

То есть нам нужно получить стрим из объектов класса T для диапазона заданного четырьмя параметрами по два на каждую ось. И есть метод который возвращает нужный объект по координатам.
В целом всё работает. Однако очень хочется убрать ArrayList так-как метод вызывается в нескольких потоках и очень часто.
769 1826739
>>826738
ты зачем ебанные табуляции пожрал пидор?
770 1826783
>>826738
Можно в Stream.generate() засунуть свой Supplier, который будет возвращать следующий элемент требованию, что идеально вписывается в идеологию ленивости стримов, а потом накидывать limit и возвращать.
771 1826788
>>826738
public static <T> Stream<T> function(int x1, int x2, int y1, int y2, BiFunction<Integer, Integer, T> converter) {
return IntStream.range(y1, y2)
.mapToObj(y -> IntStream.range(x1, x2).mapToObj(x -> converter.apply(x, y)))
.flatMap(Function.identity());
}

Правда я не уверен, что это сильно лучше того же ArrayList с точки зрения перформанса.
772 1826791
>>826788
По хорошему, если нужна ленивость то нужно делать Supplier (как >>826783 сказал).
773 1826820
>>826710
И что ? Тот алгоритм и так корректно все выводил в файл, а эти строчки несущественны, чтобы файл не создавался.
774 1826861
>>826820
Это конструктор, пчел
File dir...
или
dir...
Разница в сгорании жопы 1 час.
775 1826866
>>826861
Вместо эксепшена он создавал файлы в resources каталоге
776 1826969
Хибернейт топчик.
777 1826984
Как написать point cut для аспекта, который должен вызываться после выполнения метода с определённой аннотацией и с определённым возвращаем типом?
778 1826987
>>826984
И ещё может в спринге есть какие то более подходящие способы сделать такое не через аспекты?
779 1827009
>>826987

Пиши свой собственный BeanPostProcessor как завещал нам Женя -> https://www.youtube.com/watch?v=BmBr5diz8WA
780 1827019
>>827009
Так а дальше то что?
781 1827020
>>827019

А дальше всё
782 1827023
>>826969
Убил сегодня час времени, пока копался в стектрейсе говнохибернейта и пытался понять, что не так. И хибернейт топчиком не считаю. Даже не хочу вспоминать, как я полгода назад пытался вникнуть в JQL-запрос на 500 строчек, который ещё и не запустить просто так в консольке с ораклом. В общем, все мнения имеют право на жизнь.

>>826984
Типа такого, но хуй знает.
@After("execution(YourType yourpackage.⚹.⚹(..)) && @annotation(yourannotation)")
783 1827036
>>827023
Не работает нихуя. С возвращаем типом норм, с аннотацией норм, а вместе нет.
784 1827085
>>827036

>с аннотацией норм


Напиздюнькал, не работает именно из-за аннотации.
785 1827092
Короче я долбоеб, не на том бине аннотацию ставил.
786 1827123
>>827085

Твоя аннотация доступна в рантайме?
@Retention(RetentionPolicy.RUNTIME) указал?
787 1827431
Что значит в джунской вакансии, знание алггоритмов и структр данных? Структур данных?
788 1827432
>>827431

>Структур данных?


Да, и алгоритмов.
789 1827442
>>827432

>Структур данных?


Это имеются в виду коллекции и примитивные типы?
А алгоритмы это в каком объеме? Весь Кнут? И зачем, ведь все реализовано в библиотеках?
790 1827452
>>827431

> алгоритмов


Сможешь написать пузырёк и бинарный поиск на листочке, сможешь устно рассказать про квиксорт и мерж сорт.

> структур данных


Сможешь рассказать про самую простую хеш-таблицу, про множество, про списки, деревья, основные способы обхода деревьев.
791 1827466
Ecommerce сойдет как пет проект?
792 1827475
>>827442

>А алгоритмы это в каком объеме? Весь Кнут? И зачем, ведь все реализовано в библиотеках?


Ну все правила дорожного движения тоже написаны в правилах дорожного движения зачем их учить-то?
793 1827485
>>827475

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


Чтобы применять на практике.
794 1827493
Что почитать по спрингу, если я слабо знаком с ним?
795 1827494
>>827493
Мурзилки по конкретным вопросам.
796 1827495
>>827494
Что это и где искать?
797 1827496
>>827495
В гугле, у бэльдунга хорошие мурзилки, например.
798 1827497
>>827494
Например вопрос, что такое автовайред и апплкейшн контекст
799 1827498
>>827496
Что такое бэльдунг? Что такое мурзилки?
800 1827499
>>827498
Программирование не для тебя.
801 1827501
>>827499
Отвечание на вопросы не для тебя
802 1827519
>>827501
Именно поэтому я и не отвечаю на вопросы.
803 1827527
>>827498

> Что такое бэльдунг?


Вот этот сайт: https://www.baeldung.com/
Я хуй знает, что там на главной, и как на нём что-то искать, обычно гуглишь %фича_нейм% из спринга, и одной из первой ссылок видишь ссылку туда со статьёй-введением. Это как стековерфлоу.

> Что такое мурзилки?


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

->>827493
Слабо - это насколько?
804 1827555
>>827527

>Слабо - это насколько?


Я смотрел ютуб, и повторял за неким специалистом. Он после каждого действия повторяет, вникать не надо, вникать не надо. Вот спринг секьюрети, хуяк, хуяк, все работает, вникать не надо. Но как что-то сделать самому я пока не понимаю.
805 1827568
>>827555
Он имеет в виду, что вникать не надо прямо сейчас, пока он объясняет пример, потому что если вникать, то там всё очень сложно в сравнении с тем же Spring MVC. И тем более сложно найти такой материал, где объяснялось бы для новичков, но полностью и исчерпывающе.
Ну и способы изучения у всех разные, кому-то хватает официальных доков, кто-то читает талмуды pro spring или spring in action , а кто-то - мурзилки.
ОБычно, когда мурзилок недостаточно, я изучаю что-то путём взятия минимально работающего примера фичи и последующих экспериментов с не: что будет, если поменять порядок вызовов методов, гугление, почему не работает, зачем нужен этот аргумент, как сделать то-то и т.д.
806 1827681
Изучаем concurrency на жабе которое вам все равно не пригодится в работе!

Часть первая: Spin Lock.

Код: https://codeshare.io/5wBl9j

Механизм действия: По сути в начале пытаемся захватить лочку в non-blocking моде (потому что AtomicBoolean), делая максимум maxSpins попыток и если нам это не удается -- ложимся спать, чтобы не тратить такты процессора.

Где использовать: в критических секциях, которые исполняются редко, а значит первые несколько спинов будут успешными и мы не пользуемся дорогостоящим (вроде как) syncronized.
image.jpg45 Кб, 650x483
807 1827692
>>827681
Предвижу пару десятков обучающих постов и несколько токсичных ответов на них.
image.png87 Кб, 226x223
808 1827720
киньте полезных ссылок с заданиями чтобы набить руку (шутки в сторону, господа)
теорию всю понял и шарю, но инога делаю дурацкие ошибки которые уйдут с практикой
дайте практики
рандомпик
809 1827723
>>827720
Задачки или проектик? В любом случае, см. ссылки в шапке.
810 1827867
Какой проект будет предпочтительнее - ecommerce или система бух учета?
811 1827874
>>827867
Имиджборда.
812 1827884
>>827874
Борда це не энтерпрайз.
813 1827887
>>827884
Схуяли нет?
814 1827891
>>827887
Ну вот так.
815 1827913
>>827874
Про борду нельзя рассказывать на собесе.
816 1827914
>>827913
Почему?
817 1827930
>>827914
Потому что херочка сделает вывод, что ты ебанутый ноулайфер, и не перезвонит. Можно форум или социалочку. Но не борду.
818 1827943
>>827930
Как же хочется херочку...
819 1827955
>>827943
Не хочется тебе, не выдумывай.
820 1827996
Вот параметризованные типы в дженериках стираются в рантайме. А через рефлексию можно определить параметризованные типы, вайлдкарды и тп. Как так?
821 1828003
>>827996
С чего ты взял, что можно?
image.png6 Кб, 380x76
822 1828022
Сука сори, что с ламерским вопросом
Но вот кароч у меня есть массив с чарами и мне нужно каждый чар написать н раз и хуйнуть это все в одну переменную
Хелпаните, в этом вашем джаве вообще крыша едет
823 1828024
>>828022

> strToArray[ i ]⚹n


Джава - не питон, здесь нет такого синтаксиса. Хуярь StringBuilder и вложенный цикл от 0 до n. Ну или местые streamapi-наркоманы что-нибудь подскажут.
image.png45 Кб, 820x326
824 1828120
>>828003
Вот так
825 1828127
>>827996
Ты немного путаешь, если у тебя параметризованный класс -- ты не можешь определить какой у него реально тип, если тебе просто дать его класс (то есть скажем List.class). У него действительно все стерто. Но если у тебя есть класс как в примере выше, у которого полем List<String>, то эта инфа есть в классе Test.class. Но опять - таки это относится не к List.class, а именно к Test.class.
826 1828156
>>828022
В 11 джаве есть str.repeat
827 1828166
>>802373 (OP)
Крч я заебался дайте какой нибудь годный курс/канал, желательно на русском, чтоб можно было фоном ставить, чтоб там пошагово создается спринг приложуха с полным стеком сопутствующих технологий с нуля на практике, чтоб вот прям показывал как оно делается и говорил на что обратить внимание, ибо книги уже доебали их блять читаешь -читаешь и через месяц все, хз шо там вообще было написано, ибо блять пока прочитал книгу/документацию по одной технологии, то за время чтения про другую нахуй забываешь я три месяца назад въебал книжечку про гит и был гуру гита, а ща опять гуглю примитивные команды я вот вообще хз нахуй гит нужен, если в одно рыло делать, а практика методом повторения за кем-то, вроде бы топ
828 1828216
>>802373 (OP)
Как и где найти и скачать Javafx для jdk15? Какой-то бесконечный пердолинг с этим
829 1828220
>>828216
Error: JavaFX runtime components are missing, and are required to run this application

Ещё и эту хуету выдаёт, когда код скомпилировать пытаюсь
830 1828248
>>828220
Гуглом тебе чмт пользоваться не позволяет?
https://openjfx.io
831 1828328
>>827681
чойта я не догнал, если у тебя получится сделать cas-операцию, то у тебя никакого действия не последует? Зачем такое нужно?
832 1828352
>>828248
Ну это мне нихуя не помогло, всё ещё хз что делать и куда ставить
IDE JCreator кстати, поставил бы с радостью другое, но оно слишком зависает
833 1828421
>>828022
public static String repeat(char[] chars, Integer n) {
return Stream.of(chars)
.flatMap(x-> Stream.iterate(x, y->y).limit(n))
.map(String::valueOf)
.collect(Collectors.joining());
}
834 1828456
>>828352
Двач, помоги программисту
835 1828475
>>828352

> но оно слишком зависает


Это толстый намёк, почему категорически нельзя писать гуй на джаве.
836 1828497
>>828475
На c++ проблем не было, просто подскажите что и как делать.
Если можно, закиньте на файлообменник содержимое папки lib или самые нужные javaFX файлы
837 1828545
День добрый, аноны.
Есть тут люди из Люксофта или собеседовавшиеся туда? Сколько там нахуй кругов ада из интервью надо пройти, чтобы устроиться? Прошёл первый, все ок. Прошёл второй, уже с техлидом проекта, все ок. А щас ещё третий какой-то проходить с ПМом и ещё каким-то директором проекта. Что за нахуй блять. Мне потом со всеми ребятами на проекте собес проходить?! Поясните хоть, что за третье собеседование, оно вводное или опять ебать будут вопросами?
838 1828553
>>828352
У тебя maven-проект? Если да, то просто добавь зависимость и все заработает
16024581699451.png2 Кб, 667x129
839 1828563
>>828553
А если нет? Я просто открыл IDE и написал код. Попытка скомпилировать, как видишь, привела к этому
840 1828566
>>828563
https://openjfx.io/openjfx-docs/#install-javafx
Слева есть инструкции для ИДЕ
841 1828581
>>828328

>если у тебя получится сделать cas-операцию, то у тебя никакого действия не последует? Зачем такое нужно?


Ну, смотри.
1. У лока есть флаг, если он true, то лок захвачен каким-то потоком. Соответственно, если false, то лок свободен.
2. Если флаг false, CAS-операция ставит его в true. Возвращает при этом true. Это значит, что мы только что захватили лок.
3. Если в флаге true, CAS не выполняется и возвращает false. Это значит, что лок уже захвачен => надо подождать. Для чего и выполняется while: это тупо цикл ожидания освобождения блокировки, ждём и проверяем. Когда лок освободится, CAS в очередной итерации его захватит и вернёт true.
4. Секция syncronized нужна, чтобы не грузить процессор бесконечным циклом. После достижения "таймаута" (максимального количества спинов) блокировка переходит на системный механизм wait/notify.
842 1828585
>>828352
Анон, а нахуя ты поставил самый последний jdk ? Ты в курсе, что большинство фреймворков еще не перешли на него и соответственно поддержка уровня коленки.
843 1828586
>>827681
Годный пост

>которое вам все равно не пригодится в работе


Ну хоть для собесов пригодится, лол.
844 1828593
>>828585
Не в курсе, думал, что чем новее, тем лучше. Что порекомендуешь поставить?
845 1828597
>>828593
LTS версии, в данный момент это 8 и 11. Можешь со спокойной душой ставить jdk 11 и быть уверенным, что не словишь никаких непредвиденных ошибок и у фреймворков будет фулл-супорт.
846 1828604
>>828597
Спасибо! Надеюсь поможет
847 1828612
>>828597
А теперь коронный вопрос... Где скачать 11-й JDK?!
849 1828631
>>828581
Ты посмотри внимательно в сниппет, там у тебя while два раза, это с толку сбивает
850 1828634
>>828581
ок, понял, зачем там второй while; на практике у mutex-а в линуксе, который вызывается synchronyzed-ом как раз такая логика - он сначала крутит спин чуть чуть, а если не выходит - засыпает.
851 1828689
Не пойму, на фронтенде jquery заменяет js или они в паре нужны?
852 1828691
>>828689
Мда.
Нет, jquery не нужен, нужны реакт и бутстрап.
853 1828695
>>828120
Ну тут все логично, хотя и не совсем.
854 1828700
>>828691
Почему jquery не нужен? А angular и vuejs нужны?
855 1828704
>>828634

>на практике у mutex-а в линуксе, который вызывается synchronyzed-ом как раз такая логика


Это правильно, чтобы не тратить ресурсы на дорогую остановку и запуск потока. Но все равно есть такой момент, что вызов системных функций дороже чем крутить спиннер внутри приложения
856 1828715
>>828700
Потому что фронтендеры решили поднять себе зарплаты и стать frontend developer-ами вместо просто верстальщиков, и хуякты с вуями этому больше способствуют, чем жквери.
857 1828723
>>828715
Очень интересно, конечно. Ну так че мне брать-то? Ангуляр для упрощения разработки на жс, а дальше? Чем мне реально будут полезны эти ваши бутстрапы, реакты, вью и тд?
858 1828728
>>828723
Ангуляр сложнее, бери реакт.
В SPA-фреймворках всякие фичи наподобие виртуального DOM и компонентного подхода. Но это всё для больших приложений, и если у тебя только пара страниц, то толку мало будет. В js-треде больше расскажут.
859 1828734
ПАШЛИ НАХУЙ ОТСЮДА ФРОНТЕНДЕРЫ
860 1828735
>>828734
СХУЯЛИ, РАЗВЕ ДЖАВА И ЖОПАСКРИПТ - ЭТО РАЗНЫЕ ЯЗЫКИ ф? ? ?
861 1828738
>>828728
В жс-треде страшно, лучше здесь поспрашиваю. Хорошо, с ангуляром и реактом понятно. Можешь в двух словах сказать, чем будет полезен бутстрап и жквери, или они так же заменяемы ангуляром?
862 1828742
>>828738
Да не, там весело. Заходишь и прямо чувствуешь своё интеллектуальное превосходство.
Бутстрап - это просто набор готовых стилей и анимаций, чтобы меньше писать css. Бутстрап под капотом местами тоже юзает жквери, и есть версия бутстрапа для реакта. Чистый жквери плох тем, что с ростом проекта код превращается в неподдержиаемую лапшу из коллбеков и прочей хуиты.

>>828734
Будем обсуждать js. Кто-то же обсуждает javafx, которая тоже в широком смысле фронтенд.
863 1828743
>>828742
Все, вроде разобрался, благодарю. До недавнего времени вообще даже html и css не знал, и вот пришло время вкатываться в это вот все.
864 1828760
>>828022
В лоб пробовал решать, разбивать на подзадачи?
Результирующий массив будет по длине = текущий n, значит
шаг 1: найти длину результирующего массива
int len = arr.length
n;
шаг 2: создать новый массив с этой вычисленной длиной
char[] arr2 = new char[len];
шаг 3: заполнить новый массив данными
цикл в цикле напишешь сам - внешний по arr, внутренний по n, индекс стандартный: кол-во полных блоков * длина блока + позиция в текущем непоном блоке
865 1828763
>>828760
Спойлеры не нужны.
866 1828765
>>828760
}{отя бы для программерской доски выключите разметку по звездочкам, каждый раз, сука, аж трясет.

>>828022
В лоб пробовал решать, разбивать на подзадачи?
Результирующий массив будет по длине = текущий x n, значит
шаг 1: найти длину результирующего массива
int len = arr.length x n;
шаг 2: создать новый массив с этой новой длиной
char[] arr2 = new char[len];
шаг 3: заполнить новый массив данными
цикл в цикле напишешь сам - внешний по arr, внутренний по n, индекс стандартный: кол-во полных блоков x длина блока + позиция в текущем неполном блоке
867 1828772
>>828742

>Да не, там весело. Заходишь и прямо чувствуешь своё интеллектуальное превосходство.


А я как-то раз зашел к ним и спросил где у ноды такой же менеджер как мавен, чтоб не в каждом проекте полная копия зависимостей, чтоб кешировались локально в папочки по подверсиям... Страшно вспомнинать что там началось, сколько говна выхватил. В итоге сам потом нашел pnpm, максимально похоже хотя все еще не совсем то.
868 1828777
>>828772
Вроде, и в обычном npm можно установить зависимости "глобально". Но у них так не принято, зато принято засорять каждый проект одним и тем же node_modules на полгигабайта и каждый раз качать всё заново. Ещё и удаляется по 10 минут, ведь аналог жарников они так и не изобрели и хранят свору js-файлов напрямую, а операции с отдельными файлами медленные.
869 1828817
>>825355
Более-менее похоже. Тоже акцент не на завалить, а на общение. Те же вопросы по основным принципам и кору. Впрочем, везде по-разному, где-то за гит могут спросить, где-то за мавен.
870 1828824
>>828777

>и в обычном npm можно установить зависимости "глобально"


Деталей не вспомню, но с этим вариантом что-то тоже не то. А pnpm максимально похож тем что с одной стороны, имеет единый репо, с другой стороны, делает в их принятом стиле - node_modules с ворохом файлов внутри в каждом проекте, но хак в том что это все легковесные хардлинки (поэтому репо должен быть на каждом винте где есть проект, но обычно это всего один винт).
IMG20201012235114.png53 Кб, 720x569
871 1828849
>>802373 (OP)
Я не совсем понимаю, что от меня хотят. Я должен на Java Spring сделать сервер обработки и лицевое приложение для аутентификации? Или что? Помогите, пожалуйста.
872 1828850
>>828849

>Я не совсем понимаю, что от меня хотят.


Переспроси блядь.
873 1828858
>>828850
Разумно, переспросил, но всё таки.
874 1828862
>>828849

> frame work


> on front


> need to have


> all is


Зачем ты к индусам собеседуешься? Но да ладно.
Юзер будет вместо браузера запускать гуёвое приложение на электроне, которое будет дёргать спринговую апишку. А RBAC - гугл подсказывает это: https://en.wikipedia.org/wiki/Role-based_access_control - то есть у каждого юзера есть список ролей (обычный юзер, админ, рид-онли юзер и прочее, в ВеснаБезопасность есть, к примеру. аннотация @Secured({список ролей}), которая вешается на контроллеры и не пускает юзеров без нужной роли).
875 1828877
>>828862
О, теперь понятнее стало. Спасибо!
876 1828900
>>828631
Бротишь, возьми да запусти без второго while-а, у тебя ассерт упадет
Попробуй додуматься сам, а я в спойлере поясю почему так произойдет:
Второй while нужен, потому что без него может произойти такая ситуация: Скажем поток A покрутился в цикле и не получив лочку пошел спать. Для этого он захватил монитор (this). Теперь представь что другой поток B, который держал лочку вызывает notify. Наш спящий поток A просыпается и тут шедулер ОС переключается на какой - то другой поток C. Теперь он сразу захватывает лок (compareAndSet вернет true сразу, потому что поток B установил его в false) и ОС поток С сразу выгружает. Теперь поток A просыпается и думает раз уж он проснулся -- значит он теперь держит лочку. В то же время поток C как только он проснется -- тоже будет так думать и тут начнутся все странности параллельных программ. Вот как - то так.
877 1828912
Продолжаем изучать concurrency. Сегодня рассмотрим классическую задачу: есть 2 (parent и child) потока, и один должен дождаться, пока другой поток выполнит некоторую работу. Заметьте, дождаться не завершения работы потока (для этого можно просто вызвать join()), а именно некоторого условия, на которое повляет другой поток, который вправе продолжить выполнение после.

Код: https://codeshare.io/5eB3Ax

Несмотря на простоту, есть несколько моментов, на которые стоит обратить внимание. Первое -- это лочка. Она в данном случае обязательна, так как защищает общую переменную done. Если бы ее не было, то был бы возможен такой баг:
1) parent запускается первым, проверяет флаг done, видит, что он false и прямо перед тем, как лечь спать -- ОС выгружает его и запускает child-а
2) child отрабатывает до самого конца, вызывает notify(), но будить некого, потому что parent был выгружен аккурат перед тем, как лечь спать
3) parent заснул навечно

С лочкой же такая ситуация не произойдет, так как после того, как ОС выгрузит parent-а перед тем, как он ляжет спать, child не сможет войти в критическую секцию и вызвать notify на пустом месте.

Второй момент -- это цикл while. В критических секциях всегда лучше перестраховаться и использовать именно while (это можно сказать идиома). Хотя этом простом примере на самом деле можно использовать if, в шедулерах ОС бывают такие штуки, как spurious wakeups. То есть когда поток ушел спать, его вроде как никто не будил, но ОС решила его разбудить. Хоть я прогнал тест много раз и мне так и не удалось этого наблюдать (возможно в жабе такого не бывает, хз)
878 1829096
>>828912
А почему не используешь специальные классы локов и кондишнов?
879 1829097
>>828912
и еще без лока у тебя бы не работал notify/wait
880 1829176
>>828900
Он прав, два вложенных спина сбивают с толку. Проще было сделать 2 последовательных - код читался бы намного легче.
Ну и в целом лок сделан некорректно, начиная с того что его может разлочить любой, а не только владелец и разлочить можно даже не залочив предварительно.
881 1829659
>>829096
Ну типо хотел на чистой джаве показать)

>>829097
Да, это такой дизайн у джавовских мониторов, защищающий от подобного рода багов. Но например в POSIX-овских кондишенах ничто не мешает тебе вызвать на нем signal (notify в терминах джавы), поэтому хотел на этом внимаение акцентировать

>>829176

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


Согласен, да)

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


Да, по-хорошему нужно еще сохранять айдишник треда в лочке и проверять, не подумал чет об этом
882 1829878
>>829659

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


Можно сам тред в AtomicReference.
883 1829989
Hbase клиенту обязательно передавать hbase.zookeeper.quorum тот же, что использует hbase-сервер? или можно указать другой ЗК кластер?
884 1830157
>>828545
Ты лучше у HR спроси, а не у случайного встречного
885 1830197
>>828545
Вопрос бесмысленный, т.к. отделы сами могут решать как им собеседовать людей. Но обычно с ПМ это последнее.
886 1830443
>>828545
Сап. Полуркай общую схему найма на сайте люкса. На деле сначала идёт технический скрининг, потом всё на усмотрение проекта: это может быть как одно "менеджерское" интервью (самый простой случай), так и несколько интервью, сначала со стороны проекта, потом на стороне заказчика. Короче, да, адок при желании могут устроить.

>Поясните хоть, что за третье собеседование, оно вводное или опять ебать будут вопросами?


Да не должны вроде. В конце концов, время тех. спецов дорогое и дефицитное.
887 1830566
Как в энвайронмент спринга добавить проперти сурс после создания определенного бина?
888 1830578
>>830566
Изменить архитектуру так, чтобы не нужно было этого делать.
889 1830579
>>830578
Схуяли бля?
890 1830588
>>830566
Постпроцессоры бинов.
891 1830612
>>830588
Че несешь ебанушка?
892 1830620
>>830588
Мне на полном серьёзе это пришло в голову, но не думаю, что ему реально это нужно.
893 1831117
Можете на пальцах пояснить что такое bean и autowired ? Я читаю, но не могу понять
894 1831126
>>831117
Бин - сущность, которую видит спринг.
"Эй весна, я сделал хуйню, смотри как она выглядит. Такие-то поля, такие-то параметры, вот так это надо собирать."
Автосвязывание - ты как бы говоришь весне, что где-то в области видимости есть бин, который можно использовать в качестве параметра.
"Эй весна, я сделал хуйню, но чтоб она работала, тебе надо подставить куда надо вот такие параметры. Найдёшь их по интерфейсу, названию, ну разберёшься короче."
Это делается, чтоб руками не собирать каждый раз объекты.
895 1831148
>>831117
Всё спринговое приложение представляет собой свалку объектов, которые взаимодействуют друг с другом. Свалка - это так называемые контекст приложения, а бины - объекты, которыми управляет контекст. У каждого бина могут быть зависимости, то есть другие бины, которые нужны этому бину. Ты даёшь спрингу конфигурацию, в которой написано, что кому нужно, а спринг после запуска сам разбирается, в каком порядке создавать бины, совать их в контекст и давать ссылки на бины другим бинам, эта идея называется dependency injection. Ну а через autowired в каком-то бине можно указать зависимость, и спринг сам его найдёт по типу или другим параметрам и проинициализирует ссылку.
896 1831223
>>831126
>>831148
Аноны, я так понимаю, что если нужных бинов не хватит, или будет неоднозначность (много классов на один бин), ошибка вылезет только в рантайме при инициализации контекста. Есть какие-то способы это определить заранее, на этапе компиляции, чтобы не соснуть хуйца при запуске?
897 1831227
>>830588
>>830612
Имеете в виду @PostConstruct обработчики? Чем плохо?
898 1831231
>>831223
Писать интеграционные тесты, они свалятся во время сборки. Они тоже поднимают спринговый контекст.
899 1831234
>>831227
См. интерфейс BeanPostProcessor. Плохого ничего нет, но нужно пиздец как редко, и если кажется, что возникла необходимость, нужно ещё раз подумать.
900 1831243
Почему вот здесь https://spring.io/guides/gs/accessing-data-mysql/ в пункте Create the Repository я перед public interface не пишу @Component? И потом в самом контроллере тоже не пишу @Component? Ведь и то и то это bean? Ведь если я потом пишу @Autowired я как бы хочу инжектнуть значение бина? Или я не правильоо все понял?
901 1831265
>>831243
Над контроллером не надо вешать @Component, потому что уже есть @Controller. @Controller, @Service и @Repository ведут себя как @Component.
@Component вешается на реализацию интерфейса, а не на сам интерфейс, поэтому перед public interface и нет аннотации.
Ну а реализацию репозитория не видно, Spring Data JPA под капотом генерирует её само.
902 1831266
>>831243
И ещё: тут один тролль писал, что репозиторий не будет работать, мол, не реализован интерфейс. Если придёт, не слушай его, это не так.
903 1831269
904 1831295
>>831231
>>831234
Спасибо, анончик
Penguins.jpg752 Кб, 1024x768
905 1831501
Анон, разжуй что тут написана для тупых.
for (int i = 0; i < arr.length ; i++) {
if (arr % 2 == 1)
}
906 1831503
>>831501
Тут сказано, что ты пидор.
907 1831506
>>831501
Пройтись по массиву, и если значение текущего элемента нечётное... ЧИТАТЬ ДАЛЕЕ >>>
image.png13 Кб, 554x261
908 1832552
Здравстуйте здравствуйте.

Понимаю что в жабу с такими приколами не лезут, но мне нужно получить объект ПО ССЫЛКЕ (в подчёркнутых местах) уже послали на identityHashCode но так как он не гарантирует уникальность (а объектов Tag ОЧЕНЬ много), то он идёт нахуй.
Но проблема таки осталась.
Нужно как-то получать ссылку на объект. Как это сделать то блять?
909 1832558
>>832552
нихуя не понял че ты хочешь блядь
910 1832561
>>832558
жабаист не может понять концепцию ссылок лол

Мне нужно присваивать переменной не копию объекта а сам объект.

По коду не видно что я пытаюсь добраться "гетами" до чего-то?
Получаем путь, разделяем его на кусочки, потом каждым кусочком пытаемся гетнуть другой тэг который лежит внутри начального тэга.
911 1832563
>>832561
ты че ебанушка совсем
иди читай про присвоение в джаве
912 1832573
>>832563
Прочитал тебе за щеку чепуха мелкобуквенная.
Уже решил задачу.
913 1832574
>>832573
обосрался обтекай
914 1832789
Пкатыш
Сап, поясните за JetBrains Runtime. Он для чего? Желательно ли его ставить с установкой Идеи?
915 1832790
>>832789
Что это?
0.jpg60 Кб, 510x398
916 1832821
917 1832822
>>832821
Я не ебу.
918 1832850
>>832789

>Сап, поясните за JetBrains Runtime. Он для чего? Желательно ли его ставить с установкой Идеи?


Программа для установки и обновления других приложений жидюрейнс.
919 1832872
>>832850
понял. спасибо.
920 1832917
>>832872
Стоп, я напиздел, перепутал с Toolbox App.

А JetBrains Runtime это просто сборка OpenJDK от жидбейнс https://confluence.jetbrains.com/display/JBR/JetBrains+Runtime
После того как оракл анально огородил свою ЖДК жидбрейнс пилят свою сборку вернее бел лабс им пилит. И предлагают тебе поставить версию этой ждк в качестве системной.
921 1832921
>>832789
хуй ты вкатишься, дебил, если ты даже гуглом пользоваться не умеешь
922 1833210
>>832917
т.е. я могу ее поставить и продавать софт образно говоря? И никаких лицензий не надо, типа Оракловских?
923 1833213
>>833210
Есть ещё AdoptOpenJDK и много других сборок с разными условиями использования. Но самые анальные у оракла.
мимо
4691177eb0ee627546ff9441f2e8da731d2549a859f0e01540eff6b3e16[...].jpg32 Кб, 625x475
924 1833220
>>833213
попробую поставить JB сборку, для начала. Посмотреть хоть.
925 1833241
>>802373 (OP)
С геймв дева ~5 лет коммерческого а то тут зп вообще маленькие и скилл не растет почти реально вкатиться в Java EE хотя бы на мидла, там писал на backend Java но без спринга
926 1833246
>>833241
фикс backend на Java
image.png21 Кб, 885x149
927 1833298
Жаваны, поясните! Залупа, обведенная красным, будет на каждый i выполняться? Я что-то туплю дико.
928 1833390
>>833298
Очевидно да.
gnfgnfn.PNG92 Кб, 1344x574
929 1833507
Че не так с этими компораторами? Нужно отсортировать по вхождениям, затем в лексикографическом порядке и 10 штук распечатать. На сортировке внутри энтрисета я слился.
hdeh.PNG36 Кб, 1147x175
930 1833532
>>833507
Нагуглил, но чета не понял почему параметры идут прямо перед именем метода.
931 1833545
Аноны, че думаете, есть смысл покупать?

https://praktikum.yandex.ru/algorithms
932 1833575
>>833545
Кормена купи себе, даун, если уж ты так хочешь потратить деньги.
Но вообще, если тебе нужна причина заниматься ("я же деньги потратил") или наставник, который бы тебя подгонял - то лучше даже не пытайся.
933 1833595
>>833575
Я другой нюфаня, но вот у меня не очень выходит заниматься только по книжкам. Без упражнений и чтобы их кто-то проверял очень многое непонятно. Как это преодолевать?
934 1833613
>>833595
Найди другое занятие, где не надо будет себя заставлять, чтобы учиться.

>Как это преодолевать


А дальше ты как это будешь ПРЕОДОЛЕВАТЬ? Превозмогатор, мамкин, силы воли доселе невиданной.
Или ты думаешь сидя в офисе писать такие же классы и методы будет дохуя интересней?
935 1833757
>>833613
Дибил, я не про преодолевание и не про интерес. Я про упражнения, задачи. Без них не ясны многие темы. А они если в учебниках и есть, то никто их не проверит, не написал ли ты говно.
936 1833768
>>833613
Хуле раскукареклся? Наличие ментора — охуенный бонус к качеству обучения. Круто, когда у тебя друх\родственник шарят и ты можешь спрашивать без лишнего оверхеда. Когда я учил жабу, с радостью бы платил чувачку за возможность показать ему код и пострашивать ответики.
937 1833825
>>833757

>никто их не проверит, не написал ли ты говно


Сам проверь. Особенно круто посмотреть какое говно ты писал спустя время. И попробовать написать нормально.
Но только тут снова, тебе самому должно быть это нужно.
>>833768

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


Вдумайся в то, что ты написал.
Где-то есть чувак, который явно знает больше тебя, притом для нормального результата он должен значительно превосходить твой уровень. И вот этот ментор будет сидеть и за спасибо читать твою хуйню, которую ты высрал без использования паттернов, без всякого кодстайла, просто, блядь, лаба1, стена кода на несколько страниц.
Зачем ему это?
Это твой тимлид, ему за это платят деньги, код ревью входит в его обязанности.
Но тебя то будет учить какая-то рандом-манька, которая сама то и не знает нихуя. Он и пошёл эти курсы для вкатышей вести, потому что в нормальное айти не смог.
938 1833890
>>833825

>Это твой тимлид


Ебобо, штоле? Чел только начинает вкатываться. А учитывая огромный объем жаба домейна, лучше иметь чувачка, который поможет не охуеть от всего этого. Круто, когда тебе легко дается, но многим нужно немного помощи. И круто, если у тебя есть кого доёбывть. Что я хочу сказать: если он хочет потратить деньги, то мать его ёб, пусть тратит.
939 1833899
Здравствуйте. Критически важно обновить либу в проекте, при этом в некоторых либах, откуда она подтягивается транзитивно, нужно держать старую версию (нет обр. совм.)
Как это можно сделать?
Слышал что-то про шейдинг зависимостей, но не могу что-то толковое нагуглить
940 1833913
>>833899
У тебя проект это сколько исполняемых модулей?
941 1833918
942 1833925
>>833918
Это диаметр диляды который тебе надо засунуть себе в жопу и тогда все получится!
943 1833926
>>833925
как же меня уже заебал этот таск
как же хочется кодить фичу а не вот это все, сука
944 1833937
>>833926
В общем: зависимости, шейдинг - это все хуета времени компиляции. В рантайме у тебя один классас где и лежат классы. Можно туда положить несколько разных версий, но загрузится один, если они не совместимы - то будут проблемы.
Единственный вариант - это кастомный класслоадер для библиотеки, у которого будут свои версии библиотек. Но это не так просто реализовать. Я бы сильно подумал, надо ли.
Ну или все перевести на OSGI - там все автоматом делается, но перевести все на OSGI это прям задача.
945 1833942
>>833937
как я понял когда шейдишь депенденси у тебя может быть два класса в класспасе - с разными FKN (пакет другой типа будет, как я понял)
а может я долбаеб.
946 1834395
мертвй тред мертвой хуйни
947 1834413
>>834395
Понятно.
948 1834474
>>833942
Да, в принципе такая штука есть https://maven.apache.org/plugins/maven-shade-plugin/examples/class-relocation.html
Понятно, что если там есть йоба логика по загрузке классов - типа из имени пакета и еще чего-то конструировать имя класса - то это работать не будет.
949 1834876
Какие прикольные штуки можно в джаве сделать?
950 1834885
>>834876
Stingray42, это ты? BigDecimal уже запилил?
951 1834888
>>834885
Нет. Я имею в виду что-то типа & в генериках, или возможность использования класс в for при реализации интерфейса Iterable.
952 1834906
>>834888
Можно глянуть доки по Apache Commons и Guava, вдруг появятся идеи. Но там, наверное, есть вообще всё, что только можно.

> & в генериках


Тут вряд ли можно придумать что-то лаконичнее, чем:
public interface C extends A, B { }
public <C> void myMethod(C c) { ... }

> класс в for при реализации интерфейса Iterable


Разве что Class.
var items = Arrays.asList(String.class, Integer.class);
for (var clazz : items) { ... }
image.png19 Кб, 444x269
953 1834926
вопрос от бестолочь-куна:

крч, у меня есть массив книг.

private ArrayList<Book> bookMassiv = new ArrayList<>();

заполняю его объектами книг:

public Book(String id, String title, String author, String summary) {
this.id = id;
this.title = title;
this.author = author;
this.summary = summary;

}

переопредлелил toString

@Override
public String toString(){
return ("id кинги: " + id + '\n' + "название: " + title+ '\n' + "автор: " + author+" " + '\n'+ "содержание: " +summary);
}
}

и потом хочу записать содержимое массива в файл

public void method() throws FileNotFoundException {
BookManager bm = new BookManager();
File file = new File("text.txt");
PrintWriter pw = new PrintWriter(file);
pw.println(bm.getBookMassiv());
pw.close();

ну параметры в метод подаю с клавы (пик релейтед)

но когда записываю в файл этот массив, то у меня записывается не содержание массива (как выводится в консоль), а просто две скобки квадратные: []

Поясните, плез
в чем я неправ?
image.png19 Кб, 444x269
953 1834926
вопрос от бестолочь-куна:

крч, у меня есть массив книг.

private ArrayList<Book> bookMassiv = new ArrayList<>();

заполняю его объектами книг:

public Book(String id, String title, String author, String summary) {
this.id = id;
this.title = title;
this.author = author;
this.summary = summary;

}

переопредлелил toString

@Override
public String toString(){
return ("id кинги: " + id + '\n' + "название: " + title+ '\n' + "автор: " + author+" " + '\n'+ "содержание: " +summary);
}
}

и потом хочу записать содержимое массива в файл

public void method() throws FileNotFoundException {
BookManager bm = new BookManager();
File file = new File("text.txt");
PrintWriter pw = new PrintWriter(file);
pw.println(bm.getBookMassiv());
pw.close();

ну параметры в метод подаю с клавы (пик релейтед)

но когда записываю в файл этот массив, то у меня записывается не содержание массива (как выводится в консоль), а просто две скобки квадратные: []

Поясните, плез
в чем я неправ?
954 1834928
>>834926

>BookManager bm = new BookManager();


а книги где
955 1834931
>>834928
ну есть класс Book (вон он выше)

есть класс BookManager

вводом с клавы заполняю книги:

BookManager bm = new BookManager();
TextManager tm = new TextManager();
System.out.println("Hello, user!");

System.out.println("pls, input book title");
Scanner scanner = new Scanner(System.in);
String d = scanner.nextLine();

System.out.println("pls, input book author");
String d1 = scanner.nextLine();

System.out.println("pls, input book summary");
String d2 = scanner.nextLine();

bm.addBook(d, d1, d2);
System.out.println(bm.getBookMassiv().toString());
956 1834932
>>834931
нету книг
957 1834935
>>834932
ты меня траллишь?
958 1834937
>>834935

>но когда записываю в файл этот массив, то у меня записывается не содержание массива (как выводится в консоль), а просто две скобки квадратные: []


полный текст своей хуйни скинь, по ошметкам гадать не получается
959 1834940
Spring в действии 2013 - говно мамонта spring 2.5? или для ознакомления норм и базовые вещи не поменялись?
960 1834944
>>834940
Говно мамонта.
961 1834952
>>834940
Очень сильно поменялись подходы, много что перепилено, что-то выпилено, что-то впилено, в общем, даже не открывай.
Понятно, что на русском читать приятнее, но ничего не поделать, раз более свежих переводов нету.
962 1834954
>>834952
а есть че на русском, чтоб быстро по основам пробежаться и начать что то делать?
а тонкости и best practice я уже на инглише бы осилил, тупо из документации
я просто на инглише ну оч медленно читаю, эффективней будет несколько других на русском прочитать
963 1834956
>>834954
Хабр.
964 1834962
>>834954
Чтобы в одном месте, актуально и качественное - не находил. Сам изучал по десяткам мурзилок и видосиков на ютабчике.
965 1834968
>>834926
ты не нового менеджера создавай, а инжекть того, в когорый ты книги добавлял. ну или синглетон мути
966 1834975
>>834962
>>834956
>>834952

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

крч чтоб было мол:
делаете хуйнянейм- используйте хуйнянейм2, для интеграции с хуйнянейм3 юзайте хуйнянейм4(она реализована на хуйнянейм5) либо технологию хуйнянейм6, но она морально устарела
и тд
если че, то я ебучие сервлеты знаю и связанную с ними древнюю хуйню- пролетел на курсах епама- ебучая корона
967 1834980
>>834975
letsCode на ютубе посмотри.
968 1834984
>>834975
На медиуме много такого.
969 1834992
>>834980

>на ютубе


а в бумажном виде мб что есть?
у меня аллергия на блохеров
>>834984

>медиуме


что это?
970 1835002
>>834992

> что это?


medium.com, международный аналог хабра, если так можно сказать.
971 1835009
>>834992
Всё бумажное, что я читал это ацкая хуита.
Спринг про 5 это размазывание соплей на 9000 страниц, притом в двух вариантах, конфигом и аннотациями.
Погляди пару роликов, есть на английском много, они там час, два бывают. Где делают обычный круд с пояснениями.
Потом почитай мурзилок, чтоб разжевали что не понял.
И уже потом во время работы будешь гуглить доку и смотреть что тебе надо.
972 1835020
>>834975

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


pro spring 5, chapter 16. 80 страниц
973 1835031
>>834968
мм
ну окай, попробую
спасибо
974 1835046
>>835002

>medium.com


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

>>835009

>Погляди пару роликов


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

>80 страниц


гляну джва дня читать буду
975 1835052
>>835046

> medium.com


Там мне в одно время показывалось сообщение, что у меня осталось N бесплатных статей в этом месяце, а дальше регистрация и подписка. Я просто открыл в приватной вкладке, и счётчик сбросился. Очень тупо.
Что поделать, раз уж большинство постит контент в первую очередь туда.
976 1835245
>>835046

>дай самый годный/ые видосы/каналы


Мне понравился letscode, я его выше упоминал.
На английском почему-то запомнился тот видос, записанный внезапно чернокожим. Там ровно за час он делает на спринге простейший круд, amigos code или как-то так.
977 1835625
>>834975

Попробуй книгу Professional Java for Web Applications by Nicholas S. Williams.
Не смотри на то что книга вышла в 2014 (как раз успели затронуть фичи 8 жавы), содержание там весьма современно и мало чем отличается от современных подходов в спринге. К тому же это чуть ли не единственная более менее современная книга с объяснением и примерами работы именно с обычным Spring (не Boot), ведь 99% современных гайдов что в сети, что в книгах пишутся под Spring Boot only, что весьма печально на самом деле.
Параллельно с книгой обязательно читай основную доку -> https://docs.spring.io/spring-framework/docs/current/spring-framework-reference/index.html (Core часть в ней вообще отлично написана) так как в самой книге многие моменты не раскрываются с нужной глубиной. Плюс сверху обязательно навернуть цикл лекций от Евгения Борисова:
Spring-построитель: https://www.youtube.com/watch?v=rd6wxPzXQvo
Spring-потрошитель: https://www.youtube.com/watch?v=BmBr5diz8WA
978 1835637
У вас есть группа целых чисел. Напишите метод, который находит два числа, складывающихся в заданное значение — и сразу выдайте эти числа. Верните два значения ‘null’, если ничего не найдено.
На размышление дается 30 секунд.
979 1835816
Дарова, хотел узнать тут, а для чего вообще ваша жава нужна получается? Вот ты дика заджавился и куда ты можешь пойти работать?
980 1835819
>>835637
Про свой ApplicationContext было интереснее.

Идти внешним и вложенным циклом по массиву (как в пузырьковой сортировке), сравнивать заданное значение с суммой arr[ i ] и arr[ j ], если равно, то сразу возвращать, после цикла, если ничего не нашли, возвращать null.
981 1835820
>>835816
В какой-нибудь банк, дорабатывать большую банковскую систему вместе с ещё 50 разрабами. Заниматься будешь одним таким проектом годами вместо принятого в пыхоплеяде "сдал проект и забыл".
982 1835821
>>835819
Большинство кандидатов сразу предполагают, что «группа» чисел находится в массиве. Вы можете успешно решить эту проблему, используя массив для хранения чисел. Скорее всего, это будет алгоритм квадратичной сложности O(n²), потому что для каждого значения вы будете перебирать остальные значения. Но существует более эффективный способ решить эту проблему за линейное время O(n), выбрав другую структуру данных.
983 1835836
>>835821
O(n) намекает на цикл + хеш-таблицу с хитрой хеш-функцией.
984 1835837
>>835821

> выбрав другую структуру данных


сет пойдет?
985 1835838
>>835836
>>835837
Так вы решение дайте, где сложность O(n), а не варианты перебирайте.
image.png17 Кб, 535x184
986 1835847
>>835838
Как-то так.
987 1835973
>>835821

>выбрав другую структуру данных


А типа построение хешсета это бесплатно?

А так конечно самый быстрый вариант это сортированный массив, асимптотика у него такая же как и у хеш таблицы, но чистый перформанс выше.
988 1836012
>>833532
Просто явное указание типов для generic-метода. Когда они не указаны, компилятор использует вывод типов.
989 1836298
>>835973
Пример с отсортированным массивом?
990 1836369
>>820599
а тут вариков не много.
Или ты просишь выше рынка с расчетом на то, что не придётся через год смотреть на лево, либо идёшь на зп по рынку для твоего опыта, а через пол года - год меняешь работу.
Вообще, до 4 лет опыта я бы пользовался второй схемой. Так ты и прокачаешься лучше и бабла больше сгребёшь, поскольку прибавки нормальные ты не будешь получать, пока на проекте не посидишь пару лет.
Вот и получается: уходишь, просишь выше рынка, опыт растёт. Проходит год, ты снова просишь выше рынка, снова уходишь. А вот после 5 лет опыта - садишься на проект(снова за больше рынка) и там уже увеличиваешь зп в рамках одной компании, не меняя мест.
991 1836371
Научился писать круды на спрингбуте, но не пытался писать на голых сервлетах, это нужно уметь? И насколько хорошо нужно знать кишки фреймворков джуну?
992 1836375
>>836371
да, нужно. И попробуй без бута обойтись. И без спринга. И без идеи.
993 1836379
>>836371
вообще, от джуна не ждут знания фреймворков.
Надо знать коллекции, equals, hashCode, sql
994 1836395
>>836371

> это нужно уметь?


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

> И насколько хорошо нужно знать кишки фреймворков джуну?


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

>>836379
Несколько раз уже слышал подобное мнение, не пойму, чем оно подкреплено. По факту от джуна всегда требуют знать минимальный стек со спрингами и хибернейтами.
995 1836417
>>836395

>не пойму, чем оно подкреплено


Зависит от ебанутости тимлида, проводящего собеседования, могут выебать как алгоритмическими задачами, так и тонкостями работы с фреймворками. В глазах собеседующего, нынешний кандидат в джуны это мидл с 5+ годами опыта, задрачивающий литкод в свободное время для удовольствия.
996 1836476
Всем привет. Поясните суть XML в программировании. Например я заметил, что можно парсить XML файлы и с помощью них подключать зависимости в Spring. Но на сколько надо вглубляться в XML для Java?
997 1836486
>>836476
А куда там углубляться? Xml и json просто способ представления данных.
998 1836489
>>836476
XML - это просто способ записи любых данных, структура, смысл и применение этих данных ничем не ограничены (как, например, в HTML), можно юзать как угодно. Разные технологии, будь до мавен или xml-конфиг для спринга, не имеют между собой ничего общего кроме того, что у них одинаковый способ записи данных.
999 1836500
>>836486
я тут нашел просто курс в интернете по использованию XML и XSD для тестировщиков. Там затрагиваются такие темы, как пространства имен, схемы, соответствие схемы, типы данных, элементы sequence, all, choice, enpoint, http и всё-всё-всё, похоже на ещё один язык программирования. Вот я и спрашивают про это углубленное изучение.
1000 1836508
>>836500
Если будешь пилить свой формат на основе XML, то придётся в это углубиться. А до этого от знания XML тебе хватит синтаксиса записи тегов, неймспейсов, ещё, возможно, чтение XSD.
1001 1836532
>>836395
подкреполено мнение опытом. Я сам часто собеседую от джунов до помидоров. Во всяком случае, именно этаких знаний я от джуна и жду. Первое, что надо - это сам язык и стандартная либа, как можно больше. Т.е. собес строится так: сперва спрашиваешь, что кондидат знает, а затем от его ответов копаешь в глубь. Ну и sql тоже обязателен, по крайней мере для нашей конторки. Без этого у нас даже не понятно, что вообще можно делать. Как только закончили с коркой - спрашиваю про фреймворки. И это уже мало важно, скорее даст преимущество перед другими.
А об хибер джун себе зубы сломает, если чуть глубже копнуть, чем "а что это вообще такое?" Аспекты и прочее из той же оперы.
1002 1836688
>>835838
Ок - за O(N) - в лоб вот что пришло сразу без подвохов - за один проход все в сет складываем - за второй проход каждый раз ищем есть ли в сете элемент равный SUM - current.
kjjkjkjk.PNG18 Кб, 394x358
1003 1836739
>>836489
Я другой ньюфаг.
Иду сейчас по Хорстманну. Тут 80 страниц по xml. Стоит читать? С моей скоростью это дней 5 просто, а в первом томе я уже по совету анонов полторы главы пропустил(по swing и javafx).
1004 1836742
>>836739
Ну и вопрос вдогонку.
Какие темы, кроме свинг/эфыкс стоит пропустить ньюфагу?
1005 1836750
>>836739
Там в основном про парсинг хмл. Нужно это не всем и не всегда, так что можно просто просмотреть, чтобы понимать, что к чему, и вернуться, когда будет нужна конкретика.

>>836742
Можно пропустить главы 8-12 и вернуться при необходимости.
1006 1836762
>>836750
Спасибо.
Значит с xml на андроиде эта глава никак не связана.
1007 1836777
>>836762
Про хмл на андроиде напишут в книжках про андроид, а здесь самый общий хмл, не зависящий от предметной области.
1008 1836783
сап, джавач.

вопрос от нуб-куна:

как реализовать поиск строки/строк в текстовом файле?
я должен сначала прочитать файл и записать его в какой-то массив, например, а потом там уже искать чет? или как?
1009 1836792
>>836783
Наивное решение именно такое: ты читаешь весь файл хоть в строку, а потом ищешь в нем то, что тебе надо, но этот вариант не будет оптимальным - тебе надо будет загружать в память весь файл. А если он 10ГБ?
Более правильное решение - читать поток из файла в некий буфер и искать подстроку там.
1010 1836797
>>836792

>читать поток из файла в некий буфер и искать подстроку там.


а как это выглядит в коде то?
1011 1836805
>>836797
Если ты уверен, что файл разбит на строки, а не одна гигантская строка, то можно так:
https://pastecode.io/s/EZLSCX8nQ8
Если все это может быть одной строкой - то там надо читать по кускую байтов, потом еще склеивать куски на границе, чтобы проверить кейс, что стока поиска между двумя кусками попала, влом сейчас это писать, гуглится легко же.
1012 1836812
>>836805
Спасибо. Извини за тупой вопрос. А зачем тут буфер нужен? Разве нельзя через поток ввода без буфера как то читать по строчке?
1013 1836823
>>836812
если читаешь по строчке - строка и будет твой буфер. Буфер гарантирует, что ты будешь занимать фиксированный размер памяти.
1014 1837242
>>836688
Это O(2n) палучаеца.
1015 1837249
>>837242

> O(2n)


Ой, сейчас опять начнётся...
изображение.png80 Кб, 258x195
1016 1837264
Как понять абстрактную фабрику? Я уже все видосики посмотрел и все книги прочитал все равно не могу понять...
1017 1837268
>>837264
Ты че тупой?

ConcreteProduct1 cp1 = AbstractFactory.createProduct(Type.CONCRETE_PRODUCT_1)
ConcreteProduct2 cp2 = AbstractFactory.createProduct(Type.CONCRETE_PRODUCT_2)
1018 1837269
>>837268
да, тупой ваще не вкуриваю
1019 1837270
>>837268
interface AbstractFactory {

<T extends Product> <T> createProduct(Type type);

}
1020 1837332
Есть вопросик про кафка коннект.
1021 1837346
>>837332
На этот вопрос тут вряд ли ответят, тут только джуны со спринговыми контроллерами, сеньоры, которые почти ничего не говорят, и немного вкатывальщиков.
1022 1837479
Нужно написать метод, позволяющий грузить файлы из интернета по url, и сделать это без сторонних фреймворков и средств java io/nio. У вас минута.
0BF91B1D-3275-4A50-A621-FB7991BC13B4.png311 Кб, 512x512
1023 1837510
Допустим я хочу написать форум на spring boot , или имаджборду, почему так мало таких проектов на спринге? Особенно форумов, все форумы пишут на вордпрессе, либо на php. Почему никто не пишет на спринге?
Че вообще бля пишут на спринге, кроме офисной залупы и банковской душнины логриование логирования логов дашборда.
1024 1837543
>>837510
Linux.org.ru
Бывает, что и пишут. Я в зелёном банке даже про лендинги-визитки на спринге слышал. Просто спринг, да и джава в целом - это про серьёзные крупные проекты, где пхп не хватает, и важна в первую очередь надёжность, а не скорость клепания фич.
1025 1837579
>>837543
Ну форум - не лендинг. Если имаджборду написать на спринге, то это нихуя не просто будет. Я не понимаю почему нет мейнстримных опенсорсных решений на спринге, типа гуглишь скачиваешь допиливаешь, для пхп и Джанго такого добра навалом, например, а как гуглишь какое нибудь тривиальное решение для спринга- нихуя нет.
1026 1837630
>>837479
Нужно съесть ведро борща вилкой. У тебя минута, сучара!
1027 1837634
>>837479
Что ж, решение на стаковерфлове действительно находится быстрее минуты.
https://stackoverflow.com/questions/4328711/read-url-to-string-in-few-lines-of-java-code
1028 1837665
>>837579
Всё под нда, опенсорсить это нахуй никому не надо.
1029 1837858
>>837579
Джава, несмотря на открытие исходников, сохранила дух проприетарщины. Сидят в корпорациях тысячи джавистов и спокойно юзают проприетарные либы, сервера приложений и прочий софт, и им вообще без разницы, какая там лицензия. Даже больше - отдаётся предпочтение скорее дорогим проприетарным технологиям с поддержкой, чем бесплатные аналоги от анонимусов, который воспринимается как васянство. Даже если у жабы снова закроют исходники, никто и не заметит. Да и сам факт того, что Java - официальная торговая марка, и чтобы сторонней реализации получить право зваться джавой, надо согласовать это с Ораклом (можно вспомнить драму с oracle vs google). Ну и какое развитие опенсорса может быть в атмосфере копирастии и кровавого энтерпрайза? Технические возможности для развития опенсорса есть (тот же apache commons и всякие жбоссы), но большинство анонов трижды думает перед тем, как начать пилить опенсорсный проект на джаве.
1030 1839012
Скинул jar-ник другу, он говорит, что без jdk не запускается. Почему так, можно исправить? Или у него руки кривые. Буилдил spring boot + maven.
1031 1839033
С почтатехом кто-нибудь сталкивался? Как у них там вообще. Вроде название модное, но ведь это госконтора. Скоро буду собеситься там
1032 1839039
>>839012
То есть запускается на JDK 8, но не запускается на JRE 8?
Где-то слышал, что такое бывает, что жарник не работает на голом jre, и ничего с этим не сделать, ставить jdk. А для более новых версий джавы разве что генерировать дистрибутив jre через jlink и распространять вместе с жарником.
1033 1839161
>>839012
в stdout что пишет?
1034 1839173
Можете посоветовать какие-то книги или ресурсы по изучению java ee? Ну или вообще какой-нибудь гайдлайн. Гонсалеса читал не осилил.
1035 1839257
Джавагоспода, нужна помощь в понимании как подключается библиотеки в джаве...

Я пытаюсь зашейдить зависимости с помощью https://imperceptiblethoughts.com/shadow/

на данный момент я просто его подключил в диррективах plugins и в supprojects/apply
задеплоил в локальную репу, подключил в тестовый проект - вижу что зависимости зашейдились как мне нужно. Но! Идея просто не видит их (пикрил2). Что странно, в дирректории для тестов эти же импорты работают (пикрил3)

Может кто нибудь подказать в какую сторону копать? я так понимаю нужно что-то донастроить в publishing, но что именно и как диагностировать проблему - без понятия
image.png47 Кб, 1437x434
1036 1839259
картинки перемешалисись, сори
1037 1839260
>>839257

>Gradle


Давай до свидания.
1038 1839262
Какой петпроджект написать на java/spring, чтобы было не стыдно показать на собеседовании и указать в резюме.
На ум приходили разные имиджборды и сайт типа пикабу, только с историями уровня /b про то как кто-то обосрался в универе на лекции. Еще интересна автоматизация osint'а, но тут нужно много времени имхо.

Как думаете такое зайдет или нет? Не посмотрят на меня как на наглухо ебанутого? Или лучше сделать что-то более нормисное, по типу торговой площадки?
1039 1839268
>>839262
Если будешь заполнять контентом что угодно, то посмотрят как на ебанутого. Ты же разрабом идёшь, а не контент-менеджером, лол. Достаточно сделать всё пустым с парой тестовых постов.
Да и редко действительно смотрят сайт, обычно достаточно рассказать про него самому. Изредка могут пролистать код.
1040 1839286
>>839260
если бы я пользовался только maven, чтобы ты посоветовал почитать на эту тему? я просто не знаю даже как гуглу нормально сформулировать свою проблему
1041 1839317
>>839257
UDP отбой, я обосрался в тестовом проекте, сам модуль test назвал.
Все куда ебанутее: зависимости не резолвятся в kotlin файлах, а в джава файлах резолвятся.
ну с такими проблемами мне не сюда, наверное сука
1042 1839388
>>839317
если кому интересно проблема была в каких-то криво смерженных файликах в META-INF папке, решил не шейдить все зависимости, а только пару штук реально нужных - проблема ушла
1043 1839786
>>839268

> Изредка могут пролистать код



Почти никогда. Собеседовать тебя будет обычный человек и у него есть дела поважнее чем смотреть на твои высеры в гитхабе.
1044 1839789
>>837264
бля спустя 3 дня вроде разобрался, пиздец ну и ебала
1045 1839799
>>839262

>Какой петпроджект написать на java/spring, чтобы было не стыдно показать на собеседовании и указать в резюме.


Это называется тестовое задание, которое тебе придётся сделать, чтоб пойти на собеседование.
1046 1839811
>>839799
Тестового задания может и не быть, могут сразу позвать на интервью, сталкивался с таким. Но про пета рассказать всё равно придётся.
1047 1839812
>>839262
Никакой, учи кор, основные концепции и алгоритмы, spring, rest, sql и ходи по собесам. На мой взгляд пет проект должен быть хороший, либо никакой, хуйню с курсов и копипасту видно сразу, а написать годный код ты скорее всего не сможешь все равно, ввиду отсутствия опыта
1048 1839815
>>839262
Если у чела пет проджект - круд на спринге, то чел - скучное говно без фантазии.
1049 1839826
>>839815
С фантазией это к гуманитариям, а программисты в большинстве своём без фантазии. Они пришли не рисовать красивые диаграммки и интерфейсы для заказчиков, а реализовывать. Даже код пишется максимально тупо и однообразно без всяких креативных выебонов, чтобы было легче поддерживать.
1050 1839919
>>802373 (OP)
В андроид-треде ссылки на диски (или раздачи) с уроками от ОТУС. Есть такие оп буту? Вроде как они ему учат за овердохуя.
1051 1839959
Блять какая же гредл сложная хуета, просто пиздец.
1052 1839960
>>839959
Не юзаешь мавен - значит ты пидор
1053 1840012
>>839173
А курс от оракла тебе не подойдет?
https://docs.oracle.com/javaee/7/index.html
Вообще, не знаю, что там учить - DI оно везед одинаковое, пользуюсь только референсом чтобы детали узнать. Spring Boot на мой взгляд куда адекватней сейчас учить, чем Java EE.
1054 1840058
Дошел значит на джавараше до 9 лвла, а там StackTrace и я нихуя не понимаю как это работает. Есть где то в сети разжеванное донельзя обьяснение как это все работает?
1055 1840111
>>840058

>на джавараше


здесь таких не любят
1056 1840192
А скоро перекат будет?
1057 1840203
>>840192
Надо перекатить, но некоторые тут перекатывать не хотят, пока тред не будет на последней странице.
1058 1840214
>>840203
А страницы же отменили, точнее у всех по умолчанию бесконечная лента
1059 1840218
>>840214
Можно считать страницей часть ленты, которая подгрузится последней.
1060 1840403
>>839812

>Никакой



А если я все же хочу что-то написать? Не обязательно же любой проект нести показывать работодателю.
1061 1840406
>>840403
Если у тебя есть время на подобные проекты, учи хоть JavaFX. Смотря какой проект хочешь.
1062 1840432
>>840406
Ну вот хочу имиджборду с нуля написать на spring, либо торговую площадку, что-то типа клона авито.
Правда не уверен, что моих сил во фронтенде хватит на то, чтобы сделать не супер вырвиглазно
1063 1840434
>>840432
Ты скучный пиздец.
1064 1840440
>>840434
Чому скучный?
Ну у меня была идея написать приложение для автоматизации osint'а, что-то уровня этого https://v1.postuf.com/projects
но не под мобилки, а просто в виде сайта. Правда не уверен, что получится хоть что-то рабочее за разумный промежуток времени.
24321.png44 Кб, 998x496
1065 1840452
Аноны, нужна ваша помощь. Требуется срочно сдать простенькую программку. Собственно, её я уже сделал (суть программы не существенна), но возникли проблемы с одним из ебучих условий. Требуется, чтобы прога запускалась в виде оконного приложения.В этой теме я полный 0 (да и в целом в джаве пока мало освоился, только с азами ооп разбираюсь). Но прогу доделать надо. Я что-то глянул на ютубе, сделал по видеоуроку простую форму с 2 кнопками. Теперь надо сделать так, чтобы при нажатии на кнопку (хотя бы на одну из них) поле с текстом "Какой-то скучный текст" менялось на другой текст. Как это сделать? Почти всё, что я нашёл, связано с заменой текста на самих кнопках, либо с изменением фона, либо с выводом ещё одного окна, где написан текст. И да, я понимаю, что сейчас меня погонят читать тонны литературы по курсу GUI, но у меня нет на это времени. Буду благодарен за развёрнутый ответ.
1066 1840454
>>840452
Почитай Java 8 in Action, Spring in Action 5, обдумай примеры, поэкспериментируй, четко знай sql, освой JPQL, Criteria API, Specification, REST API, spring boot web, integration, test, jpa-data, осознай JPA-связи @OneToOne, @ManyToOne и все, что с ними связано, SOLID и ACID принципы, Maven и Gradle (гредл современнее, а мавен - прошлый век).

По закону протекания абстракций, загнанные под капот сложные вещи однажды выстрелят, поэтому разбираться в низкоуровневых вещах необходимо. Абстракции типа Data JPA сокращают время разработки, но удлинняют время обучения, поскольку надо знать все, что они абстрагируют.
1067 1840457
>>840452
вместо закомменченного кода пишешь label.setText("другой скучный текст")
1068 1840461
>>840440
Он тут писал выше, ему скучные программисты не дают покоя: >>839815
1069 1840466
>>840457
Ёпта, что за магия?! Я ввёл именно так (ну, только другой текст в кавычках написал), именно с setText, и среда разработки послала меня нахуй. Подчернкула label красным, типа не знает, что это за хуйня такая. Ввёл сейчас код, написанный тобой, и всё заработало. Спасибо, анон, выручил.
1070 1840467
Я уверен, что из всех, кто пишет, что мавен - это прошлый век, и половина не сможет ответить, чем именно градл лучше.
1071 1840515
>>840467
Давно не работал плотно с мавеном. Подскажи, там уже завезли удобную работу с мультимодульными проектами?
1072 1840531
>>840461
>>839815

>Если у чела пет проджект - круд на спринге, то чел - скучное говно без фантазии



В целом соглашусь, но какие по вашему мнению нескучные проекты?
1073 1840535
>>840531
Байтоебство, геймдев, обработка графики.
1074 1840541
>>840535
Это не для джавы.
1075 1840542
>>840541
Вывод - джава язык для скучных опездалов.
1076 1840552
>>840515
Помник с <packaging>pom</packaging> и тег <modules> со списком модулей. А в градле что-то удобнее придумали?
1077 1840560
>>840542
Чем меньше вкатунов тем больше моя зарплата
1078 1840561
>>840560
Поэтому вкатунам надо советовать питон и js, но не джаву.
1079 1840579
>>840552

>Помник со списком модулей


Что нужно сделать, чтобы (пере)собрать модуль вместе с модулями, от которых он зависит?
1080 1840593
>>840579
Просто запустить mvn (clean) package в каталоге с модулем, другие модули тоже соберутся.
1081 1840749
>>840593
А ты не пиздишь?
1082 1840782
>>840749
Если нет никаких профилей то так оно и есть
1083 1840798
>>840749
А как ещё, вручную что ли каждый модуль собирать? Даже Ant умеет это делать автоматически, хоть и примитивно.
1084 1840811
>>840798

>А как ещё


Ну, например, с каким-то пердолингом вокруг отдельного понятия reactor build, который нужно запускать только на уровне родительского проекта, да еще с дополнительными ключами типа --also-make
https://maven.apache.org/guides/mini/guide-multiple-modules.html
Это уже не актуально все?
1085 1840822
>>840811
Наверное, нужно очень редко. В рабочем проекте, где 200+ модулей, не сталкивался с таким.
1086 1841131
>>840466
Я в таких случаях проверяю буквы, мало ли где кириллический символ закрался. С буквой с в начале слова часто такое бывает.
1087 1841143
>>840811
Там в самом первом предложении говорится, что это случай, когда у тебя project aggregartion, а не project inheritance.
В нормальном мавен-проекте есть корневой помник, и у каждог модуля есть свой помник. Естественно, рекурсивно все работает. Это де-факто стандарт работы с проектами в джава мире, думаешь там нет какой-то базовой вещи?
1088 1841179
Дали тестовое на java джуна круд spring boot + spring data + spring web с авторизацией и разграничением ролей spring security + фронтенд на бутстрап + jQuery с динамическими формами. Срок сказали назвать самому. Какой адекватный срок назвать?
1089 1841203
>>841143

>Там в самом первом предложении говорится, что это случай, когда у тебя project aggregartion, а не project inheritance.


Ага, только aggregation это и есть упомянутая стандартная схема с

>Помник с <packaging>pom</packaging> и тег <modules> со списком модулей


https://maven.apache.org/guides/introduction/introduction-to-the-pom.html#project-aggregation
1090 1841213
>>841179
Смотря несколько хорошо умеешь делать подобное. Когда я проходил на джуна, наверное, плюс-минус неделю бы возился, сейчас за несколько часов наклепаю.
1091 1841239
>>841179

>бутстрап + jQuery


Но почему?? Это самое частое решение для джавитов?
1092 1841243
Как скормить экзекутору n тасок, а затем дождаться выполнения их всех? Какой самый нормальный способ?
1093 1841245
>>841179
10000 лет.
1094 1841249
>>841203
Нет. Читай внимательнее, ебанушка.
1095 1841262
>>841243
invokeAll()
1096 1841268
>>841262
Там потом надо фьючерсы дергать. Можно без этого?
1097 1841281
>>841268
Не надо дергать, если результат не нужен. invokeAll внутри ждет и возвращает уже завершенные фьюечеры
1098 1841282
>>841249
Это ты не осилил по ссылке пройти или решил таким изящным способом слиться?
1099 1841283
>>841281
Чет нет, завершается, не дожидаясь.
1100 1841286
>>841282
Где-то видишь в помниках Project Aggregation теги <parent>? А в Project Inheritance они есть. Соси хуй, чмоша.
1101 1841289
>>841286
А, тот анон про parent не упоминал. Ну тогда он тоже чмоша.
1102 1841290
1103 1841298
>>841290
Да, видать с каким-то другим вариантом перепутал. Спасибо.
1104 1841303
>>841289
Т.е. короче

> <packaging>pom</packaging> и тег <modules>


не нужны, а нужен только

>parent


и вот тогда-то сборка модулей с зависимостями заработает как надо. Охуительная история.
1105 1841304
>>841303
Ты головой уебанный? Иди и читай доку.
1106 1841309
>>840822

> В рабочем проекте, где 200+ модулей, не сталкивался с таким.


Допустим, среди этих модулей если модуль A и есть модуль B, который зависит A. Ты внес изменения в код обоих A и B и хочешь собрать/запустить B, чтобы посмотреть, что получилось. Что конкретно нужно сделать? Достаточно "как обычно" выполнить package в B?
1107 1841336
>>841309
Нет, надо сначала сделать mvn install в A, иначе подтянет старый артефакт из репозитория. Но я так не делаю и запускаю mvn package из корня с packaging = pom, который сам пересоберёт изменившиеся модули в нужном порядке. Ты это к чему? В градле эта задача удобнее решается?
1108 1841338
Тред оживает, когда ругатья начинают.
1109 1841354
>>841336

>mvn package из корня с packaging = pom, который сам пересоберёт изменившиеся модули в нужном порядке


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

>Ты это к чему? В градле эта задача удобнее решается?


Именно к этому. В грейдле оно просто работает, интуитивно, так как ожидаешь. Запускаешь что-то в B, он видит, что есть изменения в A, сначала собирает A. Когда грейдл только набирал популярность, многие на него переходили в основном как раз ради удобных мультимодулей.
1110 1841365
>>841338
Тред живой, его многие мониторят, раз отвечают быстро, просто постов мало в последние несколько дней.

Я хотел услышать краткий список преимуществ градла, чтобы смотивироваться его учить, но вместо этого получился срач про модули в мавене. Это обескураживает. Гуглить я умею, но хотелось услышать конкретику вместо статей на хабрах и медиумах. Ну и хрен тогда с тредом, пусть тонет без дальнейших перекатов.
1111 1841370
>>841354
Понятно, спасибо.
1112 1841371
>>841338

>Тред оживает, когда ругатья начинают.


Тут обратная зависимость. Когда оживает, обязательно заодно всплывает и говно
1113 1841416
>>841365

> чтобы смотивироваться его учить


Причина одна - если он понадобится на проекте. Все. Для меня это так работает.
1114 1841450
>>841416
Для меня не работает. Если я однажды решу уйти на другой проект, а там совсем другой стек, то рискую потратить там слишком много времени на его изучение. Система сборки, конечно, не язык программирования, чтобы её долго учить, а сущая мелочь, но если таких мелочей будет много, времени уйдёт уже немало. Вот и тыкаю иногда альтернативные решения, чтобы однажды не остаться EE-диинозавром.
1115 1841514
>>839173
Вот это кури для начала. Годная хуйня:
https://scanlibs.com/java-ee-6-i-server-prilozheniy-glassfish-3/
1116 1841521
>>841514
Есть более новое издание, с ee 7 и glassfish 4, даже перевод можно найти бесплатно без смс. Читал, слишком обзорно, но для начала норм.
1117 1841526
>>841521
Есть, но там выкинуты нахуй сервлеты, JSP/JSTA, JAX-WS, что не очень хорошо для вкатывальщика. Поиграться с голыми сервлетами полезно, все надстройки станут гораздо понятнее.
1118 1841594
Если я усну и проснусь через сто лет, в этом треде будут обсуждать книги по EE 6, и надо ли сначала сервлеты
1119 1841605
>>841594
Но зато собирать будем четвёртым мавеном!
1120 1841608
>>841605
Поскорей бы. Конфиг в виде ямля, кастомные плагины с нормальным апи, вставки на груви...
1121 1841628
>>841608

> Конфиг в виде ямля


Уже сейчас можно, причём на удивление просто:
https://www.baeldung.com/maven-polyglot
1122 1841631
>>841628
Так это просто маппинг 1к1 на xml. А если взять за основу ямл, то можно кучу других плюшек получить.
1123 1841649
>>841631
// pom.kts
project("com.example:test:1.0.0:jar") {
println("Hello, polyglot-kotlin!")
}

Но интересного тут сделать можно мало, проще найти какой-нибудь gradle-maven-plugin или написать свой extension, позволяющий дёргать API мавена.
1124 1841763
Аноны, помогите.
Есть один металлургический завод, пилим для него проект с автоматизацией процессов, отображением информации и прочей хуйней. На дейли сказали учить Камунду, NiFi и ISA-95. С последним как раз и проблемы. Если верить википедии (https://ru.wikipedia.org/wiki/ISA-95) и некоторым внутренним документам, то это просто стандарт, каким хуем он нужен программистам в разработке - я хуй знает. В моем понимании этой хуйней занимаются как раз заказчики.
Есть еще какая-то вот такая хуйня – https://github.com/jpdillingham/B2MML4j

Мб кто-то тут сталкивался с этой шнягой? Как ее понимать и для чего она нужна мне, разработчику?
1125 1841813
>>841763
Почему ты решил спросить об этом в джава треде?
1126 1841820
>>841813
Пушто проект на Жабе и тут не раз на вопросы отвечали, а в другие треды я не захожу особо
1127 1841879
>>841763

> это просто стандарт, каким хуем он нужен программистам в разработке - я хуй знает. В моем понимании этой хуйней занимаются как раз заказчики.


Да.
1128 1841894
>>841763
Короче, вроде как что-то да понял. По сути это просто набор классов, представляющих собой разные структуры данных. Репа как раз содержит все эти структуры в виде Java классов, но в формате B2MML, который реализует этот самый ISA-95. Хз, мб кто-то тоже столкнется с этим, вдруг поможет
1129 1841937
Может кто-то поможет, нет, ну и ладно.

Есть класс сущности, тут две проблемы:
хибер не игнорирует проверку на null и выбрасывает LazyInitializationException

если использую org.springframework.transaction.annotation.Transactional не убирает LazyInitializationException could not initialize proxy - no Session(хотя то же самое у другой сущности работает), возможно из-за того, что у другую сущность я достаю в одном месте и в том же методе использую get, а эта попадает в другой метод и только потом я хочу получить roles.

context.xml
<bean id="transactionManager"
class="org.springframework.orm.jpa.JpaTransactionManager">
<property name="entityManagerFactory" ref="entityManagerFactory" />
</bean>

<bean id="persistenceExceptionTranslationPostProcessor" class=
"org.springframework.dao.annotation.PersistenceExceptionTranslationPostProcessor"/>
1130 1841988
Напомните, почему сейчас не принято пользоваться методом clone() ?
1131 1841999
>>841988
Нет гарантий, что копия глубокая + можно забыть переопределить при наследовании + приходится кастить Object.
1132 1842002
>>841937
Нормальных способов нет можно через всякие извраты, но в целом это антипатерн так делать. Меняй логику.
1133 1842005
>>842002
Спасибо, похоже, надо вылезать из хибера.
1134 1842114
>>841988
ганво мамонта не робит
1135 1842156
ПЕРЕКАТ >>1842154 (OP)
ПЕРЕКАТ >>1842154 (OP)
ПЕРЕКАТ >>1842154 (OP)
1136 1842377
>>841937

> LazyInitializationException could not initialize proxy - no Session



Ну это же классическая ошибка JPA. Просто добавь @Transactional на все методы и усё. Синьоры рекомендуют.
1137 1842507
>>842377

>Синьоры рекомендуют.


Синьорам, не помешало бы почитать тот адский код с getFreshDbRoles()
1138 1870231
Потратил пару месяцев на изучение С++, понял, что это не совсем моё. Подумал вкатиться в джаву, в том числе, для веб разработки. Целесообразно ли это? Слышал, что джава в целом проще и удобнее сишки. И да, я понимаю, что у языков немного разные цели. Учусь кодить для того, чтобы этим зарабатывать на жизнь.
1139 1871127
Ну наконец-то тред без аниме в шапке удалили. Сидим дальше тута.
1140 1871436
>>871127
Не удалили, историю почисти.
1141 1875445
>>871436
А вот теперь - удалили, зачем-то.
1142 1875642
>>875445
Нет.
1143 1888366
>>802373 (OP)
аноны, дайте годную задачку на выполнение. чтобы было интересно и глаза горели.
Вот сейчас я например делаю простую змейку. Чтобы еще такого эдакого интересного сделать?
1144 1888372
>>870231
если web чому не php выбрал?
1145 1901050
>>842377
Я мидл, и такому сеньёру я бы ебало набил, фактически транзакция бы перестала работать.
1146 1901054
>>841937
И вообще хибер говно, юзай jdbc template спринга. Или перепиши на JOIN FETCH при поддержке хибера.
1147 1901934
Сап, джависты. Посмотрел видео туториал по Java + Hybernate + Spring с созданием простого круда.

Блять, какой же джава ебучий пиздец. То что в ruby делается за два тыка в джаве надо описывать через ебучий пиздец. Ещё ко всему геттеры и сеттеры хуярить. Один пиздец. Какая же лажа. Почему вы на этом пишете?

Понимаю почему среди джавистов так популярны IDE типа интеледжа. Тут без IDE придётся так дохуя печатать что можно и ёбнуться.
1148 1925661
>>841594
анон, как тут твоей записи лайк поставить?
1149 1925664
>>901934
Попробуй на руби написать высоконагруженное api, с кучей потоков, и чтобы это работало быстро, тогда поймешь. В целом я с тобой полностью согласен то что уже есть языки с большой функциональностью и описать стандартную ситуацию можно в две строчки, но увы приходиться чем то жертвовать. Именно поэтому до сих пор много пишут на С++ и Java.
Тред утонул или удален.
Это копия, сохраненная 8 апреля 2021 года.

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

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