Этого треда уже нет.
Это копия, сохраненная 9 июня 2020 года.

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

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

Q: Поздно ли вкатываться в айти в 20/30/40/100 лет?
А: Вкатиться нелья, ты должен был родиться программистом.

https://github.com/random76/Java-Thread/wiki
https://github.com/qqqlll/Java-Thread/wiki
sage 2 1643492
>>643468 (OP)
Пидор!
3 1643572
>>643492

>Пидор!


Мог бы и не представляться
4 1643683
>>643468 (OP)
К чему эта книга на втором пике? Она не имеет к Java никакого отношения.
5 1643700
>>643683
Плюсую, оч странно
6 1643702
GUI на Java кому-то нужен? =)
7 1643707
>>643702
Так и быть, возьму
images.jfif9 Кб, 301x167
8 1643723
Не подскажете где найти Java FX? Скачал Java 14 JDK, там его нет, хотя на сайте Оракла говорится, что теперь JavaFX составная часть Java SE. У меня стоят Java 12 и Java 14, нигде JavaАЧ найти не смог. Смотрел в файле "modules". Пишу в блокноте.
9 1643725
>>643723
https://openjfx.io/
загуглил за тебя, не благодари
Безымянный.png83 Кб, 1257x724
10 1643731
>>643725

Да я то тоже гуглил. Иначе бы не писал потом сюда. Нет, бы по-человечески Ораклу написать что с Java 11 FX больше не поддерживается. Нет, блин, все чики поки идите и скачивайте, мы нигде вас не предупредим что нихера ничего нет и страничку и инфу не обновим. А я просто хочу пройти пару туториалов с их же сайта.

пикрелейтед
11 1643849
>>643731

Но зачем тебе, это устарело, тебе нужен жаваскрипт и реакт нейтив.

Или более точнее - тебе нужен вот тот челик челкан-фронтендер за 200к в месяц из соседнего отдела, пишешь тасочку и отдаешь ему.
12 1643897
>>643849

Я не хочу фронтендером. Я Java FX мне надо что создать оконное приложение для себя для определенных целей.
13 1643991
Че это за хуйня?
14 1643992
>>643731

> с Java 11 FX больше не поддерживается


Ты ебанутый?
15 1643996
>>643468 (OP)
Нахер опять эту книжку в оппик? Ее никто тут не читал и не обсуждал.
16 1643998
>>643468 (OP)
Если я должен родиться программистом, то поздно ли вкатываться в -30, -10, -5 лет?
17 1644000
>>643998
Возраст это unsigned переменная. Значит это сhar.
18 1644012
>>644000
Трипл, могу ли я вкатится?
мимо возврат каретки
19 1644030
>>644012
Смотря от какой ОС ты возврат каретки.
20 1644041
>>644030
Очевидно, TempleOS
21 1644049
>>644041
А на TampleOS GraalVM работает?
22 1644051
>>644049
На ней и обычной HotSpot нет. Это Питух ОС.
15550860128590.jpg36 Кб, 1280x720
23 1644054
Чем занимаются джава энтерпрайз программисты? Если тут есть мидлы/помилоры, просто расскажите, что вы делаете на работе и с чем работаете. Спасибо.
24 1644085
>>644054
Я думаю, что они больше планируют, обсуждают, читают, чем пишут.
25 1644097
>>644054
Удивительно, но я пишу код на джаве. С использованием типичных для энтерпрайза фреймворков типа того же спринга. Шокирующими откровениями и срывом покровов порадовать не могу.
26 1644098
>>644097
Так может это для тебя не откровения и не шокирующие, а для других будут. Расскажи... как ты дрочишь стоя на голове
28 1644106
>>644099

>yet


soon
29 1644109
>>644054
Пишу по пару методов за спринт, это примерно 8 часов в 10 дней. Остальное время сижу на митингах, ревьюю код, даю советы, тусуюсь на кухне, смотрю видосики.
30 1644111
>>644099
Вообще не убедительный доклад. То, что он это использует с бородатых годов, и что у него в браузере фх не тормозит, ну молодец, чо. Дальше что? Плюс его в конце парировали вопросом, что его приложение просто тестируется на только одной платформе, и он просто надеется, что оно так же будет работать на всех остальных, мобайле и в вебе.
Кроссплатформенный софт так и не взлетел со времен взлета джавы и ее апплетов (~1995)
Веб-морды на реакте это все-таки не кроссплатформа, у них одна платформа - 2 браузера, и желательно свежие версии. Поэтому у них меньше проблем.
31 1644112
>>644109

>за спринт


А это сколько? Так, примерно можешь почувствовать?
32 1644114
>>644112
upd
Не отвечайте мне, я зумер с клиповым мышлением, не читаю до конца перед ответом.
33 1644115
>>644112
10 дней, я же написал.
34 1644116
>>644115
14 ебан
35 1644117
>>644116
Что.
36 1644119
>>644116
Он про рабочие дни лолка
37 1644123
>>644111
Я там вообще не увидел попыток "продать" кому-то JavaFX/Swing. Скорее это рассказ про текушее положение дел. И я с ним согласен в том смысле что хайп вокруг технологии часто затмевает реальное положение дел.

Я знаю много inhouse разработок на Swing - просто потому что бек на Яве и Ява програмистам проще освоить Swing чем JS+Electron. Но эти разработки не распространяются за пределами компаний и потому о них никто не знает.
38 1644137
Квадрат от прямоугольника или наоборот?
39 1644138
>>644137
Следует соответствовать определениям предметной области, то есть геометрии.

>Квадрат — это прямоугольник, у которого все стороны равны.

40 1644139
>>643731
JavaFX легко подключается мавеном на любой версии, и не нужны никакие ждк, где он прибит гвоздями.
Я бы и свинг вынес в отдельную библиотеку, и JDBC, и коллекции, и конкаренси, и стримы. Чтобы ты сам с нуля собирал и конфигурировал единый организм только из нужных частей. Таков смысл священного мавена.
41 1644150
>>644137
Это что, тест на ньюфагов?
42 1644166
>>644137
Как показывает практика - оба от Шейп.
43 1644214
>>644139

>единый организм только из нужных частей


J I G S A W
I
G
S
A
W
44 1644215
>>644214
Х У Й Н Я
О
В
Н
О
45 1644236
>Мы работаем на:

CentOS 7.x;
СУБД PostgreSQL 10;
OpenJDK 11;
Scala 2.13;
Apache Tomcat 7;
ActiveMQ 5.11;
Spring 4.3;
поиск: Elasticsearch 6.x;
Nginx 1.14.

А как они сайт одновременно крутят из томката и нгинкса?
46 1644243
>>644236
Нгинкс обычно так и юзают - статику раздают самим нгинксом (он умеет это лучше), остальные запросы перенаправляют им же на томкат/апач/etc.
47 1644246
>>644236
Ты хотя бы убунту осилил поставить? Охуеваю немного от подобных. Что вы там учите?
48 1644259
>>644246
Охуеваю от таких выпадов. Что там ставить в убунте? "Далее" нажимать? Учу то, что требуют от джунов. Приложение на спринге разворачиваю из встроенного томката. Обычный веб-сервер мне не нужен был, встроенного томката хватало. Да и думал, что джаве хватает только App Server и то необязательно весь, обычные веб-сервера как апач для пхп не нужны.
49 1644271
>>644259

> Приложение на спринге разворачиваю из встроенного томката.


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

> думал, что джаве хватает только App Server


Нгинкс не даёт ничего такого, что можно было бы сделать без него, только перформанс.
50 1644323
Посоветуйте какой нибудь хардкорный курс по джаве, пока в локдауне сидим, можно за $$$, на удеми или курсере, только не для новичков.
51 1644325
>>644259

>Что там ставить


>джаве хватает только App Server


>обычные веб-сервера не нужны.



>Учу то, что требуют от джунов


Охуенно авторитетное мнение
52 1644328
>>644054
Энтерпрайз - 95%+ Software Engineering
Ты должен в идеальное знание языка, полное понимание SOLID, экстенсивные знания в системах и архитектурах, понимание CI/CD, осведомленность о подходах продукт менеджмента
53 1644402
>>644328
Еще нужно уметь пользоваться джирой, очень важный навык, часто на собесах спрашивают
54 1644472
>>644402
Что-то я не понял, чего там учить? Я сейчас открыл, просто какой-то сильно модифицированный TODO-list для управления проектом.
Нужно как шизик самому себе задачи назначать и выполнять? Или я в глаза долблюсь и какого-то функционала не вижу?
И интеграция с гитхабом что-то не работает. install Jira сделал, даже дал доступ ко всем репам, но все равно не заработало.
55 1644485
>>644472

>Что-то я не понял, чего там учить?


Ничего не надо там учить, конечно. Но вон тот булшит о "подходах продукт менеджмента" напомнил, что среди нанимателей встречаются долбоящеры, которые реально любят упоминать даже джиру.
56 1644496
>>644123
я просто охуел с того какой говнокод пишут на javaFX
57 1644497
>>644496
Какой?
58 1644502
>>644485
Они не просто "встречаются", их в принципе дохуя. Можно открыть hh, вбить в поиске "jira" и увидеть овер 2к вакансий.
59 1644503
>>644502

>Можно открыть hh, вбить в поиске "jira" и увидеть овер 2к вакансий.


И сколько из них будет вакансий разраба, а сколько менеджера?
60 1644579
>>644085
>>644097
>>644109
>>644328
Аноны, я примерно знаю, что делают разрабы на работе и как примерно копроративный процесс налажен сам немного стажировался на дотнет + жс CRM
Мне интересно конкретика, вот над какими, к примеру, конкретными задачами вы работаете в течении рабочего дня. Какие технологии используете. Например, хуярите там данные какие-то из базы, потом их в XMLину заправляете, а затем оно должно за н-ое количество миллисекунд улететь в какой-то модуль говна чего-то. Продумываете какие-то модули архитектуры взаимодействия сервисов, или это может только синьоры-архитекторы делают раз в месяц. Просто хотелось бы какой-то конкретики, потому что у меня только какое-то сильно абстрактное и отдаленное представление об этом.

>>644472
В жире, вроде, только аналитики, тимлиды и прожект-менеджеры что-то серьезное делают, ты просто хуяришь там таски и пишешь микроотчеты, с пометками пакетов в SVN/git. Хотя мб подход везде сильно разный.
61 1644583
Вот, я, допустим, представляю, что делает мобильный разраб. Типичная таска, например, пофиксить отображение какого-то выпадающего списка, переделать верстку какой-нибудь хуйни, жизненные циклы этих экранов/контроллеров, переделать логику нетворкинга. Как бы у всех есть смарты, и это попроще представить. А что конкретно делают на бэке - я хуй представляю. Я лично только какое-то говно прокси-классом доставал в бизнес-логику хуйни с 100500 слоями абстракций, которую я вообще не понимал с хуевыми знаниями ООП, на тот момент
62 1644587
https://habr.com/ru/post/494552/
А вы тоже с радостью вышли поработать на следующей неделе, потому что дядям с бизнес задачами нужны деньги?
63 1644608
>>644579
Из последнего есть система в которую приходят транзакции их другой системы, она их обрабатывает и отправляет в другие системы.
Надо было добавить способ на основе данных во входящей транзакции присвоить ей некий тип выходной системы. Ну и сделать так чтобы правила классификации можно было менять в процессе работы.

в общем очень увлекательно
64 1644657
>>644608

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


Охуенно описал, подходит для любого энтерпрайз бэкэнда
65 1644660
>>644657
Так и есть, это типичный энтерпрайз бекенд из палаты мер и весов.
66 1644692
Ты хочешь, чтобы все тут забили на NDA и разгласили служебную инфу о внутренней кухне что ли??? Даже если такие найдутся, придётся вникать в предметную область, и без этого хуй ты что поймёшь.
67 1644702
Объясните, пожалуйста, каким образом здесь может произойти блокировка: https://pastebin.com/AraAMRY6

Вот что говорит автор:

>Хотя ни один метод явно не захватывает две блокировки, объекты, вызывающие методы setLocation и getImage могут всё же попытаться захватить две одинаковые блокировки. Если поток вызывает метод setLocation в ответ на обновление, пришедшее от приемника GPS, он сначала обновляет местоположение такси, а затем проверяет, достигло ли оно места назначения. Если это так, он сообщает диспетчеру, что ему нужен новый пункт назначения. Так как оба метода - setLocation и notifyAvailable – объявлены как synchronized, поток, вызывающий метод setLocation, захватывает блокировку экземпляра Taxi и затем блокировку экземпляра Dispatcher. Аналогично, поток, вызывающий метод getImage, захватывает блокировку экземпляра Dispatcher, а затем блокировку на каждом экземпляре Taxi (по одному). Две блокировки будут захвачены двумя потоками в различном порядке, что приводит к риску возникновения взаимоблокировки.



Но я все равно не понимаю, ну захватил поток метод setLocation(), потом захватил блокировку Такси, ну и что? setLocation() всего лишь вызывает жалкий методик из Диспетчера, который добавляет данное такси в коллекцию, и все. Что может пойти не по плану?
68 1644704
>>644702
Потом захватил блокировку Диспетчера, фикс.
69 1644732
>>644692
Просили же рассказать что делаешь на работе, а не для чего. Как архитектура согласовывается, строго по заданиям от умных дядь или ты пилишь интерфейсы, классы и паттерны, какие в голову придут? Сколько в среднем строк в методе? Есть ли демократия в выборе библиотек или заставляют писать на чем дают? И т.д.
70 1644739
>>644702
Описание не читал, многа букаф. Код почитал. Смысл в том что нельзя захватывать два лока в разной последовательности, а тут происходит именно это:
1) setLocation (лок taxi), dispatcher.notifyAvailable (лок dispatcher)
2) getImage (лок dispatcher), t.getLocation (лок taxi)
Если нужно захватывать два лока, то все ветки исполнения должны делать это в одном порядке.
71 1644742
>>644732
Ну так составь конкретный список вопросов наподобие этих, а не "расскажите плез чё-нить, ой нет, меня этот ответ не устраивает".
72 1644743
Что делать, когда более менее изучен Джавакор, чтобы устроиться джуном энтерпрайзером? Учить ЕЕ и Спринг, это понятно. Но как систематизированно подойти к дальнейшему процессу обучения, на чем практиковаться? Может видео, книжек посоветуете?
73 1644746
>>644739
Ах, вот оно что. А я думал, каждый поток будет спокойно брать свое, а потом отдавать блокировки, ведь в самих методах ничего блокирующего не происходит. Спасибо.
74 1644760
>>644732
Ну ок, у меня сейчас так:

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


>Есть ли демократия в выборе библиотек


Сам уже достаточно умный дядя (сеньор), архитекторов надо мной нет. Демократия ограничена только здравым смыслом и устоявшейся инфраструктурой. Грубо говоря, сменить завтра СУБД по велению левой пятки нам не дадут, а вот выкорчевать спринг, возникни вдруг у меня такое желание, я бы мог.
75 1644761
>>644743

>более менее изучен Джавакор


Пройди тест и скрин сюда.

http://www.quizful.net/test/java_se_basic
76 1644810
>>644761
охуительные вопросы о том, что выведет код, за который бьют в ебало
77 1644821
>>644810
Так ты должен понять, что он делает, чтобы отрефакторить это говно.
78 1644826
>>644821
я буду на бумажке рефакторить или в уме?
79 1644838
>>644826
Нет, ты будешь поднимать приложение на каждый метод.
80 1644842
>>644838
про жюнит слыхал?
81 1644843
>>644842
Не нужно.
82 1644860
>>644842
Лучше тестнг.
83 1644863
>>644860
Лучше jshell
84 1644868
>>644863
>>644860
>>644842
Зачем это все когда есть метод мейн?
85 1644874
>>644868
Я не помню уже как его писать.
86 1644882
>>644874
psvm дальше иде подскажет
87 1644892
>>644137
кот от шерсти или наоборот?
88 1644897
>>644892
Шерсть это интерфейс
89 1644901
>>644897
и собака и кошка имеют шерсть. Следовательно шерсть - общий предок
90 1644904
>>644901
Я имею твою мать, но она не мой предок.
91 1644940
>>644901

>имеют


>предок

92 1644945
>>644897
это миксин
drgrande.jpg109 Кб, 682x714
93 1645037
Анчоусы, как самостоятельно разобраца в джаве и не искать в интернете код всяких индусов?

надо сделать прогу, которая по айди запрашивает в БД и печатает на сетевом принтере. в нете нашёл несоклько примеров этого, только один сработал(другие просто выкидывают что принт фэилд или вообще ничего). оказалось что рабочий пример генерит только картинку и печатает её, оказываеца есть ДокПринтДжоб и ПринтДжоб и они принимают вроде бы разные типы, а те типы ещё другие типы. И в общем пойдёшь по этом типам и хуй чё поймёшь, и с чего начинать не поймёшь.

Кароче, как разобраца с javax.print?
94 1645046
Посоветуйте проект.
95 1645051
>>645046
Мувисёрчер.
96 1645055
>>645046
тудулист
97 1645057
>>645055
клон джиры
98 1645065
>>645051
>>645055
А есть что-то такое интересное, что дало бы мне вдохновение?
99 1645074
>>645065
игруха но только рогалик с текстом или спрайтами, а иначе ты забудешь что собрался изучать жаву
100 1645075
>>645074
Веб приложение нужно.
101 1645077
>>645075
Пиши ммо рогалик
102 1645078
>>645075
клон шопифая, как раз разбогатеешь раз все бизнесы в онлайн переходят
103 1645079
>>645077
>>645078
Вот же пидоры.
image.png208 Кб, 530x695
104 1645080
>>645037
Так и что, код изменять пробовал, пробовал понять что в "нерабочих" примерах идет не так и почему выкидывает print failed?
105 1645081
>>645080
Пробовал, не понял.
106 1645082
>>645081
Ну давай с этого места и начнем. Кидай код, и кидай ошибку какую выдает. Строку там, сообщения, что есть.
107 1645094
>>644323
hexlet.io
108 1645183
>>645046
Централизованое хранилище схем документов.
109 1645227
>>644054
Мимо мидл бекенд, 70% скучные задачи по типу настрой какой нить новый рест апи, или какая нибудь бизнесс логика слава богу сбежал с энтерпрайз поддержки, там 100% это скучные задачи, 25% веселые задачи по типу написание оптимизированного кода, либо изобрести какой нибудь хитрый алгоритм и 5% практически нерешаемая фигня которую ты пишешь 5 недель а по итогу она уже нахер никому не нужна, либо ты уже сам не понимаешь как этот говнокод работает
110 1645318
В джава треде нет ключевого слова - котлин. Не порядок.
111 1645371
>>645183
Нихуя ты выдал. Наверняка убийца, или маньяк какой-нибудь, да? В любом случае, опасен для общества это точно.
112 1645439
>>645371
Проиграл
113 1645481
Есть задача: взять большой XML, выделить из него ровно один элемент и произвести над этим элементом манипуляцию. Манипуляция довольно сложная, и легче реализовать ее при помощи XSLT. Но XSLT предполагает, что вход будет в виде DOM, а держать в памяти всё дерево XML наверное будет не разумно.

Будет ли хорошей практикой выделить этот элемент при помощи легковесного SAX, чтобы потом только для него построить DOM и отправить в XSLT?
114 1645492
>>645481
Я бы выделил нужный кусок с помощью StAX или SAX и перегнал его в pojo, с xslt бы не связывался.
115 1645516
>>645094
Все платное по жабе, они охуели
116 1645524
>>645516
Даже Durgasoft платный.
117 1645536
>>644323
Взял етот курс пока что, только первое впечатление что я никогда не буду это использовать ведь я крудошлеп
https://www.coursera.org/specializations/pcdp
118 1645537
>>645481

>Но XSLT предполагает, что вход будет в виде DOM, а держать в памяти всё дерево XML наверное будет не разумно.


Вовсе нет, вполне возможно использовать StreamSource или SAXSource.
А потом transformer.transform(streamSource, outputTarget)
119 1645571
>>645371
Не понял.
120 1645578
Часто ли вы в работе/своих проектах сталкиваетесь с многопоточностью?
121 1645605
>>645578
Спрашиваю потому, что когда нечего делать, смотрю видосы как делают сайты на ютубе всякими веб технологиями и, по-моему, ни разу не видел, чтобы кто-то воспользовался concurrent пакетом или синхронайздом. Почему так?
122 1645606
>>645578
Только когда нужно найти, где проебалась блокировка записи в таблице, и две одновременные транзакции что-то поломали.
123 1645610
>>645578
Часто, но в основном на уровне засунуть что-то в ExecutorService, собрать через CompletableFuture результат. Ничего космического.
124 1645613
>>645606
>>645610
А обеспечение потокобезопасности входит в магию веб фреймворков?
125 1645615
Что написать для диплома?
126 1645619
>>645615
Игру на libgdx
А что, только сейчас дипломы начинают делать?
127 1645620
>>645615
Плагин для майкрафта.
128 1645622
>>645613

> веб


Ха.

Средства для этого есть, да.
129 1645624
>>645622
Штудировать весь java.util.concurrent необязательно?
130 1645626
>>645624
Для какой цели?
131 1645629
>>645626
Чтобы стать мастером параллелизма, как Брайн Гетц и не изобретать свои велосипеды.
132 1645630
>>645624
Нет. Но в общих чертах знать не помешает.
133 1645632
>>645629
Можно стать мастером однопотока, как создатель питончика, он тоже крутой чувак.
134 1645633
>>645629
Портреты Brian Goetz и Mark Reinhold должны висеть у каждого джависта в кубикле!
135 1645646
>>645633
И Cay Horstmann еще.
И икона James Gosling.
136 1645649
>>645646
Икону Джошуа Блоха на шею.
137 1645674
>>645633

>кубикле


недостижимая роскошь.
Стуло-место в опенспейсе
138 1645682
Слушайте, а нормально ли не уметь складывать двузначные числа? Ну, в смысле, тупить секунд 5-10. Такое ощущение, что пока неплохо учу джаву, тупею во всем остальном неистово.
139 1645684
>>645682
Надо так делать - прочел один параграф, прорешал задачки, затем отдохнул немного и прорешал 5 интегралов.
140 1645686
>>645682

>тупить секунд 5-10


Ну так jit же
141 1645688
>>645684

>прорешал 5 интегралов


Вот это тема, но у нас уже начали диффуры спрашивать
142 1645695
>>645684

>5 интегралов


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

>>645686
Не понял.
143 1645703
>>645686
Может ты имел в виду gc?
144 1645720
>>645695

>Да мне бы хоть одну дробь решить


Реши вот эту 1/3
145 1645733
>>645720
0.3000000000000000000000004
146 1645747
>>645733
Хуя ты дебс, твой ответ ни для интовой, ни для плавучей арифметики не является верным. Тебе бы математику класс так за шестой подучить.
147 1645751
>>645733
Пиздец, блядь
image.png6 Кб, 403x66
148 1645758
>>644761
Я другой анон, прочитал Шилда и Блоха, тоже собрался изучать спринг уже, думал кор хорошо знаю, а оказалось пикрил. Даже не знаю что делать теперь.
Тест хороший, затрагивает много тонкостей языка, разбор правильных решений было интересно почитать, много нового узнал.
149 1645761
>>645747
>>645751
Повелись на толстоту.
150 1645762
>>645758

>жаба кор


>тонкости


Лол кек, жабий кор простой, как полено.
151 1645764
>>645762
будет ли ошибка ?
new StringBuilder(10+10)
152 1645766
>>645762
Все равно есть вещи, которые надо помнить. О которых компилятор ничего не скажет.
Например string pool, Кэш целочисленных wrapper классов и Boolean.
153 1645768
>>645766

>Например string pool, Кэш целочисленных wrapper классов и Boolean


А что с ними не так?
154 1645770
>>645761

> СМАТРИТЕ КАКОЙ Я ДОЛБОЁБ


> Ты долбоёб.


> АЗАЗАЗ ЗАТРАЛЕЛ ЛАЛОК))0

155 1645772
>>645766
Ну так в каком месте это тонкости? Это базовая хуйня, которая в любой хорошей книжке должна быть написана английским по белому.
156 1645773
>>645720
>>645747
>>645751
>>645761
>>645770
Это не я, если что. 1/3 это слишком уж легко.
157 1645776
>>645773
Они повелись на мой троллинг.
158 1645778
>>645772
В книжке по 1.0.2 джаве этого не было. Эта хуйня потом чтоли появаилась?
159 1645780
>>645778
Может, книжка хуевая была просто? И зачем ты читаешь одеревеневшее говно мамонта?
160 1645782
>>645780
Я уже прочитал, она всего 250 страниц была, и то я все deprecated пропускал. А IntegerCache в 1.5 появился.
Просто в джаве так много старых классов и хотелось узнать, что чему и когда пришло на замену.
161 1645789
>>645782

> 1.0.2


> 250 страниц


Гослинг, да?
162 1645790
>>645789
Как ты угадал?
163 1645791
>>645790
Я волшебник.
164 1645794
>>645791
30 лет чтоли уже?
165 1645809
Выдало в каком-то тесте такую хуйню, что выведет код:

class Super {
static void hueta(String x) {
System.out.println("Super: " +x);
}
}

class Subclass extends Super {
void hueta(String x) {
System.out.println("Subclass: " + x)
}
}

Super x = new Subclass();
x.hueta(3);

Вот нахуя такое спрашивать? Откуда я знаю что это выведет, какой долбаеб будет такое писать?
166 1645825
>>645809
Это вроде перекрытие метода. Нужно, потому что static нельзя оверрайднуть.
167 1645828
Куда с джавы соскочить..
168 1645834
>>645828
Смотря что именно в джаве не устраивает. Может ты памятью хочешь сам упралять.
169 1645838
>>645764
С чего? Размер внутреннего буфера в чарах так задаем.
170 1645851
>>645809
Заебись код. Минимум 3 ошибки (семиколон, инта в аргументе, перекрытие), не учитывая модификаторы доступа, т.к. непонятно где будет psvm. "Обожаю" такие задачи. Кстати, если кому интересно: на тестах OCA/OCP вопросов с ответом "не компилится" очень мало, по ощущениям около 5-10 вопросов из 80, т.е. там так не нужно ломать глаза и представлять себя компилятором, выискивая лишние закрывающие скобки и прочую синтаксическую чухню. Да и те вопросы про компиляцию что есть они обычно "высокоуровневые", типа скастится ли stream.mapToInt() в LongStream. Лично я был удивлен этому обстоятельству, потому что подготовительная книжка долбила вопросами на внимательность синтаксиса процентов 50% времени. Основные вопросы про "что выведет код" без варианта о компайл эррор, но местами с эксепшенами.
171 1645859
>>645851
Какой процент джавистов вообще сдает ОСА(Р) ? Так ли это важно?
172 1645865
>>645859
У меня нет статистики. Часто вижу что компании предлагают своим сотрудникам сдавать за счет компании, как повышение квалификации. Но я для себя сдавал, на свои кровные. Типа челлендж на знание sdk и умение быстро соображать - в среднем по 1,5 минуте на вопрос, а там нередко пара одностраничных классов прилагается к прочтению; спойлер: читать их обычно детально не требуется для ответа на вопрос, тут нужно быстро-быстро уловить суть и найти что спрашивают.
173 1645875
>>645859
Если ты уже джавист, не важно. Для вкатывальщиков может иметь смысл - и самому заодно потренироваться, и в резюме указать.
174 1645880
А зачем енамки case sensitive? Мы их все равно по код конвеншену должны капсом писать.
Было бы меньше эксепшенов при valueOf(String str)

upd
Посмотрел исходники lang.Enum<T> valueOf
Там он берет значение str-ключом из мапы в классе Class, внезапно.
175 1645886
>>645880

> все равно


Нет, не всё равно. Компилятору похуй, что там за необязательные рекомендации, и ебать за них не должен. Вдруг завтра рекомендации изменятся, и теперь методы нужно писать в snake_case. И что, весь существующий код должен перестать компилиться, если имена констант и методов совпадут посте привеления из к одному регистру?
176 1645895
>>645880

>Было бы меньше эксепшенов при valueOf(String str)


В правильно написанной программе таких эксепшенов в принципе не должно происходить. Как по мне, использовать valueOf для чего-то, кроме store/load -- плохой тон, как и ручное вбивание строковых представлений enum-ов.

>Посмотрел исходники


Исходники хуйня. Это детали реализации, которые тебя вообще ебать не должны никак. Мало того, что это нарушает programming against interfaces (хотя я бы этот принцип назвал programming against API, чтобы некоторые болезные не думали, что весь API должен состоять исключительно из жабьих интерфейсов), так ещё и реализация может быть совершенно разная в зависимости от вендора.
177 1645922
Чем дольше изучаю Java, тем больше понимаю какой у неё высокий порог входа. Реально советую новичкам, что-то другое для старта в IT.
Столько всякого устаревшего говна нужно перелопатить. В какой-то момент начинаешь делать проект тупо копипастом, каких то классов с разных библиотек и других проектов. Самое удивительное, что в итоге вся эта куча гавна ещё и умудряется работать.
Хотя, может я просто представлял себе программирование немного по другому. Решение каких-что весёлых задач и придумывание необычных фич, а в итоге просто ебашишь какую-то архаичную срань.
178 1645937
>>645922
Я вот начинал с крестов, джава теперь мне кажется псевдокодом

Остальное так или иначе верно для всех языков. Это только небольшие проекты писать приятно.
image.png13 Кб, 1021x102
179 1646070
>>644761
Спасибо, идите нахуй.
Шел 2020, но каждый нубо-вебмастер продолжает вешать регистрацию на каждый выпук в своем пет-проекте
180 1646072
>>646070

>регистрация


>http


>идите нахуй


Поддерживаю.
181 1646116
>>646070
Есть же временные фейкопочты и пароль 123
182 1646117
>>646070
Эта параша мало того, что без SSL, так ещё и фейковые мейлодомены не принимает. Ору с клоуна, который серьезно думает, что ради его ссаного тестика кто-то будет палить свое реальное мыло, чтобы потом получать рекламу от педрильного клуба любителей пощекотать очко.
183 1646120
>>646117
А вдруг тебе оффер придет за хороший тест.
image.png33 Кб, 776x589
184 1646126
>>646117
>>646072
Неоиляторы, лул.
185 1646153
>>646126
давай ник и пароль, пройдем тесты всей бордой
186 1646160
>>646153
А меня не взломаете?
187 1646163
имя на скрине
пароль стандартный
MG1543.jpg28 Кб, 300x450
188 1646164
May the force bee with you.
189 1646166
Синглтон - не нужен. Вам что, память жалко на пару объектов?
image.png118 Кб, 299x168
190 1646169
Всё, теперь заебись.
191 1646172
>>646169
Что с ценами? Есть скидки как GeekBrains?
192 1646182
>>646166
Бугаенко плз, твоя хуета никому не нужна.
193 1646196
>>646126

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


Ору с клоуна, который думает что не будут. Будут еще как. 90% людей идиоты, которые ставят свое реальное мыло на все говносайты, да еще и пароль один и тот же везде.
194 1646207
Проходим тесты.
195 1646237
Тесты упали.
196 1646241
>>646237
Все работает, заходим по двачеинвайту.
197 1646243
>>643468 (OP)
Сап /pr/
Почитал я тут эти ваши местные треды, и встретил такую мысль "Spring чуть-чуть быстрее, чем Django". Это правда? Где об этом можно что-то почитать?
198 1646255
>>646243
что есть быстрее?
200 1646266
Так что это получается, уча джаву сейчас невозможно вкатиться в джуна, только стажёром?
201 1646273
>>646266
джун это с коммерческим опытом
202 1646285
>>646262
Там бесконечное можно тесты проходить, что ли?
203 1646290
>>646273
А если я до этого успел поработать тестером это может идти в опыт?
204 1646293
>>646290
ну такое себе. Это лучше, чем совсем без опыта, но хуже чем разработчицкий опыт
205 1646294
>>646293
Получается искать на хх стажерские вакансии и подаваться только туда? Это конечно не весело
206 1646297
>>646285
Ну да.
207 1646299
>>646297
А раньше надо было тамошние биткоины пополнять, чтобы тесты проходить.
208 1646301
Сап,начал учить жабу,прохожу курс на нетбинсе,подскажите,что значит эта ошибка и как исправит

warning: [options] bootstrap class path not set in conjunction with -source 8
1 warning
209 1646309
>>646301
Ты зачем Ant'ом собираешь?
Не юзаешь мавен - значит ты пидор.
210 1646315
>>646309
Я не знаю что это значит,Прости меня
211 1646338
>>646309
Не юзаешь градл - значит олд и необучаемый.
212 1646347
>>646338
Он для андроидщиков.
213 1646351
>>646309
А чё мавен волшебным образом решит эту проблему?
такая же проблема,да и я вроде выбирал мавен
214 1646398
Дайте нормальный оракловский гайд по сервлетам, а то везде разная информация, хуй разберешься.
216 1646406
>>646401
Спасибо. Мда уж, какой же уебищный у оркала сайт. На каждой странице разное оформление, тупая навигация.. Не то что у мелкомягких, там все аккуратно и выглажено. Эх.
217 1646421
>>646398
Че за сервлеты?
Навесил @RestController и все

мимо зумер
218 1646427
>>646406
Это не сайт оракла.
219 1646432
>>646427
А я про сайт оракла.
221 1646464
>>646434
Это сайт jcp, они его унаследовали после поглощения джавы. Там нет смысла ради дизайна нанимать жс-еров.
222 1646466
>>646434
Ну и проблемы у ява программистов.
223 1646474
>>646421
бамп
224 1646478
Какие у гитхаба используются настройки для идентиконов?
Запрос проверки по URL Анонимно 225 1646507
Сап двач, работаю в Android Studio. Нужно сделать запрос с помощью url и по результатам открыть нужную активность. Как это реализовать? Я знаю библиотеку retrofit2, но не могу разобраться с ней.
226 1646542
>>646474
Чё за сокеты?
Навесил @WebServlet и всё
гугл тебе поможет
227 1646598
На каком фреймворка пилить кроссплатформенный гуй в 2020?
Причем, очень хочется, что бы по крайней мере, у меня самого глаза не вытекали от дизайна 90 и можно было добиться native look&feel под мак.
Или так не бывает?
228 1646615
>>646598
В свинге есть нативный системный look & feel
229 1646622
>>646615
А в 10 винде он интегрируется в верхнюю панель приложения?
230 1646625
>>646622
Вот это тебе и предстоит узнать.
231 1646629
>>1596371 →
awt.Robot умеет за положением курсора шпионить.
232 1646632
>>646625
У меня нет 10 винды. Но идея интегрируется.
233 1646642
>>646632
Ты про (_ [] x) ? Они всегда нативные.
234 1646645
>>646642
Неа, там панель инструментов прямо встроена. Показать не могу.
235 1646646
>>646629
Оперативненько.
236 1646649
>>646646
Только сейчас вспомнил.
237 1646651
Кто там спрашивал "чоб написать такого" ? >>1646411 →
238 1646658
>>646651
Лучше продолжу писать персистентные двусвязные списки.
image.png32 Кб, 585x321
239 1646669
Что здесь происходит?
240 1646672
>>646669
Вычисляется хэш md5 в виде hex строки
241 1646673
>>646672
Каким образом массив байт преобразуется в строку? Я не понимаю, к чему там байтовый сдвиг и конъюнкция.
242 1646674
>>646673
Это такой способ взять отдельно 4 старшие и 4 младшие бита из байта. Каждым 4 битам один шестнадцатеричный символ соответствует.
sage 243 1646678
>>646294
А ты как думал, мань? Ты должен доказать, что ты достоин того, чтобы тебе платили деньги — просто так их никто не даст :) Поэтому извольте поработать несколько месяцев бесплатно. Ну а если несогласен, то вали в пятёрочку работать на кассу, ибо у нас таких как ты по несколько десятков человек на место :)
244 1646680
245 1646745
>>646598
жабаФХ
246 1646760
>>646745

Да, я сначала погуглил.
Свинг считается устаревшим.
Javafx вроде и жив. Но тоже вырвиглазный. Я нашел тему AquaFX, мимикрируюшую под мак, но хрен там плавал, уже давно заброшено, и под современным маком выглядит как нового.
247 1646761
>>646760
Как говно оно выглядит, сраная автозамена
248 1646763
>>646760
делай форк аквы и доделывай до конца
249 1646772
>>646598
электрон жс.
не шучу
ну или QT
250 1646776
>>646772

>электрон жс.


земля тебе пухом, долбоёб
251 1646777
>>646776
давай критикуй по делу
252 1646785
>>646776

Стоит признать, что используя js можно меньше задрачивать оформление. Много всего готового.
На свинге/фх добиться приемлимого внешнего вида в разы сложнее, и все самому.
253 1646786
>>646785

> разы сложнее,


многократно и не все можно.
254 1646792
>>646785
на fx или свинге формочку накидать - дело пары часов. На джава скрипте это нетривиальная задача, на которую надо нанимать верстальщика
255 1646796
>>646792

Кто-то отстал от жизни, сидя с заболоченным интернетом в банке?
В js так же есть готовые библиотеки компонентов, и простую формочку накидать быстрее, чем jvm будет разогреваться.
256 1646837
sage 257 1647030
>>646598
Скоро PWA всех убъёт. Они кросс-платформенны из коробки и пишутся на привычных всем технологиях. Вот дадут им больше разрешений, тогда и заживём.
258 1647031
>>646760

>Свинг считается устаревшим.


Идея на свинге написана.
image.png112 Кб, 1899x892
259 1647041
Стоит погружаться в это?
260 1647046
>>647041
Нет.
261 1647048
>>647046
Почеум?
262 1647051
>>647048
Устарело как вышеупомянутый свинг.
263 1647053
>>647051
Поня.
264 1647109
>>647031
И что? Там много архаичных деталей. Например при создании класса альт таб нажми, и у тебя панель с его названием поверх всего экрана останется перед лицом. Они даже свой layout сделали, потому что ни один свинговый их не устраивал.
265 1647126
>>647041
Да, потому что тот же Спринг очень похож с EE и поддерживает многие аннотации из EE.
266 1647129
>>647126

> похож


С тем же успехом можно C# учить только из-за того, что он похож на джаву.
267 1647143
>>647129
JPA аннотации это часть JEE, JAXB аннотации - тоже.
CDI - полностью поддерживается спрингом.

А теперь расскажи что из C# ты в Яве сможешь использовать?
268 1647144
Перестала работать ваша Китайская Идея, вы чё? Кинуть меня решили? Чё делать то? Чините все обратно! Вы чё волчары!?
269 1647145
>>647144
Попробуй перетащить архив с агентом опять на идею.
270 1647148
>>647145
Не помогает, при перезапуске, такое же окно.
image.png224 Кб, 801x502
271 1647150
>>647148
Херово. У меня, по-ходу, так же будет после 17 апреля.
272 1647156
>>647148
А ты новый агент не додумался скачать? Его обновляют.
273 1647172
>>647150
как это окно найти?
274 1647177
>>647172
нашел
275 1647182
Есть ли смысл продолжать лернить жаву? Ведь сейчас, например, даже если пройдет короновирусная истерия, и все начнет возвращаться на место, джуновские вакансии будут занимать орды тех кто сейчас остался без работы. Весь малый бизнес, весь сервис, вся эта хуйня будет ломиться в джуны. Вчера только 10 000 безработных прибавилось и так каждый день будет.
276 1647184
>>647156
Скачал последнюю версию, ничего не поменялось.
277 1647200
>>647182
И у них всех будет высшее техническое?
278 1647217
>>647126

>поддерживает многие аннотации из EE


Ну да, на том основании, что спринг умеет распознавать @Inject в добавок к своим аннотациям, давайте все теперь бросимся штудировать CDI, EJB, JSF, поставим гласфиш...
279 1647305
>>647217
И вычистим спринг нахер, ибо познаем его ненужность.
280 1647418
>>647305
А там и до лямбд доберемся
281 1647434
>>647109

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


Нет.
image.png133 Кб, 1018x471
282 1647438
283 1647440
>>647438
Ну хуй знает, у меня нормально работает. Может ты пидор?
284 1647456
>>646598
Вроде реакт нейтив пилят под десктопы, типа https://proton-native.js.org, правда хз насколько это близко к нативному лукнфилу.
285 1647462
>>646598

>добиться native look&feel под мак


>Или так не бывает?


Нет. Натив на маке в принципе ничем не скопируешь, тупо потому что он выходят на голову выше всего остального.
Открой какой-нибудь клинмаймак или хотя бы телеграмм на маке, поизучай. Все на других ОС на голову ниже.
image.png28 Кб, 441x436
286 1647468
Ебучий свинг сука, че здесь нахуй не работает?
287 1647501
>>647440
Нет, я н-не такой! Я один раз просто от... невнимательности создал проект без градла.
288 1647505
>>647468
https://ipsoftware.ru/pdf/Swing_2nd_ed_Ivan_P.pdf
Надо было в цикле не 256, а 0xFF, но это просто сделает код немного хакернее.
289 1647508
>>647505
Ты думаешь я буду всю книгу перечитывать, чтобы отрисовать одну картинку? Я уже понял, что дело где-то в EDT. Но я ебал в эту хуйню лезть.
290 1647512
>>647505
Привет! 256 != 0xFF, ты знал?
291 1647515
>>647512
Это все из-за того, что в джаве принято конечный элемент делать excluded. Без этого можно было красиво написать для цвета 0xff.
image.png26 Кб, 471x363
292 1647523
В пизду нахуй, ни один сука вариант не работает. Хули тут не так блядь?
293 1647526
>>647468
Ответ здесь: за бордер потяни.
image.png748 Кб, 753x535
294 1647530
>>647526
Потянул, нет нихуя. Пойду твою мать за анус тянуть теперь.

С картинкой из файла работает. Не понятно нихуя.
295 1647534
>>647523
int color = random.nextInt(256);
тут ошибка ставлю анус
image.png686 Кб, 1164x539
296 1647538
>>647530
Ну что тебе непонятно, блядь? Что ты в режиме с прозрачностью делаешь рандом всего лишь младших 8 бит, оставляя альфу в нуле? Или что ты не можешь ревалидейт вручную сделать?
297 1647540
>>647538
Точно, только вспомнил, что я уже работал с типами BImage раньше и там был какой-то нюанс. Анон выше сохранил свой анус.
298 1647541

>2020


>мейлач


>гуи на жаве


Чего только не бывает
image.png817 Кб, 1254x570
299 1647547
>>647530
>>647538
Правильнее конечно же не рандомить альфу, а только основные компоненты цвета.
image.png13 Кб, 382x346
300 1647551
Ну охуеть, я наконец-то повторил то, что уже написано в java.awt.Color#Color(int, int, int, int).
>>647547
Можно просто поставить режим без альфы.
image.png85 Кб, 1176x558
301 1647561
>>647551
Ептить, прям школьные годы вспоминаются канвас в дельфи/VCL. Какой нахуй спринг, теперь это тред про рисование на канвасе джпанели. Спасибо, анончик, за ностальжи.
302 1647593
>>647541
В 0,9 раз меньше жрет памяти, чем электрон!
image.png321 Кб, 700x700
303 1647890
Народ, скажите? как правильно создать jar файл и добавить его в другой проект в gradle?

В общем, создал через плагин shadow jar-файл и даже добавил все, но ИДЕЯ не видит импорты.
Добавил так:
dependencies {
implementation files("d:/path/file.jar")
}
304 1647905
>>647890
Ну помогайте (((
IDE External Library видит, но import нет
306 1647992
>>647954
>>647905
>>647890
Все, разобрался, надо было в обычный джарник собрать. А не shadow
whats going on.jpg172 Кб, 1280x1024
307 1648024
Что от меня хочет ИДЕА? Нужен быстрый ответ
308 1648031
Даже проще
double ... val;
Подчеркивает красным, почему?
309 1648056
>>648024
Судя по закрывающим фигурным скобкам у тебя метод max() объяслен внутри метода main(). Это не джаваскрипт, так делать нельзя. Методы в методах могут быть только в виде лямбд или внутри анонимных классов. Вынеси свой метод на уровень выше.
310 1648058
>>648031
Не туда смотришь. Смотреть надо на самое первое "красное" вхождение, остальное это побочные эффекты парсинга. Первое вхождение это скобка после max. И тебе идея говорит, что в данном месте нужен statement (выражение). А объявление метода стейтментом не является. В общем вот сюда смотри: >>648056
311 1648063
312 1648066
>>643468 (OP)
На третьем пике, это так выглядит Котлин, по мнению Москвабадцев?
313 1648096
Покавырял я ваш томкат.мавен,страст
ну его нах
314 1648099
>>648096
а что до этого ковырял?
Апач например по сравнению с томкатом
cmake по сравнению с мавеном
315 1648100
>>648099
рельсы
316 1648107
317 1648129
>>648096
То ли дело websphere.
318 1648241
>>643468 (OP)
Как стать джуниор-жабистом, не насосаться веберских хуёв в кубикле и начать писать говня-код для барина?
319 1648259
Охуеть, поставил @Cacheable/@Caheevict и все работает.
320 1648272
>>648241
Открываешь фирму, делаешь красивый лендинг с тестимониалами
пишешь 10 years of experience in
CLOUD TECHNOLOGIES
MACHINE LEARNING
ARTIFICIAL INTELLIGENCE
BLOCKCHAIN

даешь небольшую рекалму в гугл
находишь лоха, пишешь ему свой говнокод

трусторb, навидал таких фирмачек дохуя пока фрилансил
321 1648286
Ну че лузеры? https://habr.com/ru/article/494494/
image.png9 Кб, 324x156
322 1648289
Жив еще кто?
У меня такой вопрос, как вообще происходит сборка jar со сторонними зависимостями?

Вот у меня есть набор своих инструментов в jar, все бы ничего, но я бы хотел добавить внешние зависимости еще.
Как это вообще делается? Помещаются все зависимости в этот jar или какими-то манифестами прописываются для gradle(maven) зависимости, которые потом пакетный менеджер докачивает?

Можно просто базис объяснить, как это устроенно, без особых деталей, мне просто понять общую картину.
323 1648290
>>648289
Открой джарник винраром да посмотри.
324 1648292
>>648290
Какой? Трудно объяснить?
325 1648294
>>648292
Собранный.
326 1648296
>>648294
Открыл я джарники и вижу только пакеты локальные. Это мне никак не помогло с моим вопросом. ты зеленый или просто тупой??
327 1648297
>>648286
Чет ответил правильно на 8/10, в конце сказали я Java-новичок

мимо лузер
328 1648301
>>648289
Зависимости можно упаковать в один жарник мавеном с помощью плагинов. Гугли maven fat jar.

в градле небось тоже можно, но он для хипсторков
329 1648303
>>648301
Да это и без тебя знаю. А как делать правильно? Как мне подключить джарник, если у него внешняя зависимость, другой джарник?
330 1648361
>>648289
У тебя вопрос тупой, точнее комплексный. Каша какая-то, нихера непонятно. Тебя интересует сама сборка или результат сборки? Если со стороны результата, то существует минимум три способа:

1) Самый простой способ: положить либы отдельно в папочку рядом с твоим джарником и подключать их в команде запуска параметром cp. Так твой джарник остается девственно чистым, и соблюдаются лицензии либ, если в них прописан запрет на перепаковку.

2) Перепаковка. Открываем все либы, достаем классы, упаковываем в свой джарник. Еще раз: достаем class файлы, кладем к себе. В этом отличие от способа 3.

3) Лоадер джарников. Либы как есть, не доставая class файлы, кладем к себе в джарник. Для запуска такой конструкции нужно специальным образом генерить свой джарник, подключать туда джарлоадер. На выходе получается тоже толстый джарник, но либы нетронуты, лицензии сохранены.

Очевидно, что для каждого из способов настройка билд системы будет уникальной. Какой именно способ использовать зависит от обстоятельств, некоторые плюсы и минусы я перечислил.
331 1648366
>>648289
>>648361
Тебе может показаться что первый способ он такой неудобный, типа че ваще, либы отдельно, все так просто и топорно? Поэтому вот небольшой пример из жизни. Такая вот хуйня: в параметрах запуска килобайты, блядь, текста. И это считается норм. Второй и третий способ тут просто нежизнеспособны - все это в один джарник тащить. Но для мелких домашних проектов можно и перепаковать, не страшно. Даже иногда насрав на лицензии. А вот есть еще такая хуйня как спринг бут. Вот там генерится джарник и с class файлами, и с джарниками, и с лоадерами. Как видишь, все три способа имеют применение.
332 1648407
Сап, ананасы.
Раз уж у нас карантин, решил апнуть свои скиллы до миддла, а че учить - хз. Наверное, больше надо прочитать про устройство самой жабы/спринга внутри, подрочить алгоритмы и структуры данных, а посему, есть ли у анона волшебные книжки, которые расскажут обо всем этом? По одной на каждую тему.

Сайты/курсы/другие шаманские методы обучения приветствуются
333 1648410
>>648407
>>1635313 →
>>1635318 →
Вот я книжки кидал. Pro Spring бери, Pro Spring Boot и Pro Scalability. Concurrency еще желательно бы хорошо знать. Алгоритмы по Седжвику и Вейну. Ну и экзамен само сабой рекомендую, дает просраться.
image.png21 Кб, 180x169
334 1648426
>>648361
>>648366
Благодарствую, вменяемый анон
335 1648432
>>648361
>>648366
Еще вопрос, у меня сейчас есть сорцы, я через гредл подключаю стороннюю библиотеку compile files("d:/path/my.jar"), которая лежит вообще в другой внешней папке (даже другом диске).
Как мне это все это организовать и опубликовать на гитхабе? (как правильно вообще)

1) Создать подобие папки vendor в проекте и кинуть туда все эти джарники и прям так залить на гитхаб?
2) Или как-то оформить их и залить уже в репозиторий maven и потом оттуда уже подключать как все остальные либы? (Я даже не знаю, могу ли я, простой колхозный парень, залить в репу мавена что-то свое?).

2.1) Если я могу заливать в maven, и у меня вдруг появиться свой jar-ник с внешними зависимостями (например подключу логгер), как нужно будет тогда правильно этот мой джарник организовать? Прописывать какой-то лоадер, или же maven/gradle что-то указывать дополнительно?

Если опять туплю - ссори, я просто общей картины не до конца понимаю, но хочется делать сразу правильно.
336 1648439
>>648432
сделай папочку lib и в градле относительный путь к этой папочке и либе в этой папочке
image.png34 Кб, 700x501
337 1648445
>>648432
Казань брал В npm заливал, в центальный мавен - не заливал. В мавене использую локальный репозиторий, который ~/user/.m2. С машины на машину пересаживаюсь не часто, но когда такое происходит, то скачиваю репо с кодом своей библиотеки, и mvn install устанавливаю в опять же локальный репо на новой машине. В pom файле по id артифакта подхватывается зависимость из локального репо. Кстати в градле тоже можно pom файл, все дила.

Насчет гитхаба, по разному делают в зависимости от вероисповедания и других примет. В т.ч. закидывают бинарные ресурсы в репо и ничего такого в этом нет (твой вариант 1). Но мне больше нравится следующий вариант: в репозитории только код, импорты там на либы в коде. А сами либы поставлять отдельно, в зависимости насколько они самостоятельные. Если прям большие красивые, то можно отдельный репозиторий для них создать на гитхабе, и на первом указать, что используется либа вот оттуда. Если либа маленькая или их много - часто эксплуатируют механизм релизов - прикладывают к коммиту полный архив программы, готовый к запуску, т.е в комплекте с либами.
4.png44 Кб, 872x508
338 1648449
2ch, почему на тег aspectj-autoproxy идея ругается и не парсит?ЧЯДНТ?
339 1648470
>>648449
Пробел после тега "АОП" убрать надо. Спасибо-пожалуйста.
340 1648740
Я конечно не Явовщик, но даже я хрюкнул
https://twitter.com/ilmarihei/status/1245364174667960320?s=20
341 1648742
>>648740
Впервые видишь eagle eye навигацию?
sage 342 1648743
>>648470
aop не тег а префикс неймспейса, а так да.
sage 343 1648745
>>648742
Рожденный хрюкать летать не может.
344 1648859
>>643683
Учит подскакивать кабанчиком
изображение.png29 Кб, 1188x498
346 1649370
Почему Timer нужно присваивать в конструкторе? Какая разница между 1 и 2 вариантом? Может мне там тогда вообще все переменные присваивать?
греча.png1,8 Мб, 1023x959
347 1649434
348 1649438
>>649434

>И готовить мастер,


>и котлинист неслабый,


>и в фотошопе человек не последний

349 1649461
Как увеличить размер хеша?
350 1649464
>>649461
Просто добавляй туда как можно больше элементов до посинения, он сам увеличится.
351 1649466
>>649464
Внимательно почитай. У меня есть хеш-функция, которая возвращает подпись длиной 32 байта, а мне надо 64. Можно просто склеить, но это не очень подходит. Может есть какие-то специальные алгоритмы?
image.png23 Кб, 396x509
352 1649473
>>649466
Ты тупой или прикалываешься?

>У меня есть хеш-функция


Хеш-функция возвращает результат всегда одного размера вне зависимости от входных данных, в этом ее смысл. Нужен результат другого размера? Берешь другую хеш-функцию.
353 1649474
>>649473
Я не знаю, какая хеш функция будет использоваться, вот в чем дело. И мне надо работать с результатами разных размеров.
354 1649479
>>649466
Так бы сразу и написал.

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

> склеить


, только биты в другом порядке будут.
355 1649480
>>649474
Такие вот они, энтепрайзы, загадочные...
Хешируешь полученный хеш своей хеш-функцией, возвращающей результат нужного размера.
356 1649483
>>649480
>>649479
Бля, и правда, очевидно же. Это не энтерпрайз.
357 1649485
>>649480
Можно написать дженерик метод и всегда возвращать 64-битный ноль.
358 1649489
>>649474
Как вариант, в зависимости от задачи можно не растягивать хеши до максимального, а наоборот, усекать большие хеши до 32, или сколько там у тебя.
359 1649511
>>649370
Бамп
360 1649516
>>649370
2 вариант - ленивая инициализация. Делай как хочешь, но второй вариант более бестпрактисный.
361 1649525
>>649370

>нужно


Кто сказал? Это темочка для холивара. Можно и так, и так. А можно еще и через instance initializer, самый редкий способ, но он есть. Всего получается три способа. Как удобно так и делай. Может быть какие-то гайдлайны и рекомендуют что-то одно, но я не помню/не читал. Предпочтительнее конечно в конструкторе, он именно для того и предназначен, чтобы конструировать класс, т.е. инициализировать переменные-зависимости. Однако если класс маленький проще и удобнее по-быстрому нахуячить напрямую в полях. Мне кажется основное здесь - не размазывать чать туда, часть сюда, делать все консистентно. И если инициализация сложная, все-таки предпочитать конструктор. В твоем случае поле инициализируется новым объектом с кучей параметров, это можно назвать случаем "сложной" инициализации.

Однако, если ты продвинутый пользователь:
Буква D в слове SOLID говорит нам о том, что сам класс вообще не должен создавать объекты, а должен получать их извне (DI), например ссылкой в конструктор. Коллекции обычно исключение.
362 1649530
>>649516
Где ты тут ленивую инициализацию увидел, в конструкторе? С остальным согласен.
363 1649557
>>649530
Первая строка.
364 1649561
>>649557
Ты уверен? Сходи на википедию чтоль, освежи знания.
365 1649574
>>649561
Освежил, был неправ.
366 1649603
Пиздооооос, я помню была функция которая возвращала версию Джавы, никак найти не могу, подскажите пожалуйста
367 1649604
>>649603
-version
368 1649605
>>649603
Плохо искал. Первая ссылка в гугле.
369 1649606
>>649605
Спасибо, я не на англ искал, на русском все про -version твердили
370 1649610
>>649606
Никогда не ищи инфу по джаве на свинособачьем!
371 1649611
>>649610
ладно прости буду на эльфийском теперь только
372 1649612
>>649611
Я не он, я тот кто картинки кинул. Но я поддержу, всю айти инфу проще гуглить на англ. Ответ прост - эти технологии там изобрели, поэтому там больше коммьюнити. И запрос проще составить. На русском можно гуглить только 1С, у меня так подруга гуглит. Тут опять же работает правило - где изобрели, там больше коммьюнити, там больше инфы. Так что учи англ, это реально необходимо в нашей профессии.
373 1649620
>>649612
Какой нашей профессии? Я вечерком просто люблю игры на Джаве пописать, просто для себя. Не дай боже работать программистом
374 1649623
>>649620
Как скажешь.
375 1649624
>>649623
прости
376 1649631
>>649474

>И мне надо работать с результатами разных размеров.


Ну ты уж опиши поподробней, что значит "работать" и откуда вообще эти хэши приходят.

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

>А можно еще и через instance initializer, самый редкий способ, но он есть.


Это просто синтаксический сахер, его компилятор вкорячивает в каждый конструктор.
378 1649636
>>649525

>Однако, если ты продвинутый пользователь:


А вот это категорически верно, не дело UI компонента заморачиваться созданием таймеров, будте добры передать при создании.
379 1649647
>>649525

>сам класс вообще не должен создавать объекты


а кто должен создавать объекты?

мимо фанат егора бугаенко
380 1649648
>>649647
Программист.
381 1649652
>>649647
Понимаю, что ты провоцируешь, но я все равно попытаюсь.
Создавать должен клиент этого класса. Не говоря уже про DI фреймворки, если рассматривать простой пример: метод мейн и должен создавать, например, передавая все это глубже.
Loose coupling не просто так придумали, в этом же есть зерно смысла: если классы мало цепляются друг за друга, с ними проще работать, поддерживать, тестировать в конце концов, передавая фейковые объекты внутрь тестируемого класса.

>фанат егора бугаенко, борца за чистоту ООП


SOLID и есть ООП, но у этого человека, и многих других, свое трактование. Принципиальная позиция что класс должен быть самодостаточным и уметь создавать свои ресурсы сам тоже имеет право на жизнь. Это очередной холивар, но пока выигрывают лузекопульщики. Руководствоваться нужно здравым смыслом и брать лучшее из обоих миров.
382 1649658
Со всем уважением к Егору Бугаенко, но спринго-боги тут?

@EventListener
@Async("superExecutor")
public void myListener(MyEvent event) {
System.out.println("Called!");
}

superExecutor:
@Bean
public Executor superExecutor() {
ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor();
executor.setThreadNamePrefix("SuperExecutor-");
executor.initialize();
return executor;
}

Вопрос, почему myListener может иногда не вызываться? (Читаю логи, воспроизвести не удалось).
383 1649659
>>649658

>@EventListener


Хули без параметров?
384 1649660
>>649659
Фига ты быстрый. А они нужны? Почему-то решил что он из параметра метода возьмет тип ивента, пойду почитаю доку внимательно
385 1649702
String usrMessage = System.console().readLine();

Жопа читает ввод юзера и проверяет на паттерн:

if(Pattern.matches("[a-zA-Z0-9]", usrMessage)){
System.out.println("this is balls.");
continue;
}

Если соответствует, то пропускает итерацию. По идеи. Проблема в том, что если напечатать " ;%*(( " или какой-либо отдельный неальфанумерной символ, то всёравно проходит проверку(возвращает тру и делает континью).
386 1649709
>>649702
Ну очевидно оттого что ты не умеешь пользоваться инструментом. Ты написал, буквально: "если в строке есть один символ a-zA-Z0-9, то ок". А хотел написать видимо так: "если вся строка состоит лишь из символов a-zA-Z0-9, то ок".
387 1649710
>>649702
Я думаю, как сделать патерн, который тру когда в стринге есть неальфанумералы.

>>649702-кун
388 1649711
>>649710
Инвертируй же.
389 1649712
>>649711
Pattern.matches("[\\W]", usrMessage)) ???

Помогает когда первый символ неальфанумерал, а если №№, %% или ";DROP TABLE SHIPPING то пропускает.
image.png13 Кб, 856x98
390 1649713
>>649712
Нет.
consoleTest.jpg64 Кб, 982x518
391 1649714
Pattern.matches("[^a-zA-Z0-9]", usrMessage) if false when usrMessage = "asers &^"
392 1649717
>>649714
Тут дело в том, что matches() проверяет строку на соответствие полностью, т.е. целиком. Данный паттерн работает только если строка состоит из одного символа и этот символ не цифробуква.

>>649709
Правильный ответ написан вот здесь. Нужно составлять паттерн, который проверяет всю строку целиком: ^[a-zA-Z0-9]++$

Вариант с отрицанием тоже возможен, но не с методом matches() у строки, а с методом Matcher.find(). Тогда это то что нужно: "ищем первый символ не из класса". Матчер получается из Pattern.compile("").matcher(). Сам паттерн можно и нужно кешировать, и из него делать матчеры каждый раз, либо ресетить матчер новым инпутом.
393 1650074
Есть какие-то годные библиотеки для свинга?
395 1650093
>>650074
Ты свингер?
image.png2,1 Мб, 1500x1051
396 1650094
image.png8 Кб, 416x439
397 1650182
Как сюда добавить цвета?
398 1650186
>>650182
В пейнте.
15853294725061.png863 Кб, 1200x674
399 1650206
>>644000
Дохуя старперов в конторе?
image.png8 Кб, 416x439
400 1650212
так ебана
401 1650236
>>650182
Каждому квадрату присваивай new Color(r, g, b, a);
402 1650238
>>650236
Нихуя ты умный.
403 1650239
>>650238
Я знаю
image.png6 Кб, 366x389
404 1650268
Нихуя колбасит бля
null.png302 Кб, 1506x572
405 1650269
В такой архитектуре, какой лучший способ передать обратно фронтенду (реакт), что процессинг завершен? (тексты на картинке распознаны и переведены).
406 1650277
>>650268
Что это?
image.png10 Кб, 466x489
407 1650283
Ну вот и все, я круче, чем гитхаб.
изображение.png45 Кб, 1269x875
408 1650292
Ещё вопрос по этой теме >>649370
Если уж пошло на то что как бы хорошо объявлять timer в конструкторе, это относится к другим переменным и объектам? То есть так лучше чем я бы объявил всё в классе? Нихуя не понятно, так же больше писать, легче запутаться.
409 1650311
switch case быстрее if?
410 1650312
>>650311
Тебе в C++-тред.
411 1650317
Неужели копирование png картинки в буфер обмена это настолько нетривиальная задача, что в стандартной библиотеке нет метода для этого?
412 1650319
>>650317
Будем методы для всех тривиальных задач тащить в стандартную либу, чтобы их потом использовал один анон из десятка тысяч?
413 1650321
414 1650323
>>650321
Ура, наконец-то спринг будет из коробки.
415 1650324
>>650323
Ну кстати какой-нибудь DI фреймворк возможно и будет. Раз уже несколько HTTP клиентов есть.
sage 416 1650334
>>650324
Ты посмотри на то уёбище которое нам преподносится как решение для логгирования изкоробки.
417 1650339
>>650334
Это легаси.
sage 418 1650342
>>650334
Пусть чёбнаписатель изобретёт свой логгер.
изображение.png19 Кб, 1203x415
419 1650348
пиздос я математик, без всякий дополнительных row обошёлся. Зря мне математичка 2 ставила постоянно
420 1650349
>>650348
Нечитаемая хуйня.
421 1650354
>>650349
а лучше не сделать, это идеал
изображение.png17 Кб, 1137x441
422 1650357
>>650348
А как лучше? switch case в for выглядит конечно так себе, но если я сделаю отдельную функцию для возвращения картинки то программа будет 2 раза проезжаться по массиву - получается медленней
423 1650358
>>650357
а нет не будет
424 1650359
>>650357
Нечитаемая хуйня.
425 1650360
>>650359
а как сделать читаемо
426 1650361
>>650360
Нормально сделай.
427 1650362
>>650361
как
image.jpg39 Кб, 640x480
428 1650365
>>650361
Нормально делай - нормально будет.
429 1650367
>>650362
Нормально блядь.
430 1650368
>>650367
а что изменить нужна
431 1650370
>>650368
Код программы.
432 1650371
>>650370
ладно
1578868360-932acde1f4d98e04432800bdc1c1147c.jpeg980 Кб, 2300x2272
433 1650460
Суп, программачик, помоги страждущему разобраться.
Волею судеб мне нужно отладить jar, который исполняется на удаленном сервереwebsphere.
Внутри у джара всего один класс, в импортах которого прописаны классы из компонента сервера, на котором jar исполняется.
Класс я изменил и собрал новый jar, который должен работать заместо прежнего.
Вопрос: какого хуя сервер, при вызове уже моего измененного jar'а, пиздит, что не может найти эти классы из импортапри том, что оригинальный jar запускается без проблем?
Дело, насколько мне позволяют мои хуевые знания джавы, может быть в classpath?
В .classpath оригинального jar'а есть такие записи:
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" path="src"/>
<classpathentry kind="con" path="org.eclipse.jdt.USER_LIBRARY/VMM API"/>
<classpathentry kind="con" path="org.eclipse.jst.j2ee.internal.module.container"/>
<classpathentry kind="src" path=".apt_generated">
<attributes>
<attribute name="optional" value="true"/>
</attributes>
</classpathentry>
<classpathentry kind="con" path="org.eclipse.jst.server.core.container/com.ibm.ws.ast.st.runtime.runtimeTarget.v85.bi/wps.v85">
<attributes>
<attribute name="owner.project.facets" value="jst.utility"/>
</attributes>
</classpathentry>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/IBM Process Server v8.5 JRE">
<attributes>
<attribute name="owner.project.facets" value="java"/>
</attributes>
</classpathentry>
<classpathentry kind="output" path="bin"/>
</classpath>
Я попробовал подложить этот файл .classpath в свой jar и нихуя не изменилось - ошибка та же.
ЧЯДНТ?
1578868360-932acde1f4d98e04432800bdc1c1147c.jpeg980 Кб, 2300x2272
433 1650460
Суп, программачик, помоги страждущему разобраться.
Волею судеб мне нужно отладить jar, который исполняется на удаленном сервереwebsphere.
Внутри у джара всего один класс, в импортах которого прописаны классы из компонента сервера, на котором jar исполняется.
Класс я изменил и собрал новый jar, который должен работать заместо прежнего.
Вопрос: какого хуя сервер, при вызове уже моего измененного jar'а, пиздит, что не может найти эти классы из импортапри том, что оригинальный jar запускается без проблем?
Дело, насколько мне позволяют мои хуевые знания джавы, может быть в classpath?
В .classpath оригинального jar'а есть такие записи:
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" path="src"/>
<classpathentry kind="con" path="org.eclipse.jdt.USER_LIBRARY/VMM API"/>
<classpathentry kind="con" path="org.eclipse.jst.j2ee.internal.module.container"/>
<classpathentry kind="src" path=".apt_generated">
<attributes>
<attribute name="optional" value="true"/>
</attributes>
</classpathentry>
<classpathentry kind="con" path="org.eclipse.jst.server.core.container/com.ibm.ws.ast.st.runtime.runtimeTarget.v85.bi/wps.v85">
<attributes>
<attribute name="owner.project.facets" value="jst.utility"/>
</attributes>
</classpathentry>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/IBM Process Server v8.5 JRE">
<attributes>
<attribute name="owner.project.facets" value="java"/>
</attributes>
</classpathentry>
<classpathentry kind="output" path="bin"/>
</classpath>
Я попробовал подложить этот файл .classpath в свой jar и нихуя не изменилось - ошибка та же.
ЧЯДНТ?
image.png290 Кб, 600x787
434 1650463
>>650460
Для начала сделай наоборот - подложи свой класс в тот jar, ты говоришь там всего один класс.
435 1650627
>>650463
Подложил, ошибки те же:

>CWTBG0019E: Неожиданная исключительная ситуация во время выполнения. Информация об исключительной ситуации: 'com.lombardisoftware.component.common.workflow.WorkflowProcessItemException: Unresolved compilation problems: The import javax.ejb cannot be resolved The import org.eclipse cannot be resolved...


Причем, если обращаться к тому классу, что лежал в джаре изначально, никаких ошибок нет.
sage 436 1650776
>>650627
Что-то ты нам недоговариваешь. Что он там вообще компилирует если ты ему класс файл подкладываешь? На лету там только JSP компилируются. Давай уж полный стекртейс ошибки.

Дальше .classpath - это настройки Эклиспа к тому что деплоиться на сервер он напрямую не относится. Рассказывай чем собирается проект и во что war или ear.
1571928406-66878a274509b04e08d33d6f2ce6034a.jpeg90 Кб, 700x491
437 1650994
>>650776
Нужно было начинать с начала, наверное, пардон.
В общем: есть система, которая крутится на Websphere Application Server, этой системе нужно получить атрибуты пользователя из репозитория самого WAS. Известно, что сделать это можно при помощи компонента, встроенного в WAS - Virtual Member Manager, у которого есть свой апи, который лежит где-то в каталогах самого WAS.
Есть работающий jar, который мне нужно изменить - https://us-south.git.cloud.ibm.com/ryancox/BPM.VMM_LDAP_Toolkit/blob/master/source/VMMUtil.jar.
Я заливаю этот jar на сервер через веб-морду, дальше WAS неизвестным мне образом этот jar подхватывает и в этой же веб-морде дает мне выполнить любой его метод с указанием входных параметорв.
Тот jar, что по ссылке, запускается и работает, я могу его дебажить удаленно.
Я хочу добавить в jar еще один класс, исользующий тот же апи, что есть в импортах у работающего класса import com.ibm.websphere.wim.*. Для этого я импортирую рабочий jar в Eclipse, добавляю новый класс и экспортирую это как новый jar с тем же .classpath, что и у исходного jar'а.
После выкладки на сервер пробую: вызываю метод из класса, который лежал в jar изначально - все работает, вызываю метод из своего класса - валится с ошибками импорта.
Доступа к серверу, а соответственно, и к полному стектрейсу, у меня, увы, нет.
Как-то так.
438 1651045
Где подробно и понятно описана работа лямбда-операторов в джаве? Во всех источниках, что мне попадались очень скудное описание, плюс от силы один легкий пример и никаких упражнений для самостоятельной работы.
439 1651062
>>651045
А в них нет никакого глубинного смысла, расписывать нечего.
440 1651083
>>651045
А какие тебе подробности то нужны епта
441 1651159
>>650342
НЕ НАДО! У нас уже и так логгеров дохуя.

По хорошему надо из jul сделать интерфейс для логгеров типа sl4j и пусть logback, log4j и остальные делают реализации.

Там на самом деле не так много надо переделать, повыкидывать часть методов, чтобы API стало полегче (всякие resource bundle и кастомные уровни). И договориться с ребятами из log4j чтобы они своц логгере поддержали новое API.
442 1651179
Блять, есть хоть один человек в мире, который регистрировал кастомный медиа-тип для HATEOAS?

вот как здесь https://docs.spring.io/spring-hateoas/docs/current/reference/html/#mediatypes.custom
443 1651192
>>651179

> HATEOAS


Загуглил эту хуйню. Предлагается добавлять ссылки для навигации ("действий") к возвращаемым в виде json данных? Складывается ощущение, будто они заново хтмл изобретают, но только в виде json. А xml-версия так вообще почти один в один хтмл.
444 1651246
>>650994

>Я хочу добавить в jar еще один класс, исользующий тот же апи, что есть в импортах у работающего класса import com.ibm.websphere.wim.*. Для этого я импортирую рабочий jar в Eclipse, добавляю новый класс и экспортирую это как новый jar с тем же .classpath, что и у исходного jar'а.


Тебе надо импортировать не jar а проект. В jar есть исходный код и файлы проект Эклипс - тебея надо для начала распаковать эту всю фигню и добиться чтобы проект компилировался (там надо будет какие-то библиотеки добавить). Потому уже в этот проект добавляешь свой класс и собираешь jar-ку.
image.png5 Кб, 266x289
445 1651396
Охуеть какой я бесполезной хуйней страдаю.
446 1651409
>>651396
На картинке ты?
447 1651417
>>649717
ОК, пасибки, буду дальше ковырять.

Я написал такую залупу, которая выдаёт мне принтеры в моей сети и аттрибуты поддерживаемых флэворов:

https://pastebin.com/My6XvX5s

Я не понимаю, что значит "Rep Classname: [B". Это байтстрим, как вывести полное название?

Конечная цель: пичатать инфу из БД на принтере brother ql-820nwb и Zebra.
448 1651474
>>651417
Ещё, принтер джава неспособна отсылать на принтр простой текст? Видны только маймы типа: image/gif, image/jpeg, png и application/octet-stream. Как отправить обычный текст, только сделав картинку?
buildpath.png316 Кб, 1920x1080
449 1651522
>>651246
Так и сделал:
Исходный jar распаковал, импортировал как проект в Eclipse, добавил один класс, экспортировал jar.
При экспорте поставил галку "Export class files with compile errors". В итоге не работает нифига.
На скриншоте build path проекта.
Почему исходный jar на сервере работает, а новый нет?
450 1651899
Сап, аноны.
Работаю над небольшим личным проектиком и столкнулся с проблемой сбора жарки. Использую идею в качестве ИДЕ и в ней собирается, запускается, работает все нормально. А при попытке запуска жарки она выдает ошибку, что не хватает Bean в конфигах для интерфейса который наследует JPARepository. Может кто сталкивался с таким и знает что гуглить или уже само решение. Жарку собираю через иде, через Build Artifacts. Пробовал добавлять Bean в конфиг, но он тогда требует реализации методов JPARepository и я хуй знает будет ли оно доставать нормальную реализацию или пустую из конфига. За любую помощь спасибо.
451 1651903
>>651899
жар делать онли через мавен.
452 1651912
>>651899
А вот в эклипсе таких проблем нет, и вообще он лучше. Работала бы там тёмная тема нормально не использовал бы эту идею обосанную
453 1651913
>>651899
Мавеном или градлом надо собирать, чтобы таких проблем не возникало.
454 1651924
>>643468 (OP)
Как прокачать знания в базах данных? Все эти уровни изоляции транзакций, написание сложных SQL запросов, тюнинг SQL запросов, индексы и как их правильно создавать, администрирование и тюнинг СУБД.
455 1651926
>>651924
откажись от хибернейта и напиши какую-нибудь многопользовательскую игру с основе постгре
456 1651975
>>651903
>>651913
Сборка жарки через мавен помогла, спасибо
457 1652023
>>651975
Не юзаешь мавен - значит ты пидор
458 1652147
Аннотация 2020-04-06 214405.jpg36 Кб, 498x277
459 1652161
Анонче, скажи, ты пользуешься дженериками, когда описываешь свою бизнес логику? Или у тебя каст на касте и кастом погоняет? Просто я как не берусь в новом проекте начать все грамотно на дженериках делать -- неизменно выходит пикрил и тимлид говорит, что все плохо и нахуй не надо (кровавый тырпрайз если че). В итоге мы продолжаем кастить. Скажи, может мы что - то не так делаем или оно бесполезно пытаться бизнес - логику на дженериках делать? То, что я вкинул -- это еще ничего. У меня бывало в классах по 30 переменных типа и это был полный пездец.
460 1652166
>>652161
наследование - плохо
461 1652168
>>652161
Обычно без дженериков обходимся, почти всегда хватает интерфейсов и Object.
А кастить плохо, типобезопасность идёт нахуй. Делается это обычно от нехватки времени на рефакторинг, либо тупо не хочется лезть в код, который страшно сломать.
462 1652174
>>652168
делается это от веры в ооп и что всё можно выразить через объекты реального мира и наследование
463 1652178
>>652161
Че вы там пишете что получается класс на 30 дженериков?
464 1652179
>>652174
Наследования-то и нету почти. Обычно приходится интерфейсы кастить. И никакое агрегирование тут не поможет, ибо нужны только данные, а не методы с логикой, которые выносятся в сервисы.
465 1652181
>>652161
Дженерик это узконаправленный инструмент для обобщенного кода
Там где нужен обобщенный код там и дженерики. У меня в текущем проекте это например классы используемые в цепочке обработки различных документов, имеющих общий интерфейс.
Где такой код не нужен там их нет.
Твой вопрос как минимум странный.
бугаенко.jpeg7 Кб, 225x225
466 1652187
>>652161
Пикрил смотрит на этот класс как на говно.
467 1652194
>>651522
сраный эклипс!

Насколько я понял, надпись unbound означает, что у тебя нет jar (вернее они не найдены) в этой библиотеке. Попробуй или поискать их в интернетах или взять IBM Rational Application Developer for WebSphere там они по идее уже должны идти в комплекте.
468 1652195
>>652179

>Обычно приходится интерфейсы кастить


зачем их кастить?
469 1652198
>>652187
Он и в зеркало так же смотрит.
470 1652203
>>652161
Лол, охуеть ты высрал.
471 1652217
>>652195
Допустим, есть интерфейс Animal, у него есть реализации Cat и Dog. Далее, какой-нибудь метод принимает Animal, а какой-нибудь другой метод передаёт ему конкретный объект Cat или Dog. Первый метод должен по-разному работать в зависимости от конкретного типа.
Понятно, что интерфейсы создавались не для этого, и что здесь подошёл бы какой-нибудь паттерн типа стратегии, но ведь куда проще наговнокодить цепочку instanceof-ов и забить.
472 1652223
>>652217

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


static void handleAnimal(Animal animal, int animalType)
473 1652227
>>652161
Им в 1.4 дан кастинг из Object и instanceof, не хочу, хочу жрать жава 5.0 с дженериками.
Что такое? Это джаверы ?! Пидоры, блядь. Говно жрут.
474 1652232
>>652223
Ничем не лучше. Вместо цепочки instanceof будет свич по списку типов (это скорее будет enum, а не int). И всё равно придётся править код в нескольких местах вместо одного.
475 1652237
>>652227
STREAM API
@
LOMBOK
@
SPRING BOOT
@
VAR
@
ЛЯМБДЫ
476 1652390
Как вы вносите изменения в код своего, допустим, сайта, без остановки его работы? Класслоадерами или для этого есть спринговые средства?
477 1652402
>>652390
в томкате например можно деплоить версиями, без остановки старой версии
478 1652407
>>652390
По-взрослому это делается через несколько экземпляров приложения и балансировщик перед ними
479 1652408
>>652402
Понял, спасибо.

>>652407
Не понял.
480 1652411
>>652408

>Не понял.


Есть два (или больше) томката и есть перед ними, например, nginx, который проксирует на них запросы. Переключаешь nginx на один томкат, в это время обновляешь второй.
481 1652412
>>652411
Теперь понял, спасибо.
482 1652423
>>652411
Накатил миграцию на базы, переключил томкаты. Пользователи понасоздавали новых данных и запороли какую-нибудь хертушку. Тут же подрывается менеджер и кричит чтобы все возвращали взад! Но не тут-то было - миграцию накатили, пользователи уже понасоздавали говнеца в базе и простой откат просто запорет запуск приложения, т.к. поля объектов уже не мапятся на таблицы.
483 1652425
>>652423
В большинстве случаев ничего не мешает делать миграции базы так, чтобы не ломать старую версию и иметь возможность быстро откатиться. Грубо говоря, достаточно не удалять сразу старые колонки и таблицы, даже если они как бы не нужны в новой версии.
484 1652536
>>651474
Можешь воспользоваться утилитой lp и просто посылать принтеру в очередь жобы
485 1652548
>>643468 (OP)
Привет всем, есть система в спринге, нужно чтобы эта система при запросе создавала дополнительный процесс/субпроцесс и продолжала работать дальше, не ожидая ответа/завершения процесса. При этом нужно чтобы данные об этом процессе (прогресс и тд) записывались в БД.

Существует ли какая нибудь библиотека для таких вещей? Смотрел в сторону Flowable и Activiti, но неуверен если это то, что мне нужно. В целом не ебу в какую сторону копать
486 1652555
>>652548
Берёшь и пишешь руками
487 1652772
>>652548

>Привет всем


Привет! Ты конченый.
488 1652788
>>652548
Executor.
489 1652797
Написать await перед вызовом)))
490 1652881
>>652555
>>652788

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

>>652772

Мне нечего сказать, пройди нахуй
491 1652893
Failed to execute goal org.apache.maven.plugins:maven-archetype-plugin:3.1.2:generate (default-cli) on project standalone-pom: The defined artifact is not an archetype
Че делать
492 1652895
>>652893
Починить
493 1652898
>>652895
Рассказывай как
494 1652899
>>652898
Берешь и чинишь
495 1652900
>>652899
Нужно больше информации
496 1652901
>>652900
За информацией в гугл
497 1652904
>>652901
Гугл непонятно изъясняется, а двач должен
498 1652906
>>652904

>двач должен


Тебе здесь никто ничего не должен, чушка
499 1652908
>>652906
А как же помощь анонам
500 1652912
>>652908
Идиотам помогать нельзя
501 1652916
>>652912
Эх ты
502 1652925
>>652893
Чо, кто-то реально юзает архетипы? Лол.
503 1652934
>>652925
А что юзают?
504 1652943
>>652934
Хз. Ну, есть Spring Initializr. Я читал про архетипы, когда изучал мавен, но больше нигде никогда про них не слышал.
Да и редко есть необходимость быстро создавать проект, их один раз только создают, а затем долго пишут.
505 1652946
>>652943
Понятненько. Ну вот мне надо с этим архетипом что-то сделать..
506 1652951
>>652946
Ну делай, раз надо.
507 1653209
Какая разница между javax.print and java.awt.print?
508 1653210
>>652536

> в очередь жобы


wat?
509 1653219
>>653210
Я на винде.
Снимок экрана 2020-04-06 в 19.59.23.png18 Кб, 682x70
510 1653255
анон, нужно реализовать в DAO классе функцию изменения данных в БД, я не ебу как это реализовать? помоги
Снимок экрана 2020-04-06 в 19.59.23.png18 Кб, 682x70
511 1653257
анон, нужно реализовать метод в DAO классе, который будет изменять данные в БД опираясь на ID обьекта, но я не ебу как манипулировать данными в БД при помоши Java кода; помоги
512 1653259
>>653257
jdbcTemplate.update("UPDATE table SET field = 'value' where id = id")

Как параметры вставлять - нагуглишь
513 1653262
>>653259
ой я на флудил,safari ебучее
анон огромное спасибо; понял в чем ошибка была, я там где value ставил двойные ковычки
одинарные ковычки это синтаксис sql чи шо?
514 1653268
>>653262
да, это sql
515 1653269
а кто-нибудь юзает mybatis? или все ебуться с hibernate?
516 1653272
>>653269
Юзают, да.
517 1653279
>>653272
а преимущества у него какие? а то использовал его поверхностно, не вкусил всех прелестей, а с гибернейтом одно гавно...
518 1653383
Меня тут посетил вопрос: а нахрена код компилить в байт-код, если его все равно jvm перепиливает в процессорные инструкции? Зачем нужна эта лишняя прослойка, и почему не запилить просто интерпретатор? не ссыте на меня - джаву не юзаю, просто интересно стало
519 1653394
анон, помоги, в чем здеся ошибка, не ебал такой хуйней тебе мозг но я уже слишком долго мозг себе ебу с этой проблеммой
520 1653395
>>653383

>если его все равно jvm перепиливает в процессорные инструкции


Жвм то разные могут быть. И процессоры. И ос.
А байткод один.
521 1653402
>>653394
а где сам запрос?
522 1653419
>>653383
Гугли грааль вм.
image.png148 Кб, 1228x890
523 1653423
>>653394
Сложно было заскриншотить с номерами строк?
Падает на первом обращении к резалт сету - первый вызов getString(). Курсор в резалт сете не передвинут на первую позицию. Обычно делают if (rs.next()) или while (rs.next()).
image.png6 Кб, 706x39
524 1653425
>>653394
>>653423
Проебался, 86 это вообще не в этом файле, ладно не суть. Проблему решил.
Кстати, текст ошибки прямым текстом говорит что у курсор before start резалт сета, т.е. на позиции перед первой.
525 1653427
>>653425

>курсор


Чета нету нихуя про курсор в сообщении об ошибке.
526 1653429
>>653395
Так а почему напрямую бы не переводить код, как любой интерпретируемый язык это делает. Зачем делать лишний шаг, в виде байткода?
>>653419
Гляну, спасибо
527 1653431
>>653429
Например кокомпиляция в байткод позволяет проводить оптимизации, инлайны там, реордеринг, заменять какой-либо код интринсиками и тд.
image.png42 Кб, 612x543
528 1653433
>>653427
Ну ты поидее должен знать, что в резалт сете есть некий вируальный курсор, указывающий на записи. В твоем случае как на скрине без единово вызова next или другого метода позиционирования курсора rs.isBeforeFirst() вернет true.
529 1653446
>>653429
Байт-код, в теории, работает быстрее интерпретации - парсить меньше, исполнять легче. Но в реальности это не всегда так, джава вот иногда медленнее ноды. И всё же есть куча интерпретируемых языков, намного медленнее джавы, тот же питон.
530 1653455
>>653429

>Зачем делать лишний шаг, в виде байткода


Лишний хуй уровень абстракции в жопе не помеха.
531 1653456
>>653419
>>653423
СПАСИБО СОЛНЫШКА!
внату я дебилб что про строки не подумал, а твой ответ сейчас проверю, звучит логично
532 1653458
>>653446

>в реальности


Всем похуй на скорость, важна только скорость, с которой ты ебашишь круды. Она должна быть быстрее чем у конкурента.
533 1653460
>>653425
пушка; все работает как надо, ОГРОМНОЕ СПАСИБО
534 1653465
>>653458
Некоторые зачем-то пытаются юзать жабу не по назначению, берут её вместо крестов и потом говорят, что она слишком медленная.
535 1653483
>>653219
тогда гугли sumatra
536 1653487
>>653465

>слишком медленная


жвм не прогрелась прост))
image.png11 Кб, 679x404
537 1653621
Забавно.
image.png11 Кб, 680x404
538 1653637
>>653621
Добавил пхп.
539 1653662
>>653433

>Ну ты поидее должен знать, что в резалт сете есть некий вируальный курсор


С чего бы? В моем контракте это не указано.
540 1653763
Args4j или Picocli?
b234dXpNq9I.jpg90 Кб, 604x596
541 1653767
Крестоёбил три года, предлагают перекатиться в Java EE. Вообще не имел дела с языком. Поясните за карьерные перспективы (я и так бомж ебаный, 300k/ns не особо интересует).
542 1653768
>>653767

>Java EE


Не лезь блядь.
543 1653769
Микросервисы пилит кто? Как правильно поступать, если надо в нескольких сервисах использовать одну и ту же модель бизнес-сущности?
544 1653772
>>653768
Что, совсем хуёво? Я так понимаю, мне предстоит копаться в хуйне, которая старше, чем мой дед? Плюс в целом информации не особо много, сплошной кровавый энтерпрайз с весьма специфическими вещами.
545 1653774
>>653767

> Перекатиться с охуенных крестов на джаву


Это называется скатиться. Я вот кресты недоосилил и вкатился в жабу.
Но да неважно. Именно EE (сервлеты, jsp, ejb, jms, jax-rs) в далёкой перспективе так себе, новое в основном на спринге пишут. Но перекатиться с одного на другое несложно. Джава вполне востребована, скучновато, правда, но без работы не останешься.
546 1653819
>>653767
Перестанешь бороться с языком - ну там всякие UB и забытый деструктор.
И начнешь бороться со всякими дикими бизнес требованиями сделайте кнопку синей, если поле А равно тому-то, а поле ХУЙ не заданно или равно значению поля ПИЗДА и багами фреймворков.
547 1653822
.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Что это такое и зачем оно нужно
548 1653823
>>653822
Тут сука все английским языком написано.
549 1653854
>>653823
А зачем закрывать не крестиком?
550 1653888
>>653822
Если это не написать то при закрытии окна программа остается запущенной. Ее не видно (нет больше окон) и никак ее не закроешь если в процессах не убить.
551 1654067
>>653888
Спасибо трипл
552 1654239
Аноны, подскажите пожалуйста какие можно взять мини-проекты для начинающего в джаве? Попробовал написать телеграмбота - насрал слегка в штаны.
553 1654241
>>654239
Специалист по телеграм ботам на связи. Опишите вашу проблему. Держу ферму ботов и собственную жаба библиотеку (потому что могу себе позволить).
554 1654248
>>654241
Да мне бы для начала просто ООП потренировать как следует.
555 1654249
556 1654252
>>654249

>https://www.elegantobjects.org/


Гайд то хороший, но мне бы реальным мини-проектом заняться бы...
557 1654299
CompletionStage нужон?
558 1654300
560 1654303
562 1654305
>>654239
Напиши вывод файлов в папке сортированных по формату или алфавиту.
563 1654309
>>654239
Делай круд. Типичный интернет-магазин.
564 1654340
565 1654363
Поясните плиз че за хуйня - идея сначала говорит, что тип RBTree<T>, а потом кидает ошибку потому что он должен быть T.
566 1654364
>>654363
А, я понял. Надо еще функцию RbTree -> RbTree добавить
567 1654427
>>654304
Ни разу не видел эту хуйню.
568 1654431
>>654363
Ты тот кун с 10ью дженериками? Ты же не в продакшен RBTree лепишь, правда?
569 1654437
>>654431
))))))))
изображение.png14 Кб, 795x271
570 1654524
Почему он хочет что бы класс клавы был static?
571 1654525
>>654524
Иннер нестатик классы нужны чтобы обращаться к полям внешнего класса. Нет обращений к полям внешнего класса значит внутренний класс может быть беспроблемно превращен в статик.
572 1654526
>>654525
ладно
573 1654688
>>653769
Как вариант, выделить общие сущности, утилиты и т.п. в отдельный проект-библиотеку, сделать мавен репозиторий, разместить библиотеку в репозиторий, подключить артефакт через помник в нужные микросервисы
574 1654892
JSON parse error: No Object Id found for an instan…in:
575 1654896
>>654892
Помогите как исправить эту ошибку..
1356085130702.jpg33 Кб, 420x269
576 1654919
Суп, джавач.
Помоги разобраться с сертификатами.
Делаю post-запрос из веб-сервиса и получаю ошибку:
[10.04.20 17:13:02:010 GMT+05:00] 00000100 com.ibm.ws.ssl.core.WSX509TrustManager E CWPKI0823E: Ошибка согласования SSL: подписант с SubjectDN [CN=xxx, OU=xxx, OU=xxx, O=IBM, C=US] был отправлен с хоста [xxx:9443]. Может потребоваться добавление подписанта в локальное хранилище доверенных сертификатов [C:/Users/user/WASLiberty/usr/servers/mytestserver/resources/security/key.p12], расположенное в псевдониме конфигурации SSL [defaultSSLConfig].
Сижу уже три часа - хуй пойми как этот сертификат добавить в это хранилище.
Экспортировал сертификат из браузера - дает экспортировать только в формате p7b, чтобы его преобразовать в p12 нужны ключи какие-то.
Как достать ключ этот?
577 1654938
578 1654994
>>654896
охуенная постановка вопроса, с такими вопросами советую пойтись в гугл
580 1655008
>>655007
Сделали из няшного кобола какой-то котлин.
581 1655027
Куда жаловаться, чтобы из джавы удалили рекорды?
582 1655046
>>655027
Заводить JEP и написать, чтобы сломали обратную совместимость с легаси жавой 14.
583 1655279
Привет, антоны, я тот мудак, что долго разбирался с принтом. Javax не смог воспользоваться потому, что поиск подходящих принтеров не выдаёт ничего подходящего.

Я нашёл рабочий кусок кода, который подправил. Печатаю лэйблы на принтере Brother QL-820NWB с ленточным питанием, но они не печатаются если указываю длину этикетки меньше 15 см:

Line 26: double height = fromCMToPPI(15);

Если меньше(line 14), принтер говорит, что выбран/указан не тот тип медиа. В настройках принтера указываю длину хоть 15 мм хоть 280 - всёравно только больше 15ти печатает. В некоторых случаях печатает на этикетке длиной указаной в настройках принтера(хоть 40мм, хоть 50), но я не смог отследить в каких. Хотя, это не важно т.к. надо что бы из джавы указывало длину. Может быть из джавы можно изменять настройки принтера и указывать там длину этикетки?

https://pastebin.com/72XfeDLC
584 1655362
>>654919
Тебе следовало указать сертификат этого сервиса выдан ли партнерами одного из корневых CA или речь о самоподписанном сертификате? Проверить легко: в браузере открываешь и если зеленый замочек то первое, если класная хуйня то второе. Соответственно и пути решения разные. Если первое, то тебе повезло, просто апдейт JRE сделай, т.к. в файле jre/lib/security/cacerts отсутствует нужный корневой сертификат. Если JRE < 2017, то такое очень вероятно, т.к. в 2018 у комодо и геотраст появились новые сертификаты. Проверить, есть ли корневой CA в хранилище помогает тулза jre/bin/keytool, точную команду не помню, но эта утилита решает вообще все вопросы с этими серификатами. И вот если сертификат самоподписанный, необходимо ее использовать чтобы добавить этот сертификат к себе в хранилище. В свое время я очень хорошо разобрался в вопросе, знал команды и даже написал консользую хуйню для определения корректности сертификатов удаленно, по урлу. Так что ты просто плохо гуглил.
585 1655418
Поделитесь ютуб каналами и сайтами по spring.
586 1655429
>>655418
baeldung, mkyong
587 1655434
>>655429
Спс (этих знаю)
588 1655444
>>655434
Хорошо. А то обычно пишут "а незя руккеи слыш а?".
589 1655490
>>655418
>>655444
letsCode, если уж рузке надо.
Ещё помню смотрел видос негра Amigoscode с freecodecamp, он там за 2 часа круд писал и пояснял за всю хуйню.
590 1655543
сука выдали задание тупое не делается
591 1655566
>>655490

>Amigoscode с freecodecamp


Бинго, этого тоже знаю! Ты вкатился уже?
592 1655637
>>655027
В ООН.
593 1655825
594 1655924
Как правильно вкатываться в веб? Есть какой-нибудь роадмап, чтобы ничего не упустить?
595 1656002
>>655924

>чтобы ничего не упустить


Посмотри требования к вакансиям. Это нужно знать.
596 1656043
>>655924
Начать с основ спринга, а дальше само пойдёт.
597 1656044
>>656002
Окей.
15753812714220.jpg152 Кб, 1200x1183
598 1656073
Сап, анон. Подскажи, как нынче правильно генерить ID для объектов.

Суть такова: у меня есть объекты, которые будут сохраняться в базе (хибернейтом), у них есть поле ID. Допустим, я создаю объект в приложении, даю ему какой-то ID (для этого использую статическое поле Atomic Integer, которое инкрементится каждый раз). ID уникальны, всё хорошо.

Потом мне нужно этот объект сохранить в базу. Для этого помечаю поле ID аннотацией @Id.

А потом я перезапускаю приложение, и мой AtomicInteger (последний ID) идёт на хуй. То есть, обнуляется. Получается, что нужно либо сохранять куда-то текущее значение и поднимать его на старте, либо держать в базе агрегатную функцию или как-то иначе дёргать базу для получения каждого нового ID.
В-общем, какие-то решения приходят в голову, но явно есть best practice на эту тему.
599 1656076
>>656073
чиво
600 1656078
>>656073
Сериализация.
601 1656085
>>656073
Текущее значение никуда сохранять не надо т.к. оно уже есть - это id последней записи. Просто подгружаешь его при инициализации SELECT max(id)+1 FROM table. Но это ручной метод. Есть же аннотация @GeneratedValue и стратегии к ней, а еще можно собственный генератор имплементировать интерфейсом IdentifierGenerator.
602 1656099
>>656073
Чем банальный автоинкремент не устраивает? При инсёрте БД сама подставит нужное значение.
Или ID нужен на уровне логики?
603 1656100
>>656073
Хуйню несешь. Id тебе должна генерировать база. Делаешь Entity e = repository.save(e) и id записывается в объект.
604 1656107
>>655566
Ну почти вкатился, да.
605 1656229
>>655924
Значит так. 3 этапа.
1.
Пишешь крад сервлетами. Авторизацию/аутентификацию/ фильтрами. Без жпа. Только сессии, только конекшн, только нативный скл. Минимальные стили . Пушишь в репу.
Важно понимать, как это работает на низком уровне. Только jsp эта вот хуииа тебе ещё понадобится в жизни. Обязательно миграции бд - самое лёгкое - флайвей. Реализовать минимальные релейшены между таблицами.

2. Крад на том же спринг буте, но уже с жпа, нормальными стилями, с бутстрапом, с нормальной спринг секьюой. Таймлиф или фримаркер. Миграция - ликвбейс. Реализовать все виды релейшенов между таблицами.

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

1) выведи список товаров в таблице с его ценой в доларах, каждая товар привязан к определенной группе (овощи, фрукты)
2) товары можно редактировать, добавлять и удалять
3) сверху сайта делаешь 2 кнопки, 1 меняет язык интерфейса, 2 валюту в таблице
4) сделать агрегацию данных в таблице, группировку по группе, сортировку и хуйню с фильтрацией по цене.
5) по клику на товар отображаешь координату на карте гугла и рисуешь кастомную точку на карте, это должно работать в 2 стороны
6) всю эту хуйню(Данные) отображаешь в hightchart, в идеале если нарисуешь сам на d3.js
7) в footer рисуешь кота, по клику на которого выскакивает бочка и переворачивается, HR сразу ахуеет
606 1656230
>>656107
Что у тебя в резюме? Гит зелёный? Сколько пед проектов? Пили стори про собесы и отклики!
g.jpg42 Кб, 963x235
607 1656263
>>656230

>Что у тебя в резюме


Корзина без опыта. Вышка есть.

>Гит зелёный


Не особо.

>Пили стори про собесы и отклики


Для этого есть другие треды >>1640071 →
Может запилю когда-нибудь фулл-стори, но зачем? Всем похуй же. Ты в интернетах миллион подобных историй найдёшь.
608 1656298
>>656085
>>656099
>>656100
Спасибо, вот это мне и нужно было. Получается, в конструкторе можно любую хуйню вместо ID подставлять:
User newUser = new User(12345, "Петя");
... а правильный ID потом запишет база/хибернейт?

> Или ID нужен на уровне логики?


Задумался, нужен ли он мне кроме как для работы с базой. Наверное, нет. В веб-приложении все новые объекты должны сохраняться в базу. А я просто на десктопном проекте работаю, там всё по-другому.
609 1656318
>>656298

>в конструкторе


Ты вообще не должен конструктор при создании сущностей использовать. Все через сериализацию через ObjectMapper.
610 1656426
как при помощи hibernate вытянуть только нужные поля у сущности?
611 1656435
>>656229
Спасибо большое, все так и сделаю. Ничего не понял, правда, ну буду гуглить.
612 1656446
>>656298

>Получается, в конструкторе можно любую хуйню вместо ID подставлять


Не надо хуйню, не заполняешь просто, оставляешь null
613 1656456
>>656318
Чего? Ты ебанутый?
614 1656476
>>656456
Того.
615 1656481
>>656456
Тебе все данные приходят по ресту в виде json. Ты их преобразуешь в объекты. Или что не так?
616 1656487
>>656318
Нахуя? Чтобы руками конвертировать входящие данные в DTO вместо того, чтобы это делал спринг? А профит какой? И всё равно это бесполезно - структура DTO и сущностей почти никогда не совпадает.
617 1656493
Подскажите необычный проект.
618 1656497
Извините за глупый вопрос, я немного туповат.. Что здесь происходит?: https://github.com/babaktr/musical-instrument-recognition и можно ли это как-то использовать в своем проекте?
619 1656509
>>656493
Сайт-визитка не на пхп.
620 1656522
>>656487
Алло, спринг через ObjectMapper это и делает по умолчанию.
sage 621 1656541
>>656522
Какая разница? Зачем за спринг делать то, что спринг делает сам?
622 1656556
>>656541
Ты дурак ушибленный что ли блядь?
623 1656559
>>656556
Ёбу дал?
624 1656561
>>656559
Долбоеб?
625 1656564
>>656561
Мамку ебал?
626 1656681
заебала java ухожу в python пока
627 1656715
>>656681
Рады будем видеть снова, когда накушаешься второго питона в легаси.
628 1656773
У меня есть знакомый 3д-моделлер и вот он в свободное от работы время накидывает просто ради интереса какие-то модельки для себя и выкладывает на свой сайт, чтобы общество пользовалось или хотя бы просто заценило.
Вот у меня вопрос, что можно делать подобного на Джаве в свободное время, чтобы с одной стороны и себя занять, и общество поддержать?
629 1656820
Джава устарела с точки зрения процесса разработки
630 1656864
Тоже перестал вкатываться в джаву.
631 1656883
>>656820
Ничего пизже джавы для энтерпрайза еще не придумали
632 1656901
Энтерпрайз устарел как явление, пора переходить с банков на микрозаймы, лол.
633 1656913
>>656901
На бартер с гречкой и масками
634 1656977
Неплохо знаю Кор Джаву и последний месяц изучаю Spring Boot что бы вкатиться в энтерпрайз. Вот чему успел научиться:
-понимаю как работают аннотации.
-принципы mvc
- как добавлять новые зависимости через pom.xml
- знаю для чего нужны контроллеры и сервисы, как их писать, какие аннотации добавлять и т.д.
-Как брать данные из http запроса и его тела
- как связать два класса с помощью @AutoWired
- как подключить Базу Данных и работать с нею с помощью интерфейса CrudRepository

Куда двигаться дальше? Что я упустил? Как углубить свои знания? Что ещё обязательно нужно знать для вката?
Направь меня Анонче
635 1656983
>>656883
хахаххаахаххаха
636 1657008
>>656977
теперь нужно спрингдату изучить, спринг секурити, ангуляр и как дружить его с спринг секурити и всякое такое. чуваки со знанием только жабы не нужны или скилы и опыт должны быть на охуительном уровне.
637 1657010
>>657008

> ангуляр


Реакт.

> Не нужны


Нужны. Полно вакансий, где не требуется.
638 1657034
>>656446
Сделал конструктор без id. Успех. Сущности сохраняются, id подставляется.

Но меня смутил тот момент, что id это маленький int, а не Integer (и не может быть null). Провёл небольшой эксперимент, выяснилось, что hibernate нормально съедает объекты со значением id по умолчанию, которое равно 0. Вручную подставленный 0 в конструкторе тоже работает, а вот всё остальное (-1, 1, 10 пробовал) порождает ошибку detached entity passed to persist. Так-то.
639 1657038
>>656977
Spring Data, Spring Security
React/Angular и вся хуйня что с ними в пачку идет (redux, material ui, typescript)
Pub/Sub
+ немного девопса непомешает (AWS/Google Cloud, Kubernetes, Terraform).
640 1657148
Хэлп, двощ.
Нужно сделать POST-запрос с параметрами пикрелейтед.
Делаю через HttpURLConnection - получаю статус 400 Bad request.
Через swagger и soapUi работает без проблем.
ЧЯДНТ?
641 1657158
>>657148
А какойнибудь message в 400-й ошибке есть?
642 1657159
>>657158
Bad request - вот весь месседж.
643 1657162
>>657148
Я бы набросал сервер-заглушку и посмотрел, что приходит.
644 1657168
>>657159
Попробуй включить дебаг https://www.rgagnon.com/javadetails/java-debug-HttpURLConnection-problem.html

И сравни с тем, что передается через swagger или soapUi
645 1657232
>>657148
input в body без кавычек
1338144888199.jpg163 Кб, 492x670
646 1657312
>>657162
>>657168
Спасибо за советы.

>>657232
Ты победитель, тонны благодарности тебе, анон.
Постоянно на подобных мелочах запариваюсь
647 1657352
>>657312
А нехуй писать json в строке.
649 1657432
>>657422

> 2D


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

> simple and lightweight


, а все задротские?
650 1657484
>>656983

> хахаххаахаххаха


А по делу?
651 1657656
>>657008
>>657038
спасибо аноны, буду задрачивать
652 1657742
Посоны, там из-за ковида раскапывают Кобол!
https://www.cnews.ru/news/top/2020-04-13_ibm_hochet_vozrodit_mertvyj
653 1657746
>>657742
Может и джаву когда-нибудь раскопают...
image.png24 Кб, 499x234
654 1658147
У меня есть класс Button в котором создаётся кнопка.
В 1 варианте функция рисования так же возвращает наведена ли мышь на кнопку.
Во 2 варианте эти функции разделены, но приходится отдельно создавать экземпляр или как это называется класса.
Какой вариант лучше, помогите пожалуйста.
Sage 655 1658175
Какой примерно уровень джавы нужен, чтобы я мог спокойно приступать к изучению андроид дева?
cobol600.jpg50 Кб, 600x333
656 1658201
>>657742
Кобол дед на подскоке
657 1658239
>>658175
Вот когда за ООП и Java Core пояснить сможешь, можешь приступать
658 1658260
>>658201
Типичный java-девелопер из 2040 года
659 1658684
Есть ли где-то решения для задач к "Хорстманн К.С. - Java SE 8. Базовый курс - 2015"?
660 1658826
аноны у меня есть готовый код и картинки для него ка кэто запускается? хочу посмотреть как работает - в джаве 0 если что
https://github.com/Elco-/NaturalSelec... вот ссылка откуда скачал
661 1658836
Как в maven/gradle для зависимости (джарника) указывают другие зависимости (джарники)?

Ну вот например есть логгер в джарнике "A.jar", как при подключение в свой проект он мне скажет (или не скажет), что ему нужен логгер для работы?
Или у него логгер будет уже внутри в своем каком-то classpath?

Как это организуется вообще?
662 1658837
>>658826
Установи JDK. Версия здесь, думаю, не важна, так что можно взять последнюю. Добавь в PATH, чтобы в командной строке команды java и javac выполнялись.
Дальше скопируй папку img в папку src. В этой папке запусти из командной строки

> javac Bacterium.java Food.java Form.java Main.java


Это скомпилирует исходники, получится набор class-файлов.
Дальше пиши

> java Main


И всё запустится.
663 1658928
>>658836

>как при подключение в свой проект он мне скажет (или не скажет), что ему нужен логгер для работы?


В репе рядом с сами джарником будет лежать pom.xml, где указаны его зависимости
664 1658943
>>658147
Лучше, если хочешь помощи, перестать петросянить в коде.
665 1658963
>>658147
Во-первых у тебя первый способ не рисует кнопку а второй рисует
Во-вторых гугли Fluent Api, можно все в одну строку засунуть если хочется
В-третьих isClicked срабатывает один раз сразу после создания кнопки, тебе нужна работа с событиями, если хочешь обработчик кнопки написать.
666 1658964
>>658963

>Срабатывает


Проверяется конечно у тебя. Вряд ли сразу после создания она уже нажата.
667 1658976
Пацаны,есть ли возможность отсортировать массив из объектов разных типов по общему параметру?
668 1658983
>>658976
Можно использоать кастомный компаратор и сравнивать каким хочешь образом.
669 1658985
>>658983
Допустим ,но как это вообще можно устроить?Я вертелся вокруг этого компаратора,но ничего не смогу сделать
670 1658987
>>658985
а как выглядит параметр то? Вынесен в какойто интерфейс или просто поле с одним и тем же именем?
671 1659021
>>658976
>>658985
>>658987
Как уже озвучил товарищ выше, основная "проблема" тут это получение "общего параметра". Если два разных типа можно привести к одному, например параметр вынести в интерфейс, то проблем нет (test31), если же два типа никак не связаны, то твое решение будет с ручными кастами (test32), а это плохо, это признак code smell.
672 1659031
>>659021
Ну сразу было понятно что тут какие-то архитектурные проблемы. В принципе если нужное поле называется одинаково и имеет одинаковый тип, то можно вместо кастов доставать его по имени поля через рефлекшн апи, но это тоже какая-то кодовая проктология
673 1659052
>>658928
Рядом это где?
В гредле так же будет?
674 1659053
>>658928
Можно пример в репозитарии? Если не трудно?
675 1659071
>>659052
Градл - это сахарок для мавена, как котлин для жабы.
image.png36 Кб, 442x528
676 1659087
А нельзя записывать как-то более компактно? А то выглядит как некий пиздец как по мне
677 1659089
>>659087
ломбок тебе в помощь
679 1659109
>>659106
При установки такой зависимости, maven автоматом подтянет все его зависимости?
680 1659111
>>659021
Про это я понял,нужно еще массив из всех значений общего параметра создавать?И как с строками тут работать,если это общий параметр?
681 1659121
682 1659122
>>659111

>И как с строками тут работать


str1.compareTo(str2)

>нужно еще массив из всех значений общего параметра создавать?


Для чего? Ты же объекты с параметром сортируешь, а не сами параметры.
683 1659126
>>659087
Добро пожаловать в джаву.
684 1659133
>>659087

>А нельзя записывать как-то более компактно?


Мне обычно помогает Ctrl + Alt + Shift + K
685 1659148
>>659122
Вот этого я уже не вывожу и впринципе уже ничего практически ,солнышко,ты можешь мне помочь задачу решить?Мне осталось только в алфавитном порядке отсортировать и вывести

Суть такая,Array Лист из 2 классов,у обоих классов есть общий параметр(строка),так вот уже обьедененный массив нужно вывести в алфавитном порядке(т.е. по параметру),помоги,пожалуйста,у меня дедлайн скоро
686 1659155
>>659148
У тебя List<Object> чтоли? Общего родителя/интерфейса нету? Тогда будет что-то типа такого

list.sort(Comparators.comparing(a -> {
if (a instance of A){
return ((A) a).getStringFromA();
} else if (a instance of B){
return ((B) a).getStringFromB();
}
throw new RuntimeException();
}))
687 1659189
Какой гуй на жабе, вы че, ебанутые? Не насилуйте труп.
688 1659191
>>659155
>>659021

"instance" моя Идея ваще не распознает
Попробуй сюда как нить вписать в самом первом методе,если можешь ,пожалуйста
Чел,прошу не думай что это наглость,я просто отчаился уже и мне срочно нужна спасительная рука

https://pastebin.com/fmFiqKtY
689 1659198
>>659189
Тебе-то что, если это небольшая утилитка для личного пользования? Её хоть на жабе, хоть на коболе пиши, никому от этого ни холодно ни жарко.
690 1659199
>>659191
потому что instanceof слитно, опечатался.
Еще можно использовать A.class.isAssignableFrom(a)

В твоем случае явно проблемы с дизайном классов, все поля было бы логично собрать в одном классе.
Можешь показать как изначально выглядело задание
691 1659204
3 класса:Человек,Студент,Школьник

Первый-предок двух вторых ,и у него есть 3 параметра :Возраст,Имя,Фамилия

У второго их 3(+предка) :Номер школы,и массив под оценки,другой под участие в олимпиадах

У студента же их (+предка) :средняя оценка,и массив под оценки за курсовые.

В этом чертовом методе уже была проведена проверка на грант(строки с if)

>>659199

"Реализовать и напечатать общий массив школьников и студентов,которые должны получить грант,отсортировав его по фамилиям"
692 1659220
ананасы, объясните паттерн mvc. игра "морской бой": модели - игрок, корабль, игровое поле, а вью, контроллеры чего такое, не отстреливаю нихуя, как написать игру консольную? Анон, помоги и воздаться тебе на пасху православную.
693 1659225
>>659204
как я понимаю, от тебя хотели примерно такого

https://pastebin.com/pNTLwi9b

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

Можешь пояснить 47 строку?Она вносит всех с грантов в новый массив,да?
695 1659234
>>659231
>>659225
И ты уверен что все правильно?
696 1659236
>>659231
Создаю новый лист для объектов которые наследуют класс Person и имплементят интерфейс Grantable. В следующих строках сваливаю туда студентов/учеников.
>>659234
В синтаксисе могут быть косяки, т.к. писал в блокноте по памяти, а так по дизайну классов и логике - все должно быть норм вроде
697 1659249
>>659220
Модель - это не только данные, но и логика. Здесь кроме корабликов будут ещё и правила игры, проверки и прочее.
Вью - то как данные видит пользователь, то есть формочка с квадратиками либо консольный интерфейс.
Контроллер - прослойка между моделями и вью, например, при нажатии на кнопки на форме дёргается специальная функция, которая запускает логику и возвращает данные, эта функция контроллер и есть.
Вот только mvc не особо тебе поможет в разработке игр, это всего лишь концепция разделения кода проекта на 3 логических части.
698 1659306
>>659249
спасибо зайка
699 1659315
>>659236
Так а как для чисел выглядеть будет?
700 1659330
>>659315
Что для чисел?
701 1659332
>>659330
компаратор, т.е. порядок
702 1659336
>>659332
если у тебя лист интов List<Integer> list = new ArrayList();
то будет примерно так
list.sort((a,b) -> Integer.compare(a,b))
703 1659344
>>659336
Т.е. это будет в возврастающем порядке,а как в обратном?
compare(b,a)?
704 1659352
705 1659356
>>659352
А как чтобы сначала возрастало,а потом убывало?
compare(a,b,a)?
706 1659358
>>659356

>сначала возрастало,а потом убывало


это вообще как?
image.png5 Кб, 606x222
707 1659361
>>659358
Ну типа так?
708 1659366
>>659361
Я бы сказал что зашафли цифры, затем раздели надвое и половину отсортируй по возрастанию, половину по убыванию, потом склей обратно. Но это всеравно выглядит как дичь, как задача поставлена?
709 1659370
>>659366
Задачи на это нету,просто разбираюсь как компаратор работает?
710 1659376
>>659370
Если посмотришт интерфейс компаратора то увидишь метод
int compare(T o1, T o2)
Компаратор всегда сравнивает 2 объекта, возвращает 1 если первый больше второго, 0 если равны, -1 если первый меньше второго.
В случае инта я написал
sort((a,b) -> Integer.compare(a,b))
функция sort принимает на вход компаратор, но поскольку интерфейс Comparator помечен как @FunctionalInterface - я могу заменить его на лямбда-выражение
(a,b) -> Integer.compare(a,b)
котрое эквивалентно компаратору с методом
int compare(Integer a, Integer b){
return Integer.compare(a.b);
}
711 1659379
712 1659380
>>659376
Ничего не понятно,но спасибо! Пойду изучать.
713 1659433
Какие проекты посоветуете реализовать чтобы вкатиться в жаву? До этого активно писал на C# (джун, пара проектов с командой, для различных компаний), но вакансий на Java всяко больше. Слышал, что Spring используют, что еще популярно в вашем кофейном котле?
714 1659434
>>659433
JVM для кофемашины.
715 1659442
>>659434
у вас слишком токсичное сообщество, я передумал
716 1659443
>>659442
у шарпистов лучше?
image.png296 Кб, 350x280
717 1659444
>>659443
Они - шарпеи, называй правильно, он уже и так обиделся.
image.png19 Кб, 340x449
718 1659452
>>659443
Конечно, сколько раз я открывал ютуб и попадал в обьятия индуса с милым акцентом, подробно объясняющего все тонкости проблемы. Кстати какой долбоеб придумал пикрил и почему остальные считают это нормой?
719 1659458
>>659452
А ты и не должен с объектами как с примитивами работать. Все верно же проверяет - в первом случае объект один, во втором - разные, что не так? Раз такой умный, сможешь сам открыть сурс и посмотреть @author.
720 1659459
>>659452
Оптимизация времен царя гороха. Integer - класс-обертка над примитивным типом, объекты через == сравниваются по инстантсу, но для интов придумали впихнуть кеш, который по умолчанию инициализируется кажется 128 значениями (не помню, есть ли там еще отрицательные значения или нет). Соотвтетственно когда ты используешь число до 128 оно не создает новый объект а достается из кеша в отличие от чисел больше 128. Кажется, если порыться то можно даже найти флаг жвм который определяет сколько интов туда запихивать.
721 1659462
>>659458
С этой проблемой справился легко (удивительно, но достаточно загуглить), просто я представляю сколько еще подобного спрятано в этом чудесном языке
722 1659463
>>659462
да десятки или даже сотни подобных нюансов, в других языках разве не так?
image.png3 Кб, 265x43
723 1659467
>>659463
некоторые языки не обременяют себя обратной совместимостью. В чем смысл делать вот так?
724 1659471
>>659467
У жавы все более-менее с совместимостью пока используется публичное апи. Проблемы как правило возникают из-за какой-нибудь рефлекшн проктологии или использования Unsafe
725 1659472
>>659462
Нюансы есть в любом языке. Я переодически забываю что в пхп и луа другой оператор конкатенации и неистово плюсую, пока не доходит до компиляции (раз в полгода требуется в эти языки втыкать). А если на js пойти, там строки можно через == сравнивать и никакого equals(), кто бы мог подумать. А еще недавно криптографию в js делал и узнал что их Number поддерживает всего 52 бита в целочисленных, и банально long туда не запишешь, нужна библиотека (или новый тип там придумали в новой спеке).

>>659467
А тут-то что не так? Достаешь из одного списка, достаешь из другого.
726 1659474
>>659472
почему нельзя испольховать стандартные [] ?
727 1659475
>>659474
Потому что это список а не массив.
int[][] arr = new int[10][20];
arr[0][0] = 123;
А ты точно программист со стажем?
728 1659477
>>659475
Я понимаю, что это список, но к примеру в vector C++ можно спокойно обращаться через скобочки и нет необходимости нагромождать кучу методов
sage 729 1659482
>>659452
Придумал Гослинг, ну тут надо понимать, что там все постепенно эволюционировало. Вначале разделение на типы, потом автобоксинг с неумелыми попытками оптимизации, потом еще дженерики на уровне компилятора.

Конкретно по этому коду Шипилёв уже показывал что этот кэш местами бъет по производительсности, но ничего сделать нельзя он уже в JLS.
Есть такой трюк -Djava.lang.Integer.IntegerCache.high=2000 можно удивить индуса там кстати нет ограничения сверху, можно затормозить старт программы и отожрать 4 гига в никуда.
730 1659484
>>659477
в жаве умышленно отказались от перегрузки операторов
731 1659495
>>659452

>ыы пачиму так а не как я хочу)))

732 1659497
>>659484
зачем это нужно?
733 1659499
>>659495
мне вопросы нельзя задавать? Или я как ты должен сидеть и бояться показаться тупым
734 1659500
>>659474
Потому что пиши на груви.
735 1659502
>>659499
Задавай вопросы по действительно спорным вещам. По рекордам или по чекед эксепшенам. А не "почему объект != примитив".
736 1659503
>>659497
Чтобы сложнее было выстрелить себе в ногу. Поэтому и прямой работы с памятью нет.
737 1659510
>>659503
Хуевый аргумент, в шарпе перегрузка есть и никто до сих пор не пострадал
image.png16 Кб, 632x196
738 1659515
>>659510
Хуевый или нет, но это аргумент автора языка, лол, хрен оспоришь =))).
739 1659518
>>659515
Ну и зря.
Gradle 740 1659521
Всем привет, пробую gradle. Пытаюсь добавить gradle:propdeps-plugin. Просит сконфигурировать metadataSources{} в объявлении repository. Пробовал гуглить, пишут про добавление jcenter() в repositories. Пробовал, не вышло
741 1659522
Лучше бы в джаву завезли перегрузку операторов через имплементацию интерфейсов и @SneakyThrows на уровне язык. А не всратые рекорды, которые даже не Java Beans.
742 1659523
>>659503
Скорее чтобы не переусложнять язык, чтобы побольше людей могло осилить. Наверное, когда жабу создавали, на фоне крестов, перла и бейсика она казался нынешним питоном.
743 1659524
>>659522
КОТЛИН
744 1659526
>>659524
Не пизди, там тоже этого нет.
sage 745 1659528
>>659515
C другой стороны это можно реализовать компилятором, так что обратная совместимость не пострадает.
747 1659533
>>659526
Уж какая-то перегрузка операций там есть. Лучше, чем a.subtract(b).
image.png1,4 Мб, 660x880
748 1659551
Привет всем.
У меня есть некий рест, который должен отдавать только изменения в базе данных по запросу пользователя. Что то вроде long pooling или вебхуков.
Мне кажется что я делаю велосипеды, когда навешиваю на бд триггеры или каждую минуту отправляю селекты.
Для этого существует ORM или это как-то по-другому проще можно сделать? Типа контроля версий бд?
749 1659555
>>659551
Можно же настроить лог запросов в базе, или это не то что тебе нужно? Можешь пример ожидаемого поведения описать?
750 1659577
>>659551

>Типа контроля версий бд?


Надо смотреть в конкретной БД.
751 1659578
>>659530
>>659533
И где там

>@SneakyThrows на уровне языка


, лалки? Затралены.
752 1659582
>>659578
Собственно, зачем он, если в котле нет checked exceptions?
753 1659584
>>659582
Ебать, я в котлин.
754 1659585
>>659582
Что, даже если использовать библиотеку на джаве, где они есть?
755 1659588
>>659585
Ага. Здорово, правда?
image.png26 Кб, 748x448
756 1659589
Плохо корона-тян влияет на твоё здоровье, джавач.
757 1659594
>>659585
Cheked exceptions делаются на уровне компилятора, в байткоде таких проверок нет, поэтому:
1. В Котлине/Груви - нет checked exceptions
2. В Яве их можно легко отключить слегка поправив компилятор. При этом полностью сохранится обратная совместимость.
758 1659596
>>659594

>В Яве их можно легко отключить слегка поправив компилятор


пруф
760 1659615
>>659603
Лол, это я понимаю. Но легальных способов отключить их нет.
761 1659618
>>659482
А снизу ограничение ?:(
762 1659619
>>659603
Где легкость то? Ты по 10 раз на дню форкаешь javac под свои хотелки, а потом поддерживаешь?
763 1659620
>>659589
Я перестал постить.
мимопостоялец
764 1659629
>>659615
>>659619
Речь шла про отключить с помощью изменения самого компилятора, а не его хака хотя хак компилятора есть и известен с JDK 1.5
Т.е. начиная с JDK XX может появиться ключ -XunchecledExceptions а потом вообще станет дефолтным.
765 1659645
Есть консольное приложение, нужно быстро и качественно его завебить. Джаву знаю хорошо, с вебом не работал. Что мне делать?
766 1659671
>>659645
1)Spring в помощь, по нему много гайдов и официальной документации.
2)Или вдариться в более чистый и старый вариант через сервлеты и JSP. Но лично для меня он неприятнее.
767 1659676
>>659225

>>private boolean sex;


>>boolean


теперь это enum или String
768 1659678
Поясните пожалуйста ньюфагу, где и как применяется восходящее и нисходящее приведение объектов класса? Я не до конца понимаю профитность этого, ведь можно сразу объявить объект нужного конкретного класса.
769 1659705
>>658963

>В 1 варианте функция рисования так же возвращает наведена ли мышь на кнопку.


Рисует. Кнопка у меня то работает хорошо, мне именно интересует какой вариант из предложенных лучше.
770 1659706
>>658943
А что плохого
771 1659707
Насколько мертвы Java апплеты
772 1659770
>>659707
Очень сильно мертвы, прям совсем
sage 773 1659786
>>659618
Да меньше 127 нельзя, хотя зачем фиг знает.
774 1659793
>>659671
Понял.
775 1659854
>>659707
Настолько, что даже флеш живее, а он мёртв.
776 1659861
>>659678
Сейчас тебе скажут, что наследование устарело.

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

Профитность, в теории, в том, что ты, используя интерфейс или базовый класс, абстрагируешься от деталей реализации, и потом легко можно заменить одну реализацию на другую. Но на практике реализаций больше одной бывает далеко не всегда, и только в тех случаях, когда их всё же много, можно это использовать. Например - много разных драйвером для баз данных, но интерфейс DataSource у них общий, и можно писать многие методы без привязки к конкретной СУБД.
777 1659983
>>659861
Сяп, вроде чутка прояснилось
778 1659990
Вопрос, я сейчас на первом курсе универа, тыкался в кресты, ооп, многопоточность, немного алгоритмы - вот это все. Сейчас внезапно понял, что пора бы задумываться о том, куда идти работать, а то родители не вечные.
Собственно посмотрел вакансии на хх по крестам - в большей части из них требуют знание Qt, mfc - в общем разработка под десктопики. Остальная часть это какие-то йоба проекты с компьютерным зрением и дата саенсом, нужно знать матан, тервер, матстат - в общем сложно для меня, у нас в шараге математику так себе преподают.

Решил задуматься над тем, чтобы стать джава рабом, платят больше, проекты вроде бы интереснее (по крайней мере нет умирающих десктопиков). Как вам план? Нахожусь сейчас в ДС если что.
779 1660005
>>659990

>проекты вроде бы интереснее


спорное утверждение, процентов 80 жавы - унылый ентерпрайз со всякой лапшеобразной бизнес-логикой. А там уж от твоих личных предпочтений зависит понравится тебе или нет.
В целом жава нормальный язык чтобы на еду себе зарабатывать - есть куча вакансий жавистов на рынке и вполне понятный роадмап для вкатывальщика
780 1660015
>>660005

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



Ну вот это меня и привлекает. Сейчас смотрю хх по плюсам в дс - вакансии естественно есть (хоть их и в 2.5 раза меньше чем по джаве), но непонятно как развиваться. Где-то нужно знать сетевой стек, WinAPI и делфи. Где-то нужно жоско уметь в байтоебство под линукс и алгоритмы (это в HFT). Сами зп явно меньше чем у джавистов в среднем. Так-то я умом не сильно одарен, чтобы заниматься крутым ресерчем или просто разработкой в йоба компаниях типа яндекса или хуавея, к сожалению.

А собственно какой на данный момент есть роадмап для вкатывальщика? Нашел в шапке диаграмму со стрелочками, но там как-то много всего и сразу
781 1660026
>>660015
да в общемто для джуна достаточно нормально разбираться в core жаве (ооп, базовые типы, коллекциии, базовая теория по многопоточке), немного бд (знать как из приложения подключаться и мочь в простейшие crud операции), немного спринга (понимать что такое IoC, DI и мочь в какое-нибудь простенькое mvc приложение), если к этому еще и про паттерны будешь знать то хорошо.
Тут в принципе не так много знаний требуется, главное хоть както уметь их применять. Хорошо если найдешь какого-нибудь жависта который сможет тебя поменторить во время обучения.
782 1660030
>>660015
Задрочи полностью Java Core, научись писать ООП код. Скорее всего, надо будет еще и со Spring ознакомиться. Но мне хватило только Java core и основ Sql, html, css для устройства джуном. Задрочил с нуля за 3 месяца
783 1660062
>>659990
Проекты тут говно, особенно если как ты написал, ты не сильно умом одарен. В лучшем случае будешь писать очередную ентерпрайз систему с респ апи и микросервисами, ни о каких алгоритмах и ресерчах там речи нет и не будет. Будешь перелопатывать тонны документации специфичной для конкретной области, и переносить ето в код. Так што пока молодой, лучше задрочи как можно сильнее алгоритмы и компьютер сайенс, чтобы тебя взяли в НОРМАЛЬНУЮ контору. Но платят енивей хорошо, я недоучка из первой категории, $190k/год, но всегда жалею что недостаточно изучал алгоритмы или какой нибудь машин лернинг чтобы попасть в нормальные проекты.
784 1660065
>>660062

>$190k/год


коммифорния? больше кажется нигде таких зарплат не бывает
785 1660074
>>660062

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


Легко сказать задрочи. Я бы может быть и вкатился в машин лернинг и прочие вещи, но там где нужен ресерч, нужна и сильная математика. А сам я не особо в ней силен, да и к тому же в вузе она у меня очень слабая - рассказывают только самое основное. До уровня топовых вузов типа мфти очень далеко.
786 1660080
>>660065
Топтал, удаленка. Заблуждение, что таких зарплат нет, я пока не вкатился тоже думал так. Первый раз вкатился на $50/h, потом пока молодой был брал сразу два проекта по $50/h и задрачивал по 80 часов в неделю, ведь комьютить не надо, и вот тебе сразу $200K в год. Сейчас правда ленивый стал и уже так делать не буду (30 лвл).
787 1660087
>>660062

>Проекты тут говно, особенно если как ты написал, ты не сильно умом одарен


Так в том-то и дело, что раз он умом не сильно одарен, то какой ему ресерч и разные крутые проекты которые кстати где? в 1.5 конторах в рф?, на которые кстати очень часто требуют MSc и PhD в области математики или cs.
Тут дело в том, на каких технологиях будет не так мерзко заниматься софтвер инжинирингом - на джаве с ее неплохой экосистемой, инструментами и большим количеством вакансий, или на крестах, с которыми уже все далеко не так однозначно?
788 1660091
А data science на java сильно развит?
789 1660093
>>660091
Считай никак не развит, весь датасаенс на питоне

>>660080
Ну так и нету тут противоречия что нет таких зарплат при стандартной 40часовой недели. Что вообще за проекты у жава-фрилансеров?
790 1660095
>>660087

>что раз он умом не сильно одарен,


Ну может это и плюс, что он не считает себя умным. Я вообще ему говорю с перспективы того что может быть через 10 лет. Я вот жалею, что не послушал когда мне говорили лет в 20 не иди на работу и не забрасывай универ, но тогда интересовали тяночки и клубы. В итоге закончил с 2.2 средним лол. Какой там MSc и PhD после этого, сейчас конечно очень жаль что был таким долбоебом.
791 1660099
>>660093

>Что вообще за проекты у жава-фрилансеров?


Из последних:
1) сорт оф клон слака с небольшими переделками под конкретную область
2) медицинский софт типа обработка XRAY-сканов
3) всякие интеграции с платежными системами - таких много последнее время чому-то
4) SaaS обработка видео (типа юзер загружает видео и с ним надо че-то сделать)
792 1660116
>>660099
Ну тоесть это вполне себе взрослый ентерпрайз с командами разработчиков и длинными контрактами?
793 1660131
>>660116
Ну так, обычно 3-10 разработчиков, чтобы было больше че-то не припомню. Бывает есть продукт овнер или типа скрам-мастера, но это редкость. Где-то 70% компаний делают спринты и регулярные коллы почти каждый день, а остальным вообще похуй чем ты там занимаешься, обычно это крупные компании типа говернмент сектора. Контракты длинные, меньше года не помню чтобы было, и то потом я сам уходил.

Но я обычный девелопер, а так там есть и супер крутые ребята, и даже суб контракты от гугла, наверное мне говно скидывают лол.
794 1660154
>>660131
Какие там требования чтобы зайти на рейт 50+$/h ? Ниже мне не интересно, потому что нету достаточного стимула отказаться от ненапряжного посиживания в офисе.
795 1660170
>>660015
Если ты первокурсник то ебаш java core, sql, ну и фронта чуток, ближе к осени смотри нынче банки набирают постоянно стажеров, пойдешь на стажировку поймешь что к чему. После стажировки уже будешь иметь какой никакой опыт и главное поймешь нравится/нужно ли тебе все это

мимо-ушел-на-стажировку-после-второго-курса
796 1660246
>>659444
Видишь дырку? Это жопа property
797 1660247
Как реализовать стратегию наследования MappedSuperclass, если в родительском классе у меня есть связи многие-ко-многим и на него еще ссылается другой класс через многие-к-одному? Получается, что придется сделать как-то ассоциации к каждому ребенку? В гугле рассматриваются только примитивные примеры, где у родителя нет ассоциаций.
798 1660255
>>660247
Я с хибернейтом уже пару лет не связывался, тык что могу ошибаться. Но кажется что если если указать InheritanceType.SINGLE_TABLE вместо использования отдельных таблиц, то все должно работать
799 1660257
>>660255
Увы, для меня не вариант. Препод приказал все 4 стратегии пилить. Остальные у меня нормально замаппились.
800 1660268
>>660247
В чем именно проблема, что ты хочешь и что не работает? И, кстати, за FetchType.EAGER надо бить.
801 1660269
>>660257
Ну в теории можно было бы использовать один sequence генератор на две таблицы, а затем джоинить с их юнионом, но я хз умеет ли так хибернейт. Кажется что это не тот кейс где стоит использовать table_per_class, ты уверен что тебе именно сюда его нужно натянуть?
802 1660276
>>660247

>2.11.2 Mapped Superclasses .... A mapped superclass, unlike an entity, is not queryable and must not be passed as an argument to EntityManager or Query operations. Persistent relationships defined by a mapped superclass must be unidirectional. ....



https://stackoverflow.com/questions/6853802/jpa-table-per-class-problems-with-manytoone

переделывай
1587142594213.png54 Кб, 803x797
803 1660285
>>660268
>>660269
При стратегии JoinedTable у меня все красиво. releases заправляет всем.
А в MappedSuperclass, получается, что таблицы covers, release_genre и concert_track должны дублироваться для каждого наследника. Хайбернет так далеко не думает и не создает их.
>>660276
Получается, что это невозможно сделать в такой стратегии?
804 1660303
>>660285
MappedSuperclass не для этого вообще, он не про взаимоотношения альбомов с релизами. Это такой способ вынести в один класс общие поля, которые в разных (может и не связанных) сущностях используются. Например, если ты для всех делаешь один базовый класс с полем id.
1587143458873.png24 Кб, 503x178
805 1660310
>>660303
Я не очень тебя понял. В книге по JPA поля родителя дублируются в детяъ
806 1660317
>>660310
CREDITCARD и BANKACCOUNT между собой никак не связаны на уровне реляционной модели, у них просто есть общая (одинаковая) колонка owner, которую ты на уровне кода можешь вынести в общий базовый класс. Допустим даже только ради того, чтобы не дублировать ее описание.
807 1660322
>>660317
Так получается, что в моей объектной модели это и сделано. Общие поля в классе Release. Но как это правильно аннотировать, чтобы создались нужные таблицы?
808 1660326
>>660322
В твоей модели для релизов нужна как раз отдельная таблица, не надо на нее натягивать MappedSuperclass
809 1660330
>>660326
Именно в этом и был изначальный вопрос, возможно ли при такой модели реализовать MappedSuperclass
43326EC1-BDF4-4956-BF8F-5752CF880B20.jpeg2 Кб, 123x95
810 1660334
>>659555
Ну например, я удаляю из таблицы запись с primary key = 5, мне бин, который слушает бд отправляет post запрос с Json {table: tablename, primary key: 5, status: deleted}
Или добавляю новую запись, мне «бин» шлёт Json {table: tablename, primary key: 5, status: added}
Или меняю запись, мне «бин» шлёт Json {table: tablename, primary key: 5, column_changed: new_value, status: changed}
Что-то типа того, только не опрашивать бд каждую %period_time, а чтобы непрерывный мониторинг был и не нагружать бд кучей запросов. И не писать велосипедов самому.
811 1660341
>>660334
Ну это типичная задача аудита, решается версионированием сущностей или оборачиванием в логирующие прокси сервисов изменяющих данные. Не вижу ничего плохого в использовании велосипедов, из коробки это умеет хибернейт
https://vladmihalcea.com/the-best-way-to-implement-an-audit-log-using-hibernate-envers/
812 1660348
Покажите мне пример парсера, написанного с помощью ANTLR.
813 1660357
>>660348
Есть же его родной stringtemplate
814 1660360
815 1660363
>>660360
Погуглить тебе?
816 1660364
>>660363
погугли пожалуйста
817 1660393
Есть вебсервис.
Нужно реализовать долговыполняющуюся задачу.
Как это сделать?

Когда я прошла на PHP, не было выбора. Я отправлял сообщение в очередь, откуда воркеры разгребали задачи и выполняли их.

А в джаве?
Ведь я могу просто запустить тред, и пусть он работает, и не нужно плодить отдельный сервис.
Или всё-таки плодить?
818 1660408
>>660393

>Ведь я могу просто запустить тред, и пусть он работает


Да, можешь. Если нет необходимости думать о восстановлении после сбоев и т.п.
819 1660520
Почему вне пакета видит, а в пакете не видит?
820 1660561
>>660520
Безымянный пакет и пакет mypack - два разных пакета.

Если в AddInst нет package, а в MyClass package есть - они в разных пакетах и друг друга не увидит.
821 1660563
>>660561

>они в разных пакетах и друг друга не увидит


Ну так jm и mypack - тоже два разных пакета, но друг друга видят. Ну ладно, не суть. Стало быть, мне надо поместить безпакетные библиотечные классы в пакет, не подскажешь как это сделать? Идея доступ не дает.
822 1660578
>>660563

> два разных пакета, но друг друга видят


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

> как это сделать


Без изменения исходников - никак. А эти классы точно предполагается юзать за пределами либы? Может, они хоть в идее и отображаются, но по факту доступа к ним нет. Что документация говорит?
823 1660586
>>660578

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


Понял.

>А эти классы точно предполагается юзать за пределами либы? Может, они хоть в идее и отображаются, но по факту доступа к ним нет. Что документация говорит?


Это обычные классы, как "бонусная часть библиотеки", дополнительные инструменты. На официальном сайте вообще их можно только по отдельности скачать. Не понимаю, зачем так по дебильному сделали.
824 1660719
А какой смысл от конструкторов, когда через сет всё можно указать?
поясните, как для дебила, пожалуйста
825 1660778
>>660719
Писать короче. Если б были деконструкторы - было бы лучше.
826 1660786
>>660719
Если у тебя мутабельный объект, то для тебя нету особой разницы, но мутабельность это плохо. А у иммутабельных объектов нету сеттеров потому что состояние фиксируется на момент создания.

>>660778
Зачем деконструктор, когда за тобой мусор GC подбирает
827 1660987
>>660786
Посоны, где скачать курс https://www.coursera.org/learn/object-oriented-java бесплатно без смс?
828 1661012
Есть зип архив с гитахаба, как его превратить в библиотеку и забросить в свой проект?
sage 829 1661029
>>661012
Чтобы превратить zip в библиотеку, достаточно всего лишь...
image.png120 Кб, 259x194
830 1661032
sage 831 1661050
>>661032
Как закончишь сосать, объясни что за zip ты тас скачал.
832 1661054
>>660786

>Зачем деконструктор


Чтобы паттерн матчинг.
833 1661056
>>661050
Зип архив с обычными файлами, как в идее.
834 1661063
>>661056
ОК, попробую перевести на человеческий, 99% что ты скачал содержимое master бранча.
Тогда там 100% должна быть какая-то система сборки, скорее всего или Maven или Gradle.
Смотришь в корне что там есть:
README.md - описание проекта, открываешь его и смотришь есть ли инструкция по сборке.
Если инструкции нет ищешь в корне pom.xml или build.gradle
Если pom.xml - ставишь Мавен и билдишь им.
Если build.gradle - ищешь gradlew.bat и билдишь им если gradlew отсутвует то ставишь грейдл сам

Дальше в target или build будет jar файл.
835 1661065
>>661063
Понял, благодарю.
image.png159 Кб, 342x491
836 1661089
>>660987
такое есть
837 1661104
>>661089
Годная?
838 1661106
>>661104
понятия не имею
839 1661109
>>661054
Судя по упоминанию GC, он не отличает деструктор от деконструктора.
840 1661131

> деконструктор


> распаковка


> деструктуризация


> декомпозиция


В каждом языке решили выебнуться, называя одно и то же разными терминами? Прям как структуры, рекорды и дата-классы. Интересно, в жабе 16 тоже придумают новый термин?
841 1661219
Это как?
842 1661225
>>661219
Что не так?
Ссылки sb1 и sb2 указывают на один и тот же объект, соответственно, они равны. Значение одной ссылки ты заменил на null, и теперь она не равна другой.
843 1661226
>>661225
А почему вторая ссылка указывает на тот объект, на который первоначально указывала первая ссылка?
image.png9 Кб, 385x216
844 1661228
>>661225

>Ссылки sb1 и sb2 указывают на один и тот же объект


Чую пиздежь, но пока не понял где.
845 1661230
Вчера ебался со стратегиями, сегодня ебусь с отношениями.
Отображаю List через one-to-many. При этом, хайбернет создает соответствующие таблицы:
Hibernate: create table Artist (id integer not null, artist varchar(255), country varchar(255), rise integer, primary key (id))
Hibernate: create table Artist_Comment (Artist_id integer not null, comments_id integer not null)
Hibernate: create table Comment (id integer not null, comment varchar(255), primary key (id))

Но при записи полностью игнорируется Comment:
Hibernate: insert into Artist (artist, country, rise, id) values (?, ?, ?, ?)
Hibernate: insert into Artist_Comment (Artist_id, comments_id) values (?, ?)

Где я накосячил в аннотациях?
846 1661239
>>661226
>>661228
В джаве нет ссылок на ссылки. При присваивании значение одной ссылки присваивается другой. Изменить одну ссылку через другую не выйдет, это не указатели как в C/C++. Ссылка работает похоже на примитив:
int a = 1;
int b = a;
b = 0; // значение a не изменяется.
847 1661241
>>661239

>значение одной ссылки присваивается другой


А что насчет "передачи значения по ссылке"?
848 1661253
>>661241
Ссылка сама по себе, можно сказать, передаётся по значению. В ссылке содержится адрес объекта, и это просто число, которое скопируется при передаче в другой метод, как обычный примитив.
Но говорят, что объекты передаётся по ссылке, а не по значению, потому что сам объект не скопируется, а просто передастся его адрес.
849 1661278
>>661230
CascadeType поменяй на ALL или PERSIST
850 1661303
>>661253
Ясно.
851 1661307
>>661230
И потом ещё кто-то говорит, что ORM использовать проще, чем нативные запросы.
852 1661311
>>661278
Ничего не изменилось
853 1661319
>>661311
А как ты схороняешь данные?
854 1661323
>>661307
проще, когда понимаешь, как это говно работает.
855 1661325
>>661319
Через save
856 1661606
>>661089
Та не, там видеокурс.
857 1661810
Кто-нибудь может объяснить, какие преимущества несёт stream api, кроме упрощённого параллелизма и декларативного написания кода?
858 1661816
>>661230
Ну так блять, у тебя хибернейт, когда сохраняет, тупо не знает, что таблица Comment существует и поэтому создаёт дополнительную. Чтобы он это узнал, нужно в Comment сделать поле Artist с аннотацией ManyToOne.
859 1661823
>>661816
>>661230
Либо можешь просто ёбнуть @JoinColumn там где @OneToMany, если хочеш unidirectional
860 1661883
>>661816
>>661823
Всё, забей, я хуйню сказал.
>>661230
Ты точно ничего не пропустил по логу? Вообще, странная ситуация: как оно вставляет в Artist_Comment, если для вставки нужно сгенерировать id у коммента, а для того, чтобы его сгенерировать, нужно сначала вставить коммент в таблицу с ними.
861 1661987
За сколько примерно по времени можно задрочить джава кор? Если тратить по 4 часа в сутки ежедневно, например.
862 1662107
>>661987
1-12 месяцев, например
Безымянный.png30 Кб, 690x524
863 1662116
Джавач, я полный нуб в программировании. Скажите пж, что не так с классом и как поправить? Никак не мого скомпились проект
864 1662143
865 1662147
>>662116
добавь зависимость в мавен/грэдл
866 1662359
Эц самое, у вас в шапке написано шо хиперскил от жидбрейн хуйня, но если ты совсем зеленый, то тоже хуйня? Чиво делот? Извините за ошибки, я специально, а где-то и нет.
867 1662403
>>662359
Я вот сегодня начал проходить - вроде нравится. Хотя может в конце и хуйня, но вот в начале вроде норм. Не знаю, что не так
868 1662406
>>662359

>если ты совсем зеленый, то тоже хуйня


Хуйня.

>начал проходить - вроде нравится


Это и есть доказательство хуйни!
Нравиться читать стори про героев твоего любимого мультика?
Настоящие погроммирование даже за сраные 30к в мес это ежедневная боль и страдание. БОЛЬ И СТРАДАНИЕ!!11
За 100к тоже БОЛЬ И СТРАДАНИЕ и за 300к/нсек БОЛЬ И СТРАДАНИЕ.
Чем раньше ты это поймёшь, чем раньше начнёшь жить с этой болью, тем проще тебе будет вкатиться.
Поэтому слушай старый мудрых анонов. Если говорят хуйня, значит хуйня!
869 1662411
>>662406

>Настоящие погроммирование даже за сраные 30к в мес это ежедневная боль и страдание. БОЛЬ И СТРАДАНИЕ!!11



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

Понятно, что нужно писать свои проекты, но я пока даже не знаю что такое полиморфизм, лол.

>Если говорят хуйня, значит хуйня!


Твердо и четко, даже и не поспоришь.
870 1662412
>>662406

>Нравиться читать стори про героев твоего любимого мультика?


И какой тут мультик лол, я так и не понял тебя, анон.
Может ты с чем-то другим перепутал, я не знаю.
871 1662413
>>662406

>Хуйня


И где тогда лучше всего получить практику для вот такого зеленого как я?
Про литкод слышал
872 1662418
>>662413
На например https://www.qwiklabs.com/quests/42
сможешь ето сделать - джун 100% даже крепкий мидл
873 1662421
>>662418

>46 баксов за 7 часов занятий


Почему оно все такое платное, анон? Потому что реально работает и без смс?
874 1662452
>>662418

>the student should be an experienced programmer with Java. This Quest requires prior hands-on experience with GCP computing and storage services. It is recommended that the student have at least earned a Badge by completing the hands-on labs in the Cloud Architecture and/or the Baseline: Deploy and Develop Quests before beginning



Вроде интересные, но джаву кор хотя бы знать думаю надо. Вот месяц-два позанимаюсь хуетой и наверное сюда залезу
875 1662536
Прошу, поясните по поводу потоков.

Знаю, что программы бывают многопоточными.
Но ещё знаю, что любой современный сервер задает пул потоков, который позволяет также программе выполняться в несколько потоков.
Например в spring-boot можно задать параметр server.tomcat.max-threads, который будет определять, во сколько потоков максимум сможет работать встроенный Томкат.

Но зачем тогда в Джаве вообще многопоточность, как часть языка, если можно всю многопоточность в одну строку задать на сервере приложений?
Скорее всего я чего-то не понимаю. Объясните, пожалуйста.
876 1662542
>>662536
Многопоточность должна поддерживаться на уровне бизнес логики приложения. Т.е. это программист определяет будет ли его приложение однопоточным или многопоточным. В случае с томкетом программисты сказали: у нас будут листенеры входящих запросов, и каждый листенер будет обрабатываться в отдельном потоке, а юзеры смогут задавать количество этих потоков, т.е. соответственно листенеров. Вот и всё. Утверждение, что "во столько потоков будет работать томкет" неверно, потому что всего потоков в нем гораздо больше, просто некоторую часть из них можно задавать пользователю, а остальные нельзя, они регулируются там внутри самостоятельно.
24386f58-a888-446c-a50c-dddc23295a19.spring.jpg38 Кб, 1200x400
877 1662623
>>643468 (OP)
Анон, у меня вопрос. Работаю несколько месяцев джуном, пишу свой первый проект. Но я вообще нихуя не могу написать без гугла, вот прям каждый шаг приходится гуглить и искать уже написанный код, чтобы адаптировать его под свой. Это нормальный путь джуна, и каждый через это проходит, а в дальнейшем САМ пишет код?
878 1662665
>>662623

> Это нормальный путь джуна, и каждый через это проходит


Да, более или менее нормальный
879 1662669
>>662542

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



Я правильно понял, что количество потоков на томкате это грубо говоря количество юзеров, которые смогу одновременно работать с сервисом (при условии, что они действительно работают одновременно) и количество "копий" работающей программы на серваке?
880 1662674
>>662623
Да, всё норм. Главное - не копируй код из гугла бездумно, а старайся понять суть решения и если это стаковерфлоу, то не останавливайся на первом же решении, а изучи остальные и попытайся понять, какое бы лучше подошло в твоём случае.
881 1662873
Аноны, вот смотрите. В джаве есть пакеты для работы с музыкой. Эту музыку можно проиграть. Подскажите, пожалуйста, откуда эта музыка идет? Это же какой-то аудиопоток, его можно перенаправить в файл как-то?
882 1662893
>>662873
От системы зависит, на Unix может и можно.
А так ищи для этого в либе готовую функцию. Если нету, бери другую.
883 1662901
>>662893
Да я вот ничего путного не могу найти. Мне надо обработать midi последовательность через синтезатор и записать в файл. А синтезатор может только через каналы ее проиграть..
884 1663069
>>662669

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


Грубо - да. Детально: один юзер может выполнить два запроса сразу и займет два листенера, либо наоборот, 10 юзеров последовательно выполняют по запросу каждый и всех их может обработать один листенер (даже если это в пределах одной секунды).

>и количество "копий" работающей программы на серваке


Нет. Так можно сказать только если вся программа и состоит только из одного обработчика разпроса, тогда да, одна программа работает параллельно, но это слишком специфичные условия. Поэтому так: копия программы одна, а куски программы, где поддерживается многопоточность, исполняются одновременно параллельно.
885 1663145
>>662665

> Да, более или менее нормальный


>>662674

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


Спасибо, буду иметь в виду
886 1663193
Нахуй использовать System.lineSeparator(), если \n на всех системах переводит строку?
887 1663230
>>663193
Виндовый блокнот не понимает таких переводов строк.
Да и с консолью могут быть вопросы.
888 1663237
>>663193
Есть система, где только \r, но вероятность, что жаба попадёт туда, близка к нулю.
Нужно это не только чтобы принтить, но и чтобы парсить уже существующие строки с \r\n. Да бывают редакторы, где без \r переносы не отображаются вообще.
889 1663251
>>663230

>Виндовый блокнот


И нахуй он нужен?
890 1663272
>>663251
Опять школьники с войной между ОС.
891 1663313
>>663272
двачую. шиндовс не нужон. хуле тут воевать-то
892 1663336
>>663313
Хорошо, что можно наслаждаться блокнотом.exe даже на линуксе, через wine.
893 1663337

>Назвал notepad.exe говном


>Держи бан за Шитпостинг (Качество контента), сука!


Лол.
894 1663349
>>663337
Регулярно на мобилке ловлю баны якобы за использование VPN, приходится обходить через VPN.
895 1663354
>>663251
ОК, bat файлы с неправильными переносами не будут исполняться интерпретатором.
image.png17 Кб, 608x366
896 1663367
>>663354
Всё исполнилось, но у меня семёрочка.
897 1663379
Когда вы уже запомните? Джаве хорошо живется на любой популярной ОС!
898 1663401
>>663367
ОК, значит пофиксали.
У меня была ситуацией когда выкачанные из гита батник не работал из-за ётого.
Я нашел решение, как побороть пиратство! 899 1663451
Нужно переходить на openjdk
900 1663461
>>663451
У опенждк сроки поддержки короче.
901 1663474
>>663461
Смотря от какого вендора.
902 1663540
А че перекат никто не хочет сделать?
903 1663547
>>661987
В августе скачал джава для чайников, весной устроился на работу. До этого учил другой язык, но там не прокатило.
Можно и быстрее, у меня большую часть времени занимала прокрастинация.
904 1663558
>>663069
Понял. Огромное спасибо!
905 1663680
>>663540
Так 1000 постов ещё нет же.
906 1663687
>>663680
Да чет на нулевую тред не всплывает
907 1663716
>>663687
И не должен, в этом и фишка перекатов после 1000, меньше залётных будет.
908 1663820
Господа крудошлепы, хотели интересных задач? Вот вам такая.

У нас есть паровозик А и паровозик Б, которые едут в одном направлении. Паровозик А движется со скоростью 1 км/ч, а паровозик Б - 1.037 км /ч. За сколько паровозик Б догонит паровозик А если сказано что Б проебал 86 часов на старте?

Легко могу решить эту задачу рекурсией (больше трех месяцев, сближаемся до < 1 часа). Вопрос: правильный ли это подход, рекурсия? Наверняка этот тип задач уже разобран, имеет название и другие алгоритмы решения. Паровозики конечно это не настоящая задача, это я уже упростил, дальше не могу, помогайте.
909 1663838
>>663820
Ёбу дал, какая ещё рекурсия?

A(t) = t
B(t) = -1.037 · 86 + 1.037 · t

A(t) = B(t)

t = -1.037 · 86 + 1.037 · t
t = 1.037 · 86 / 0.037

t = 1.037·86/0.037
image.png287 Кб, 741x502
910 1663842
>>663838
Пасибо, это похоже на правду. В реальной задаче у меня 2309, но как я уже сказал, я остановил рекурсию на условии сближения меньше часа. Получается да, ебу дал, в школьную математику разучился. Еще раз спасибо!
image.png14 Кб, 280x289
911 1663849
>>663838
Слушай, вернись на секундочку. Я конечно ебу дал, но почему твой ответ немного не сходится? Пустил два возрастающих курсора, на пике переломный момент.
912 1663851
>>663849
А, я понял. У тебя вычисляется не время, а расстояние в момент сближения. Чтобы получить что надо мне надо еще вычесть начальные 86 км (2410 - 86 = 2325).
913 1663854
>>663851
Блять, хуйню какую-то несу, простите, пора спать уже

>У тебя вычисляется не время


>86 км


Время конечно же, и 86 начальных часов.
914 1663890
>>663854
Да, просто мне день было писать обозначения и размерности как в физике.
915 1663891
В чем разница между BufferedReader и Scanner? Что использовать коше'гнее?
мимо-маслёнок
916 1663929
>>663891
Посмотри в доках, что они умеют.
У сканнера есть пачка методов для чтения строк, слов, интов, булеаонов и прочего. Удобно, когда парсишь какой-нибудь поток.
Буффередреадер не умеет почти ничего из этого, но он может буферизировать поток, чтобы эффективнее читать.
А кошернее вообще в джаве не юзать ввод-вывод, его какие-то ООПшнутые создавали нахуй.
spring.jpg38 Кб, 1200x400
917 1664327
Анонасы, есть вопрос по Спрингу. Есть 2 таблицы в БД, к примеру "Офис и "Кабинет". Написал CRUD приложение. На стартовой странице создаются офисы, при переходе в офис можно создать необходимое количество кабинетов. Столкнулся с проблемой редиректа на страницу кабинетов при удалении и редактировании этих самых кабинетов. Редирект работает только на страницу index, а необходимо на kabinet/{office.id}
Как запомнить значение office.id? Если я просто напишу return "redirect:/kabinet/{office.id}";, у меня будет ошибка Model has no value for key 'office.id'
Выручайте, аноны!
918 1664328
>>664327
Сам метод:
@GetMapping("/deliteKabinet/{kabinet}")
public String remove(@PathVariable Kabinet kabinet, Model model) {
kabinetRepo.delete(kabinet);

return "redirect:/kabinet/{office.id";
}
919 1664369
поясните за многопоточность в джаве.
асинк с евентлупом понял
image.png25 Кб, 587x252
920 1664370
>>664327
>>664328
Честно не знаю как это делается средствами MVC, но всегда есть ResponseEntity для гибкого ручного ответа. Пусть гуру MVC уточнят где тут best practices, а ты пока так сделай, работает же.
921 1664375
>>664370
меня почему то до сих пор корежит от длинных названий и усложненных конструкций в жаве
922 1664378
>>664328

>public String remove(@PathVariable Kabinet kabinet, Model model)


>kabinetRepo.delete(kabinet);


А где у тебя вообще этот office.id, в кабинете?
Тебя не устроит просто вытащить его, типа kabinet.getOffice().getId(), до того, как ты удаляешь кабинет, и вручную дописать в строку редиректа?
923 1664521
>>651396
А можно исходники позыркать?
924 1664522
>>664521
>>647561
Вот оригинал. Что еще там зыркать?
925 1664567
>>664522
оки
926 1664752
>>664522
Хули ты за меня отвечаешь, опарыш?
927 1664768
>>664752
Потому что я тебе этот код написал. Ты че такой злой, цветочек? Недоспал? Переспал?
928 1664855
>>664768
Ебу дал? Че ты мне там написал, ебан?
929 1664870
>>664855
Ты не тот анон с проблемой пикселей? С него все началось. В любом случае, твое приложение с квадратиками "удачно" появилось аккурат после моих скринов с кодом, на которых квадратики поменьше и можно задавать их размер.
Не переживай, няша, ты когда-нибудь тоже сможешь самостоятельно что-то написать. А вот помогать другим с таким настроем вряд ли...
930 1664881
>>664870
Хуй знает, к чему ты высрался. Если ты думаешь, что image.setRGB это "твой код" то тебе в дурку.
931 1664918
>>664881
Извини, конфузия вышла, обознался. Мир?
Кстати, у тебя там ошибка: 250px на 7 нацело не делится, тяжело было 252px сделать? А так одни блоки 36x36, другие 35x35, округляешь ты там чтоли?
932 1664937
>>664918
Где ты 250 и 7 увидел?
933 1664944
Вы чо, охуели тут совсем? Это точно джава-тред?
934 1664947
>>664937

>Где ты 250 и 7 увидел?


Ты точно сам программу писал, да?

>>664944
Мы разбираем программу на свинге. Десктоп на джава мертв, но все же.
935 1664950
>>664947
Хм, я думал в коде где-то. Не думал, что тебе настолько делать нехуй.
936 1664951
>>664950
Так это и есть в коде. Или ты рандомом выбираешь размеры количество блоков?
image.png7 Кб, 652x389
937 1664959
>>664947
Десктопом лучше заниматься на специально предназначенном для этого наследнике дельфи.
938 1665002
Высрал хуйню, проведите код ревью.
https://github.com/Stingray42/identicon-java
939 1665072
>>665002
хуйня
940 1665100
Вот есть строка. Большая. В ней есть символы форматирования: табуляция, новая строка. Мне надо в этой строке заменить подстроку. Но так, чтобы в процессе поиска места замены эти символы форматирования не учитывались. Можно это как-то сделать? Есть методы string.replace(target, replacement). Но для этого метода присутствие символа табуляции например уже сделает подсторку другой и это не сработает. В большой строке, например есть подстрока ...жопа\nчлен...
Но если я в методе .replace("жопачлен", "член") напишу, то он не сработает, а надо чтобы сработал. Надеюсь понятно объяснил.
941 1665101
>>664959
Легко так сказать. Как-будто переключиться с явы на сишарп как просто. Сам-тт язык похож, а вот с библиотеками, фреймворками всякими охуеешь разбираться.
942 1665108
Чем отличается List от ArrayList?
943 1665110
>>665108
ArrayList a = new ArrayList(); // можно
List b = new List(); // нельзя
944 1665111
>>665110
А можно List l = new ArrayList();? Почему так
945 1665113
>>665100
Именно для этого и были придуманы регулярные выражения. Грубо говоря задаешь маску "жопа*член" и оно находит и понимает, гугли детали.
946 1665115
>>665111
Ты совсем зеленый? На каждом углу об этом пишут для новичков, даже в русском интернете. Одно - интерфейс, другое - класс, реализующий этот интерфейс. По правилу наследования класс (потомок, субскласс) можно присвоить переменной типа суперкласса (предка).
947 1665117
А я вот вообще не понял политику Java. Если ты получаешь деньги за своё приложение тебе лицензия нужна?
948 1665119
>>665111
>>665115
Для продвинутых пользователей:
Это принцип подстановки Барбары Лисков, буква L из пяти принципов SOLID; записывайте, понадобится вам для интервью.
949 1665122
>>665119
Почему все так уверены что если ты увлекаешься программированием то для тебя это работа? Я вечерком просто люблю на джаве пописать всякие простенькие игры и всё. Не дай боже работать программистом.
950 1665123
>>665117
Это относится только к JDK от оракла, и только к современным версиям > 2018-2019, не помню точно. Типа у них там наиебовейшие инструменты профайлеры-хуяйлеры которые их жавба задавила бесплатно давать использовать.
951 1665124
>>665123
А как они меня искать будут? Вот получаю я деньги за своё приложение, они мне на почту напишут "дай денег". Я отвечу им что в живу в Магнитогорске пусть приезжают.
952 1665125
>>665122
Ты это мне уже говорил, возможно даже в этом самом треде. Что тебя смутило? Что я отправил тебя читать о такой простой вещи? Так это же логично, там больше инфы, и понятнее изложено чем тебе рандом-хуй объяснит. Ну а т.к. это форум и читают вопросы/ответы все, то я для максимально широкой аудитории и пишу. Если тебе про SOLID не надо, то просто пропускай мимо.
953 1665126
>>665125
Нет, про Листы я почитаю
954 1665127
>>665124
Такая же проблема у нас с налоговой: больше вероятности что к тебе придут если ты держишь кафешку, а не частным репетиторством на дому занимаешься. В джаве так же: они подождут пока твое приложение вырастет до уровня яндекса-хуяндекса, и тогда уже постучат. А бекэнд аппликухи можно вообще безболезненно хостить за nginx'ом пожизненно, главное настроить чтобы лишние хедеры не возвращал, и все, как можно узнать что ты там юзаешь на беке?
955 1665133
>>665113
Это не то немного. Суть в том, что там эти символы форматирования могут стоят где угодно. И мне бы какой+то вариант, чтобы они игнорировались совсем. Ну т.е. чтобы строка с этими символами и без них была как-будто equals
956 1665135
>>665133
Нет, это все равно как раз то. Регулярное выражение можно так составить чтобы оно хоть после каждой буквы проверяло "левые" символы, т.е. маска "жопа", где - это допустим только \n и пробел.
image.png3 Кб, 395x51
957 1665136
>>665135
Парсер сожрал звездочки, см. пикрил.
958 1665150
>>665135
Ну и как это составить чтобы игнорились например символы /n?
959 1665227
>>665136
Ну в том и дело, что строка длинная и я ебанусь так хуячить на каждом месте, где может быть /n маску. Нет ли другого способа.
960 1665248
>>665227
Более того. Сейчас обрисую. Есть изначальная строка и в ней случайным образом нахуячены символы переноса строки. Я вызываю метод replace() на ней, а вот таргет дл реплейса приходит без символов переноса строки. И в итоге метод не заменяет в изначальной строке нихуя, потому что строки с символом /n и без считаются разными. Сразу говорю, что в изначальной строке удалить символы /n нельзя. Ну и как сделать так. чтобы метод replace() думал, что строки с и без /n одинаковые?
961 1665264
class void?
962 1665339
>>665264
что?
963 1665344
>>665264
Да, у войда есть враппер класс.
Посоветуйте курс по spring 964 1665384
Как основательно подойти к изучению spring? Туториалы с их сайта, кажется, недостаточно различные детали раскрывают и подход не комплексный получается. Может есть какой-нибудь курс годный или книга или нужно просто доки читать? (Последнее тоже, кажется, не совсем подходящим вариантом для того, чтобы с нуля постигать что-то новое)
965 1665387
>>665248
После замены что должно получиться? Просто вставить новую чистую подстроку без \n? Легко. Или заменить все символы старой подстроки на новую, сохраняя между ними \n? Это ебань, но тоже выполнимо если подстроки одинаковой длины.
Screenshot 2020-04-23 at 13.21.13.png150 Кб, 1760x914
966 1665407
>>665248
Тут я вижу 2 варианта:
1. Первым делом из обоих строк удалить все переносы строк тем же replace(), а потом уже вызвать replace() с нужным текстом.
2. В той строке которую нужно заменить надо пробелы между символами заменить на группу \s - тогда туда и переносы строк попадут.
967 1665429
>>665387
>>665407
Первый вариант не идет потому что изначальная строка должна сохранить форматирование в целом. Если удалить там все переносы, то потом обратно их никак не расставить.
Второе.

> В той строке которую нужно заменить


Там большая строка внутри нее есть куски, которые надо заменить. И эти куски имеют форматирование. Когда вызываем реплейс, то туда передаем таргет-строку, но она уже без форматирования И в этом проблема.
968 1665478
Куда еще кроме бэка можно вкатиться на джаве?
Бэк нравится, джава нравится. Не нравится то, что я терпеть не могу фронтенд. А чтобы потом из бэка подняться в фуллстек, надо фронт таки терпеть. То есть я уже ставлю себе барьер в карьерном росте.
969 1665480
>>665429
>>665387
Мне кажется ты не понял. Легче было бы если бы ты хотя бы тестовые данные предоставил.
В первом случае я имелл ввиду такое, это легко сделать регулярками:
Дано: --a-b---c-de--f
Замена: bcd -> hello
Результат: --a-helloe--f

Во втором я имел ввиду такое (очевидно, что для этого нужно чтобы подстроки были одной длины):
Дано: --a-b---c-de--f
Замена: bcd -> 123
Результат: --a-1---2-3e--f

Как я и сказал, со вторым придется ебаться. Ничего готового на это нет и быть не может, слишком специфично. В таком случае делают токенизацию, ищут по токенам с нужным типом, заменяют и в итоге собирают строку обратно со всеми типами токенов.
970 1665481
>>665478

>Куда еще кроме бэка можно вкатиться на джаве?


Нахуй.
971 1665483
>>665407
Ого ебать, что за language?
Screenshot 2020-04-23 at 13.59.12.png150 Кб, 1210x1068
972 1665487
>>665429
Приведи уже пример, потому что из этих "куски имеют форматирование" нифига не ясно. И что с заменой - там известно заранее что на что надо менять, или это в рантайме станет ясно?

А так у тебя есть:
1. Группы в исходном тексте. Например чтобы сохранить переносы в моем примере регулярку надо поменять:
JSON.replaceAll("\"\\w+\"(\\s+):(\\s+)\"\\w+\"", "\"foo\"$1:$2\"bar\"")
туктс тегов поменяется, а форматирование останется.

2. Если этого мало, можно использовать функцию которая будет делать замену.
973 1665491
>>665480
Уточнение про второе: просто найти строку для реплейсмента (b---c-d) можно легко и как в первом примере, ебанина будет именно на моменте замены. И если по условию у нас каждый символ исходной строки мапится в каждый символ замены, именно один-к-одному, то тут легко будет в один проход циклом пройтись и позаменять, без токенизации.
974 1665493
>>665483
Java 14 с text blocks.
975 1665495
>>665493
Я про аннотацию.
976 1665497
>>665495
Это аннотация идеи, просто чтобы она знала что там за контент.
image.png5 Кб, 215x125
977 1665500
>>665497
Неа, нет такого в идее. Это из org.jetbrains.annotations?
978 1665501
>>665497
А sql можно указать диалект?
979 1665514
>>665478
Андроид, но в широком смысле это тоже фронтенд. И минусы те же.
980 1665518
>>665480
Нет, первый вариант. Но я не пойму как это сделать регулярками.
981 1665519
>>665500
org.intellij.lang.annotations.Language
В последней ультимейт версии есть.

>>665501
Да @Language("Oracle")
982 1665520
>>665487

> или это в рантайме станет ясно?


В рантайме
983 1665523
>>665514
И все теперь, вешаться?
984 1665524
>>665523
Все стали забывать, что работа не всегда должна полностью нравиться.
image.png33 Кб, 623x469
985 1665526
>>665518
А, ну тогда изи как я и сказал.
986 1665527
>>665524
Ну бля, ну не мучаться же теперь.
987 1665528
Когда вы только начинали работать джуном, как оно было?
Столько дрочился, чтобы устроиться, а по итогу какой-то хуйнёй страдаю, ей богу тестовые на неделю были сложнее.
По полдня ловлю баги, думаю, почему это не работает, как должно, другую половину пишу 2.5 строчки кода и хуяк - таск выполнен! Так и должно быть?
988 1665535
>>665528
Та же хуйня была, потом придрочился и начал выполнять таски быстрее.
989 1665569
>>665528
Две недели уже делаю, то, что надо было за 30 минут. Стыдно уже.
990 1665583
>>665569
>>665535

>быстрее


>стыдно


Как понять вообще, когда должно быть стыдно? И с каким темпом надо работать?
Это ж не завод, тут нет нормы в 100 деталей.
Не хочется ведь, чтоб думали, что я проёбываюсь половину времени.
991 1665585
>>665528
Тестовые это стресс тест, а на работе как и везде много рутины.
992 1665657
>>665528

> Когда вы только начинали работать джуном, как оно было?


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


> По полдня ловлю баги, думаю, почему это не работает, как должно, другую половину пишу 2.5 строчки кода и хуяк - таск выполнен! Так и должно быть?


Хз, мне сходу дали писать полноценное приложение на спринге
993 1665658
>>665657
В одно рыло? Я думал на каждую подзадачу свой работник. Один например только по бд, другой только по контроллером, третий по сервис layer и т.д.
994 1665662
>>665658
Часто это микросервис и ты один за него в ответе, и еще за несколько других микросервисов в зависимости от их сложности.
995 1665664
>>665658

> В одно рыло? Я думал на каждую подзадачу свой работник. Один например только по бд, другой только по контроллером, третий по сервис layer и т.д.


Нет, еще двое джунов со мной. Между собой договариваемся, кто что делает
996 1665698
вам нравиться джава?
997 1665701
>>665698
Нетъ, но деньги не пахнут.
998 1665712
>>665698
Нравится - не нравится...
Не в ресторане.
999 1665719
>>665701
а шо,много зашибаешь?
1000 1665727
>>665519

>В последней ультимейт версии есть.


Мда, ясно.
1001 1665730
>>665698
Да. Работа есть, в целом пока интересная. Гайдов тьма, каких-то диких глюков и багов я пока не встречал.
Хороший инструмент, на мой взгляд. Но я пиздец ньюфаг.
1002 1665733
>>665730
16Гб на Hello, world хватает?
1003 1665737
>>665733
Оверхед от JVM статический: запускаешь Hello world, отжирает 200мб, запускаешь Tomcat с 20ю хелловорлдами, отжирает 205мб. Понимаешь как оно должно быть? Нужны хелловорлды на 500кб добро пожаловать в делфи, на 20кб - динамическая линковка, и т.д. Итог: если тебе не подходит Java по памяти стоит задуматься правильный ли ты выбрал инструмент.
1004 1665739
>>665737
Что такое линковка
1005 1665741
>>665737
То же самое с Electron vs PWA, хочешь чтобы работало в standalone без зависимостей, выбираешь первое, хочешь чтобы работало под единой средой исполнения, берешь PWA (если фич хватает для задачи).

>>665739
Связь библиотек с твоим приложением.
1006 1665742
>>665733
Я хз сколько хеллоуворлд надо.
Щас есть приложуха со спрингом, там несколько разных бд, 9000тысяч контролёров, ещё какие-то свистопирделки. И вот эта хуйня отжирает 500 мегабайт.
1007 1665744
>>665741
Ну в джаве тоже есть класспас - связь библиотек с приложением. В чем разнциа?
1008 1665748
>>665742
это в холостую,а под нагрузкой,а если еще сокеты навернуть?
1009 1665752
>>665748
Это когда я руками запускаю рассчитывать какую-то статистику по сущностям, что лежат вообще хз где на каком-то хадуп сервере.
1010 1665754
>>665744
Рассмотрим на примере виндоус.
В джаве библиотеки это не dll-ки. Библиотеки в джаве подгружаются в каждое приложение отдельно, обособленно, изолированно друг от друга. DLL-ки же (особенно системные) это разделяемая область памяти (гугли "верхние 2 гб виртуальной памяти процесса в виндоус"), т.е. единственная копия DLL в памяти может быть использована всеми приложениями которые работают.
1011 1665759
>>665742
это с томкатом?
1012 1665761
Не перекатывай, сука!
1013 1665762
1014 1665766
>>665762
версия джавы?
1015 1665769
1016 1665781
>>665766
Восьмая. Я хз что ты хочешь тут услышать?
Это не такая лагучая хуйня, как её описывают. Хочешь томозное говно - попробуй чуток скалы, например. Когда хеллоуворлд запускается дольше спринг приложения с сотней контролёров.
Выше тебе уже описали, что у тебя один хеллоуворлд отожрёт Х памяти, но 20 отожрёт уже не 20Х.
Если гонишься за скоростью - ну ебашь на низкоуровневых языка, они быстрее. Но не удивляйся потом, что пока ты пишешь базовые сущности Вася уже запускает своё говно на спринге в прод. Бизнесу будешь объяснять, где ты гигабайт памяти сэкономил. Мне не надо.
1017 1665783
>>665781
они хоть работают над скоростью жвм,что там в 14 и 15 будет?
1018 1665794
>>665783
Постоянно какую-то хуйню оптимизируют.
У джавы огромный минус это её обратная совместимость, это же и её плюс. Т.е. просто выкинуть какую-то хуйню старую они не могут, всегда стараются сделать так, чтоб ничего не сломалось от их нововведений.

>скорость


Она нахуй не всралась, железо улучшается быстрее, чем ты такой же прирост производительности получишь от маня-оптимизаций.
1019 1665802
>>665781
Джава довольно сносно работает с памятью и не тормозит, а иногда даже работает быстрее нативных программ (я серьёзно, jit творит чудеса). Но программы на ней очень часто пишут упоротые фанаты ооп и паттернов gof и, где можно обойтись двумя-тремя классами, они городят десяток с разными абстрактными фабриками, билдерами и прочей байдой, подключая в мавеновском проекте библитоеки на каждый чих и получается чрезмерно раздутый проект.
1020 1665807
>>665783
Ты вообще плохо представляешь предметную область, если у тебя кореллирует версия ЯП со скоростью исполнения в какой-то JVM в вакууме. Имплементаций JVM много, от разных вендоров, разных по скорости и фичам (некоторые не сразу или не совсем поддерживают полную спецификацию). И потом, как новые фичи языка влияют на существующие фичи? Т.е. есть код, он уже отлажен, покрыт тестами и работает. Делают новую фичу, не трогая старый код, и если правильно соблюден SOLID, в частности loose coupling, то в скорости исполнения старого кода вообще ничего не меняется. Есть фичи JVM, которые коречно же влияют на скорость всего, например это GC. Если мы рассмотрим какую-то конкретную JVM, например от оракла, то там уже пятая или шестая версия GC.
1021 1665818
>>665802
Не надо проблему с прокладками приравнивать к проблемам языка.
1022 1665860
>>665754
Круто, а в джаве когда так будет?
1023 1665866
>>665860
В джаве подобие этого уже есть - это аппликейшен сервера и веб контейнеры. Технически реализовано по-другому, но суть та же - множество приложений, среда исполнения одна - "расширивание системных библиотек". Насчет расшаривания пользовательских библиотек не уверен, зависит от контейнера, может быть некоторые подгружают только один экземпляр либ, а может и каждому приложению свою копию либы, тут я не знаю.
1024 1665869
>>665866

>В джаве подобие этого уже есть - это аппликейшен сервера и веб контейнеры


Ну это наверное не только в джаве. А сейчас везде докер и контейнеры, так что мимо.
1025 1665934
>>665860
Уже есть, называется class data sharing - разные инстансы JVM шарят загруженные классы. Не знаю когда впервые вышло в прод версию, но в 14 включено по умолчанию.

Есть Open J9 там шарятся не только классы, но еще и JIT кеши и вообще есть JIT as a service. Чтобы уменьшить потребление памяти одное VM.
1026 1665936
слава С#!
1027 1665939
>>665936
Неповезло Славке с фамилией, видать родители сильно пьющие были.
1028 1666015
>>665939
Не, видимо, Славка детдомовский.
image.png38 Кб, 704x446
1029 1666016
Время - глубокая ночь. Поясните свежим взглядом, это идея тупит или где? Схуяли такой варнинг?
1030 1666017
>>666016
А, все, buf же 1024, мне нужен был len. ПОря спать.
1031 1666068
Почему в Java нельзя реализовать метод, меняющий местами содержимое двух переменных типа int ?
1032 1666109
>>666068
Потому что int аллоцируются на стеке, и чтобы поменять их тебе нужны указатели на стек. А такие выкрутасы только в С возможны.
1033 1666195
>>666068
Ваще не вопрос.

void swap(int []a, int []b) {
int temp = a[0];
a[0] = b[0];
b[0] = temp;
}
void f() {
int []a = {1};
int []b = {2};
swap(a, b);
}
1034 1666261
Двач, делаю лабу. На ввод подается строка, и надо проверить строка ли она, если нет то сказать юзеру попробовать еще раз. Сделал вроде через try-catch (через Scanner) но этот try-catch пришлось обернуть в do-while. Звучит как очень хуйовый способ. Нагуглил в джаве лейблы, но все еще не уверен. Вообщем как лучше, залупить try-catch или использовать лейблы?
1035 1666265
Двачи помоги. Делаю лабу на джаве, и у меня в коде непонятная каша. Собственно надо проверить просто ввод юзера в консоли чтобы была строка. Ввод осуществляю через Scanner и ловлю исключение оного. (если на вводе не строка). И вот в чем дело. Я поместил try-catch в do-while. Но выглядет это так себе. Нагуглив узнал что способ действительно хуйовый. А из решений в джаве только лейблы. это правда?
tl;dr что лучше поместить try-catch в луп или использовать метки?
9245.jpg37 Кб, 465x600
1036 1666311
Почему x = ~2 дает -3?
2 это же 10, значит должно быть 01, то есть -1?
1037 1666315
>>666265
Как пользовательский ввод может быть не строкой? Любые символы, вводимые пользователем - это строка, и nextLine() всегда их будет возвращать, будь там хоть знаки препинания или цифры.
1038 1666319
>>666311
Тебе в C-тред.

Гугли про дополнительный код.
1039 1666388
>>666311

>2 это же 10, значит должно быть 01


Совершенно верно! Однако ты не учел, что там не просто 10, а 000000000000000010, соответственно это все превращается в 11111111111111111111111101, а не просто в 01 (количество цифр там в зависимости от типа - байт 8, шорт 16, инт 32, лонг 64). Ну а т.к. знак это самый старший бит, то и получается отрицательное число, а не огромное положительное. А то что ты хотел сделать изначально - выделить два бита - делается бинарной маской:
11111111111111111111111101 &
00000000000000000000000011 (маска) ==
00000000000000000000000001
Ну тока у тебя тут проблема как размер маски подобрать, это уже в зависимости от задачи.
1040 1666393
>>666388
Забыл добавить: по условиям комплиментарности -1 у нас это 11111111111111111111111111, а не 10000000000000000000000001 как ты бы мог предположить.
1041 1666467
>>666388
>>666393
Вот это ты его приложил. Мне аж стыдно стало.
1042 1666523
>>666265
pomesti loop v try-catch i vizivai metod kotorii schitivaet vvod v bloke chatch esli vvel ne stroku
1043 1666544
Ненавижу такие задачи >>663820
Это значит, что мне не стоит идти в бэкенд? Сложная тех часть нравится.
1044 1666556
>>666544
Сложная тех часть или мат часть тебе нравится? С математикой много не работаю поэтому и не сообразил сразу выразить одно через другое (автор поста про паровозики). Но бекенд часто полон челленджинг тасками, например помню задачу когда мы ловили rtmp с клиентов на мобилках, конвертили вручную по спецификациям (обожаю байтоебство), и пересылали по вебсокету в хранилище на сохранение, генерируя при этом плейлисты.
1045 1666566
>>666556

>Сложная тех часть


Именно тех часть. Мат часть всегда из-под палки делал в школе/универе. Хотя вроде не полный долбаеб в математике, но и не скажу, что хорош в ней. Просто видел, что часто на бэке всякие выпускники мех матов сидят, в серьезных конторах подготовку по алгоритмам и структурам дрочат серьезно. Меня даже какой-нибудь нетривиальный вложенный цикл разобрать не особо удовольствия доставляет. Само собой, я в этом разберусь, но сидеть и думать, куда какая итерация идет и куда элементы переходят как-то удовольствия не доставляет.

>обожаю байтоебство


Ну вот это мне тоже нравиться, всегда была интересная какая-то низкоуровеннвая фигня. Вообще люблю докапываться до истины и понимать, как работают вещи.
1046 1666569
>>666566
сорре за ошибки в посте, чуть прилег днем поспать и только одупляюсь
image.png22 Кб, 550x210
1047 1666576
>>666566
А вообще кровавый ынтерпрайз это часто про сообщения, миллионы миллионов сообщений, очереди сообщений. Технически конечно тоже челлендж есть, но тут уже сторонние примеси какие-то, кафки там, раббиты, твой код за этим всем уже не так заметен.
1048 1666582
Я что то совсем запутался в этих версиях java. Появились такие вопросы и проблемы:
1. Последняя сборка java 11 попадет под новую лицензию?
2. Почему то .jar собранный при использовании OpenJDK не хочет запускаться, выдаёт ошибку типа проверьте установку Java.
3. Что за ебанутая система версий. Как я понял: есть через что запускается(JRE) и есть инструмент разработчика(JDK). Почему JDK версии по типу 8, 11, 14, а JRE 1.8.0_251. Какая версия JRE нужна что бы запустить программу использующую JDK 14? Есть ли обратная совместимость?
1049 1666585
>>666576
Котосибирск без палева.
image.png7 Кб, 434x139
1050 1666587
3) 1.8 и 8 тождественны. Раньше нумеровали первым типом версий, сейчас перешли на второй.

>Почему JDK версии по типу 8, 11, 14, а JRE 1.8.0_251


Неправда, см. пикрил.

>Какая версия JRE нужна что бы запустить программу использующую JDK 14?


Для JDK 14 нужна JRE 14. Обратная совместимость не так работает: JDK 9 запустится на JRE 14, а не наоборот.
1051 1666589
1052 1666592
>>666582

>1. Последняя сборка java 11 попадет под новую лицензию?


Тебе это зачем?

>2. Почему то .jar собранный при использовании OpenJDK не хочет запускаться, выдаёт ошибку типа проверьте установку Java.


Скрин сюда.

>3. Что за ебанутая система версий. Как я понял: есть через что запускается(JRE) и есть инструмент разработчика(JDK). Почему JDK версии по типу 8, 11, 14, а JRE 1.8.0_251. Какая версия JRE нужна что бы запустить программу использующую JDK 14? Есть ли обратная совместимость?


Хуйня полная, есть версия и апдейт как 1.8u251
Начиная с джава 11, JRE уже не делают, теперь везде JDK. Чтоб запустить, нужно 14 и выше. Обратная совместимость - это когда ты программу для ждк 14 запустишь через 10 лет на ждк 22
1053 1666594
>>666587

> Неправда, см. пикрил.


Так потому что у тебя JDK 8

>Для JDK 14 нужна JRE 14. Обратная совместимость не так работает: JDK 9 запустится на JRE 14, а не наоборот.


А где скачать JRE 14? И как понять что у тебя она установлена? Я вот скачал последнюю версию java с офф сайта. Версию показывает пик2

>>666592

>Тебе это зачем?


Интересно

>Скрин сюда.


Переустановил jdk, заработало.

>Начиная с джава 11, JRE уже не делают, теперь везде JDK. Чтоб запустить, нужно 14 и выше. Обратная совместимость - это когда ты программу для ждк 14 запустишь через 10 лет на ждк 22


Чтооооооооооооооооооооооооооо. То есть что? Я даже в голове не могу вопрос сформулировать, нихуя не понятно.
1054 1666597
>>666594
В натуре пиздец какой то. Ладно, попробую так: Я хочу что бы моя программа была максимально доступна. Какую версию использовать при разработке?
1055 1666598
>>666597
Я бы советовал 1.7
Чтоб без всякой хуйни с лямбдами, стримами, спрингбутом.
1056 1666599
>>666594

>Интересно


С твоим уровнем тебе это пока что НЕ интересно. Поверь.
1057 1666601
>>666599
С каким "моим"? Если ты про Хеллоу Ворлд это я для теста вывел, что бы проверить вновь установленный JDK. И в чём проблемма написать если знаешь? Это же не код за меня написать а просто сказать "jdk11 не попадает под новую лицензию" или обратное.

>>666598
Блин там нету files.readString который очень желательно нужен, так как удобный.
1058 1666605
>>666594

>А где скачать JRE 14


JRE 14 идет в комплекте с JDK 14 в папке bin. С новой политикой лицензий JRE от оракла теперь отдельно не распространяется. Они хотят чтобы ты со своей программой - джарником-хелловорлдом - поставлял весь JRE сам платя за лицензию, т.е. чтобы конечному пользователю не нужно было ничего больше скачивать. Если честно это пиздец. Я там выше рассматривал ситуацию Electron vs PWA, и где весь мир идет по пути уменьшения лишних избыточных библиотек, оракл идет им навстречу заставляя JRE паковать к себе в приложение. И ладно если ты в JetBrains работаешь, а если ты пишешь хелловорлды?
1059 1666607
>>666597
Минимальную. Сейчас это 8 LTS, но скоро уже будет только 11 LTS. Там советуют 7, но 7 к сожалению это уже легаси.
1060 1666613
>>666605
Мдааа, что то они хуету намутили. Это же реально не удобно.

Пытаюсь всё проанализировать:
Программу сделанную на JDK 14 нельзя будет запустить пользователю который просто скачал с java.com джаву. Но 11 сможет?
1061 1666625
>>666613

>пользователю который просто скачал с java.com джаву


Именно от этого они хотят уйти - пользователь не хочет никуда ходить и что-то скачивать. А если всё-таки скачал, то java -version подскажет что он может запустить, а что нет.

>Но 11 сможет?


Вопрос без контекста - какую именно версию он скачал с java.com? Выше уже все расписали несколько раз.
1062 1666628
>>666625
Последнюю, которая сейчас находятся если нажать на больную красную кнопочку на сайте java.com
1063 1666629
>>666628
*большую
1064 1666630
>>666601
nio.Files же в 7-ке ввели.
1065 1666631
>>666628
На этом сайте уже не скачивают, и там 8-ка кажется.
image.png133 Кб, 845x783
1066 1666632
>>666628
Нажал, попал сюда. О какой 11 ты говоришь? Русским по белому написано - version 8.
1067 1666634
>>666630
Именно .readString нету, который возвращает строку. Есть .readAllStrings но он массив возвращает.

>>666632
Ладно с этим более менее разобрался. Спасбо
1068 1666650
https://habr.com/ru/post/498406/
Не прогайте пацаны, вы матерям еще нужны
1365319465518.png15 Кб, 691x597
1069 1666670
>>666319
Спасибо, оказывается отрицательные числа кодируются в нем.
https://randomprogrammingstuff.wordpress.com/2018/01/01/twos-complement-tutorial-java/
>>666388
Да.
1070 1666673
>>666650
tldr: у одного из создателей-кодеров клаудфлары обнаружили разжижение мозгов, обусловленное генетически. астральная атака на этих монополистов таки сработала!
1071 1666676
>>666673

>обусловленное генетически


В том и дело, что нет.
1072 1666680
обновил идею до 2020.1 и за день дважды просила увеличить выделяемую ей память.. до этого 2 года работала с дефолтной настройкой на 750мб и не ворчала, а тут захотелось ей побольше памяти.. это что они такого сделали, что памяти теперь требуется много больше?
или это только у меня так?
1073 1666697
>>666676
Дат.
изображение.png57 Кб, 733x667
1074 1666714
Есть такой код(пик1). Создаётся окно размером 1280 на 720, но как я прочитал из за стиля окна реальное поле рисование получается меньше. Ширина вместо 1280 равна 1262 к примеру. Для решения этого нужно указать размер JPanel в ручную. Если в конструктор пишу this.setBounds(0, 0, 1280, 720) это не даёт никакого эффекта. В интернете все примеры создают сами JPanel, но как тогда там рисовать я не понимаю. Помогите пожалуйста.
Если даже создаю ещё один JPanel, указываю setBounds и уже на него добавлю Main с JPanel то отображается только маленький квадратик посреди окна.

>>666680
Только сегодня тоже перешёл на 2020.01, у меня такого не было
1075 1666722
>>666697

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

1076 1666725
>>666714

>class Main extends JPanel


Мерзотная хуйня кста
А вообще тебе надо установить размер Main, а JFrame сам правильно отресайзится.
1077 1666728
>>666725
А как по другому сделать?

Вообще я же сам устанавливаю размер фрейма(16 строчка) но размеры не сходятся с желаемымими
1078 1666731
>>666728

>фрейма


А надо размер JPanel

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


Вот так: https://github.com/Stingray42/identicon-java/blob/master/src/main/java/org/example/gui/GUIBootstrapper.java#L21
1079 1666734
Шутки шутками, а у нас на работе задумываются о переходе на го.
изображение.png70 Кб, 831x750
1080 1666736
>>666731
Как-то так? А как же мне тогда рисовать paint? Как мне его добавить на панельку?
1081 1666737
>>666736
Ты нахуя код скопировал
Жди судебный иск
1082 1666738
>>666736
new JPanel() {
public void paint(Graphics g) {
...
}
};
1083 1666739
>>666737
А ты лицензию не добавил в проект.
1084 1666740
>>666739
А какая лицензия по умолчанию действует для проектов на гитхабе, кстати?
1085 1666741
>>666731
А почему мульти catch не сделал в конце?
1086 1666744
>>666740
Отвали!
1087 1666746
>>666741
Так прикольнее, а я код по приколу пишу
1088 1666750
>>666740

>However, without a license, the default copyright laws apply, meaning that you retain all rights to your source code and no one may reproduce, distribute, or create derivative works from your work.

1089 1666757
>>666731
Что не так-то, что я упускаю? Задаем размеры компонента, делаем pack() на фрейме, дефолтный layout, почему нихуя не работает?
1090 1666761
>>666734
и хорошо
1091 1666765
>>666757
setPreferredSize делай
1092 1666766
какой еще гуй на жабе люди очнитесь
1093 1666767
>>666766

>какой


няшный
1094 1666770
>>666734
А чо не нода или пхп?
1095 1666771
>>666770
Го быстрее и меньше ресурсов жрет.
1096 1666775
Почему в джаве чар выделяется одной кавычкой ', строка двумя ", а мультилайн строка - шестью """? Почему не тремя ''' как в питоне?
image.png50 Кб, 626x531
1097 1666779
>>666765
Уже лучше, спасибо. Но размер внутренней клиентской области (без учета 1px бордера и 30px заголовка окна) - 120x100, даже если задавать setBounds(0,0...), в чем причина, что за отступы дополнительные? И все-таки надо бы понимать почему просто setSize() или w,h внутри setBounds() не работают?
1098 1666780
>>666779

>И все-таки надо бы понимать почему просто setSize() или w,h внутри setBounds() не работают


Не надо, пиши на JavaFX.
1099 1666781
>>666775

> '


> "


Это всё одна кавычка, но одна одинарная, а другая - двойная.

> """


В питоне можно и тремя двойными, в нём одинарные и двойные кавычке равнозначны.
1100 1666783
>>666779

>120x100


Это ограничение винды, иначе кнопки закрытия/сворачивания окна не поместятся. Поставь 300х300.
1101 1666784
>>666781
Ты не понял, '=1, "=2, '''=3.

>в нём одинарные и двойные кавычке равнозначны


нахуя
1102 1666787
>>666783
Точно, даже на 150x150 работает, благодарю.
1103 1666788
>>666722
Это вообще-то медицинская тайна, щяс они тебе все скажут, ага.
1104 1666791
>>666784

> '=1, "=2, '''=3


""" != ''''''

> нахуя


Мне самому эта хуита не нравится, они идёт вразрез с "There should be one-- and preferably only one --obvious way to do it". В PEP8 нет жёсткой рекомендации использовать что-то конкретное.
1105 1666794
>>666791
А " != '', дальше что? Визуально-то одно и то же.
1106 1666798
>>666794
Визуально-то да, но для транслятора есть разница же.
1107 1666799
>>666798
""" это в любом случае новая конструкция, можно было бы использовать более приятное и логичное ее представление.
1108 1666810
Жаба позорная!
1109 1666812
А в идее есть функция "вынести из проекта только сорцы в отдельную папку"? Какой-нибудь export...
Ну как в гит, где мы лишнее не закидываем благодаря gitignore.
ffffй.png19 Кб, 720x480
1110 1666902
>>665526
Не мог ты подсказать почему не работает? Че-то я вообще не догоняю как это работает.
Вот пример, ошибка. Ну вроде бы виноваты скобки {}, но если убрать деление и подставновку символов /n , то на скобки похую, оно сработает. Если оставить деление и подставновку символов /n, но из таргета удалить эти скобки {}, то ошибки не будет, но и подставновка не сработает.
ffvggg.png3 Кб, 434x68
1111 1666904
Почему эта строка вторая выглядит не как первая? Почему не синим цветом кавычки? Почему черным уветом скобки? В чем разница?
1112 1666906
>>666902
Ты не можешь проще примеры делать? Как у меня? Если у тебя что-то не работает - упрощай, а не пытайся разгрести это говно нахрапом всё, там же ошибка на ошибку настакивается. Я вот навскидку не могу сказать в чем проблема, я глаз сломал минуту разглядывая этот пример. Выкинь для начала кавычки двойные, они сильно усложняют тебе всё. Какая ваще разница, пример же? Далее, когда заработает минимальный пример тогда уже наращивай. Щас забью твой пример, посмотрю что можно сделать

И еще за правило возьми скрины делать с номерами строк, и ошибку тоже постить со стактрейсом. Я вот конечно догадался что в ошибка возникает методе replaceFirst() потому что в тексте ошибки фигурирует pattern, но все равно это время. Это все в твоих интересах же, чтоб тебе быстрее помогли.
1113 1666916
>>666904

>Почему эта строка вторая выглядит не как первая? Почему не синим цветом кавычки? Почему черным уветом скобки? В чем разница?


Это из-за того что IDE догадывается что testTarget используется как regexp и пытается его подсвечивать соответственно. Ты потом немного редактируешь, причем неправильно, паттерн, и передаешь в функцию. Но паттерн в результате выглядит как говно: на первом месте фигурная скобка, хотя это начало квантификатора и просто так идти не может. В общем у тебя паттерн составлен неправильно, щас исправлю.
image.png90 Кб, 1025x826
1114 1666922
image.png12 Кб, 962x89
1115 1667024
Не получается запустить javafx14, советы со стакаверфлу по включению в строку пути к либе, небу и Аллаху не помогли.
1116 1667037
>>667024
Разобрался, оказывается обязательно надо ребутаться.
1117 1667065
>>667024
Ты пидор. Сам поймешь почему.
1118 1667068
>>667024

> error invalid flag: (x86)


Уже только по вот этому можно понять что ты неверно расставил кавычки.
1119 1667079
>>667065
А у тебя рак яиц.
>>667068
Где я их неверно расставил?
1120 1667082
>>667079
В консольной команде.
image.png12 Кб, 962x89
1121 1667086
>>667079
Вот здесь, надо полагать. Это не POSIX синтаксис.
1122 1667282
Мнение анонов о JetBrains Academy?
1123 1667327
>>667282
Это гиперскил который? Видел там ищут трейни без опыта задачки писать. Тот же жавараш без картинок/кодварс. Как по мне пустая трата времени. Имеет смысл немного попердолиться только если хочется получить лицензию на пару месяцев на все продукты жидбрейнс.
1124 1667331
>>667327
https://www.jetbrains.com/ru-ru/academy/
Я хотел написать что-то на котлине по гайду.
1125 1667334
С какого уровня понимания джавы начинать решать задачки на литкоде?
изображение.png29 Кб, 650x424
1126 1667338
Сейчас изучаю жаву по жопараш и хортсманну. Первое планирую скоро бросить, тк не стоит того прошел почти 20лвлов Так вот, куда идти дальше? Многопоточность, спринг или бд? Как лучше расписать дальнейший план обучения, что бы посоветовали добавить и на что сделать особый упор?
1127 1667352
>>667338
Хуперскилл делай.
1128 1667413
>>667338

> Многопоточность


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

> спринг или бд


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

Ну а затем спринг и можно EE чуток. Понять, что такое DI, дальше потыкать несколько туториалов по MVC/REST/JDBC/Data JPA.
1129 1667506
>>643468 (OP)
Народ,помогите с кодом,у меня просто разрыв шаблона.

Вот так код выдает нули:

public class NewMain {

public static void main(String[] args) {
Methods degrees=new Methods();
double result=degrees.findDegrees(100.4);
System.out.print(result);
}

}

public class Methods {

double degreesC;
double degreesF;

public double findDegrees(double degreesF){

degreesC=(5/9(degreesF-32));

return degreesC;

}

}

Но если поменять умножение местами следующим образом,то все волшебным образом начинает работать как надо:
public class Methods {

double degreesC;
double degreesF;

public double findDegrees(double degreesF){

degreesC=((degreesF-32)
5/9);

return degreesC;

Объясните же мне сей феномен.
1129 1667506
>>643468 (OP)
Народ,помогите с кодом,у меня просто разрыв шаблона.

Вот так код выдает нули:

public class NewMain {

public static void main(String[] args) {
Methods degrees=new Methods();
double result=degrees.findDegrees(100.4);
System.out.print(result);
}

}

public class Methods {

double degreesC;
double degreesF;

public double findDegrees(double degreesF){

degreesC=(5/9(degreesF-32));

return degreesC;

}

}

Но если поменять умножение местами следующим образом,то все волшебным образом начинает работать как надо:
public class Methods {

double degreesC;
double degreesF;

public double findDegrees(double degreesF){

degreesC=((degreesF-32)
5/9);

return degreesC;

Объясните же мне сей феномен.
1130 1667509
>>667506
Тебе в пятый класс.
1131 1667514
>>667509
Ты мне поможешь?
1132 1667517
>>667514
Дуракам помагать нельзя.
1133 1667521
>>667517
Ну хотя бы намекни,я серьезно не въезжаю почему так
1134 1667523
>>667521
Посмотри в дебаггере где вылезает ноль.
1135 1667527
>>667506
Так работают преобразования типов. Если хоть один из операндов - вещественное число, результат будет вещественным, иначе - целое.
5 / 9 = 0
5.0 / 9 = 0.55555...

Операции умножения/деления выполняются слева направо, и если где-то встретился промежуточный вещественный результат, дальше вычисления будут с вещественным типом.
degreesF-32 в результате даёт вещественное число. При умножении на 5 получаем вещественное число и т.д.
1136 1667530
>>667527
У него дигрис в обоих случаях вещественный.
1137 1667532
>>667509
Бля от души спасибо. Однако если я переставляю вперед и делаю как ты сказал,то у меня в результате единица после нулей появляется,а если не переставлять то не появляется.Почему так?
1138 1667535
>>667532
То есть если оставить рабочую версию,кторую я в посте сначала указал,то результат 38.0,а если деление вынести вперед и сделать 5.0/9 то получается 38.000000000001
1139 1667558
>>667530
Да, только в первом случае у него сначала 5/9 вычисляется в 0 и умножается на остальное, а наоборот нуля не будет.

>>667535
На ЭВМ не все числа можно представить точно, есть ограничения. Для double, если повезёт, можно рассчитывать на точность в 14 знаков, дальше идёт мусор. Для float вдвое меньше.
1140 1667560
>>667558
Неприятная недоработка
1141 1667571
>>667560
Это не столько недоработка, сколько аппаратное ограничение. В 64 бита тупо не вместить больше. Да и точность нужная не настолько часто, но если нужна, можно взять программную реализацию арифметики, например, BigDecimal, там храни хоть тыщу знаков.
1142 1667587
Эклипс или Нетбинс?
1143 1667590
>>667587
Oracle JDeveloper
image.jpg72 Кб, 800x418
1144 1667600
>>667587
DrJava.
1145 1667602
1146 1667603
>>667587
Консоль.
1147 1667604
>>667587
Зачем не использовать жидбрейнс?
1148 1667669
>>667604
Не секурно. Она пиздит мой код.
1149 1667803
>>667587

> Эклипс или Нетбинс?


Да вообще похуй, что нравится, то и юзай. Но в проде нетбинс сейчач никто не юзает. Либо идею, либо эклипс
1150 1667857
>>666922
Спасибо, вроде сработало. Странно, ч тоже пытался реплайсом удалить скобки, но что-то не сработало тогда.
1151 1667885
>>667669
Кодота пиздит, а идея нет.
1152 1668009
Как замены в строке выполняются быстрее: через регулярку или перебор в цикле?
1153 1668017
>>668009
1) Это никогда не станет бутылочным горлышком в твоем приложении
2) Код приведи, непонятно что в твоем понимании "перебор в цикле"
3) Сделай простейший бенчмарк, это тебе по силам:
long start = System.currentTimeMillis(); // или nanoTime()
for (int i = 0; i < 10000000; i++) { / code here / }
long time = System.currentTimeMillis() - start;
4) Изучи скомпиленный байт-код
1154 1668054
>>668017

>regex 889


>loop 389


ясна
1155 1668086
>>668017

> Изучи скомпиленный байт-код


Можно вывезти человека из сишки, но сишку из человека - никогда.
1156 1668099
>>667885
Уверен, ты сидишь на винде.
1158 1668208
>>668187
Опять выходишь на связь?
1159 1668210
>>668099
всем насрать на ваш код
1160 1668217
Нечегоскрыватели ИТТ
1161 1668219
>>668208
Дадая.
1162 1668225
>>668219
ПИШИ BIGDECIMAL
image.png42 Кб, 571x525
1163 1668352

>java.io.IOException: Отказано в доступе


Откуда берется фраза на русском? В принстектрейс только ссылка на эту функцию, но в ней нет русского.
1164 1668369
>>668352
Из функции в ОС наверное. У тебя же она на русском.
1165 1668400
>>668086
Точно! Забыл -XX:+PrintAssembly!
1166 1668435
>>668017
Оффтопом хочу сказать что не всегда так можно померять так как в jvm есть такая хуйня как dead code elimination из-за которой jvm просто проскипает команды если там будут бесполезные вычисления

мимо другой анон
1167 1668455
>>668369
Да. А что это за функция? Где ее вызов посмотреть?
1168 1668456
>>668455
Иди назхуй!
1169 1668463
>>668456
Почему ты так ко мне относишься? Я правда не знаю что делать дальше, чтобы понять откуда это сообщение пришло.
1170 1668478
>>668455
Копайся в декомпилированном коде. Рано или поздно наткнёшься на native-метод и увидишь, что дёргается некая dll-ка. Дальше дизассемблируй эту dll-ку и копайся уже там. И однажды найдёшь, откуда эта строчка.
1171 1668579
>>668435
Все правильно, но есть JMH который знает как с этим бороться и видео от Шипилёва как правильно писать микробенчмарки.
1172 1668591
>>668455
Посмотреть или в WinAPI или PosixAPI, смотря что ты используешь.
1173 1668618
>>668579
Шипилева не смотрел, за наводку спасибо. Смотрел у Валиева он пытался таким бенчом мерять стримы когда они только появились
1174 1668633
Мб перекат?
1175 1668734
1176 1668737
>>1668733 (OP) (OP)
ПЕРЕКАТ >>1668733 (OP) (OP)
1177 1668956
>>643468 (OP)
https://vertex-academy.com/tutorials/ru/samouchitel-po-java-s-nulya/

Поясните за эту мурзилку? В идела хочу чтоб как у ОПа в пыхапэ треде было
1178 1669483
Аноны, доброго времени суток.
Прошу пояснить за GeekBrains. Я гуманитарий до мозга костей, но начальные знания по программированию, благодаря приличному преподаванию информатики в универе, присутствуют.
У меня есть достаточно времени и баблишка, чтобы пройти полный курс по Джаве. Да-да, хочу ВКАТИТЬСЯ В АЙТИ, господа гусары. Стать разработчиком, открыть для себя новую сферу развития, как хотите называйте. И нет, Дудя я не смотрел. Мне просто это пиздец как интересно.
Однако, меня много чего смущает. Есть ли тут товарищи, которые на этом "факультете" учились, чтобы на мои вопросы ответить?

1. На GB много задвигается про трудоустройство. Послушайте, реально после успешного прохождения годичного курса трудоустроиться хотя бы джуном? Они хоть какие-то вакансии предлагают, или это просто КАРЬЕРНАЯ КОНСУЛЬТАЦИЯ?

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

3. Что, по вашему мнению, лучше? Курсы в GB или полноценный очный курс в вузике? Есть возможность проплатить и пойти в Бауманку поучиться. Цена одна и та же примерно, но я работаю и хочу таки дистанционку.

Также рад буду прочитать про ваш опыт обучения.
1179 1669719
>>667587
Эклипс умер инфа сотка
1180 1670223
Есть книги на русском по 9 и по 8 версии. Какую выбрать для начала?
Выше по треду читал, что 9 устарела, а 8 нет и на ней работает большинство. Но 9 таки свежее.
Посоветуйте.
1181 1670442
>>670223
Просто напоминаю, ну так, невзначай, что в марте вышла 14 версия.
1182 1670607
>>670442
Я в курсе. Между 8 и 9 с нуля какую выбрать?
1183 1670727
>>670607
Я не читал ни одну, сам вкатываюсь, попробуй задать вопрос в новом треде >>1668733 (OP)
1184 1705581
1185 1711336
Не могу установить в нетбинс JavaFX,библиотеку скачал и добавил,но все равно выдает

Failed to automatically set-up a JavaFX Platform. Please go to Platform Manager, create a non-default Java SE platform, then go to the JavaFX tab, enable JavaFX and fill in the paths to valid JavaFX SDK and JavaFX Runtime. Note: JavaFX SDK can be downloaded from JavaFX website.

Че делать?
Тред утонул или удален.
Это копия, сохраненная 9 июня 2020 года.

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

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