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

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

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
original.jpg78 Кб, 600x400
Java #98 thread /java/ 1842154 В конец треда | Веб
Прошлый >>1802373 (OP)

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

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

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

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

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

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

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

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

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

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

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

Перед тем, как задать вопрос Как вайти в айти?, ознакомься с вики:
https://github.com/qqqlll/Java-Thread/wiki
https://github.com/random76/Java-Thread/wiki
sage 2 1842160
Тред не легитимен, в шапке нет аниме. Жалоба модеру уже отправлена.
sage 3 1842165
>>842154 (OP)
Где онемэ, блять?
4 1842187
Не ставишь оняме в шапку — значит ты пидор.
5 1842188
Кто нибудь юзал https://github.com/bcdev/jpy в проде?
6 1842192
ПЕРЕКАТ
ПЕРЕКАТ
ПЕРЕКАТ
>>1802373 (OP)
>>1802373 (OP)
>>1802373 (OP)
7 1842205
Что читать/смотреть, чтобы максимально быстро поднять Core Java? Предлагают перекатиться с друого языка, кодил много, проблем быть не должно. По спецификации пробежаться? Хорстманн что-то хуетой показался.
8 1842213
>>842205
оракловских туториалов наверни и жабадок параллельно
image.png12 Кб, 488x238
9 1842218
>>842205

>По спецификации пробежаться?


>пробежаться

10 1842248
>>842205
У того же Хорстманна есть Java for the Impatient
11 1842330
>>842205

>Хорстманн что-то хуетой показался


чем?
12 1842372
Учу жс, ужасаюсь от того, сколько там понаварочено хуйни, вникать в которую нет никакого желания. Это все действительно надо знать или можно просто писать в джава-стиле и не ебать мозги?
13 1842376
>>842372
Не прям всё надо обязательно знать, но и писать как на джаве нельзя. Я бы прочитал всё, но без задрачивания, а затем бы поискал пет-проекты на js на гитхабе и посмотрел в них, что реально юзается.
14 1842394
>>842376
Ну я так и думал.. Как же лень его учить.
15 1842418
ну шо, посоны, тырпрайз на слетующий лтс переходит или так и будет на восьмой сидеть?
16 1842420
>>842418
На 16?
17 1842426
18 1842427
>>842426
Нет, на го переходит.
19 1842429
>>842420
Но ведь лтс 17.
20 1842431
>>842429
Бляяя, пиздец, сколько еще ждать нахуй?
21 1842433
>>842429
а, чет я проебался слегка. вот бы на свеженький лтс переити с заубавшей восьмерочки... эх....
22 1842434
>>842431
год
23 1842435
>>842433
На мавен 4.0 и jigsaw 2.0...
24 1842442
>>842435
и loom...
25 1842443
>>842435
И Java EE 7.
26 1842444
>>842443
Нахуй не нужна. В будущем только микросервисы.
27 1842445
>>842444
Микросервисы на Java EE.
28 1842447
Сап аноны, поступил в уник и языком выбрал Java, подскажите что нужно дрочить и как набрать знаний, чтобы на 2.5-3 курсе можно было бы устроиться на работу?
29 1842450
>>842447

>подскажите что нужно дрочить


хуй

>как набрать знаний


никак

>устроиться на работу


работобляди не нужны
30 1842455
>>842450
Ок, спасибо!
31 1842458
>>842447
Английский хотя бы до B1, дальше какой-нибудь Хорстманн, что-нибудь по SQL и спрингу, пара пет-проектов, и всё.
32 1842459
>>842447
computer science
33 1842493
>>842160

>Жалоба модеру уже отправлена.


Пацаны, я объебался, а как репортить? Кнопку убрали что ли?
image.png34 Кб, 1064x438
34 1842497
image.png34 Кб, 968x678
35 1842502
36 1842503
>>842497
Накляузничено.
37 1842863
Аноны, мб кто знает какое-нибудь открытое API, возвращающее данные в стандарте ISA-95? Пытался в гугл, без адекватных результатов. Даже если нет подобного API, может есть у кого примеры в виде файлов, был бы очень благодарен
38 1842868
>>842863
Вот, например, этот файл, он соответствует стандарту ISA-95?

https://gist.github.com/jerdys/604b4494e9a09790a937b077c8437d64
39 1843003
Пиздец, дико туплю.
Есть один жарник, которого нет в Maven Central, хочу его добавить в проект, но чтобы и на тестовых и прод серверах все ок работало.
Добавил в проект, в директорию ${project.basedir}/lib/xyita/xyita-name-14.8.8.jar, прописал билд

<build>
<finalName>app</finalName>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-install-plugin</artifactId>
<executions>
<execution>
<phase>initialize</phase>
<goals>
<goal>install-file</goal>
</goals>
<configuration>
<file>${project.basedir}/lib/b2mml4j/B2MML4j-1.0.0.jar</file>
<groupId>org.xyu.xyita</groupId>
<artifactId>xyita-name</artifactId>
<version>14.8.8</version>
<packaging>jar</packaging>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>

Все ок, билд прошел. Пытаюсь добавить классы из этой зависимости в проекте – нихуя, идея не видит. Я долбоеб? Да.

ЧЯДНТ? И вообще, как лучше добавлять подобные зависимости, шоб они не только локально работали?
39 1843003
Пиздец, дико туплю.
Есть один жарник, которого нет в Maven Central, хочу его добавить в проект, но чтобы и на тестовых и прод серверах все ок работало.
Добавил в проект, в директорию ${project.basedir}/lib/xyita/xyita-name-14.8.8.jar, прописал билд

<build>
<finalName>app</finalName>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-install-plugin</artifactId>
<executions>
<execution>
<phase>initialize</phase>
<goals>
<goal>install-file</goal>
</goals>
<configuration>
<file>${project.basedir}/lib/b2mml4j/B2MML4j-1.0.0.jar</file>
<groupId>org.xyu.xyita</groupId>
<artifactId>xyita-name</artifactId>
<version>14.8.8</version>
<packaging>jar</packaging>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>

Все ок, билд прошел. Пытаюсь добавить классы из этой зависимости в проекте – нихуя, идея не видит. Я долбоеб? Да.

ЧЯДНТ? И вообще, как лучше добавлять подобные зависимости, шоб они не только локально работали?
40 1843114
>>843003
По хорошему - надо ставить свой прокси репозиторий Nexus/Artifactory и класть такие зависимости туда.

А так можешь попробовать добавить зависимость с scope - system
41 1843214
Какой же груви охуенный нахуй.
42 1843261
>>843214
Да, хороший язык, полная свобода действий - можно писать на груви, а можно не писать на нём.
43 1843264
>>843261
Ну, нет смысла писать на джаве, когда можно писать на груви. Там-то, в отличие от Котлина, 100% интероп с джавой.
44 1843272
>>843264
Конечно же, смысл есть. В джаве статическая типизация, которая исключает множество трудноуловимых ошибок.
45 1843274
>>843272
А в груви че по твоему?
46 1843283
>>843274
А в груви MissingPropertyException.
47 1843285
>>843283
А еще @TypeChecked
48 1843287
Здравстуйте.
49 1843293
>>843285
Который, конечно же, пишут везде и всегда.

Ладно, я уже сотни раз срался на эту тему, мне надоело.
50 1843294
>>843293
Нет, пишут только там, где нет уверенности в том, что не нарвешься на эксепшены. Голову-то надо включать, когда код пишешь.
51 1843987
Поясните что делать после кора? В требованиях на вакансии пишут знать sql, а как его попробовать применить если в спринге ORM ? Что запилить на чистом sql, если знаю только кор, который нигде не применял, никогда? Что делать дальше, я не понимаю!?
52 1844001
>>843987
В спринге не только ORM, но и JdbcTemplate и ещё куча всего, там чистый SQL. ORM не означает отказ от SQL, в реальных проектах их используют совместно.
На чистом коре далеко не разгуляешься, учи упомянутый тобой спринг, затем пиши какой-нибудь круд-форум-борду-магазин (или что-нибудь поинтереснее, если есть фантазия).
53 1844008
>>843294
Опечатался в ветке которая не покрыта тестами - и
Hello MissingPropertyException my old friend.
54 1845226
Блядь, какой же уебищно мерзкий синтаксис у этой вашей Джавы. Хорошие деньги мне платят, но не перестаю блевать с синтаксиса.
Мимо асмоеб-питонист
55 1845228
>>845226
Перетолстил, бро.
56 1845274
>>845226
Почему тебе не похуй?
57 1845294
>>845226
Чем?
мимо-учу-джаву-первым-языком
58 1845485
>>845294
Учи учи
Привыкай к строгой типизации, не будешь либерахой как питонисты.
Эти вообще метаются туда сюда
Хочу стринг, а потом хочу стринг в инт или в байт
59 1845486
>>845485
[str(float(i)) for i in range(1, 10)]
60 1845517
>>845486
говорю же либерахи
61 1845544
Кто то тут писал про рефералку на hyperskill. Если еще актуально то скинь пожалуйста на мыло anonymailtrashcb!XanANUSma&v&ilPUNCTUMrqh&u с меня как обычно спасибо
62 1845835
>>845485
Так в чем минусы синтаксиса джавы? Мне просто интересно, я других языков то и не видел почти.
У меня пока бомбит только от генериков в сложных случаях применения(рефлексия, каррирование), голову просто сломишь. Но не уверен, что это минус, возможно для меня, как для ньюфага сложно.
Ну и большое количество бойлерплейта для самой маленькой задачи просто убедило писать его через генерацию в идее. Писать джава-код в блокноте это мучение.
Ну и половина тем в курсе по джава кору это преодоление этой самой статической типизации.
63 1845880
Аноны, молю, выручайте.
Есть один XML файл, есть один POJO класс, сгенеренный по XSD. Хочу данные с XML скастить в имеющийся класс и все заебись, но только при работе с локальным файлом. Как только я пытаюсь с интернетов скочать тот же самый файл и прогнать через JAXB в нужный мне класс – ХУЙ. Все поля null. Почему так нахуй?

Сам метод – https://pastebin.com/e8ZT8CwJ
XML – https://gist.githubusercontent.com/jerdys/e73a61c5bab1d5abfc3bfd07cd8d067d/raw/361dd43012015feff9a7eafe84725d3b7500b302/INV-20121210175555-0001L0001_01.xml
64 1846167
>>842154 (OP)
Есть опенсорс проекты на Spring Boot, чтобы увидеть как это должно выглядеть? Гугл дает конечно, но там дрисня индусская, реальные проекты есть? Или все написано сейчас на джеэсовских фреймворках без капли джавы
65 1846186
>>846167
Ищи на гитхабе в поиске.
66 1846279
>>845486
Питон решил поспорить с перлом за звание write only language.
67 1846282
>>845880
Возможно дело в неймспейсах. Убери их из XML и из класса если есть.
68 1846286
>>846279
Котлин немного отстаёт от питона в этом звании.
http://govnokod.ru/27030
69 1846309
>>845486
Найди отличия, как говорится
IntStream.range(1, 10).forEach(i -> System.out.println((float)i));
70 1846345
>>842447
СтажировОчка. Если твой вуз не дно, то она должна быть.
71 1846407
>>846309
Ты вообще нихуя не то написал.
72 1846416
>>846309
IntStream.range(1, 10)
.map(i -> String.valueOf((float) i))
.collect(Collectors.toList())
73 1846423
Стримы в джаве всегда были известны своими понятностью и лёгкостью чтения другими людьми.
74 1846425
>>846423
Просто циклы со счетчиком не надо писать на стримах, вот и все.
изображение.png235 Кб, 680x709
75 1846429
76 1846763
>>845835

>Так в чем минусы синтаксиса джавы? Мне просто интересно, я других языков то и не видел почти.


Ты сам знаешь:

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



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


Для ньюфага дженерики и рефлексия нахуй не нужны.
77 1846812
>>845835
Недостатки джавы являются продолжением достоинств.

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

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

Оборотная сторона - многословность и некоторая дубовость.
Тяжело писать сложный код без IDE.
Зато с IDE писать - одно удовольствие.

Если бы this-типы сделали, было бы вообще охуенно.
78 1846819
>>846812

>Джава - простой язык, совершенно лишённый двусмысленности.


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



А вот это двачую, даже говнокод читается легко. Чего не скажешь о собратьях спецсимвольных, особенно когда кодер экономит буквы.
79 1846832
Мне после 8 лет жабы одно удовольствие писать микросервисы на го. И 1 сервис пришлось пилить на java, мне на контрасте конечно бойлерплейтом по губам java сервис провел
80 1846844
>>846812

>Джава - простой язык, совершенно лишённый двусмысленности.


Можно примеры о какой двусмысленности/сложности других популярных языков идет речь?
81 1846845
>>846844
А поебацца вам не завернуть?

Это очень сложно в двух словах объяснить ньюфагу.
Загугли scala dreaded underscore, например.
82 1846850
>>846832

>го


.Методы

.Большой
.Буквы

Гуглопидары в своём репертуаре.
Просто не могут в юзабилити, блядь, вообще никак, ни одного исключения не знаю.
83 1846854
>>846850
Это да, пиздец.
84 1846915
>>846854
Го - один сплошной пиздец.
Снимок экрана 2020-11-03 в 10.44.10.png137 Кб, 1636x910
85 1846917
>>846915

>Го - один сплошной пиздец.


Только если err != nil )))
86 1846931
>>846832
if err != null
87 1846934
>>846917
Я реально люто проигрываю с этих их проверок err, какое же убожество.
88 1846944
>>846931
Ну собственно это мой скрин
>>846917
if err != nil {
fmt.Println("don't panic")
}

defer func() {
if r := recover(); r != nil {
panic("Vse normalno, pacany")
}
}()
image.png8 Кб, 1339x44
89 1846991
Дублирую тут, че от меня хотят?

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


Ну я прикинул писю к носу, ни суть, делаю.
Все остальное сделал, а вот этот момент смутил, хули от меня хотят?
Поднять локально сервер (чек, на экспрессе), парсить json пост запросы по рутам(чек, express.json), а потом вот эта.
Печатать на экран в смысле? Вывод в консоли? Постман ответ получает, это сделал, или страничку хтмл генерить с ответом что-ли? Отвечать в них? В смысле мне надо рядом ок вывести, или хранить и апдейтить их, добавляя поле посткода?
90 1846999
>>846991

> на экспрессе


А жаба-то тут при чём?
inb4: разве джава и джаваскрипт - это разные языки?
91 1847002
>>846999
Бляяяяяя, я ебанулся, самоудаляюсь из треда
92 1847034
>>846812

>this-типы сделали


Что это?
93 1847049
>>846812

>Зато с IDE писать - одно удовольствие


И даже когда надо многоступенчатую проверку на null расписать? Или телескопический конструктор. Или какое-нибудь collect(Collectors.groupingBy(
94 1847060
Использование null в джаве - антипаттерн.
95 1847061
>>847060

null нет, а вот checked exception да
96 1847076
>>847061
Checked exceptions вообще за гранью добра и зла, они почти как прокидывание ошибок в Go.
97 1847081
Есть файл неограниченного размера с некоторым текстом. Требуется отсортировать текст по словам в алфавитном порядке и вывести количество вхождений в текст для каждого слова. У вас десять минут на обдумывание.
98 1847090
>>842154 (OP)
Джавараш такое себе... Там наилегчайшие темы разбираются по несколько уроков. В то время, пока вы в джавараше изучали консольный вывод на экран, вы бы уже могли изучать хотя бы те же переменные, условия, если повезёт - циклы
sage 99 1847091
>>847081
Есть бесконечное количество шитпостов, требуется написать фильтр для их отсеивания, у вас секунда.
100 1847094
>>847076
Они и есть прокидывание ошибок в го, только в нормальном (нет) варианте.
101 1847096
>>847091
return false
102 1847111
>>847034
Это когда в дженериках можно ссылаться на тип данного класса по специальному символу, типа This.
В простых случаях это не нужно, а в сложных - охуенная фича была бы.
Пример приводить лень.
Это гуглится.
103 1847112
Чистый спринг от спринг бута отличается только необходимостью вручную прописывать веё зависимости вместо стартерпаков и конфигурированием через xml? Есть ли профит в применении спринга без бута?
104 1847130
>>847112
Вообще всё не так.
1. В буте ты всегда можешь открыть пом.хмл и дописать зависимости, просто в буте они заранее подобраны с нужными версиями + юзается плагин spring-boot-maven-plugin для поиска точки входа и упаковки в жарник/варник. Без бута это всё придутся делать руками.
2. У бута куча автоконфигураций, которые без него надо настраивать вручную.
3. У бута есть встроенный контейнер сервлетов, по умолчанию Tomcat, и для запуска не нужно тащить отдельно сервер приложений и деплоить варник. Хотя можно и вручную заэмбеддить томкат в обычном спринге, это достаточно больно.
4. Можно и обычный спринг конфигурировать без xml, аннотации там тоже поддерживаются.

Профит не брать бут может быть, когда у тебя большой, где очень много всего кастомизируется, и бут там только помешает. Бут скорее ориентирован на микросервисы, чем на подобное.
105 1847136
>>847111
Были бы тайп алиасы и более сложная система типов - а нахуя они были бы?
106 1847147
>>847136
This-типы это не про алиасы, это другое.
Это когда ты в суперклассе можешь сослаться на тип (неизвестного тебе сейчас) субкласса.
107 1847150
>>847130

>когда у тебя большой


Сколько см?

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


Чем помешает? Скорее, там не будет пользы от автоконфигов, они будут отключены (зачастую опять же автоматически). Но останется профит от того же встроенного сервера, от каких-то еще дополнительных плюшек типа актуатора.
Вообще часто слышу мантру "бут ориентирован на микросервисы", но не понимаю, почему в монолите смысл бута должен куда-то исчезнуть.
108 1847151
>>847130
Ну собственно бут и нужен был, чтобы легко ебануть микросервис, с чем в общем-то бут справляется, хоть и все равно с некоторым бойлерплейтом. Но это конечно смотря с чем сравнить. Без бута, это уже микросервисом назвать язык не поворачивается.
109 1847156
>>847150
Просто когда не было спринг бут, на спринге микросервис сделать было не дело 5 минут. Так-то почему бы и не заюзать его в монолите. Просто до того как микросервисы стали модны, никакого же бута не было, а спринг фреймворк вполне себе был состоявшимся(3 кажется версии уже)
110 1847159
>>847150

> Сколько см?


"Большой" монолит - это просто противопоставление "маленькому" микросервису. Грань между монолитом и микросервисом - классический срач, так что комментировать не стану.

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


В монолите редко один жарник со встроенным сервером, обычно там большой EE-сервер приложений с соответствующими приблудами вроде JMS и JNDI. А если ещё и аатоконфигурацию отключить, от бута почти ничего и не остаётся.
111 1847164
Тащемта спринг бут это набор конфигураций spring framework, если нужен актуатор и томкат для монолита, а конфиги не нужны, ну хули законом не запрещено
112 1847167
>>847159
Вот ты сначала сам соглашаешься, что грань размыта, а потом рисуешь картину мира, где есть либо монструозное легаси-EE, либо микро. Ну ничего же нам не мешает сделать монолит (или не-такой-уж-микро сервис) в виде джарника, если мы считаем, что так нужно.
113 1847171
>>847167
Конечно, размыта, это просто два полюса. Чем монструознее легаси-ЕЕ - тем оно меньше располагает к использованию boot. Там часто и спринг до пятого просто так не обновишь, что там бут.
114 1847174
>>847076
Тащемта, подход го - это unchecked expections, потому что ты никогда не знаешь, что тебе там прилетит. И это кстати очень больно, потому что в го нет даже аннотаций нормальных и ты, заложившись на то, что тебе приходит какой-нибудь sql.ErrNoRows можешь внезапно на проде обнаружить, что тебе начало приходить что-то другое из-за того, что на промежуточном слое кто-то начал врапать ошибку. И никакие линтеры (хотя бы) такое не отловят =/
В этом, собственно, и минус UncheckedExpections - хуй его знает, что там вообще вылетает, ты никогда не уверен на 100%, код становится менее надёжным, нарушается принцип "собралось - значит работает".
У checked exceptions есть только один минус (который и определил нелюбовь к ним, ну, помимо говнокодеров, которым чем проще - тем лучше), это неудобство (а точнее - невозможность) в использовании функциональщины и анонимок с таким подходом.

Истина имхо где-то посередине: ошибки однозначно должны выводиться из сигнатур функций, чтобы можно было компайл-тайм выводить типы и проверять валидность кода и проверок. Но при этом это не должно требовать описаний всех возможных ситуаций при объявлении функций, скорее компилятор должен сам на этапе написания fooA(fooB()) вывести, какая из функций какую вызывает, где и как врапаются ошибки и что вообще может из этого выйти в итоге.

Ну и обработка ещё, ошибки неудобно врапать каждый раз, исключения неудобно отлавливать в случае сложного кода.
115 1847203
>>847174

>У checked exceptions есть только один минус, это неудобство в использовании функциональщины


Не, и до функциональщины мало кого радовала необходимость постоянно либо оборачивать, либо прописывать в throws какой-нибудь SQLException.
checked exceptions имхо были бы ок, если бы они были только механизмом, который я могу сам применить для своих кастомных исключений. Тогда я это буду делать только там, где действительно мне нужна осмысленная обработка разных ситуаций. По факту же мы имеем стандартную либу, из которой везде торчать всякие IOException, с которыми я в 90% ничего все равно не могу ничего сделать, кроме как сломаться (пробросить выше), но возиться приходится.
116 1847207
Что можете сказать про javamentor? Норм курсы? А то отзывов плохих 0 в инете, только хорошие где челов берут после обучения и они по 200к лутают
117 1847209
>>847207
Наняли дурачка, который за 2к напишет им хороших отзывов. Плохих нет потому, что лохи еще не клевали на наживку.
118 1847213
Не надо вкатываться по курсам.
119 1847227
>>847209
>>847213
У меня друг пошел на эти курсы, ну где то недели 2-3 назад, говорит вот все хорошо, типа общался с выпускниками, все довольны, сидят лутают 300кк/нс. Вот я и начал задумываться, может и вправду все так хорошо
А если не по курсам то как? Что нужно учить чтобы взяли работать за еду хотя бы
120 1847242
>>847227
К Н И Г И
Н
И
Г
И
121 1847243
>>847242
У меня ссылка из шапки не открывается:э
122 1847325
Перевели на другой проект, а там:

> мы не стали использовать Hibernate и Spring Data потому что это было бы оверхедом


И теперь тут куча бойлерпрейта для работы с БД, при чём большая часть запросов — простые и Spring Data мог бы делать их из коробки в одну строку. А ещё по классу для каждой сущности для конвертации row из БД в объект.
Они ебанутые или да?
123 1847334
>>847325
Как раз таки все норм.
124 1847335
Придумайте регулярку, чтобы разбить строку на группы по 3 иили меньше символа, так, чтобы они перекрывались. Например:
abcde -> abc, bcd, de
125 1847337
>>847335
Сам свою лабу делай.
126 1847341
>>847334
Почему? ORM позволяет тебе сэкономить кучу времени, а Spring Data во многих случаях вообще убирает код в слое работы с БД. При этом всегда есть опция использовать нативные запросы, если нужно делать какой-то дохуя сложный запрос.
127 1847342
>>847111
Звучит как хуета без задач.
И по запросу this types гуглистся всякая фигня.
128 1847346
>>847111

> а в сложных - охуенная фича была бы


Это каких случаях? Когда часто-часто переименовываешь класс вручную без использования переименования в IDE? Да, сложный случай. Я бы даже сказал - тяжёлый.
129 1847393
Да как блять быстро вкатиться в эту джаву? Что читать и стоит ли? Или курсы?
130 1847403
>>847393
В джава кор тебе хватит хорстманна. Только это совсем не вкат в энтерпрайз. Spring in action, concurrency in practice. Я катился так.
131 1847404
>>847393

> быстро


Никак.
132 1847406
>>847393
Алсо очень простые уроки для начала с низов thenewboston на ютубе. Короткие видео, от которых спать не хочется
133 1847409
>>847403

>Spring in action, concurrency in practice


А после этого уже вкат?
>>847404
Я с плюсов, мне быстро.
134 1847412
>>847409

> плюсов


Ну тогда не быстро, а очень быстро. Пролистай Хорстманна и можешь начинать тыкать спринг.
135 1847414
>>847412
Что за спринг вообще? Вроде у всех нормальных людей зима.
136 1847415
>>847414
Пружинка.
137 1847421
>>847409
Так бля сразу в спринг вкатывайся, хорстманн как справочник. Че ж ты сразу про плюсы не скзаал
138 1847424
>>847414
Универсальный фреймворк для джавы, в нём есть почти всё - веб, очереди, SOAP, несколько способов работы с БД и другое. В основе своей спринг - это просто DI-контейнер, а всё остальное крутится вокруг него.
139 1847430
>>847421
>>847424
Ок, спасибо.

>Че ж ты сразу про плюсы не скзаал


Так никто и не спрашивал.
140 1847434
>>847346
Чувак, то, что ты не понял, о чём речь, это нормально.
Это из области продвинутого кунфу, так что расслабься, тебе это не надо.

Хотя, можешь вот это посмотреть, например:
https://discuss.kotlinlang.org/t/this-type/1421
Это про то, что в Котлине их тоже нет.

Из комментариев:
Unfortunately, self-types are very hard to implement in the language without crippling the rest of the type system significantly

Можешь ещё погуглить прочее подобное, если есть желание.

Я вообще упомянул об этом просто потому, что несколько дней назад конкретно ёбся с задачей, где они бы не помешали. Но, в итоге, обошёлся, естественно.
141 1847446

> google://"self-types"


> Scala


> google://"this-types"


> TypeScript


Ясно. Да, архиполезная вещь, прям как перегрузка операций, функции, препроцессор, extension functions, if-expressions, паттерн-матчинг, генераторы списков, слайсинг и прочий сахар.
142 1847451
>>847434

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


Наследование?
143 1847520
Кто нибудь перекатывался после php? Как оно?
Image-1.png912 Кб, 1024x456
144 1847581
Что еще почитать? Делитесь своими библиотеками.
145 1847586
>>847581

>Что еще почитать?



Список методов у Object
146 1847592
>>847586
огонь чтиво, согласен!
photo.png94 Кб, 864x924
147 1847593
Парни, у кого тоже перестали отображаться иконки сайтов в Гугле, это так задумано? На Яндексе всё норм.
148 1847594
>>847593
A/B тестирование
149 1847600
>>847593
Ладно иконки, так теперь нельзя стрелочками по результатам поиска ходить
150 1847602
>>847403

>джава кор


А что такое кор?
Ну я вот более-менее вдуплил что такое ооп, дженерики, коллекции, стрим апи, потыкал в concurrency. Это и есть кор?

Вопрос теперь как переходить к написанию хоть какого-нибудь бекенда. Насколько я понимаю, нужно вкатиться в базы данных немного, а потом засесть плотно за spring?
151 1847606
>>847593
Джава-тред теперь /s/ ?
152 1847608
>>847602

> Это и есть кор?


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

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


Да, сначала выучи SQL на уровне create table/select/insert/update/delete и как подключаться к СУБД через JDBC, затем можно спринг.
153 1847621
>>847606
Сап /pr/ есть одна тян
154 1847629
>>847621
виртуальная машина
155 1847633
>>847451
Библиотека для быстрой лепки CRUD и табличных форм на Swing.
С наследованием, композицией, игрой в нарды и одалисками.
156 1847634
>>847633
Посмотри как енумы под капотом устроены, скорее всего никакие извращения с системой типов там не нужны. В AssertJ вроде тоже что-то подобное есть.
157 1847688
158 1847727
Аноны, в какую сторону после книг в с гита копать чтобы в максимально короткие сроки устроиться джуном?
159 1847736
>>847091
message.length() < 100
160 1847847
Не писал на котлине пару месяцев, такое чувство, что все уже выветрилось из головы. С джавой подобного не было.
161 1847897
>>847434
Да в общем-то и дженериками такое решается и в комметах прямо на это указали.

Мы так билдеры пишем https://pastebin.com/Ys2ELyKf

В общем малополезная хуета, уебуйте в скалотред
162 1847965
>>847897
Спасибо, чувак.
Хотя, меня не билдер, а UI контролы + биндеры + события.

Вот такой вот паттерн:
interface Zalupa<V, C, Z extends Zalupa<V, C, Z>> {...}
решил проблему.

Век живи, век учись, хуле.
Я в последний год очень много на perl писал и на js + typescript.
Ну, и немножко деградировал.
163 1847973
>>847965
Так, а какого хуя ты ему ответил, а мне нет? Сука, вот и помогай в этом треде, одни пидарасы вокруг.
164 1847984
>>847973
Я нихуя не понял, ты бы дал ссылку на свой коммент.
165 1847989
>>847973 >>847984
А, ты про енумы написал (>>847634) ?

Я тогда же посмотрел исходник Enum, но, решил, что к моему случаю это не имеет отношения. Я же говорю - отвык, и просто голова не работает, смотришь в книгу - видишь фигу.
А в примере с билдером сработало.
166 1847994
>>847608
А как лучше всего Hibernate изучать? И Spring лучше по книжкам или видео с ютуба тож подойдут?
167 1847995
168 1848001
>>847994
Видео хороши для первоначального погружения в тему.
Или какой-то конкретный вопрос разобрать, который не доходит, почему-то.

А так, надо книги читать.
Вот, например - про всё сразу:
http://www.allitebooks.com/rapid-java-persistence-and-microservices/

Или отдельно про Hibernate, хотя и не очень новая:
http://www.allitebooks.com/beginning-hibernate-4th-edition/
169 1848060
>>847207
Учусь сейчас у них. Осваиваю javacore, сдал первый модуль.
Ничего хорошего и плохого сказать не могу.
У меня деньги есть и мне просто интересно, что будет из этого я еще не знаю.
170 1848283
>>847207
>>848060

Нужно задать себе вопрос - в чём тут наёбка?
То, что наёбка есть - не подлежит сомнению, мы же в России.
"Не наебёшь - не проживёшь" - это должно быть написано на каждой рублёвой банкноте, в том месте, где на долларах написано "In God we trust".

Так вот, я думаю, что наёбка тут в том, что они _не_ заинтересованы найти тебе действительно высокооплачваемую работу. Потому, что это сложно. И потому, что вас дохуя, а такой работы мало.

И тебя просто продадут рабом на галеру.
За 60 т.р. на руки, например.
Из которых ты будешь 2 года отдавать им по 10 т.р. каждый месяц (17%).
И это для _них_ весьма неплохо, чтоб ты знал.
Даже охуительно, я бы сказал.

Короче - деньги люди делают с оборота, а не выпуская штучных охуенных специалистов.
171 1848291
>>848283
Охуеть 240 т.р. при минимальных раскладах, а так за 300 перевалит с учётом роста зарплаты, да за такие деньги можно купить пиздатые курсы, бумажную литературу, оплатить хз сколько часов менторства боевого синьера ещё и сдача на пиво со шлюхой останется.
172 1848396
Стоит ли пилить петроект или просто слать резюмехи аки ебанутый?
173 1848398
>>848396
Петпроект ты пилишь для себя, а не для работодателя. Суть петпроекта в том, чтобы научиться минимально делать задачи, похожие на рабочие. Его почти никогда не смотрят, максимум о нём нужно будет немного рассказать.
174 1848533
когда джаву желательно использовать,а когда нет?
175 1848538
>>848533
Желательно - когда пишешь большой энтерпрайз-проект и, возможно, андроид. Крайне нежелательно - когда пишешь десктоп.
176 1848541
>>848538
те что то поменьше-уже нет?
типа из за тяжести джава на мелкие проэкты смысла тратить силы нет?
177 1848545
>>848541
Можно хоть сайт-визитку, но там обычно можно обойтись пыхой/питоном/нодой, и особого смысла брать джаву нет.
178 1848554
>>848545
так почему для малых проэктов и средних смысла брать нет?
179 1848559
У кого воображение развито, помогите.
Есть простая соц сеточка ака твитор и есть докер, надо с этого всего придумать тему для диплома на магистра. Чтоб какая-то новизна что-то интересное было в названии.

А по факту - планирую лить воду и обсасывать докер пол диплома на самом базовом уровне, но вот название нужно какое-то интересное, заковыристое, чтоб не придраться
180 1848561
>>848554
Там джава создаст больше проблем, чем решит. В таких проектах обычно нужно по-быстрому наклепать скрипты (чему динамическая типизация способствует больше), залить на дешёвый хостинг (которых для джавы очень мало) и забыть. Больших требований к поддерживаемости и стабильности нет, есть куча специфичных CMS для максимально быстрого клепания. В джаве же придётся самому думать об архитектуре, что занимает время, что заказчику не очень нравится.
181 1848562
>>848559
Можно что-нибудь около-девопсное высрать, наверняка дипломов про это писали мало. Типа "Автоматизация этапов разработки ПО для уменьшения time-to-market" и налить воды про CI/CD.
182 1848566
>>848559

> сап двач, есть мемуары брежнева и есть гостевуха....


1. Выкидываешь соц-сетку.
2. Выкидываешь докер
3. Достаёшь кубер
4. Берёшь любой контроллер кубера и пишешь диплом по нему. Можешь свой реалиовать и описать чем ом лучше стокового.
https://github.com/kubernetes/community/blob/8decfe4/contributors/devel/controllers.md
5. Достаёшь обратно свою соц.сеть и масштабируешь её до тех размеров когда твой контроллер начинает иметь смысл (или деплоишь её туда где новый контроллер ведёт себя лучше старого).

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


На базовом - это каком? Будешь man 7 namespaces перепечатывать и устройство overlayfs описывать
183 1848654
>>848566
Спасибо, почитаю

>>848562
Вот это прям ОХУЕННО, СПАСИБО ОГРОМНОЕ, я именно это и хотел, но сформулировать никак не мог, а это просто идеальное попадание, вода вода вода и ничего больше, даже делать ничего не надо и придраться нельзя
184 1848798
>>848283
Да я тоже так считал и выходит дохуя.
Таки что я по предоплате потому что дешевле.
185 1848822
Core, Многопоток, Spring, SQL, Maven, Администрирование никсов, HTML/CSS, TCP/IP, Английский B1. Нормальный же стек? Пора идти зарабатывать сабжи?
186 1848831
>>848822
Если знаешь Git, то да.
187 1848863
>>848831
Конечно знаю. Как по-мне это уже основа основ, потому и не упоминаю.
188 1849100
Джавач, кто читал маленькую брошюрку Шилдта Герберта "Java. Полное руководство" оно того стоит?
189 1849158
>>849100
Не читал, но осуждаю. Там больше воды, но столько же инфы можно найти в более сухих книгах.
190 1849188
>>848283

>в чём тут наёбка


Ты тратишь деньги, чтобы зарабатывать деньги.
Это так не работает.
191 1849189
>>842154 (OP)
Есть что-то типа набора задач от простых к сложным по многопоточности, начиная с Thread, заканчивая дедлоками и проч?
192 1849190
>>849189
Полгода работаю уже, ни разу не пользовался многопоточностью дальше чем в экзекютор контекст фьючерсами покидаться.
193 1849191
>>849190
Мне на собес надо
194 1849201
>>849189
Все задачи смотреть в конце соответствующих глав книги Методы программирования Блинова. Пора её уже в шапку добавлять.
195 1849575
>>849190
Значит у тебя не самая технически сложная работа.
196 1849577
>>849188

>Ты тратишь деньги, чтобы зарабатывать деньги.


>Это так не работает.


Именно так это и работает. Вначале всегда нужны инвестиции, это могут быть инвестиции от государства в виде бесплатного образования, от компании в виде стажировки, от банка в виде кредита на образование, от мамы в виде бесплатного жилья и кормежки, пока корзиночка учится по тьюториалам из интернета.
Инвестиции бывают и неудачные - не вкатился. А бывают и удачные - вкатился и вернул кредит банку, вышел на работу в компанию и херачишь фичи.
197 1849694
>>849575
А какая самая технически сложная работа?
198 1849715
А в сабже можно добиться UB? Какой самый элементарный пример в последней версии?
199 1849721
>>849577
У тебя везде инвестиции времени, а не денег.
Если есть какой-то промысел, который тебе может в перспективе принести профит - значит о нём с вероятностью 99% уже знают до тебя.
Ты уже должен задать себе вопрос, "а чем я лучше других?" На примере вката, ты думаешь мало людей знает про айти, а шутеечки про 300к малоизвестны за пределами 2.5 тредов? Тогда почему спрос не падает? Неужели курсов на всех не хватает?
Если бы это было так легко, отдал котлету (или взял в кредит), походил на курсы и вот ты уже рубишь капусту на удалёночке, то на завод бы никто не ходил.
200 1849729
>>849575
ETL обыкновенный.
201 1849731
>>849715
Непосредствеено - нельзя, разве что через сишный интерфейс, но это уже не джава. Ещё, наверное, что-то такое на уровне Unsafe можно сделать. Или поискать баги в исходниках компилятора/jvm, они всё-таки написаны на небезопасном языке, а люди не идеальны.
202 1849898
>>849721

>У тебя везде инвестиции времени, а не денег.


Я смотрю ты внимательно читаешь

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



>Ты уже должен задать себе вопрос, "а чем я лучше других?" На примере вката, ты думаешь мало людей знает про айти, а шутеечки про 300к малоизвестны за пределами 2.5 тредов? Тогда почему спрос не падает? Неужели курсов на всех не хватает?


>Если бы это было так легко, отдал котлету (или взял в кредит), походил на курсы и вот ты уже рубишь капусту на удалёночке, то на завод бы никто не ходил.


То что ты описал это рискованность инвестиций и несут этот риск оба, инвестор и "предприниматель" вкатун. Государство останется без специалиста, компания получит дебила, а не сотрудника и т.д. Вкатун останется без работы. Более высокий риск, предполагает и более высокую прибыль, отсюда и цифры про которые говорит >>848283 Потому как они своих денег могут и не получить если ошиблись с инвестициями.
Но в любом случае инвестор инвестирует свои активы деньги или то, что может быть выражено в деньгах. А предприниматель инвестирует, то что в экономике называется предпринимательские способности. И как бы да - не у всех они есть, не всем везет.
203 1849903
>>849715
Читать и писать из разных потоках несколько переменных, без синхронизации. Но это конечно не полный аналог сишного UB.
204 1849921
Как сейчас принято запускать докер на виндусятке? Через Docker Descktop, WSL1 или WSL2?
205 1849924
>>849921
Через WSL1 докер не запустить. А в WSL2 докер всё равно работает через docker desktop.
206 1849998
>>849924
Ясно.
207 1850274
>>849898
Если между тобой и инвестицией появляется какой-то кабанчик с непонятными функциями, то это наёбка.
Вот это я хотел донести.
Проблема. Нужен совет. 208 1850408
Компилятор пашет, вроде как надо(jdk 15). Но вот запустить скомпилированный код - не получается. Вылазит ошибка. А я хер знает что с ней делать. Да, и я пока что чайник.
Какие могут быть причины такого поведения. Пишу в той интеледженси idea.
209 1850409
>>850274
Чем плохо менторство, для человека без опыта?
210 1850415
>>850408
Надо исправить ошибку, очевидно же.
211 1850418
>>850408
>>850415
Как минимум скинуть то что тебе выдаёт терминал.
212 1850445
>>850418
Снёс всё к хренам. Сейчас повторяю установку.
213 1850449
>>850445
Нихуя ты умный.
214 1850454
>>850408
Could not find or load main class ?)
215 1850456
>>850445
Такой маленький, а уже костыляет.
>>850454
Ставлю на "release version * not supported"
216 1850457
Народ, а что нового в самом языке появилось после 8-й версии?
217 1850459
>>850457
дахуя чего
218 1850460
>>850459
Например?
219 1850464
>>850454
Почти. Мэйн с большой буквы.
220 1850466
>>850456
Хех, кстати помогло.
221 1850502
А есть люди которые реально были на всех этих скиллбоксах, яваменторах? Хотелось бы какой-то реальный отзыв прочитать
223 1850534
>>850274
Этот "кабанчик" и есть инвестор. Они тебя учат и ищут тебе работу. И берут на себя риск, что если ты окажешься тупой и необучаемый они останутся без денег.
224 1850541
>>850521

>google://java features since 8


Я подумал, что надо на замену gopher:// вводить уже google://
Кто RFC создаст?
225 1850557
>>850541
google:// поверх http работает, так что RFC особо объёмным не будет:
"google://<query>" заменять на "https://google.com/search?q=<query>"
226 1850576
>>850534
я очень понимаю условия, в чем суть договора с ними? если мне например через месяц надоест, и я забью? я ведь не трудоустроился, значит ничего им не должен? а если я забью в самом конце обучения, за день до выпуска?
227 1850581

>В итоге я получил 11 офферов за полторы недели и успешно устроился в самое приятное место


>Cобесы - тут весело, ты просто выкладываешь резюме и тебе начинают звонить и знакомиться легионы женщин, только успевай записывать когда, с кем и на что договорился - буквально за два дня у меня были расписаны 2 недели по 4-5 собесов в день


>Место работы: Epam Systems


Это реально самое приятное место работы, в которое стремятся все java-кодеры?
228 1850586
>>850581
чел, не ведись на тупорылую рекламу
229 1850592
Анон, помогут ли книги по компутер.сайнс для обучения в джаве?
Изучаю кор и в принципе нормально все было по примитивам.
Теперь ООП и очень туго идет в голову, просто геттере, хаш код в пизду все. ничего не понятна.
Или лучше купить пару книг по джаве и не выебываться.
Типа хеадферстджава, хорстманна, шилда?
Решаю лабы из шапки кодингбат но тоже туго.
Занимаюсь дней 30, по паре часов в раб.день(очень мало) или в выхи по часов 5.
230 1850608
>>850592
Судя по стилю
Написания сообщения
Ты особенный ребенок
231 1850610
>>850608
Так прогеры все особенные дети, все правильно значится.
sage 232 1850613
>>850521
Все фичи либо уже давно есть в других языках, либо ненужное говно (record, например).
image.png366 Кб, 1920x1080
233 1850623
>>850502
Да в пизду это всё. Лучше книжку почитать. Рикпил ебло 50 минут затирает про гит что можно прочитать за 5 минут, сейчас вообще про кокаин пиздит. Ну или хотя бы не русских дебилов смотреть, которые не могут в преподавание.
234 1850670
>>850613
К чему ты это сейчас высрал? К тому, что жабу надо похоронить вместо допиливания?
Ты котлиношиз или шарпошиз?
235 1850785
>>850623

>Рикпил ебло 50 минут затирает про гит



Ты еще яндеск практикум посотри чте они 20 минут изучают что хранится внутри папки .git до того как первый комит напишут

https://www.youtube.com/watch?v=yDSs80lu3ak
236 1850789
Сап. Впервые на этой доске, не бейте где здесь можно задавать тупые вопросы по домашке для универа?
237 1850794
>>850789
В нюфаг-треде.
238 1850796
>>850785
Так я и не смотрю. Промотал все эти пуки, немного за версии послушал да за мавен. После крестов всё таким знакомым кажется, хоть сейчас идти работать.
239 1850801
>>850785

>они 20 минут изучают что хранится внутри папки .git


Кстати весьма полезная вещь. Чтобы ты понимал как все устроено и не паниковал, если merge rebase пошел по бороде. Чтобы ты понимал, как восстановить исходное состояние знание как оно внутри работает - очень полезно.
240 1850806
>>850801

>Кстати весьма полезная вещь.


Нет.

>Чтобы ты понимал как все устроено


Нахуй не нужно.

мимо 300к/нс
241 1850814
Насколько востребованы JavaFX и Java OpenGL в реальной работе? Стоит изучить?
242 1850822
>>850814
Абсолютно не востребованы. Невостребованнее только апплеты и java ME.
243 1850823
>>850576
Договора нет в открытом доступе, но думаю что после увольнения по собственному, на тебя повесят долг или обяжут самому искать работу. Ну и зарплату обещают от 100к

>В Москве мы гарантируем тебе первую зарплату от 100 000 рублей.


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

По косвенным признакам, мне кажется, что они сделали ставку на качество. Отбирают способных, реально их учат, работают с работодателями учат тому, что востребовано, обещают прокачивать отсутствующие скилы - так чтобы выхлоп был близок к ста процентам.
244 1850828
>>850806
А потом, такие дебилы приходят к таким как я и хнычут - я что-то смержила и все пропало.

У нас в команде, был один такой "синьор", у которого по собственной тупости постоянно слетали настройки гита и имя пользователя вместо мыла, слетало на логин и гит сервер реджектил его пуши. Этот дебыч приходил ко мне 4 раза, с одним и тем же вопросом - почему не могу запушить. Потом все таки понял, что это за ошибка и как ее лечить. он правда всего пол года продержался у нас
245 1850834
>>850828

>я что-то смержила и все пропало.


При обычной работе с гитом таких ситуаций не может возникнуть. Проблемы начинаются, когда надо заребейзить некоторые коммиты в ветке, которая уже смержена. Плюс в идее достаточно удобный фасад для работы с гитом.
246 1850914
>>1850898 →
Пидр>>850828

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


Я обычно проект бэкаплю в папочку перед тем как мерджить и ребейзить
247 1850917
>>850521
Спасибо.

А корутины в жаву не планируется завезти?
248 1850925
>>850917
Я где-то читал, что завозить их не хотят принципиально.
249 1850952
Какие зп для джуна являются адекватными?
250 1850968
>>850952
два бублика и чай
251 1850971
>>850968
КОФЕ И СНЕКИ
252 1850972
>>850925

>завозить их не хотят принципиально


а там было написано, чем обосновано такое нежелание?
253 1850977
>>850952
Тебе кофе налили, за комп посадили? Ну а хули тебе ещё надо? А так от конкретного Мухосранска зависит, где-то есть вакансии за 25, где-то в столицах 80 мало. Смотри по рынку у себя.
254 1850981
>>850977
Вкатываться в мухосрани = быть дауном. Разумеется речь о дсах.
Какой в них диапазон?
255 1850992

>>1850>>850981

256 1850994
>>850981
Насчёт всего диапазона не скажу, но могу сказать "от" – 25к в дс2. Ниже чем у меня уже не найдешь
257 1850996
>>850994
Земля пухом. Какой стек? Что делаешь? Сколько работаешь?
258 1850997
>>850994
Сам назвал такую цифру или продавили?
259 1851006
>>850996
Spring Boot и Angular. Работаю с данными, рассчитываю их, перегоняю из БД на фронт и обратно, на фронте строю таблицы и графики. Ну и так как на проекте я один, то делаю ещё всякого по немногу. Вообще работы не очень много. Работаю чуть больше года. С удовольствием бы уволился и занялся бы только Джавой, но, как мне кажется, я недостаточно знаю. Так что сейчас потихоньку заполнил пробелы в знаниях.
>>850997
Я был тупой и боялся, что вообще не найду работу и ещё дико комплексовал лол из-за её отсутствия, так что согласился на то, что предложили. На собеседовании сказал, что хватит 20-25к, вот так и вышло. Потом я узнал, что у других работников так же примерно. Вообще в этой компании немного работников, и часть из них сегодняшние или вчерашние студенты, которым платят немного, но особо ничего и не ждут.
260 1851014
>>851006
Не понимаю, когда называют сумму ниже рынка. Если ты совсем чмоня, то согласие работать за еду тебе не поможет, т.к. возня с тобой будет стоить дороже, а если соответствуешь требованиям, то добровольно лишаешь себя денег.
261 1851027
>>851014
Ну сейчас то я понимаю, что поступил неправильно. Тогда у меня не было никакого опыта, так что я согласился на первое попавшиеся место и первое время думал, что это идеал. Сейчас я подкорректировал свои желания в услових работы и в направлении, которым хочу заниматься. Так что когда буду искать новое место, буду умнее
262 1851068
>>850981
Переезжать из Мухосранска в Москву - быть еще большим дауном. По 3 часа на работу добираться, жить по-соседству с таджиками в уютной студии в 25-этажке за охуевшие деньги, быть бараном в загоне в метро и тд и тп. Я когда приезжаю в города миллионники я охуеваю от того как себя начинаешь ощущать бараном в стаде. Особенно сейчас с короной всех в стойло загнали, я смотрю и жую попкорн, у меня из окна вид на лес, чистый воздух и город за час пешком можно обойти. А через год работы можно и на удаленку уйти с нормальной зарплатой, так что не все однозначно, более того некоторые учат разговорный инглиш и на апворк. Если переезжать, то покупать на авито трактор и ехать в сторону Европы.
263 1851079
>>851068
Трактор тоже денег стоит потому и хочу подфармить для начала.
264 1851085
>>850972
Видимо, тем, что это магия. Скрытые треды, например.
А джава - простой и недвусмысленный язык.
Этим и ценен.

В принципе, можно, наверное, на RxJava observable изобразить что-то подобное.
265 1851088
>>850917
Project Loom
266 1851157
Анончики, помогите ньюфагу, плиз. Прохожу один курс, никак не соображу, есть один код, вычисление возраста в минутах секундах etс. Поле years объявлено как int. А результат получается long. Как можно заставить его считать правильно, если не пользоваться форсированным приведением к long? Говорят вот, используй спецификатор L у литерала, а я пока никак не воткну в эту терминологию. Так понял, что надо L в конце добавить. Но он все равно некорректно считает. ЧЯДНТ?
Так работает, но так неправильно:
public int getYears() {return years;}
public long getMilliSeconds() {return (long) years 365 24 60 60 1000;}
Так не работает:
public int getYears() {return years;}
public long getMilliSeconds() {return years
365 24 60 60 1000L;}
267 1851162
>>851157
Хм, вот так вот внезапно заработало. Хмм....
public long getMilliSeconds() {return years 365L 24 60 60 * 1000;}
268 1851170
На какой оси чаще всего сидят жависты? Недавно накатил 7 и это для меня стало новой жизнью в окнах после 4 лет на линуксах. Макобляди мимо.
Screenshot 2020-11-08 172036.jpg45 Кб, 916x288
269 1851199
>>851162

не надо ниче приводить, только если от int к long
270 1851200
>>851162

>365L


Хуль високосные не учел?
271 1851227
Существует возможность классы и методы помечать final, вопрос нафига? Разжевывать что будет если так сделать не надо, я в проде никогда такого не видел и сейчас внезапно вспомнил о такой возможности.
272 1851239
>>850834
Всегда что-то может пойти не так, например при ребейзе по ошибке нажал accept theirs и все, твои изменения надо доставать из detached head.
рибейз вообще зло и по хорошему его не надо использовать

>>850914

>Пидр


Мог бы и не представляться, это и так очевидно.

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


Ему дали навороченную систему, которая может разруливать кучу разных конфликтных ситуаций, где информация не удаляется бесследно и можно ее восстановить. Нет блять, СЛОЖНА!!11 Я ЛУЧШЕ В ПАПОЧКУ ЗАБЕКАПЛЮ!!!11
Сказочный долбоёб!
273 1851245
>>851227
Ну есть какие-то гении которые вообще все файнал делают что не экстендится, типа так "безопаснее", на самом деле хз, файнал вообще на мой взгляд логично в каком-то мусорном коде типа последнего наследования класса, чтобы когда ты и так говна наворотил еще сверху никто бы не наворотил
274 1851267
>>850828
В гите же есть возможность откатить коммит, если уж облажался. Просто помню момент когда чувак изменил расширение файла через гит, вот тогда куча проблем было
image.png23 Кб, 367x665
275 1851328
>>851199
Тут millis изначально long, а в моем примере было намеренно years везде int, чтобы попрактиковать это самое приведение, и условием было то, что тип поля years на long менять нельзя. Чтобы вынудить этот L подписывать..
>>851200
Хм, действительно! Попробую учесть, спасибо :)
276 1851335
>>851267
При рибейзе у тебя создаются новые коммиты https://habr.com/ru/post/161009/
поэтому рибейз зло, хорошо, что на практике он редко используется
277 1851416
>>851170
На винде сидят. Или на маке.
На линуксе сидят серверы.

Но, тут есть нюанс - 10-я винда - зло.
Я сижу на 7-й, и куда деваться дальше - непонятно.
Десктопный мак - дорого, хакинтош - геморройно, может в любой момент превратиться в тыкву.
Линукс на десктопе не возбуждает совершенно.
278 1851422
>>851227
Так делают, чтобы строго запретить наследование.
Это редкая вещь, и в каждом случае - свои причины.
Начни с того, что поинтересуйся, почему String сделали final.
279 1851431
>>851170
Долго юзал 7, несколько месяцев назад пересилил себя и поставил 10 с мыслью, что хватит быть ретроградом и будущее неизбежно, и буквально неделю назад вернулся обратно на 7, устав терпеть тормоза и глюки десятки, которая типа самая быстрая и стабильная. Теперь понимаю тех, кто до последнего сидел на XP. Думаю поставить линукс в дуалбут, раньше иногда сидел на нём. Ещё надеюсь, что 10 когда-нибудь станет юзабельнее, хотя за 5 лет так и не стала.
На работе винда, на серверах, скорее всего, тоже (подробностей не знаю, у нас там очень специфичные dll-ки и драйвера юзаются).
280 1851469
Что такое рефлексия? И зачем она нужна?
281 1851474
>>851469
Это когда программа уже после компиляции может получить информацию о типах, работать с ними, генерировать код и т.д. Через рефлексию можно вызвать заранее неизвестный метод, имея, например, только его название в виде строки, ещё можно получить список методов/полей/конструкторов/аннотаций какого-то класса, создавать объекты заранее неизвестных классов и другое.
Используется обычно только в фреймворках и либах. Например, если какой-нибудь фреймворк должен создать объекты классов и вызвать их методы по определённым правилам, а про эти классы он знает только то, что они лежат в какой-то папке, он это сделает через рефлексию и класслоадеры. Или, например, можно восстановить реальный тип объекта, имея только ссылку Object.
282 1851484
>>851469
Reflection - это динамика в статическом языке.
Например, можно создать объект из JSON-строки или подобного строкового описания объекта, зная его класс.

Чтобы не слишком заебаться при этом, можно использовать BeanUtils, PropertyUtils из Apache Commons.
283 1851495
>>851416

>10-я винда - зло.


Дебилушка, там WSL, ставь любую линукс хуету и не парься. А Маке переоцененная хуета.

Вот ты прикола ради загугли десктопные клиенты для постгреса, это или ява мультплатформа будет или веб хуета. И только под винду есть нормальные, полнофункциональные клиенты.
284 1851500
>>851484
Или, например, можно сгенерировать описание TypeScript интерфейса из Java класса - перебрать все методы, рассмотреть и преобразовать названия их типов и вывести в файл .ts, и затем работать с этим в коде веб-фронтенда.
285 1851502
>>851495
Ты мой комментарий, вообще, читал?
Учить он меня будет, школоло.
286 1851534
>>851227

В реальных проектах final обычно используют там где нужно гарантировать безопасность более строже чем просто конвенцией. Те же библиотеки шифрования и другие секьюрити либы довольно часто используют final на основных классах и методах.
287 1851745
>>851502

>Ты мой комментарий, вообще, читал?


А что там читать - невнятный высер, что 10 зло, ни аргументов, ничего.
288 1852226
>>850952
Ну впервые мне без опыта и знаний в ДС предложил 70к гросс (ну бля без 13% мистеру пыне). Но я туда не пошел, тк еще учусь в вузе, сейчас на более сложную позицию в прошлый раз требований была только java, сейчас Spring, Git, Jira, хуира и тд иду на собес на след. неделе, хз сколько предложат, если меньше 70 то хуева, зато в 20 м от дома (э то к слову о том как в ДС хуева от таджиков ехать 3 часа до работы по словам другого анона)
289 1852227
>>849201
Спасибо за книгу анон, кроме многопоточности еще почитал, должна быть в шапке
290 1852245
>>850952
"Джун" это очень сильно размытый термин.
Видел вакансии на ждуна, где требуют больше года опыта, но и зарплата под 120к.
Даунич без опыта это вроде трейни называется.
Подход везде тоже разный, где-то будут учить всей хуйне, где-то вот как меня например сразу бросят в дело и крутись как хочешь.
Я думаю, косарь грина на руки +- нормальная цифра в дс, если ты способен за пару часов написать типичный круд на спринге и в целом обучаем.
291 1852257
Анончики, как вкатиться в Spring. Сейчас вкатываюсь в Java, имею самое не плохое знание плюсов . Вот думаю учить Spring, но пугает его размер. Параллельно смотрю в сторону Android. Вопрос "Что перспективней, и если Spring, то как лучше вкатиться?"
292 1852268
>>852257
Говорят, что андроид. По спрингу - сразу учи Spring Boot там все очень гладко накатывается все, просто попытайся сделать свой проект. Сначала начнешь с Spring Data, соединишь с базой, потом MVC, чтобы все отобразить, Security, чтобы можно было аутентифицироваться у тебя на сайте и так далее
293 1852270
>>852257
Если ты собираешься изучать не ВЕСЬ спринг, а только тот, который реально понадобится (core/web/data/boot), то там и учить почти нечего, за пару недель осилишь, раз уж после плюсов. А всё остальное опционально и используется в зависимости от потребностей проекта.
Насколько перспективен андроид, сказать не могу, у меня отвращение к его API, а спринг вполне перспективен.
294 1852273
>>852270
>>852268
Есть какие готовые материалы по мимо докладов на ютубе? Или работа с голой документацией?
295 1852275
>>852273
помимо

>быстрофикс

296 1852279
>>852273
Ну смотри, я писал проект с нулевым знанием в команде. И начал просто с гайда на spring.io - затем что-то решали добавить сразу гуглишь как это сделать - очень много видосов от индусов, но куда деваться. Кроме видосов есть статьи и, конечно, самое лучшее - stackoverflow. Просто придумай что тебе надо запилить и гугли это. Например, мне надо было добавить файловую систему, чтобы можно было агружать и просматривать картинки - нашел статью, получил минимальные знания, подробнее - гуглишь, находишь на stackoverflow, вообще по большей части гугл находил мне baeldung, а там просто несколько вариантов решения. Или мне, например, надо было узнать как сделать нормальные фильтры поиска - тут пришлось писать в телеграм-чатик для разработчиков спринга, там несколько сеньоров подробно все разъяснили, объяснили best practice и тд. В общем трудовой процесс у меня выглядел так, ничего сложного, на самом деле. Потом сам начинаешь искать дополнительные библиотеки/фреймворки по своей нужде, там примеры и документация, но это уже не совсем спринг
297 1852280
>>852279
*Для разработчиков на спринге
298 1852281
>>852279

>как сделать нормальные фильтры поиска


Что может быть очевидных спецификаций и Критериа АПИ?
299 1852282
>>852279
Спасибо тебе.
300 1852301
>>852245
Что есть "типичный круд на спринге"?
Сколько сущностей? Связи?
Включает ли это в себя веб-интерфейс?
Можно где-то посмотреть приблизительный пример того, что надо написать "за пару часов"?
301 1852303
>>852273
Есть хуева туча книг с конкретными примерами, если ты читаешь по английски.
Например:
http://www.allitebooks.com/rapid-java-persistence-and-microservices/
(и прочее на этом же сайте)

Есть ещё scanlibs.com, там и русские переводы можно поискать, по спрингу/буту точно должно быть.
302 1852308
>>852301
Вот дали тебе комп без нихуя. Голая ось и тырнет.
И ты за пару часов:
- Накатил жабу, мавен, постгрес и всю сопутствующую хуйню (ну или ладно, предположим, что всё это есть, ибо к программированию установка софта отношения имеет мало)
- Создал проект на спринг буте, у которого есть набор бизнес-сущностей, Entity для работы с базой, DTO для REST API (и сам рест апи, разумеется, тоже создан).
- Нахуярил простую веб-морду, чтобы Мариванна из бухгалтерии могла выполнять типичные CRUD-операции (Create-Read-Update-Delete).

Типа такого.
303 1852317
>>852308
За пару часов - вы можете пойти вон в те кусты, и отсосать друг у друга ©.
А то, что ты описываешь требует несколько больше времени.
304 1852322
>>852281
querydsl
305 1852327
>>842154 (OP)
7 лет после универа работаю в бодишопе, причём не в том, где работа в бешеном темпе дабы успеть наобещанное, а наоборот: в таком, где темп разработки очень медленный, большую часть времени делать совершенно нечего, инициативность не поддерживается и не поощряется, джава 8 наступила 2 года назад, об 11 ещё не слышали, о спринге тоже, главный билд тул - ант, новая библиотечка апрувится пол года прежде чем применяться. Кто сталкивался с такими - знает, остальным - горячо не рекомендую.

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

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

Вопрос такой: на какой примерно уровень мне по вашему ориентироваться? Не на джуна точно, потому что джун с 7 годами опыта не пройдёт даже через hr-фильтр. Мидл? Или для мидла 7 лет тоже многовато? Я понимаю что все эти уровни не годами меряются и вообще возможно не нужны, но к сожалению реальность такова, что надо выбрать куда метить иначе шанс быть отсеянным hr-ом увеличивается.

Чё думаете вообще про ситуацию? Я мудак? Какие-то советы может будут?
306 1852329
>>852327
Пара уточнений:

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

Второй момент: ничего не сказал про frontend часть. На работе GWT, который изучать - только голову почём зря забивать. Благо пока есть кому в этом говне ковыряться кроме меня. Вне работы пол курса реакта на курсере и знание jquery (который в 2020 нахуй никому не нужен, как я понимаю). Конечно можно ещё поизучать react/angular/vue но опять же вопрос: стоит ли пытаться фокусироваться на фронт технологиях и переквалифицироваться в фулстэка если реального опыта работы с фронтом на работе не было и не предвидится?
307 1852330
>>852327

Начни внедрять Clojure или хотя бы Scala. Точно уволят, но может быть с выходным пособием.
308 1852332
>>852329
Ну и ещё в целом за собой замечаю что кодить мне нравится меньше нежели выстраивать все процессы вокруг кода. То есть я бы с бОльшим удовольствием настроил авто запуск тестов, расчёт покрытия, какой-нибудь параллельный билд, деплой, сбор и визуализацию логов, какие-нибудь авто алерты, балансеры, к8с нежели писать очередную апишку для хождения в базу, доставания данных и оборачивания в запрошенный формат. Как я понимаю, выстраивание процессов вокруг кода это и есть дев-опс? Как думаете, каковы мои шансы там без реального опыта, с одними теоретическими познаниями и большим желанием?

>>852330
Честно говоря я бы и их изучил (вроде не самая простая фигня эти ваши функциональные языки?) если бы дали внедрить. Но за 7 лет я уже окончательно убедился что это бесполезно. И это не моё выгорание, я был бы правда рад.
309 1852354
>>852332

>Clojure, Scala


>внедрять


Он тебя троллит, лол.

Скала - полезная вещь, очень рекомендую просто для общего развития.
Ты станешь гораздо более лучшим даваёбом.
И, возможно, даже начнёшь использовать Kotlin на бекэнде.
Потому, что скала - вещь в себе, и заюзать её в ваших проектах у тебя хуй получится, инфа 100%.

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

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

Groovy охуенен как инструмент автоматизации, для скриптов, для тестов и т.п.
Это, наверное, самый практичный язык, по крайней мере, на JVM.
Прикрутить его к имеющейся системе через веб-интерфейс, и писать скрипты прямо в окне браузера, дёргая живую систему - это бесценно. Как образец - посмотри https://groovyconsole.appspot.com
Spock, опять же и т.д. и т.п.
310 1852457
>>852327
Пройди хотя бы 5 собесов, с 7 годами можешь слать отзывы на всё подряд, лол.
Других методов оценки себя рынком и нет.
311 1852461
>>852301
CRUD для одной сущности. Да даже CRD хватит.
Веб-интерфейс не надо, хотя некоторые шизики просят сделать что-то такое в тестовых. Но нахуя, жаба это ж бек.
Пара часов это мой примерный прогноз, никто над тобой стоять с секундомером не будет.
312 1852467
>>852327
Хз, зачем это ты там 7 лет сидел, надо было раньше сваливать оттуда.
Я и года не проработал, а уже по вечерам думаю, куда бы сваливать в случае чего и что подучить, чтоб денег предложили по крайней мере не меньше.
>>852354

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


Вот этому канистру чая бы налил.
313 1852470
>>849694
Ок. есть прикладное программирование, а есть системное; в прикладном многопоточности не так часто напрямую касаешься, тк все уже реализовано через фреймворки. ОС на джаве конечно не пишут, а вот БД - вполне, например кассандра или зукипер написаны на джаве, там нужна многопоточность в полный рост.
Я сейчас разрабатываю сервер под хайлод для трейдинга на джаве, там тоже многопоточный код ну раза в два в неделю да приходится писать самому.
314 1852493
>>852327
Беги оттуда, глупец. Твой опыт не релевантен.
315 1852687
>>852470
На netty сервер делаешь?
316 1852808
>>842154 (OP)
Здарова анончики. Я студент шараги, учусь на пограммиста на последнем 4 курсе.
Вроде всё хорошо, живу и радуюсь, но немного стыдно, что за 4 курса мой максимум это создание циклов в паскале.
Короче залетел на вашу доску и тыкнул на первое знакомое название. Джава этож язык на котором игрульки писались для кнопочных? Лол, он ваще жив там в 2020?
Почитал шапку и немного хикнул. Учиться чему-то в 2020 читая книжки? Звучит прогрессивно. Короче я пошёл на рутрекер качать видео уроки по ДжаваКор. Наверное дропну после первого урока, но может и не дропну.
Эх, так много вопросов и так мало ответов...
317 1852837
>>852808
Ясно.
318 1852841
>>852837
Тебе вот ясно, а мне не очень. Кстати язык настолько мертвый, что единственный видеоурок на русском, который я нашёл на рутрекере раздают 1.5 калеки и приходится качать эту годноту со скоростью 50кб/с.
Очень неприятно.
319 1852849
>>852841
Ясно.
sage 320 1852850
>>852808
Слишком толсто. Если бы ты не сказал про джавакор и книжки, то может и поверил бы.
321 1852852
>>852841
эй, смузи-бой! закатывайся в джарп!
и тебе никогда не придётся сидеть в тесном оупенспейсе по 11 часов в день на просиженном стуле со сломанной спинкой
322 1852855
>>852849
Потрясающе. У этого языка ещё и дико недружелюбное комьюнити, которое троллит безобидного нуфака-ламера меня, который всего навсего просит о помощи.
>>852850
Да-да, я не троллил чел. Я выбрал джавакор, по той-же причине, что и джаву в целом. Я слышал об этом об джавакоре, когда играл в майнкрафт. Ну, а касательно книжек я даже не могу догадаться в чём тут троллинг? Кому может прийти в голову обучаться яп на книжках? Лол, ладно там просто читать какие-то статьи или документации, но в целом обучаться на книжках это полный отстой. Я не собираюсь этим заниматься, как минимум сейчас. Кстати мой курс уже скачался и сейчас я пойду его смотреть.
323 1852856
>>852852
Я ничо не понял.
324 1852859
>>852856
джарп - это новый потрясающий язык, который собрал все плюсы джавы и шарпа
пока он только развивается, но уже скоро все сытые херочки станут в ультимативном порядке требовать от соискателей от пяти лет опыта с этой технологией
325 1852861
>>852855
Тебе с таким подходом курсы по JS надо качать.
326 1852863
>>852859
Кстати мои однокурсы, которые шарят, говорят что жава мёртвый язык и типа щас все адекваты перекатываются на СиШарп. Но я уже скачал видеокурс по Джаве, так что похуй.
>>852861
Может и по нему скачаю. Просто я слышал что веб-программисты считаются лохами и не хочу, чтобы мои знания, которые я собираюсь получать были омрачены таким ярлыком.
327 1852864
>>852863
JS это же веб? Вроде веб.
328 1852866
Почему нельзя нахуй кастануть Function<Void, T> к Supplier<T> и обратно? Ебал я в рот.
329 1852877
>>852866
Потому что это два разных типа, и логика со здравым смыслом тут не работают.
330 1852881
>>852863

> которые шарят, говорят что жава мёртвый язык


Несмотря на толстоту, нисколько не удивлен.
331 1852883
>>852881
Да какую толстоту то..
332 1852886
>>852877
Я понимаю, что это разные типы, но почему так нахуй?
333 1852888
>>852886
Для компилятора Void - это такой же класс, как и остальные, поэтому он расценивает его в дженериках именно как один из типов, а не отсутствие типа.
334 1852889
>>852886
Ты не понимаешь - они принципиально разные.
Если разрешить такие кастинги, то нахуй бы вообще нужна эта статическая типизация и эта джава.

А вот не секрет, зачем ты хочешь такой кастинг?
Наверняка, это решается иначе.
Возможно, что у тебя вообще там принципиально ошибочный подход, и система типов тебе об этом толсто намекает.
335 1852890
>>852888
Почему так нахуй?
336 1852899
>>852890
Ну вот так, мне тоже много чего не нравится, но приходится мириться.
337 1852902
>>852890
И ты всегда можешь сделать преобразование функции.
Supplier<T> funToSup(Function<Void, T> fun) {
return () -> fun.apply(null);
}
338 1852910
>>852902
И даже ещё проще:
methodThatRequireSupplierT(() -> fun.apply(null))
339 1852911
Жаль, что в Void приватный конструктор, можно было бы возвращать null или new Void() вместо false и true.
340 1852914
>>852911
Ты не поверишь, вот для таких как ты его и сделали приватным.
341 1852929
>>852889
Есть список из функций с одинаковым принимаемым и возвращаемым значением. Первая и последняя функции ничего не принимает и не возвращает соответственно. Надо их красиво закомпоузить.
342 1852934
>>852914
Ладно, я тогда придумаю другой способ внести дичь в джаву.

Javac при попытке скомпилировать код ниже на jdk 8 или 11 стектрейсит вместо ошибки.

@FunctionalInterface
interface FA { Object eval(Object ...args); }

public class Main {
public static void main(String[] args) {
System.out.println(((FA)((a, b) -> 0)).eval(0, 0));
}
}
343 1852935
>>852929
Функция не может ничего не возвращать.
Иначе, это не функция, а эффект.
У тебя там что-то не так с дизайном.
344 1852950
>>852935

>Иначе, это не функция, а эффект.


Ага, Consumer называется.
Screenshot 2020-11-10 at 17.08.01.png2 Мб, 1533x1574
345 1852996
Где взять ключ на intellij?
m.png2 Мб, 1533x1574
346 1853001
Где взять ключ на intellij?
347 1853005
>>852996
в телеге
image.png17 Кб, 672x486
348 1853012
>>852996
Ты неправильную редакцию скачал, надо качать COMMUNITY EDITION
349 1853013
>>852950
Если у тебя вот так:
Supplier -> FunctionA -> FunctionB -> .... -> FunctionN -> Consumer,
то, начало и конец лучше держать отдельно, т.к. это не функции, и не часть конвейера, а именно что вход и выход.
350 1853016
>>853005
Ебучий двощ.

Я смотрел, там есть одна группа где вроде как на 19 год. Это оно?
351 1853021
>>853016
А в шапке телеги нет, как это обычно в других тредах
352 1853031
>>853012
Так там нет поддержки js/html...
353 1853033
>>853031
И нахуй оно нужно? Поддержки спринга нет, вот что плохо. Причем на все остальные иде она есть и бесплатно.
354 1853045
>>853031
>>853033
Нахуй спринг и js, что действительно плохо - это отсутствие удобной консольки SQL.
355 1853047
>>853033
Так где ключи брать?
356 1853050
>>853047
В пизде.
357 1853051
>>853050
Голова, дай ключ.
358 1853057
>>853051
На рутрекере смотри.
Screenshot 2020-11-10 at 22.00.54.png20 Кб, 764x88
359 1853063
>>853057
Добра
360 1853065
>>853016
блять, откуда ты такой беспомощный
361 1853067
>>853065
Долго не пользовался виндой, отвык от пердолинга)
362 1853085
Сап. Короче получил возможность пройти интенсив Java Oracle в рамках программы повышения квалификации. На немецком языке ибо живу в ЕС. Курс вроде не требует наличия навыков программирования, только общие знания в информатике. Сам я знаю принципы программирования, что такое переменная итд понимаю, но сам писал только простенькие скрипты по мануалам. Это будет фулл тайм удалёнка, длительностью всего 3 месяца. Реально ли за это время хоть как-то выучить язык? Что имеет смысл делать самому дополнительно, что почитать/посмотреть на ютубе?

Алсо, изначально хотел C# или Python, но пришлось брать то, что дают.
363 1853086
>>853005
Спасибо за совет, нашёл там жарник, теперь у меня до 7 июля 2089 года.

мимо другой
364 1853093
>>853085
за 3 месяца реально. но вкалывать придется нормально.>>852934
@FunctionalInterface
interface FA { Object eval(Object ...args); }

public class Main {
public static void main(String[] args) {
System.out.println(((FA)((Object ...a) -> 0)).eval(0, 0));
}
}
365 1853096
>>853085
В немецкоязычных странах очень популярна джава.
И (наверное) есть работа.

Сишарп - хуета, и не нужен.
Питон - бейсик для хипстеров, хуета без задач (кроме скриптинга бигдаты).
Так что, тебе повезло.
366 1853098
>>853093

>@FunctionalInterface



куда ты лезеш со своими функциями, забирай это говно со скобками куда подальше, реально достаточно одного функцианально опуща который начинает срать своими скобками в проекте
367 1853100
>>853096
Тащемта бигдата и нейросетки меня интересуют, но это скорее праздный интерес. А так да, полистав вакансии понял что джава это то что надо. Сишарп, кстати, тоже востребован у нас тут.
>>853093
Надеюсь что вывезу, очень давно ничего вообще в принципе не изучал.

Спасибо за ответы.
368 1853166
>>853100
Сишарп - путаный и мусорный язык.
И он воняет паскалем, потому, что создан идеологом Delphi.
А джава - язык простой и недвусмысленный.
В нём много букв, но очень мало говна.

Тут, правда, надо понимать, что "выучить язык" и "научиться программировать" - это совсем не одно и то же.
369 1853188
Зачем intellij при за пуске лезет в инет на всякие dns серверы + что-то типа server-13-225-73-30.fra2.r.cloudfront.net
image.png457 Кб, 512x394
370 1853192
Как там EJB поживает? Стоит пробовать устроиться? Вакансии сочные, но перспектива технологии не ясна.
371 1853199
>>853192
В треде активно закапывают EE, думаю, за счёт легаси протянет лет 5-10. Если там вообще нет спринга - идти не стоит.
372 1853208
>>853199
Печальненько.
373 1853214
>>853192
Ты серьёзно думаешь, что можно выучить какую-то технологию, и потому всю жизнь с неё кормиться и больше ничего не учить?

Специально посмотрел - все вакансии на hh, где упомянуты EJB, включают ещё хуеву тучу баззвордов, включая бут-хуют-батут. Как правило, перечисляют все, которые могут вспомнить, лол.
374 1853222
EJB
@Stateless

@Stateful

@Singleton

>Бизнес логика.


>EJB


>Логика



бамп
Скриншот 11-11-2020 030259.png17 Кб, 533x359
375 1853228
Объясните пожалуйста, каким образом здесь будет выполняться тело цикла if, если array2[0] и array2[0], array2[1] и array2[1] и т.д. равны. Они же равны, как я понимаю? i и j инкрементируется и становятся равны друг другу. Выводится массив в порядке возрастания, как я и хотел, но я просто скопировал кусок кода с интернета, теперь хочу разобраться, что здесь происходит.
376 1853232
>>853228
Имя метода с большой буквы - сразу на хуй, и ещё пиздюлей на дорожку отсыпать за такое.

Это пузырьковая сортировка.
Самая примитивная и неоптимальная реализация.

>Они же равны


Циклы вложенные. Пока крутится внутренний - внешний стоит.
Переменные i и j равны только на первой итерации внутреннего цикла. Т.е. эта итерация будет холостая.
377 1853233
>>853228

настрой хоть эклипс нормально без этих квадратов
378 1853236
>>853233
Нормально настроенный эклипс называется IDEA.
379 1853272
>>845544
закинул, но там похоже ток фантики с этой рефералки
380 1853302
>>853228

>Циклы в 2020


Тред с дельфи 2 блока вниз, дедуль.
382 1853305
>>853232
А, спасибо)
>>853233
Это BlueJ
>>853302
Надо же с чего-то начинать, логику прокачивать.
image.png23 Кб, 540x243
383 1853415
>>853302
А вот в этом случае без цикла можно обойтись, что бы по производительности и/или простоте кода было не хуже?
384 1853431
>>853303
а ещё лучше, учите джарп, пацаны
за ним - будущее
385 1853434
>>853431

>джарп


Что это? Можешь на английском написать?
386 1853440
>>853415

>без цикла можно обойтись



Arrays.stream
387 1853503
>>853440
По двум массивам параллельно?
Там есть операция zip в пары?
388 1853506
>>853503

в Guava есть zip
389 1853678
Подскажите, в ресурсах проекта есть текстовый шаблон, и там же есть несколько текстовых файлов, которые надо подставить в него в процессе сборки (мавеном). В результате в папочке target должен лежать отрендеренный шаблон и он должен быть доступен в тестах. Как это лучше всего организовать? Может лучше вообще без мавена?
390 1853794
>>853678
Какой шаблон? Что в файлах? Ты о чём вообще?
image.png13 Кб, 616x216
391 1853835
>>853794
Примерно такой. В bar.txt прописан какой-то текст (123). В результате должно получится {"foo": "123"}.
392 1853839
>>853678

>темплейтный фронт в 2020


Зачем и нахуя?
393 1853841
>>853839

>фронт


схуя?
394 1853850
>>853841
Извините
395 1853869
>>853678
Разве что написать свой шаблонизатор, который при виде в шаблоне файла заменил бы его название на содержимое. Вряд ли в существующих шаблонизаторах можно так вот просто прочитать файл извне, это всё-таки не языки программирования.
396 1853883
>>853869
Да блядь, проблема не в том, чтобы именно по имени файла заменить, а в том, как это встроить в мавеновскую сборку и надо ли вообще.
397 1853887
>>853869
Впрочем, в freemarker тех <#include> может подключаться произвольные файлы, а не только шаблоны.

>>853883
Кто тебя знает, надо тебе или нет, это ты придумал непонятно с какой целью. Напиши плагин для мавена и запусти в нём шаблонизатор, срендеренный выхлоп запиши в target/classes/template.json.
398 1853889
>>853887

> тег <#include> может подключать


fix
399 1853909
Накидайте примерный список того что нужно знать челу претендующему на вкат на джуна в дсах.
400 1853915
>>853909
То, что в вакансиях, на уровне "смог написать пет-проект с использованием всего этого".
401 1854031
>>853678
Думаю, что надо сделать скрипт, например, на Groovy, который делает с шаблонами то, что тебе надо.
А потом, если это как-то завязано на другие вещи, запускать его из Мавена.

Если же нужно просто генерить кучу хуиты по шаблонам, то мавен там и нахуй не сдался, сделай скрипт и генери.
402 1854102
>>853915
В вакансиях зачастую никакой конкретики а-ля "Знание основ java и ооп/Опыт изучения n месяцев. В лучшем случае напишут про гит и чтение технической лит-ры на английском.
403 1854133
>>853909
>>854102
Да нет там единого стандарта. Где-то ты больше селекта за год не напишешь ничего, где-то будут запросы на полстраницы. Одни ковыряют легаси, у других последняя версия жабы и постпроцессоры на спринге.
Из общего:
-Идеальное знание кора, все основные структуры данных надо знать заебись, чё там за корзины в хешмапах и почему там O(1) в O(logn) вырождается, вот эти все линкед сеты между собой отличать надо и прочее.
-SQL, обычно хватает создать пару таблиц, связать их по ключам, написать пару запросов с джойнами, агрегатными функциями, группировкой. Первые задачек 40 на sql.ex. Если видишь в вакансии диалект, то соответственно ещё и его изучи.
-Уметь на спрингбуте создать простой круд, примерно понимать что там за прокси классы создаются, бины, контекст, основные аннотации. В жопу лезть за АОП не надо, наверное.
-Понимать, что за HTTP методы такие, заголовки всякие, понимать чем IP адрес от MAC отличается, JSON туда сюда покидай по контролёрам. Видел в вакансиях упоминания всяких шифрований и прочего, но не был там, так что хз что имеется ввиду.
-В гите ничего особо знать не надо, пуш, мерж, ребейз, создай себе репозиторий, поиграйся с ним денёк другой, это несложно.
-ООП, основные понятия, любят про SOLID спрашивать, паттерны, Мартина и GoF по-любому читать придётся, тут уж никак.
-Можно ещё про stream и многопоточность расписать, но это не всегда спрашивают и используют. Если пишут, что Java 8+, то значит и про стримы спросят, если асинхронность, то будут про дедлоки мозг ебать.
404 1854166
>>852327

>Мидл?


Хуидл. Пиши software engineer и всё.
Совет - валить. 7 лет на одном месте без роста - это перебор.
405 1854168
>>853835
на питончике сделай
406 1854169
>>854168
На баше.
407 1854170
>>853188
Сливает товарищу майору. Удоляй.
408 1854179
>>854170
Ждём, когда в идее сделают принудительные обновления, которые можно только отсрочить жмаканием на кнопку глубоко в настройках. И чтобы она принудительно перезапускалась при этом, прерывая сервер приложений и прогон sql-миграций.
image.png139 Кб, 1280x1024
409 1854199
Заебала эта хрень. Какие там модули нужны и куда их совать?
Создал блять проект.
410 1854203
>>854199

> src\com


Чем собираешь? Это точно не мавен и не градл.
411 1854222
Будут ли брать на работу, если дропнуть вуз на 2 курсе? Я просто заебался учить бесполезные предметы, хочу программировать.
412 1854225
>>854222
Найти работу будет тяжелее, во многих местах требуют корочку. Бывает, что начиная с какой-то должности требуют и магистратуру.
413 1854273
>>854225
А если я машиностроительный специалитет закончил - проканает?
414 1854274
>>854273
С большей вероятностью. Где-то требуют абстрактное "высшее техническое образование", где-то уточняют конкретные специальности - информатика и выч техника, программная инженерия и прочее.
415 1854275
>>854274
Отлично, осталось кодить научиться.
416 1854292
>>854133

>понимать чем IP адрес от MAC отличается


А это еще зачем?
417 1854296
>>854292
да, действительно, хуйня какая-то
вон, зуми-зумеры на рякте за 250к этого не знают и им похуй ваще
image.png214 Кб, 350x499
418 1854405
Посоны, пойдет для погружения в этот ваш спринг?
419 1854406
>>854405
Или может еще какие варианты есть?
420 1854408
>>854406
Спринг ин экшн.
421 1854410
>>854133

>SOLID спрашивать, паттерны, Мартина


как раз скоро хотел начать читать. Какую конкретно книжку надо читать?
422 1854413
>>854405
лучше вот эту книгу
K. Wolanski - Jarp In A Nutshell
423 1854452
>>854413

>Jarp


лучший язык!
424 1854461
>>854405
Это не для погружения, это для выхода на поверхность уже.
Для погружения - Spring in Action и т.п.
Про микросервисы: https://scanlibs.com/learn-microservices-spring-boot-practical-2nd/

>>854413
Заебали форсить хуйню.
425 1854721
Ньюфаг просит помощи. Никак не воткну в это ваше ООП.
Решаю такую задачку: есть класс ShirtOrder, в нём есть три метода: ShirtOrder, который непосредственно принимает количество рубашек в заказе, есть метод getShirtQuantity, который возвращает это самое количество рубашек, и есть метод getShirt, который должен возвращать экземпляр созданной рубашки и уменьшать счетчик оставшихся рубашек на 1.
Соответственно, есть ещё класс Shirt, в котором прописаны поля цены рубашки.
Вроде бы всё реализовал, но никак не получается вернуть экземпляр этой самой рубашки. Он просит меня в скобки цену, или чего он от меня хочет вообще? Как правильно вернуть в методе эту рубашку?! ЧЯДНТ?! Подскажите пазалушта..
426 1854726
>>854721
Ты объявил конструктор для Shirt, который принимает один аргумент -- price. Создать ноывй объект ты можешь только через этот конструктор, так что да, он просит в скобках цену
427 1854727
>>854721

> Он просит меня в скобки цену


Да. Ты уже указываешь в конструкторе этот аргумент: public Shirt(float price) и должен его передать. Судя по тому, что getShirt принимает price, нужно этот же price передать в конструктор: Shirt shirt = new Shirt(price); И всё.
image.png16 Кб, 387x483
428 1854732
>>854727
>>854726
Добавил - добавилось. Какой же я безрукий. Ведь пробовал же вроде. Анончики, вы лучшие, спасибо большое! После этого удалось дописать условие, как следует, всё работает, надеюсь, правильно!
Каждому в треде по чашке чаю!
429 1854758
>>854732
Ты какую-то хуйню написал.

Что должен делать твой класс заказа (ShirtOrder)?
Туда добавляются купленные рубашки?
Но, у тебя не добавляются.

Метод getShirt(price) - он зачем вообще?
Получить одну из добавленных рубашек по цене (они типа все разные)?
Но, он делает какую-то хуйню - за каким-то хером создаёт новую рубашку.

И где, блядь, общая сумма?

У тебя внутри должен быть список (ArrayList) shirts, куда ты будешь добавлять свои рубашки методом addShirt(nextShirt) {shirts.add(nextShirt)}
Метод getShirt должен стать getShirtByPrice(price), и он у тебя должен будет перебирать список, и возвращать рубашку с такой ценой.
Более того, это должен быть не список, а Set. Если только одна рубашка с такой ценой разрешена. А это, судя по методу getShirt() так и есть - он возвращает одну рубашку с такой ценой, а не список.

И рубашки не должны создаваться внутри, это заказ, а не рубашечная фабрика.
И у рубашки должен быть бренд и модель.

И т.д. и т.п.

Вообще, лучше поискать немного другую модель на поиграться для начала, если вообще не вдупляешь, что такое объекты и т.п.
Животные - кошечки там, собачки, уточки. Сколько ног, что говорит и т.п. - дофига примеров в учебниках.
Или автомобили - машина состоит из мотора, колёс, к-ва кресел и т.п.
430 1854870
>>854758

>Ты какую-то хуйню написал.


С этим не спорю.

>Что должен делать твой класс заказа?


Ну, вообще это задачка с несколькими четкими условиями, три метода, ShirtOrder, getShirtQuantity, getShirt, которые расписал тут >>854721
Вот стояла задача первый метод заставить сохранять количество рубашек, второй - возвращать это количество, а в третьем - создавать одну рубашку для возврата из метода, при этом уменьшая число рубашек в заказе на 1. Если рубашки кончились - возвращать null.
Не знаю, насколько это практически применимо, и возможно выглядит, как лютая хуйня, но проверочный check вроде бы сработал.

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


Это точно.. В моём курсе есть примеры с собачками-кошечками, вот на выходных займусь как раз, буду разгонять мышление.
В любом случае, спасибо большое, что отозвался. Извиняюсь, что влез сюда со своими рубашками :)
431 1855207
>>854870
Понятно.
Что за курс, если не секрет?
image.png293 Кб, 554x554
432 1855213
>>854870

>float price

433 1855219
>>855213
Учебная задача же, не для прода в банк.
434 1855234
>>855213
Понятие "цена" не обязательно предполагает финансовые вычисления, в которых ошибка представления будет иметь значение. Речь не про банк или бухгалтерию.
Ну, и лучше было бы double.
435 1855238
>>855207
Это обучение - тестовая затея в рамках текущих всех этих цифровых экономик и всего такого. Можно было выбрать из кучи дистанционных образовательных программ, всякие там 3д-моделинги, курсы экселя для мамочек в декрете, мне вот джава приглянулась, хотя никогда не занимался. Разве что С++ в универе в своё время, да и то всего 1 курс. Курс в Томском универе разработан, сам курс нравится, очень даже, просто сроки крайне сжатые, за месяц нужно решить около 30 тестов. Сначала были простые, а сейчас вот пошло уже посложнее. Дальше будут перегрузки методов, полиморфизм, наследования всякие. Буду стараться, что ж.
436 1855268
>>854410
Попробуй букварь, как заглавные буквы осилишь, тогда приходи.
programmirovanie-na-java-dlya-detey.jpg27 Кб, 185x270
437 1855332
438 1855341
>>855332

> turbobit


Ещё можно искать в поиске документов во вконтактике, там достаточно много книг ищется, эта тоже нашлась.
439 1855346
>>855341
ОК.
Но, по той ссылке, что дал я - она с оглавлением.
А в интернетах попадалась и без оглавления.
440 1855456
>>855341 >>855346
Чуть не забыл - там (>>855332) не только оглавление есть, но ещё и архив с исходниками в комплекте идёт.
441 1855471
Аноны, а посоветуйте как вкатиться в тесты на спринг буте? Нет никакого опыта написания тестов, даже на обычные консольные жаба приложения, сейчас появилась необходимость. Если есть какие йоба книги или статьи, накидайте, пожалуйста
442 1855489
>>855332
Спасибо большое!
Скачал, изучаю!
443 1855552
>>855471
Просто набери в гугле "spring boot testing".
444 1855876
Анон, насколько часто тебе приходится хуячить очередной круд с использованием локального хранилища без коннекта к базе?

ibn4 ну бля, продуктовая разработка as is: к нужной базе нет доступа/правки в боевую базу будут вливаться только после аппрува 1488 человек, ибо древнее легаси/крупная или ключевая задача
445 1855880
>>855876
В чем проблема?
446 1855886
>>855880
это был вопрос уровня "бля как бы срезать углы и не заниматься этой хуйней", на который сам же и ответил за спойлерами: видать, нужно вникнуть и научиться создавать круд с локальным хранилищем без базы.
447 1855887
>>855886
Testcontainers в помощь.
448 1855888
Когда введут val и элвис оператор?
449 1855961
>>855888

> val


final var. Ты ведь на джаве пишешь не потому, что любишь экономить буквы?

> элвис оператор


https://nipafx.dev/why-elvis-should-not-visit-java
450 1856028
>>855876
Что есть "локальное хранилище", для начала?
И даже более того - что такое "локальное"?
Это компьютер пользователя или локальная сеть организации?

Вообще, если нужна оффлайновая работа, то тут всё непросто.
Идеально - всё вообще должно идти через "локальное хранилище" (что бы это ни значило), а в него - тупая репликация из "главного", отдельным процессом.
451 1856048
>>856028
под локальным хранилищем имеется ввиду конструкция, когда приложение использует свою память для извлечения данных, и не ходит в базу.

Механизм можно описать так: задеплоил проект на машине пользователя --> в созданную формочку внес данные --> жмакнул на субмит (тем самым инициализировав событие - вызов http-метода типа post --> после редиректа на ту же страницу с формой отображаются только что введенные данные.
452 1856077
>>856048
Ты про это что ли?
https://developer.mozilla.org/ru/docs/Web/API/Window/localStorage

А джава тут при чём?
453 1856094
>>856077
https://yadi.sk/i/UBl5shLRCpZcKQ

Речь о подобном устройстве приложения: к базе нет коннекта, и при этом объекты хранятся в самом приложении.
454 1856142
>>856094
Я (>>856028) спрашивал - что такое "локальное хранилище".
В памяти - это уже кое-что, но мало.
Это база данных в памяти? Например, h2?
Или это просто объекты в памяти?
И почему в памяти? Кто мешает сериализовать их в файлы?

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

Я бы сделал (и делаю) локальный SQL сервер (на виртуальной машине) и не занимался бы ментальным онанизмом.

Но, это зависит от задачи.
Иногда удобнее иметь сериализованный объект в файле и т.п.
455 1856161
>>856094
Посмотрел тот кусочек, где у тебя код на JS.
Так вот, местами он странный.
По массиву не делают итерацию как for (i in array), это не джава.
И $('#book-form form') - лишнее, достаточно просто $('#book-form') - id (#...) - это не класс, он должен быть уникален для страницы в целом, и уточняющие селекторы не нужны.

Ну, и колбеки (a) использовать - немножно дурной тон в наше время, для этого есть промисы (аналог CompletableFuture в java)
См., например, http://langtoday.com/?p=550

Ещё лучше использовать fetch в новых браузерах, а для IE есть polyfill
https://dev.to/adrianbdesigns/how-to-polyfill-javascript-fetch-function-for-internet-explorer-g46
456 1856162
>>856161

>Ну, и колбеки (a)


Ну, и колбеки (ajax)
быстрофикс
457 1856186
>>856161
Про итерацию по массиву в JS, почему нельзя использовать for .. in, хотя, он, вроде бы, работает:
https://stackoverflow.com/questions/10179815/get-loop-counter-index-using-for-of-syntax-in-javascript

Вообще, JS таит в себе кучу ловушек для человека, привыкшего писать на джаве.
458 1856262
>>856142

>Я бы сделал (и делаю) локальный SQL сервер (на виртуальной машине) и не занимался бы ментальным онанизмом.


>


блин братка, за это обнимаю <з
временами забываю мысль, что главное "не через что", а каков конечный результат - и если его можно добиться меньшей кровью, развернув любую нужную СУБД локально, то нет смысла ебаться с хранением данным в ArrayList'e.

>>856161
думаю, что твои слова у меня тоже получится разрулить, потому как фронт формы и ресурса (книжная библиотека, которая будет усложняться и обрастать такими штуками, как ci, многопоточность, и прочими, которые сейчас для меня в новинку)

До этого был свидетелем, как друг-вкатыш при мне хуячил три месяца на js'e, и нихуя не выдал по итогу - прикрывался изучением основных основ. Естественный отбор, щито поделать :)

Отсюда сделал для себя вывод, что лучше обрастать шишками и знаниями на каком-то проектами, чем теорией, которой без параллельной разработки некуда ложиться.
459 1856263
>>856262
Пиздец, почему вы ебанутые такие? Я сука тебе выше ответил, как решить твою проблему, но ты отвечаешь этому анону на его простыни.
460 1856264
>>856262
мимо тестер-ручник, заебавшийся тыкать на кнопочки и прогонять эти ваши кейсы
461 1856265
>>856263
если ты анон что предложил развернуть локальную бд и не выебываться - я воспользуюсь твоим советом)
463 1856268
>>856266
братан, я только вкатываюсь.
Вчера блядь узнал что такое маппинг, и чем хуй отличается от контроллера: твое решение также можно реализовать, я о нем помню - заодно отвечу для себя на вопрос, чем твой подход отличается от подхода с локальной бд
464 1856269
>>856268
Тем, что на дворе 2020 год, и инструменты надо использовать современные.
465 1856272
>>856269

>инструменты


тебя тоже обнял <з
image.png366 Кб, 759x407
466 1856325
Привет, джавач.
467 1856331
>>856325
Самое время закупиться.
468 1856373
>>855332
Тем временем главный ньюфаг треда только что успешно рассадил школьников в двухмерный массив парт в классе и устроил всяческие разнообразные провер_очки, счастью нет предела! Держу в курсе!
469 1856398
>>855876
Напиши интерфейс доступа к базе, не делай реализацию, пока не получишь доступа к базе, в чем проблема? Если тебе нужно обязательно проверять, как работает код - мокируй, тесты для кого придумали, ммм?
470 1856415
>>856373
Это хорошо.
471 1856427
Какой же Котлин охуенный, после него на Джаву смотришь как на отсталый язык из 2007го)
472 1856435
>>856427
Понятно.
473 1856526
>>856398

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



тоже зарядил задачку у себя на личной борде с:
474 1856588
>>856435
Как там с ущербными checked exceptions? Как там без template literals? Как там без именованных параметров в методах? Как там без data-классов (нет, @Data от Ломбока и Java records не считаются)? Как там без null safety, уже пофиксил NPE? Как там без функций вне классов, уже написал очередной "утилитарный" класс с кучей static-методов? Как там без async / await? Как там без полноценного ФП?
P.S. я не хейтер, но после Котлина этих фич в Джаве реально не хватает :( У Котлина тоже есть свои недостатки, но бля, Джава как будто остановилась в развитии, потому что после 8й версии, когда ввели хоть что-то похожее на ФП, больше никаких значимых изменений не было, и это очень грустно...
475 1856608
>>856588

> data-классов (нет, @Data от Ломбока и Java records не считаются)


@Data от ломбока делает то же самое.
476 1856610
>>856588
Почти всё, что ты перечислил меня поначалу тоже выбешивало.
Но, внезапно, через полгода работы стал замечать, что вот это же всё просто заставляет писать вменяемый код. Не раскидывать говно по тысячам файлов, а собирать в один

>"утилитарный" класс с кучей static-методов


Или что вообще не надо такие методы писать, где параметров настолько много, что надо их именовать, лол.
Что эксепшны надо не только ловить, не ещё и обрабатывать, логгировать, дабы потом по 3 часа не искать где и почему что-то падает.

>null safety, уже пофиксил NPE


У тебя взаимоисключающие параграфы в тексте. Сам же про фп пишешь (отличная шутка, кстати, фп в котлине, ага), но неужели даже мейби не осилил?
477 1856717
>>855961

>final var


У нас в проекте по кодстайлу положено так писать. В результате когда у тебя цепочка вызовов
findXXX().stream().map().filter().map().collect()
то хер поймешь что же у тебя там лежит в итоге только IDE спасает.

Вместо простого
Optional<UserId> userId
приходится писать
final var maybeUserId
здравствуй венгерская нотация!

В общем сэкономил пару символов и добавил вагон гемора. И кстати конструкция var var = ...; var.method() тоже доставляет.
478 1856721
>>856717
Хуевый у вас кодстайл. У нас его вообще нет.
479 1856727
>>856588

>Как там без data-классов (нет, @Data от Ломбока и Java records не считаются)?


Вот кстати ломбоковский @Data + @Builder удобнее data классов. Нехватает наследования, но его нет ни там ни там.
480 1856763
>>856727
Наследовать классы данных - это очень дурной тон.
За такое обычно перезванивают, лол.
481 1856770
>>856263
Современный - не значил лучше, проще и т.п.
Более того, в наше время это часто значит совершенно обратные вещи.

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

Мимо философ, наблюдавший восход и закат многих best-practices
482 1856773
>>856770
В данном случае как раз лучше и проще. Докер образы не оставляют после себя мусора в temp или еще где-то, работают и на винде, и на линухе и не зависят от версий системы и компонент.
483 1856779
>>856773
Докер-образы != testcontainers
Ну, и человек спрашивал очень ньюфажеский вопрос, и предложить ему в качестве ответа докер (в любом виде) - это как предложить поднять себя за волосы.
484 1856780
>>856779

>Докер-образы != testcontainers


В основе там как раз докер образы + агент, так что мимо.
485 1856783
>>856763
ОК, расскажи как сделать по феншую: вот есть у нас транзакция с неким количеством полей типа айди, амаунта и т.д., и у нее есть несколько подтипов: транзакция по карте, транзакция черех гугол пей, транзакция через инторнет и т.п.
Как это реализовывать без наследования? Копипастить все базовые поля? Или один мега класс с кучей опциональных полей такой вариант сразу нахуй?
486 1856785
>>856783
Стратегия
487 1856790
>>856783
Это зависит.
Но, наследования данных надо избегать всеми средствами.
Prefer composition over inheritance, вот это вот всё.
488 1856795
>>856779
Там ещё проблема в том, что докер это про софт в контейнерах, а не про данные.

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

Докер на данные не очень ориентирован, поэтому базы там то ещё удовольствие отлаживать.

В принципе ничем не отличается от того, чтобы поднять копию СУБД на другой машине и на ней отлаживаться, держать при этом копию каталога с самими таблицами, чтобы откатывать можно было.
489 1856797
>>856779

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


Это как раз хороший способ.

У нас был проект с базой на Оракле и доступ через хибер. Но для тестов использовали H2 in memory - ну а хули, хибер же! И все работало нормально, пока в один день у нас не отвалились все спринговые batch job-ы из-за какого-то хитровыебанного поведения Оракла. И на H2 это не теститься никак, только на предпрод энвайроменте можно затестить. В итоге вылилось все в то, что пришлось делать 3 релиза прежде чем все пофиксали. А были бы у нас докер образы с ораклом, мы бы это поймали очень быстро.
490 1856835
>>856785
>>856790
Ебануться какие костыли можно придумать, лишь бы не делать наследование в угоду модной композиции. И ведь у рекордов такая же хуйня.
491 1856836
>>856835
Рекорды хуйня, тут спору нет. А стратегия чем тебе не угодила?
492 1856844
>>856783
Я не тот анон, что затирает про избегать всеми средствами, но в данном примере с транзакциями композиция действительно выглядит предпочтительнее
493 1856853
>>856785
Это вообще поведенческий шаблон, при чем тут данные?

>>856790

>Prefer composition over inheritance, вот это вот всё.


В теории - все круто, но на практике везде оказывается удобнее наследование. Потому что когда у тебя пара сотен полей посмотри спеку мастеркарда или визы, то ты просто заебешься ручками все писать. Одно дело когда у тебя в языке есть поддержка композиции, а другое когда ты должен ручками все прописывать.
494 1856856
>>856836
Стратегия норм. Но юзать её, лишь бы не было наследования...
495 1856888
>>856717

>findXXX().stream().map().filter().map().collect()


С:\ВасилийВалентинович\бухгалтерия\2020\сводный_отчет_ноябрь\сверка\аниме_наруто
496 1856931
>>856853

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


у нее есть несколько подтипов: транзакция по карте, транзакция черех гугол пей, транзакция через инторнет
497 1857107
>>856853

>когда у тебя пара сотен полей


Я бы генерировал код скриптом из спецификации, заданной в той или иной форме.
Я так часто делаю.
498 1857120
>>856931
Речь об объектах данных. Без поведения (я надеюсь, лол).
А стратегия - это инкапсуляция именно поведения (алгоритма вычислений).
499 1857259
Че по интеграционным тестам дайте читануть?
500 1857862
>>842154 (OP)
Что почитать по жабе крестодебилу со стажем в пять лет?
501 1857874
>>857862
Core Java for the Impatient.
502 1857892
>>857862
Хорстманна пролистать без задрачивания.
hqdefault.jpg26 Кб, 480x360
503 1857931
Почему у меня после mvn clean package пропадают некоторые записи из БД?
504 1857936
>>857931
Звучит невероятно, но предположу, что ты в конфиге юнит-тестов указал датасорсом реальную БД вместо hsqldb/H2.
505 1857948
>>857936
Ты прав, спасибо.
506 1858055
Сейчас будет серьёзный вопрос: какой тип exception выбрать, чтобы он не требовал обязательной обработки в коде? Вот для ситуации, когда мы ищем элемент массива, например, а он не находится (null). По идее, это runtime exception, но их куча, есть Illegal argument exception, есть number format, есть IOOB, AIOOB, в чем вообще отличия выбора?
507 1858056
>>858055
Какой нравится, такой и хуячь, можешь даже собственный написать.
508 1858057
>>858056

>можешь даже собственный написать.


А что, так можно было? Ладно, спасибо :D
509 1858081
>>858057
>>858055
Такие вещи надо делать, если тебе заранее неизвестно, что в твоём коде может возникнуть исключительная ситуация.
Т.е. она (возможно) возникнет в процессе выполнения, в ответ на действия пользователя и прочие подобные факторы.

И нужно использовать RuntimeException.
Если создавать свой, то наследовать от него.

Если хочешь универсальный готовый - IllegalStateException.
Его название может подойти абсолютно к любой ситуации в рантайме.
510 1858318
>>858081
Вкатыш, ты?

Не слушай долбоебов, если логическая ошибка, кидай свой ChE. От RTE защищайся проверками.

Ех. Метод принимает массив типа String? Перед выполнением логики проверь, что копия ссылки not null и массив имеет хотя бы один эл-т.
511 1858330
>>858318
Да ты же упоротый, лол.
512 1858376
>>858318

> ChE


> 2021


Ёбу дал? Хочешь как в Go прокидывать ошибки?
513 1858591
Может есть какая-нибудь шпаргалка, как определять бины в context.xml?
Например, я хочу перенаправить http на https трафик, но сделать это без класса конфигурации.
514 1858617
Как вообще блять создавать что-то на java? На крестах я умею почти всё, что же на жаве?
Там тысяча библиотек, тысяча плагинов и ради чего?
Мне надо разработать клиент-серверное приложение, с чего начать, как вообще?
515 1858624
Спасите помогите!! Делаю задание из Хорстмана (5-14). Там надо написать форматтер для логгера. Я сделал проект, в нем два класса. 1-ый сам логгер у него есть FileHandler, который выводит все в лог. 2-ой класс форматтер, который форматирует логгер. Они лежат рядом в папке src. Теперь мне надо в logging.properties заменить java.util.logging.FileHandler.formatter = java.util.logging.XMLFormatter на путь к моему классу, а как его найти? Я не понимаю.
516 1858626
>>858624
Всё это в идее происходит
517 1858634
>>858626
Полное имя своего класса пиши, с пакетом.
Например, com.zalupa.MyYobaFormatter.
Он же у тебя в пакете, да?
Сверху в файле класса написано что-то типа package com.zalupa или даже просто package test?
Если нет - создай пакет, без пакета (default package) могут быть проблемы, не в этом случае, так в другом.
path.jpg258 Кб, 1280x1024
518 1858653
>>858634
У него аж 4 варианта пути.
Я пробовал =forFormatter.MyFormatter
=IdeaProjects.Ch_5-14.forFormatter.MyFormatter
Как еще попробовать?
519 1858667
>>858653
Какого, нахер, пути?
Путь найдёт class loader, лол.
Я же сказал - пиши имя класса - насколько я понял, у тебя это forFormatter.MyFormatter

Вот если ты это захочешь куда-то деплоить, вот там надо будет указать путь к твоей библиотеке в командной строке запуска java.
520 1858668
Аноны, хочу написать свой мессенджер на микросервисах с кафкой, блекджеком и шлюхами. Погуглил – примеров никаких не нашел как лучше организовать хранение сообщений, где тут использовать кафку и зачем. Посоветуйте что-нибудь почитать, что ли или, если есть примеры на гитхабе, покидайте ссылок, спасибо
521 1858669
>>858668

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


Перехочешь.
522 1858671
>>858617
Какого рода сервер?
Поросто socket или уже http(s) с чем-то полезным?
Загугли, когда определишься: java how to create ??? server.

Если http, то используют готовые серверы приложений - java ee, spring boot, более низкоуровневое - jetty embedded (руками эмбеддить, а не как в спринг буте) etc.
Вообще, охуеваю от таких вопросов космического масштаба.
523 1858673
>>858668
Кафка - это пижонство.
Сорокина почитай лучше.
524 1858685
>>858667
не, не помогает. лог перезаписывается, но форматтер к нему не применяется. может в самой идее какие-то настройки надо запиливать?
525 1858703
>>858668

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


Хранить в БД микросервиса сообщений.

> где тут использовать кафку


Для взаимодействия микросервисов. Раз уж решил упороться в микросервисы там, где они создают больше проблем, чем решают, то хуярь микросервисы "авторизация", "сообщения", "хранилище_контента", "API_endpoint", "поисковый_кеш" и "аналитика", гоняя между ними данные через кафку.
526 1858704
>>858617

> тысяча библиотек, тысяча плагинов


Это современный тренд, привыкай. Громоздкий код с размазанной логикой, сотни классов вокруг одной маленькой фичи, вложенность вызовов методов больше 100. Есть стереотип, что так принято делать только в джаве, но я недавно ознакомился с современным фронтендом с реактами-хуяктами, у них теперь то же самое.
527 1858728
>>858685
я сделол, кря-кря
pepe-the-frog-screenshot-laptop-png-favpng-RhthQz0iUMLDxwRi[...].jpg75 Кб, 820x580
528 1858755
Junior full stack java developer
Оклад 40000
529 1858761
>>858755
@
мухосранск
530 1858876
SOS вопрос сеньорам-помидорам и мидлам-плавунцам

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

Как это все разрулить? Главное условие - как можно меньше еботни. Я так понимаю, там все на го написано, я смогу контроллер на жабе запилить и унаследовать кубером? Или только на го ? И как его быстрее сделать и оптимальнее стокового ?

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

Надеюсь ты тут и в расположении духа, анонас. Тема выбрана и согласована, отступать поздно, а времени неделя
>>848566
531 1858905
>>858876
Че несешь блядь? Че за контроллер?
532 1858932
>>858728
И что было, в итоге?
533 1858963
>>858704

>Java


>знакомился с современным фронтендом с реактами-хуяктами


>у них теперь то же самое



Нихуя себе, ты толерантный.
"У них то же самое", ну надо же.
У них, блядь, не "то же самое", у них пиздец, какого свет не видел.
Это ёбаный ад, этот ваш современный js-тулинг.

Ещё года 4 назад вменяемые люди охуевали от этого, и писали посты про "insane js tooling" и "javascript fatigue". Причём, не вкатышы, а матёрые юниксоиды, пишущие на си, там тулинг тоже будь здоров.
Так вот, с тех пор всё стало сильно хуже, и теперь это просто неконтролируемый пиздец, расползающися под собственной тяжестью.

И няшная джава - как недостижимый идеал на фоне всего этого.
"То же самое", у них, блядь.

На самом деле - отгадка в том, что JS - это не язык, не платформа, не среда, а говно. Был, есть и будет. Там ничего нет - ни структуры, ни модулей, ни разделения на исходники и результат, ничего, одно только говно.
Один ЖС везде, который превращается в ЖС, который превращается в ЖС, остальное - просто имитация, включая TS. И когда из этого говна пытаются слепить что-то осмысленное, как у взрослых, получается просто лютейшая хуйня, под капот которой лучше никогда не заглядывать.
534 1859037
>>852327
Ты ебанулся? 7 лет в той параше, что ты описал? Беги оттуда, дурачок. Хотя нет, стой. Сколько платят?
535 1859276
Может кто нибудь помочь разобраться с байткодом скалы? ну и ее интеропом с джавой
>>1859258 →
536 1859290
>>859276
лолнет
537 1859383
пишу под ведроид. Подскажите, spring + postgres залить на heroku норм тема? нужно простейшее апи с несколькими табличками в бд и авторизацией
538 1859405
>>859383
Норм. Если у тебя основной продукт - мобильное приложение, то вообще не важно, на чём у тебя бэкенд, хоть спринг, хоть нода или Go.
539 1859552
>>858703

>хуярь микросервисы "авторизация", "сообщения", "хранилище_контента", "API_endpoint", "поисковый_кеш" и "аналитика"


По какому принципу вообще надо делить микросервисы? Типа, каждый спринговый @Service в монолите - это отдельный сервис в микросервисах или как? Мимо.
540 1859589
>>859552
Сложный вопрос, мнений много. @Service, таблицы и сущности с микросервисами не соотносятся, в одном микросервисе может быть несколько таблицы и спринговых сервисов. Микросервисы скорее делятся по большим фичам, чтобы в одном была какая-то большая область функционала и несколько маленьких вспомогательных. Главное - чтобы микросервисы не сильно зависели друг от друга, то есть чтобы не было такого, что пользователь нажал на кнопку - и микросервисы начали делать сотни запросов друг к другу, чтобы выполнить операцию (зачастую для этого необходимые данные дублируют в БД каждого микросервиса, и, например, в каждом может быть по своей таблице юзеров с уникальными дополнительными полями).
Screenshot 2020-11-18 at 20.56.41.png948 Кб, 1064x1304
541 1859603
>>859589
Друже, а посоветуй книжку по микросервисам со спрингом. Почитал пикрил – не зашло, да и старовато уже, как мне кажется
542 1859606
>>859589
Понятно. Просто я открыл первый попавшийся плейлист по микросервисам, там чел вообще, как я понял, отдельный сервис делал просто для выдачи инфы по фильму. Не до такой же степени надо суживать сервис..
543 1859613
>>859603
Заходишь на allitebooks.com и набираешь в поиске spring microservices
Там есть, что почитать, в том числе и свежее.
Также, scanlibs.com, но, там сложнее качать.
544 1859621
>>859606

> отдельный сервис делал просто для выдачи инфы по фильму


Наверное, просто тестовый пример, чтобы показать, как это делается технически, а не best practices.
545 1859673
>>859606
Степень определяется нагрузкой.
Смысл микросервисов - в распараллеливании задачи.
Если нагрузки нет - микросервисы не дадут ничего, кроме оверхеда.
546 1859786
Двач, где взять Spring in Action на русском
547 1859859
>>859786
https://scanlibs.com/spring-v-deystvii-3-izdanie/

Она старая, но, для первого знакомства пойдёт, наверное.
548 1859860
>>859786
Нигде, даже за деньги. Можно только по 3 спрингу найти (inb4: устарела как говно динозавров), 4 и 5 тупо не переведены. По 4 есть такая хуйня: http://beginner-mercenary.blogspot.com/2018/07/spring-in-action-spring4.html , но лучше мурзилки и ютуб по спрингу смотреть, чем пытаться разобраться в этом.

А вот свежая Pro Spring ищется очень легко, если устраивает, вбей в документах в вк "spring для профессионалов".
549 1859861
image.png4 Кб, 221x187
550 1860151
Как убрать этот показ переменных, методов и тд. под классом? Неудобно
551 1860290
>>860151
Кликнуть по нему.
gii-crud-preview.png55 Кб, 1006x738
552 1860348
Аноны, подскажите как грамотно в Spring сделать/сгенерировать CRUD формы из @Entity классов?
Для примера, в одном фреймворке PHP (Yii) есть автогенератор такой штуки, для Spring есть что-то в этом духе, или надо все вручную писать? Знаю что есть библиотеки которые генерируют frontend-формы через node.js (Vaadin, JHipster), но хотелось бы чисто на Java.
553 1860352
>>860348
Vaadin разве использует ноду? Вроде он как раз чисто на джаве.
554 1860354
>>860352
Я как понял, он с какой то версии свчинулся из GWT в node.js
https://vaadin.com/application-migration/vaadin-7
555 1860358
>>860354
Ни слова про ноду не нашел.
556 1860359
>>860348
Это случаем не твой вопрос? https://stackoverflow.com/questions/26504637/

> для Spring есть что-то в этом духе, или надо все вручную писать?


Обычно пишут вручную.
557 1860561
>>860348
>>860359

>Обычно пишут вручную.



Да.
В том числе и генераторы кода, лол.
558 1861246
Если задан массив объектов типа File, отсортируйте его таким образом, чтобы каталоги следовали перед файлами, а в каждой группе отсортируйте элементы по пути к ним. Воспользуйтесь лямбда-выражением, чтобы указать компаратор типа Comparator.
Вот решение: Arrays.sort(files, Comparator.comparing(File::isFile));
Объясните, почему выполнилась вторая часть задания? Почему группы папок и файлов отсортировались по пути, если это нигде явно не указано?
559 1861481
Народ кто-нибудь работал-стажировался в АТОН или Техносерв консалтинге ? если да каков ваш опыт. и куда лучше идти в crm разработку или "разработка интеграционных сервисов"
560 1861491
>>861481

> crm


Почему-то у меня слово очень сильно ассоциируется с пхп и 1с.
image.png42 Кб, 594x450
561 1861542
>>861246
JDK 14, не воспроизводится.
Могу предположить, что массив files у тебя изначально был в отсортированном виде.
562 1861664
Что нужно прочитать, чтобы свои учебные программы вместо простыни из методов научиться по классам раскидывать? Что-то по паттернам? Какие книжки?
563 1861741
>>861542
Может у меня работает, потому что я получаю массив с помощью listFiles? Вроде в папке они не отсортированы по имени.
image.png43 Кб, 666x702
564 1861810
Анончики, подскажите, пожалуйста: вот есть у нас контейнер Map<String, String> container = new HashMap<>();
В нём нужно разместить множество ключей, и потом оперировать со значениями.
Есть конструктор, который на вход принимает параметры множества.
Прописал его через LinkedHashSet, по условию.
Set<String> place = new LinkedHashSet<>();
this.place = new LinkedHashSet<>();
Теперь, есть один из методов public String setPlace(String value),
который принимает на вход строку value. Её нужно записать в Map, ассоциировать с первым попавшимся значением ключа place. Никак не воткну, как работать с этим множеством place, как его первый попавшийся элемент-то вызвать. У меня пока он либо на все ключи сразу присваивает value, либо вообще какая дичь.. Буду рад мыслям на этот счет. Внутри for метода setPlace условие так и не смог прописать.
565 1861816
>>861810
Че блядь?
566 1861832
>>861816
я сам когда это увидел немного *ел зачем и почему
567 1861834
>>861832
И принес сюда, чтобы мы тоже охуели?
568 1861836
Посоны, мне тут придется писать курсач на джаве. Десктоп или браузерное приложение. Какой фреймворк выбрать лучше чтоб по проще было? Препод предлагает JavaFX, но можно че нить свое взять
569 1861837
>>861836
Пошли его нахуй.
ds.jpg46 Кб, 400x420
570 1861838
>>861837
а че так
571 1861840
>>861838
А че он хуйню тебе предлагает?
572 1861841
>>861664
Для этого достаточно пользоваться принципами SOLID. Читать очевидный клин код.
картинки-javascript-программирование-3340155.jpeg22 Кб, 480x349
573 1861842
>>861840
ну и пох, а на чем мне писать то?
574 1861843
>>861842
На Vue.js и спринг буте.
575 1861844
>>861843
а шо, жаваФХ вообще залупа?
576 1861877
>>861844
Тотальная. Даже Оракл на него хуй положил.
577 1861919
>>861491

>crm


>пхп


>1c



У тебя каша в голове просто.
На пхп делают не crm, а cms, лол.
А в 1с - ну да, иногда они используют термин crm, чтобы рекламировать своё поделие.

Воообще, CRM - это Customer Relationship Management. Этим модным (сейчас) словом сейчас называют то, что лет 15 назад называли модным (тогда) ERP.
На самом деле - это просто информационная система для бизнеса, в широком смысле слова.
578 1861921
>>861664
Надо писать побольше кода.
Таким вещам нельзя научиться просто так, от балды.
579 1861928
>>861836
Если чистая джава - то Swing.
Свинг - это то, на чём написан UI в IDEA, если кто забыл.

Раздела про Swing в Java Tutorial должно быть достаточно.
Еще в интернетах есть охуенная книжка Filthy Rich Clients.
Можешь на ютубе загуглить "MVVM на Java" - есть хорошее видео на русском.
Возраст свинга и инфы по нему не должен тебя пугать - это надёжная проверенная технология.

Если не пугает джаваскрипт - то >>861843
В интернетах дохуищща готовых примеров.
Там всё не так сложно.
Только бери именно Vue.
И ни в коем случае не Angular или React.
580 1861992
>>861741
Судя по документации, listFiles() не гарантирует никакого порядка, но у меня он тоже вернул уже отсортированный массив. Видимо, зависит от низкоуровневых особенностей конкретных ОС, полагаться на это не следует. Ну а то, как они в проводнике сортируются, вряд ли на это влияет.
581 1862230
>>861928

>Только бери именно Vue.


>И ни в коем случае не Angular или React.


А почему?
мимо
582 1862286
>>862230
Зайди в JS тред и почитай.
583 1862341
>>861834
>>861816
У меня, кстати, получилось :D С подсказками, конечно же, но всё таки получилось! Держу в курсе!
584 1862506
Кста, пачиму в шапке написано, что фриланса на жаве нет? У меня кореш фрилансит на андройд приложухах 300к в н/с. Сам вот планирую вкат оформить.
585 1862533
>>862506
Потому что андроид - не джава.
586 1862554
Стаю на распутье между выбором во что погрузиться (java или C#). Помогите определиться и понять почему C# будет плохим выбором?
587 1862588
>>862533
ну дк он на жаве пишет
588 1862733
>>862554
Ты это должен спрашивать у имеющих опыт работы с шарпом. Каких ответов ты ждешь итт?
589 1862784
>>862554
Шарп - негодный, мусорный язык. И нишевый.
А джава - промышленный стандарт.

Так что, должны быть какие-то серьёзные, специфические причины, чтобы вкатываться именно в шарп. Если у тебя их нет - шарп тебе не нужен.
590 1862812
>>862588
Помнится, оракл был не согласен с тем, что то, что на андроиде, можно называть джавой.
591 1862921
>>862812
А Sun разрешал в нулевых это поделие разрабатывать.
592 1863161
>>862506
А нахуя тебе фриланс? Есть же просто удалёнка. Сидишь на окладе, пердишь в стул, получаешь бабки.
593 1863252
Блять, попробовал вкатиться в жаву по курсу JBorn, чисто первый попавшийся из рутрекера. В итоге посмотрел 2 урока. Мне выебали мозги с гитом и когда подошло время решать задание второго урока я обосрался и нихуя не сделал, ибо блядь в самом видеоуроке этот пиздабол говорит "Что такое метод вам пока знать не надо, просто копируйте вот эту хуйню и хуячьте", а в заданиях везде нужно "Создать метод". Как я его должен создать, если этот пидорас пиздел 2 часа про свой ёбанный гит и даже не умудрился определение дать методов ебучих.
Пиздец сгорело и задизморалило. Пойду лучше книжки читать, рыли.
594 1863361
>>863252
Лично мне кажется, что текстом всегда воспринимается лучше и больше. Пока начетчик из курсов мыкает и пересказывает страничку из книжки ты этой книжки 5 страничек прочитаешь.
Лично мне только вот это зашло(челик в /b/ посоветовал) https://www.youtube.com/playlist?list=PL4_hYwCyhAvblhTbPQmOF4b3kilWSpOjU
Да и то, только как закрепление двухтомника Хорстманна.
595 1863364
>>863361
Это жава с нуля? Написано 3й курс..
596 1863365
>>863364
А, кажись разобрался. Посмотрю, ок
597 1863367
>>863365
Ну там для студентов мфти изучавших плюсы и структуры-алгоритмы, но мне зашло без этих знаний, разве что где-то в середине ничего не понял, когда он пару минут про конечные автоматы говорил.
598 1864423
Я все таки решил обучаться через javarush, сейчас пройду триал и возьму премиум.
599 1864451
Держи в курсе.
600 1864455
>>864423

> 1800 руб в месяц


Так это ж много. Когда был студентом, это было непозволительной роскошью. А книги можно скачать бесплатно без смс.
601 1864551
В джаве нет ссылок на методы, вместо них интерфейсы.
602 1864559
603 1864577
>>864423
Сколько тебе платят за рекламу?
На доширак хватает хоть?
604 1864580
>>864577
На джавараш точно не хватит.
605 1864748
Кто использовал J9 в продакшене? Норм?
606 1864765
>>864748
Что это?
609 1864888
В спринге можно EJB-бины юзать! Ура!
610 1864898
>>864888
У нас в EJB юзаются спринговые бины, половина кода подсвечивается жёлтым, но работает.
611 1864908
А где синьор с 3к строк юнит-тестов?? Вы его прогнали чтоли?
612 1864950
>>864748
Использовал 5 лет назад реализацию Java 7.
Несколько раз эпически соснул из-за того, что эти сукины дети приципиально отказались реализовывать Java.AWT и Java.NIO.

Вот так вот просто, да. Я такой запускаю свою говноутилиту по выгрузке какой-то поебени из оракла в эксель и получаю в ебало сообщение, что "кококо мы не поддерживаем эти пакеты, соси!"
image.png122 Кб, 1128x693
613 1865278
Покупать, лол?
Ты че дурак, блять (с) Случай в казино.mp4400 Кб, mp4,
1280x720, 0:01
614 1865283
615 1865287
>>865278
Покупай, конечно, все знают, что не купил джавараш - не джавист, и вообще херочка спросит на собесе, прошёл ли ты его, к тому же на джавараше куча историй успеха, как его прохождение помогло им устроиться на работу.
╧.png441 Кб, 680x501
616 1865640
617 1865653
>>865640
EJB-JAR.XML
@
WEB.XML
618 1865710
>>865653
beans.xml
@
context.xml
619 1865788
>>865278
Я вот думаю купить ли на месяц гиперскилз, чтобы дорешать пару задачек. По спрингбуту там и т.д. Ибо засел на jdbc и не успею.
620 1865991
Как на java утсроены веб-сервера?
У вас нативные сервера на java или какие-то пулы с cgi для nginx, например?
621 1865996
>>865991
Нативные на джаве, работают с джавовскими сокетами.
622 1866239
>>865788
А какой там проект по спрингбуту? Хочу отменить свой phone book
image.png215 Кб, 1031x919
623 1866279
Решил вкатиться в джаву.
624 1866317
>>866279
Байтоёбство на жабе.
625 1866408
>>865991

>nginx


Это для скриптопетушков, лол.
Джава и так хуярит как из ружья.
626 1866424
>>866408
Жабу надо прогревать, а нгинкс всегда хуярит.
627 1866634
>>866239
Code Sharing Platform
Web Quiz Engine
image.png44 Кб, 914x277
628 1866657
>>865788
А самого себя привести как друга после НГ, нельзя будет?
629 1866674
>>866657
Хз что-то. Надо попытаться. Но я думал эти рефералки для положения до 1 января, туда вроде и сейчас без рефералок не пускают.
630 1866713
Кто-нибудь отправлял свои проекты на ревью на такие мероприятия (https://solvery.timepad.ru/event/1478921/) Стоит того?
631 1866934
Предположим есть класс (sub) который наследуется от родителя (super), родитель наследуется от Object. Создаем экземпляр этого класса new sub(); Вызывается цепочка конструкторов Object -> super -> sub; Следовательно не явно создаются объекты Object и super?! Или зачем вызываются конструктора родителей?
632 1867006
>>866934
Нет, создаётся только один объект.
Вызываются, чтобы проинициализировать поля базового класса, не ломая логику этих классов.
633 1867007
>>866934
Я так понимаю, что родительские конструкторы применяются для твоего класса sub, а в конце конструктор самого sub.
Поправьте меня, если я не прав
634 1867011
>>867007
Не совсем. Сначала у тебя вызывается конструктор sub, и в нём ты либо явно вызываешь первой строчкой базовый конструктор через super(), либо, если ты этого не сделал, неявно в самом начале вызовется конструктор по умрочанию, а если такого нет, но не скомпилится.
Посмотри про наследование в любой кгижке по кору, там это рассказывают.
635 1867012
>>867011

> то не скомпилится


> книжке


Фикс.
636 1867029
>>867012
Вот я как раз и писал про вариант с super(). Просто после первого поста я только об этом и стал думать.
Спасибо
637 1867273
>>866713
Увидел в тексте слово Skolkovo.
Закрыл страницу, удалил куки, потом пошёл руки вымыл.
638 1867640
Аноны, может быть, вы знаете дешевый vds хостинг? Операционка любая, Heroku не вариант.
639 1867737
>>867640
За 200 в месяц можно найти, смотря какое железо нужно.
640 1867749
Есть дерево папок. Известна рутовая папка и конечная папка. В каждой папке может быть сколько угодно папок. Как развернуть всю структуру от начальной до конечной папки? По сути типичная задача о поиске кратчайшего пути же? Есть смысл применять тут что-то сложнее BFS?
641 1867754
>>867749
А еще, папки могут быть ссылками (хардлинками что ли) на другие папки. Короче возможны циклы.
image.png18 Кб, 450x453
642 1867768
>>867754
у файла есть гора функций для проверки. если это не подойдет, то храни посещенные паты, чтобы по циклам не ходить
643 1867771
>>867768
Ты вообще вопрос прочитал?
644 1867786
>>867749
>>867754

> задача о поиске кратчайшего пути


Это про графы, но не про деревья. В дереве у тебя от корневой папки всегда ровно один путь.

> Есть смысл применять тут что-то сложнее BFS


Либо DFS. Смысла брать что-то сложнее нет, раз уж так работают всякие find в башах.

> папки могут быть ссылками


Можно не ходить по ним, find так и делает: https://unix.stackexchange.com/questions/14337
А если и ходить, можно вести список уже посещённых папок и не заходить, если уже там были.
645 1867789
>>867786
Хм, значит кривую аналогию подобрал. Нет, это как раз про граф, и ссылки надо учитывать. То есть у каждой "папки" может быть несколько предков и несколько детей.
646 1867791
>>867789
Тогда да, бери поиск кратчайшего пути. Если тебе действительно нужен кратчайший путь, а не первый попавшийся, а то так можно очень сколь угодно долго ходить между "папками".
647 1867809
>>867791
Ну то есть через BFS? Вообще-то подойдет любой путь, не обязательно кратчайший, но мне кажется, тут разницы в алгоритме не будет.
648 1867891
>>867771
ебобо штоле? покажи мне вопрос в посте, на который я отвечал
649 1867895
>>867891

>покажи мне вопрос в посте, на который я отвечал


Вот именно блядь.
image.png17 Кб, 454x191
650 1868023
Такое форматирование - шиза? Читать удобнее же, не?
651 1868034
>>868023
Шиза конечно, у create должен быть параметр-билдер, тогда такое форматирование автоматом будет.
652 1868042
Я вам новый сайт-мурзилку нашел.

https://www.javabrahman.com/
653 1868065
>>868023
Я в книжках-то охуеваю с форматирования содержания, где приходится прикладывать линейку, чтобы не перепутать номер страницы с соседними строками, а вы ещё и в код это тащите. Туда же SQL, где при создании таблиц между названием колонки и её типом ставят 100500 пробелов.
654 1868287
Поясните дебилу зачем нужны интерфейсы? Метод же можно просто вписать без всякого контракта
655 1868342
>>868287
Зачем дебилу что-то объяснять?
656 1868493
>>868342
Потеряйся лох,мне ваша джава не въебалась,вопрос к разбирающимся из личного интереса
657 1868521
Сап, джависты

Учу java 2,5 месяца.

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

С меня сотни нефти
658 1868561
>>868521
Любая книга по кору, раздел "коллекции".
659 1868564
>>868287
Потому что хватит платину спрашивать.
Реализаций у интерфейса может быть больше одной, и часто бывает, что заранее неизвестно, какая из реализаций будет юзаться, или будут юзаться несколько одновременно. Такое часто бывает с либами - они не могут знать, какую именно реализацию захочет пользователь либы, и поэтому принимают вместо конкретного типа интерфейс, который реализует сам пользователь. Например, интерфейс DataSource - представь, что тебе пришлось бы переписывать весь код только ради того, чтобы скормить ему другую базу данных для unit-тестов.
660 1868608
Посоветуйте дебилу что почитать по спрингу, но только пообъемнее но для дебилов написанное.
Смотрел какой-то курс негра с рутрекера скаченный, но чет пока смотрел его (у него там дохуя воды), половину того что было вначале забыл. Начал искать книги. Нашел книгу - Spring in Action. Посмотрел оглавление.... Судя по оглавлению, getting started гайды с офф сайта и то информативнее. Начал читать документацию типа вот этой https://docs.spring.io/spring-framework/docs/current/reference/html/core.html#spring-core
.... ебать... скачут от одного к другому в в каждом подразделе (к примеру, в разделе про IoC/DI прыгают то на ресурс, то на МВЦ, то еще на что-то, в итоге структуры толком нет, при этом то что они пытаются назвать структурой явно не для дебилов вроде меня написано (причем я почти уверен что 80% информации из того же раздела про IoC нахуй не нужно знать. Инкапсуляция, чмо.
С раздела про AOP вообще нахуй упал в осадок (насколько я понял это что-то типа миддлвейров в PHP / Node js? Но нахуя так усложнять то, даже в документации.
Потом значит нашел книгу "Spring 5 для профессионалов" (Юлиана К.) (самая топовая была на рутрекере по сидерам после ебаной Spring in Action). И в общем она так же как и документация оправдала свое название. Не для дебилов короче. Каждый вопрос обсасывается с 10 углов, нахуй мне это надо, я же новичок.
Короче что мне блядь читать ? Продолжать читать ебаную доку и эту книгу для профессионалов? Или может есть какая-то книга/ресурс для дебилов где объемнее написано, чем Spring in action
661 1868684
>>868608
Спринг не надо читать, его нужно делать на практике.
662 1868707
>>868684
прежде чем делать на практике нужно понять что и как. геттинг стартеды нахуй не дают представления, как и книга Spring in Action.
Судя по этому треду местами складывается впечатление что обезъяна с гранатой в спринге серьезнее чем обезьяна с гранатой во фронте на JS. Там в разы все понятнее и ты отвечаешь за то что ты делаешь, тут же магия какая-то
663 1868758
>>868564
Спасибо
664 1868768
>>868608
Spring in Action лучше взять предпоследнее издание.
Там больше уделено внимания внутреннему устройству и идеям, а в последнем - Boot и пиздец.

Также, если ты не понимаешь, зачем нужно AOP и прочее IoC/DI - значит у тебя просто нет достаточного опыта на джаве вообще. И даже понимания того, что есть джава - тоже. Упоминание пыхи, node и каких-то мидл-тварей - только подтверждает это.

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

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

Интерфейс - это как штатное расписание. И конкретный сотрудник вполне может совмещать должности, если соответствует требованиям.
666 1868782
>>868776
Как должность в штатном расписании, конечно же.
быстрофикс
667 1868790
>>868776
Правильно ли я понимаю,что в реальных проектах интерфейсы нужны чтобы создать некую иерархию и ограничить функционал класса в нужном направлении?
668 1868809
>>868684
Я работаю на работе со спрингом уже два года, но так и не знаю что такое бины, так как явно никогда их не использовал (если только это не код с туториалов и стаковерфлоу). Так что практика практикой, но и теорию знать надо
669 1868813
>>868809
Чем ты занимаешься блядь?
670 1868824
>>868813
Говорят же тебе

>работаю на работе



Чего непонятного то? Человек работу работает, получку получает, все хорошо.
671 1868827
>>868813
В основном расчетами, статистикой, преобразованием одних данных в другие. Ну отправкой этого добра за crud-запросы и по веб-сокетам.

Сейчас дочитаю "Concurrency на практике" и начну закрывать пробелы в знаниях Спрингс
672 1868859
>>868768

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


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

>Также, если ты не понимаешь, зачем нужно AOP и прочее IoC/DI - значит у тебя просто нет достаточного опыта на джаве вообще. И даже понимания того, что есть джава - тоже. Упоминание пыхи, node и каких-то мидл-тварей - только подтверждает это.


А какой опыт ты имеешь ввиду под джавой? Решать задачки уровня коллекций, стримов и прочего говна? Как это поможет в изучении DI/ AOP и прочего говна из спринга?
В том то и прикол что нигде нет никакого нормального гайдлайна по тому как учить джаву. Тут дохуя кто советует читать хорстманна (и еще в довесок парочку книг после этого).. Но это не про DI и AOP. DI и AOP я видел только в книге Гонсалвеса по Java EE, но она ебануто написана, я ее забросил, там тоже самое что Spring in Action только еще короче.. Плюс мне в этом же треде советовали сразу на спринг прыгать. Кору я изучил (причем в нескольких вариантах).

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

Про Spring in Action так и не понял. 620 страниц самое большое что есть на рутрекере. Чето я посмотрел доку и сравнил объемы... получается книга идет по стопам "вот вам круг, нарисуйте сову".
673 1868864
Ну и простыни.
674 1868894
>>868864
Профдеформация
675 1868898
>>868790
Нет, это не так. Либо ты неудачно сформулировал.
Интерфейс - это дополнительный уровень абстракции.

Интерфейс - это набор требований, контракт, бумажка
Кто и как реализует этот контракт - всё равно.
Класс (и его экземпляр) - это реализация, в аналогии со штатным расписанием - конкретный человек Вася.

Это и есть то, что называют словом "абстракция" - тебе не важно, что это за реализация, если она соответствует заявленным требованиям. Т.е. ты абстрагируешься от деталей реализации.
В этом смысл интерфейсов.
676 1868950
>>868790
>>868898
И да, можно описать все или многие объекты в программе и их взаимодействие в терминах интерфейсов, не ограничивая реализацию.
Это, вообще, один из основных принципов "правильного" программирования.
677 1868974
>>868950
А можно вообще всю программу сначала написать на интерфейсах, а потом уже в конце их все имплементировать? То есть сначала построить полностью архитектуру, структуру, а потом уже сделать так, чтобы код что-то делал реальное.
изображение.png10 Кб, 371x128
678 1868979
Почему у градла по умолчанию JUnit 4? Они же такие прогрессивные должны быть.
679 1868994
>>868974
В теории - да, можно. Но, это слишком экстремально, мне кажется.
Без написания реализации на промежуточных этапах не обойтись.
Ведь в интерфейсе не может быть полноценного кода (кроме default-методов). А без реализации ты не поймёшь до конца, что тебе нужно.

Т.е. заранее продумать _всю_ программу, до того как начнёшь писать рабочий код - это нереально. Так делали когда-то давно, когда программы были простыми (по нынешним меркам). Сейчас другой подход - ты пишешь минимально рабочий код, а потом - рефакторишь его и добавляешь функционал.

И, как раз, на этапе рефакторинга ты можешь выделить интерфейсы, отделить их от реализации.

Рефакторинг - это когда ты не добавляешь новые фишки, а меняешь существующий код так, что он продолжает делать то же самое, но, становится более "чистым" и "красивым"- более тестируемым, расширяемым и т.п.
680 1869023
>>868521
бамп
681 1869027
>>869023
Хуямп, лол.

Вот вся книжка - одни задачи, и там не только коллекции:
https://scanlibs.com/java-coding-problems-programming-real-world/

Вот тут есть упражнения к каждой главе:
https://scanlibs.com/core-java-for-the-impatient/
https://scanlibs.com/core-java-se-9-impatient-2nd/

Также, ньюфагам полезно читать того же Хорстмана, Core Java, но, без "Impatient", которая в 2-х томах. Там нет упражнений, но, есть очень подробные объяснения.
682 1869072
>>869027
Читал Хорстманна большого и проходил гиперскилз. В маленьком Хорстманне задачки не понравились и ответов к ним не нашел.
Если тому анону надо, то вот рефералка: https://hyperskill.org/join/52dfb00fc
За месяц(через месяц перестанет работать бесплатная регистрация) кроме коллекций можно еще один какой-нибудь раздел пройти. Теорию там можно скипать.
683 1869098
Нужно адрес джарника передать в класспасс. А джарник в Program Files и ничего не работает из-за пробела в имени папки. Как фиксится?
684 1869102
>>869098
Progra~1
685 1869164
>>869098
В кавычки возьми путь.
686 1869209
Допустим, я пилю микросервисную екоммерц. Для чего мне могут пригодиться сваггер, спринг клауд, спринг клауд конфиг и прочие баззворды?
687 1869299
>>869164
спс. логично, но недодумался
>>869102
тоже спасибо, не знал про сокращенные имена, но вроде в 64 битной винде где 2 программ файлса и не сработает так.
688 1869316
Посоветуйте что по алгоритмам на джаве почитать.
Вот думаю выбрать из трех. Две большие книжки и третья маленькая. Особенно интересно мнение по маленькой.
Очень уж лень утопать в большом талмуде.
689 1869319
>>869316
Я хз, что за книжки у тебя, но в любом случае бери маленькую.
690 1869321
>>869319
>>869316
Что-то отлетели картинки.
Сомнения из-за того, что большие именитые и попсовые, а маленькую я случайно нашел практически.
Думаю кто-то их читал, сможет сказать что-то.
691 1869322
>>868859
Мимо проходил, вывалю свое мнение, вот список вопросов для экзамена Spring Proffesional знаешь ответ на каждый из них - молодец знаешь спринг, не знаешь - каждый вопрос вектор для изучения. Если считаешь что для знаний спринга нужно больше знаний чем там, можешь учить че хочешь, но на других перекладывать это не надо. То же касается и джава кор есть сертификация - есть вопросы к ней.
Мне вот кажется в будущем будут востребованы специалисты с знанием кластеризации вот я и сижу учу хадуп на будущее.
693 1869496
>>869299

>но вроде в 64 битной винде где 2 программ файлса и не сработает так.


Там Progra~1 и Progra~2
694 1869498
>>869299
Ещё ProgramData.
695 1869646
Моя предметная область - шлюхи-драконихи
олды поймут
696 1869720
>>869321
Classic Computer Science Problems in Java читни.
Это новая книга, она сначала вышла в варианте для питона.
А потом уже что-нибудь более теоретическое по алгоритмам.

Тут надо отделить мух от котлет - учебник по алгоритмам не должен быть привязан к языку. Там обычно псевдокод. Для начала очень хороша книга Algorithms Unlocked. И она не толстая. Это от автора знаменитого MIT'овского учебника.

А конкретно по джаве - надо книгу по структурам данных, и как они реализованы в джаве. Название, как правило, такое и есть.
697 1870001
Всех приветствую, буду краток, вопрос следующий: делаю небольшое приложение в рамках универа на Java+MySQL, хочу использовать для ввода-вывода не консоль, а создать средствами Java пользовательский интерфейс (достаточно несложный, отображение записей из бд итд ИТП). С помощью "форму" реализовать, JavaFX или что-то есть более клевое? Спасибо за ответ!
698 1870006
>>870001
Идея создавать гуй на джаве ещё хуже, чем голая консоль, и клёвого тут ничего быть не может. Но бери JavaFX, раз уж так хочется.
699 1870030
>>870001
Чувак, десктопный UI в Java делают на Swing.
Java FX - мертворожденная хуита. Которая, по сути, и угробила десктоп на джаве. Потому, что надо было не хуйнёй страдать, а свинг допилить.
Swing - это то, на чём написан UI в IDEA.

Но, делать десктопный UI ты, с непривычки, быстро устанешь.
Поэтому, делай консоль сначала.

>>870006

>ещё хуже


Хуюже.
В JetBrains напиши про это, а то они не знают, наверное.
700 1870035
>>870030

> Хуюже.


> В JetBrains напиши про это, а то они не знают, наверное.


Да, я уже несколько раз здесь постил, что они неправы и должны срочно переписать идею на кресты или хотя бы шарп (который теперь кроссплатформенный).
image.jpg12 Кб, 245x206
701 1870045
Письмо в JetBrains:

«Я всю жизнь при каждом обновлении IDEA проверяю, на чём она написана, и каждый раз это Java. Вы там ебанутые что ли все?»
702 1870085
>>870035

>(который теперь кроссплатформенный)


опоздали
703 1870092
>>870001
Лучше оформи своё приложение как клиент-серверное и нахуярь простенький UI на Vue.js или хотя бы просто REST API, будешь через Postman взаимодействовать.

Это несложно, но пользы от этого получишь намного больше. Как верно заметили аноны выше, JavaFX, как и Swing, в хуй никому не впёрлись.
704 1870167
>>870045
Есть же прослойка над нативным кодом - SWT. Для IDE не нужна поддержка десятков архитектур, вряд ли кто-то рабочую станцию будет делать не на 3-х популярных ОС.
705 1870203
Запилите перекат, хочу ответ спросить
706 1870212
>>870203
На твой вопрос 300 постов не хватит?
707 1870241
Потратил пару месяцев на изучение С++, понял, что это не совсем моё. Подумал вкатиться в джаву, в том числе, для веб разработки. Целесообразно ли это? Слышал, что джава в целом проще и удобнее сишки. И да, я понимаю, что у языков немного разные цели. Учусь кодить для того, чтобы этим зарабатывать на жизнь.
708 1870246
>>870212
Ну ладно.
Поясните за спринг. Есть spring framework, а есть spring boot - в чем разница?
И насколько долго эту хуйню осваивать, если я сениор скалист? годной работы нет нихуя
709 1870270
>>870246
Бут - это просто надстройка (необязательная) над обычным спрингом, чтобы упросить жизнь. Без бута тебе пришлось бы вручную управлять версиями разных модулей спринга (под-фреймворков), самому писать конфиги для связывания этих модулей и самому встраивать томкат или другой контейнер сервлетов. В остальном это обычный спринг.

> И насколько долго эту хуйню осваивать, если я сениор скалист?


Через неделю уже сможешь шлепать круды.
710 1870292
>>870241
Любой современный язык проще С++
711 1870300
>>870241
Джава - это не совсем веб-разработка, как в каком-нибудь пхп, где пишешь фронт и бэк, отдаёшь заказчику и забываешь (хотя с джавой такое тоже бывает). Обычно это постоянная доработка большого и сложного сервера на полляма строк целой толпой кодеров, длящаяся годами, и веба в этом сервере может вообще не быть.
712 1870302
>>870270
Спасибо, тогда просто почитаю документацию и перепишу резюме под джависта
713 1870314
>>870300
Ну, работа с серверами, MySQL , базами данных мне так же интересны. Хочу пойти в бекэнд>>870300
Спасибо за ответ. Так же вопрос по литературе, имеется в библиотеке Брюс Эккель "Философия Java" 4 издание. Видел, что книгу хвалят, насколько это справедливо?
714 1870319
>>870314
Читал, в своё время, первое издание, в переводе некоего Портянкина, лол.
Очень хорошо пошло. Лучшая книга по джаве была. Рельно "думать на джаве".

С тех пор я давно уже не читаю ни переводы, ни учебники.
Но, слышал, что более новые переводы Thinking Java - более хуже.
Сам смотри, в общем.
715 1870322
>>870314
Хз, не читал. Сам начинал с Хорстманна и ещё чего-то.
716 1870323
>>870319
Ладно, спасибо еще раз.
717 1870347
>>870314

>Ну, работа с серверами, MySQL , базами данных мне так же интересны


Но в джаве придется с ними много возиться, JDBC, ORM, транзакции.
718 1870356
>>870347

>много возиться


Много - это по сравнению с чем?
В джаве работа с БД сделана максимально удобно, в этом и смысл.
719 1870373
>>870356
Нет нормальных/широкоиспользуемых аналогов LINQ из C#
720 1870379
>>870373
Стримы.
Зря я шарписту отвечаю, ой зря.
721 1870380
>>870379
Так стримы же не намапишь на запросы в БД, т.к. нет интроспекции. Или что ты имеешь ввиду?
я не шарпист, я скалист который выше про спринг спрашивал
722 1870385
>>870380
Понятно, я думал, что LINQ только для коллекций. Что ж, тогда аналога и правда нет.
723 1870388
>>870380
А он ко всем субд так может, или только mssql?
724 1870410
>>870385
Да и не нужен он.
landscape.jpg1,6 Мб, 2560x1440
725 1870517
>>842154 (OP)
Работаю дата инженером, хочу перекатиться в бекенд и написание сервисов.
Пока учу спринг.
Читаю книги по спрингу, там много просто jsp вью, формы веб страниц и прочую ебалу.
Это вообще где то используется, надо знать? Я думал весь фронт сейчас на яваскрипте и делают его фронтендеры.
Просто это так скучно что ебанутся. С таким же успехом я могу дальше на спарке батчи хуярить.
726 1870518
>>870517
Вдогонку - нужен ли хмл-конфиг или все таки мы в двацдатых уже?
Понятно, что где нибудь в легаси все это есть, мои вопросы больше за стейт оф зе арт.
727 1870533
>>870517
Про jsp/jsf можешь пропускать, разве что ради легаси, и то там нормальные шаблонизаторы.
>>870518
Сейчас всё новое стараются конфигурировать без хмл. Поиграйся и юзай аннотации.
728 1870537
>>870517
Нет, ты неправильно думал.
>>870518

>или все таки мы в двацдатых уже?


Ясный хуй, ничего не нужно уже - ни фронтенд, ни xml.
Нужны крутые повелители бекэнд-сервисов, которые просто сидят и ковыряют в носу, за 300K в наносекунду.
729 1870538
>>870533
Чем вам, суки, jsp не угодил?
Какие, в хуй, вам ещё шаблонизаторы нужны, лол?
730 1870546
>>870537
Да, бекенд же сам себя пишет, а пока пишет можно и поверстать странички.
>>870533
Спасибо, так и думал.
731 1870551
>>870546
Ну, пиши бекэнд, чо.
Ты, главное, на собеседовании где-нибудь, "ява" не скажи.
А то тебе прямо сразу перезвонят. А могут ещё и пизды дать.
732 1870567
>>869209
Бамп.
733 1870579
>>870551
Мне похуй на собеседования. Будешь хорошо делать - воьмут куда угодно.
734 1870580
ЛОМБОК
@
АННОТАЦИИ
@
СПРИНГ БУТ
@
ЛЯМБДЫ
@
СТРИМ АПИ
@
VAR
735 1870585
>>870579
Уже по твоим вопросам видно, как ты будешь "хорошо делать".
А "ява" - просто вишенка на торте.

>>870580
Lombok - брить или не брить?
736 1870590
>>870585

> Lombok - брить или не брить?


I see what you did there
737 1870711
Что делать, если не можешь в циклы в цикле.
Любую мальскую задачу на уровне нарисовать хуй восьмерками используя for у меня целый квест, где я просто смотря на выводимый результат правлю код, это так и должно быть?
Почему не могу сразу нормально написать циклы, получается я не понимаю как они печатают значения?
Спасибо.
738 1870746
>>870711
а как нарисовать хуй используя двойной цикл for ?
739 1870779
>>870711
Сделать тестовую класс, убрать вообще всё лишнее, чтобы были только вложенные циклы в main.
Имена переменным циклов дать не i-j (они визуально похожи), а x-y, или даже first-second.
И сидеть медитировать на этим, пока не постигнешь дзен.
740 1870781
>>870746
Гугли "Пилот «Победы» нарисовал в небе пенис в поддержку Дзюбы"
741 1870783
>>870781
Не надо это говно тащить в тред.
742 1870804
>>870746
Хуй это я образно, елочку какую нибудь и прочее не замысловатое что бы понять.
743 1870810
>>870804
Если хочешь понять вложенные циклы - не надо хуи рисовать.
Напиши пузырьковую сортировку массива.
744 1870822
>>870810
Кстати я делал такое, в итоге я половину списал. Потому что сам начал путаться. Делал так что два отсортированных массива слить, тоже отсортировав.Сам нихуя не понял, конечно же. Наверно надо еще раз попробовать. Раз я видел как это делать, наверное хуйня получается, опять же сам к этому не пришел.
>>870711
Чем-то таким и занимаюсь.
745 1870836
>>870711
>>870822
Можно ещё разворачивать циклы - на бумаге или в текстовом редакторе расписывать ход вычислений. Это очень помогает в подобных случаях, с той же рекурсией, например.
Естественно, в цикле или рекурсии должно быть мало итераций, просто для примера.
746 1870847
>>870836
Есть способ проще - дебажить каждую строчку, там все значения будут видны на каждой итерации.
747 1870856
>>870847
Это совершенно не то.
Смысл не в том, чтобы посмотреть значения.
А в том, чтобы построить ментальную модель, наработать интуицию.
748 1870864
>>870822
Прорешай десяток задач на двумерные массивы где-нибудь на leetcode.com или www.codewars.com
749 1870915
>>870864
Да это и делаю, решаю задачи из сайта в шапке тоже.
>>870847
Я так умею, но как сказали ниже мне нужна привычка, взгляд, навык.
>>870836
Спасибо, часто разбираю задачи на бумаге, попробую циклы тоже.
Всем спасибо. Все как всегда упирается в практику.
750 1871004
>>870915
Вот тебе отличная метафора рекурсии, из книги "How To Think About Algorithms":

Представьте ряд домов на улице, каждый следущий меньше предыдущего.
Ответ (результат) лежит в первом, ближайшем к вам, самом большом доме.
Но, у вас нет ключа.
Ключ от первого дома - в следующем, который поменьше.
Но, он тоже закрыт, и ключ от него - в следующем, который поменьше.
И так далее ...
И, наконец, последний дом - совсем маленький, вы можете просто поднять крышу и достать ключ от предыдущего дома.
Затем вы открываете все дома в обратном порядке, пока не дойдёте до первого и не получите ответ.
751 1871346
>>870580

>VAR


Причем ломбочный.
752 1871348
>>870711
Та же хуйня, как заполнить треугольную матрицу вообще не представляю.
Мимо сеньор
753 1871350
>>871004
Это не рекурсия.
754 1871410
>>871350
Ебать, а что же это, сынок?
755 1871411
>>871410
Стек.
756 1871430
>>871411
Лучше бы ты сам нашёл эту книгу, и посмотрел, что там написано - оно того стоит. Там есть и другие метафоры рекурсии и не только.
Но, я сегодня добрый, поэтому объясню в двух словах:

Это метафора развёрнутой рекурсии.

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

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

И затем ты выходишь из рекурсии обратно, открывая на каждом уровне дверь дома предыдущего (большего) уровня ключом, взятым на текущем.
В конце (т.е. в начале) ты получаешь полный ответ, открыв последний (первый) уровень.
757 1871431
>>871430
Хуевый пример. Рекурсия была бы, если бы ты заходил в дом, а там еще один дом. Останавливаться надо, когда внутри оказывается ключ, а не новый дом.
758 1871434
>>871431
Ебать ты умный.
Это метафора развёрнутой рекурсии.
Дома вынули друг из друга и расположили в ряд.
Нетренированный человек иначе не понимает.

А тренированному - уже не нужны метафоры, не нужно разворачивать - он уже наработал интуицию, и решает такие проблемы в абстрактном виде.
759 1871437
>>871434
И да, метафора "очень маленького домика", который можно просто разломать и взять ключ - она очень важная.
В реальных проблемах (даже в итерации по массиву) ключ не лежит и не ждёт тебя в конце - его нужно _взять_ (принять решение о прекращении рекурсии и т.п.)
760 1871474
>>871431

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


>заходил в дом


Он закрыт, чувак. Перечитай >>871004
Если бы он был открыт (= результат известен) - нахуй бы это всё было нужно?
761 1871589
Я нихуя не понял!
762 1871601
>>871589
Забей, они хуйню обсуждают.
763 1871653
Ребят, можете хелпануть? можно ли создавать тестовый файл для юнит теста? нужно затестить выгрузку пропертис из файла.
764 1871741
>>871653
Можно, просто положи в resources и делай с ним что хочешь.
765 1871749
>>871653
И читай через getClass().getResourceAsStream()
766 1871984
>>871749
Через new ClassPathResource(...)
767 1871986
>>871589
Значит программирование это не твое.
15331360485220.jpg28 Кб, 481x440
768 1871987
Джава-куны (ебАные)

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

Реквестирую советы, пожалуйста
image.png908 Кб, 1054x820
769 1871994
>>871987
Вставь туда эту картинку.
770 1871995
>>871994
Уже две таких есть
Че еще?
771 1872003
Я нуб.
Мне нужно вернуть записи, соответствующие списку введенных тегов, уже есть хибер, springDataJpa.
Как лучше сделать?
Теги записаны в строке через пробел, но это можно поменять, если необходимо.
У меня 3 варианта, которые приходят в голову:
генерировать автоматический запрос и выполнять его
SELECT * FROM News
WHERE Tags LIKE '%t1%' or Tags LIKE '%t2%' or ...
либо тупо загружать все новости и с помощью джавы сортировать.
либо как-то использовать Predicate, но пока нихуя не понял, как там это сделать.

Есть какой-нибудь паттерн, как это правильно сделать?
772 1872007
С новым годом!
773 1872046
>>870580
Бля. Год отдыхал от явы и сначала плевался. А теперь кайфую от этого.
774 1872091
>>872003
Вроде сделал, вопрос отменяется.
775 1872199
Есть таблица "товары" с атрибутом "цена". Также есть еще одна таблица, атрибуты которой влияют на цену товара, например, скидка. Как лучше реализовать расчет цены? Брать товар из репозитория с дефолтной ценой и сетить новую? Хорошая ли идея вообще хранить атрибуты, вычисляемые запросами?
776 1872231
>>872046

>от явы


>явы


Чувствуется, ты неплохо отдохнул.
777 1872249
>>872199
Не надо сетить (т.е. менять цену), это пиздос вообще.

Надо сделать вычисляемое поле типа "окончательная цена".
Или как-то ещё.
Где-то должно быть действие "рассчитать цену" или "применить скидки" и т.п.

Как конкретно - зависит от задачи, нужны подробности.
Может быть, например, объект Price, в который собираются все вещи, влияющие на цену, и он выдаёт реальную цену для отображения или использования в документах.
778 1872254
>>872003

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


Генерировать надо не запрос, а условие отбора (то, что после WHERE).
Predicate - это способ сгенерировать условие.
https://www.baeldung.com/jpa-and-or-criteria-predicates
779 1872258
>>872199
И да, хранить вычисляемые вещи, в общем случае, не нужно.
Но, иногда так делают, когда это даёт значительный выигрыш в производительности.
Но, делают это не так, должна быть особая процедура расчёта (по расписанию и т.п.).
780 1872262
>>872249
То есть, в объекте Price сделать @Transient finalPrice поле, которое в геттере будет рассчитывать цену со своего же поля price и discount?
781 1872271
>>872262
single responsibilty!
мимо
782 1872274
>>872271
Где он здесь нарушен?
783 1872277
>>872254
Анонче, прямо этим и пользовался)
784 1872297
>>872262
Лучше назвать это actualPrice.
Не очень понял про "поле".
Я имел в виду просто геттер, в котором это будет вычисляться.

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

>>872271
К чему ты это пизданул, интересно?
785 1872302
>>872297
Понял, спасибо.
786 1872319
>>872302
Кстати, совершенно нормально, иметь несколько представлений для одного объекта.
Например, ты можешь взять твой "Товар" и "Скидки" и сделать класс "Товар в Корзине", в котором актуальная цена будет вычисляться.
787 1872331
>>872319
Не подумал об этом. Привык писать одна таблица = одна сущность без какой-либо логики. Спасибо за наводку.
788 1872490
Приветики, можете мне пояснить за тесты. Вот нихуя не понимаю. Во всех примерах показывают тесты на функциях калькулятора. И вот я не понимаю нахуя такое тестировать?
По книге Мартина "Клин код" функции должны быть максимально простыми и выполнять одну вещь.
Ну вот к примеру функция которая из списка возвращает элемент по какой-то логике. Внутри цикл перебора по списку и сравнение с значением. Зачем тестировать такую функцию? Типа тест будет проверять работают ли циклы и сравнения в яве? Это же бред. Да, они работают и не могут сломаться. Какой в этом смысл?
789 1872543
>>872490
Я пишу тесты в двух случаях:
- есть какой-то нетривиальный алгоритм.
- интеграционный тест: предположим, у тебя есть http-ендпоинт, при запросе на который срабатывает некая бизнес-логика, которая меняет данные в базе, отдает ответ тебе и может быть еще какое-то событие куда-то посылает, я пишу тест, который реально шлет http-запрос, дальше ассерчу состояние данных в базе и ответ.
Тесты нужны в первую очередь для контроля регресса - чтобы проверять, что новые доработки не ломают старую логику.
790 1872584
Помогите, мне нужно написать исключение трай\катч
Вроде понял что написать в катч, в тру не понятна .
Есть интерфейс класс его реализует, типа давать кредит парню или нет .
Пишу тупа
tre { chekClientForCredit(bankClient) return boolean;}
Конечно это дичь какая-то да?Надо написать код который может кинуть исключение, это что, как он выглядит.Идеально может кто скажет ответ из той части информации, что я дал.
Нет, пойду дальше гуглить.
791 1872586
>>872584
try*
фикс
792 1872685
Почему вы стали такими вялыми? Раньше треды были бодрее.
мимо сижу с августа 2019
793 1872692
>>872685
Что, иерархию квадратов-прямоугольников, круд про шлюх и неработающий мавен в идее обсуждать интереснее?
794 1872699
>>872692
Локальные мемы - признак живого сообщества.
795 1872710
>>872584
try { you.sosesh(hui)
} catch { NetHuyaException
}
796 1872740
>>872692
Кстати. Вижу в вакансиях, что требуется знать Мавен.

Вопрос номер 1.
Что именно надо знать? Сам я только использовал Градл. Под использованием я подразумеваю ./gradlew run/bootRun/build и добавление зависимостей. Собственные таски писать не приходилось, только туториал читал.

Вопрос номер 2.
Везде используются Мавен только из-за того, что он раньше появился? По моему на Groovy писать легче (и меньше), чем XML. Или Мавен функциональнее, чем Градл?

>>872699
И раз уж ты завел речь о мемах. Можешь скинуть картинку с петухами, где один из них кричит что-то наподобие "бежим быстрее, там джава-машина завелась"
797 1872746
>>872685
Мне страшно пока в тред писать, мигом обоссут

рид онли вкатыш
image.png570 Кб, 566x800
798 1872749
799 1872752
>>872746
Тоже вкатываюсь, задаю вопросы тут иногда получаю что-то исчерпывающее, чаще хуй.
image.png407 Кб, 427x604
800 1872762
>>872749
Почти, спасибо.
Я вот эту только помню
image.png65 Кб, 1200x718
801 1872770
Понимаю что может быть слегка МИМО, но хули бы и нет, жависты часто ебутся с AWS.

Анон, ты использовал когда нить AWS 'Stack' - я правильно понимаю что эта залупа хорошо подходит под задачу, когда надо сначала навыделять ресурсов, потом освободить ненужные, ничего не проебав?

Типа поднял кластер и кучу сопутствуюещего говна, занес это по пути в стэк, потом чтобы вручную не очищать - говоришь "очисти стек, блядина". Или я нихуя не понял инженерную мыслью амазонопидоров.
802 1872891
>>872770
Если ты об этом "стэке"
https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacks.html
то похоже стэк у них это что-то типа транзакций. Добавляешь туда ресурсов с которыми надо что-то сделать в один присест и оно либо всё выполняется, либо остаётся как было если где-то ошибка.
image.png1,3 Мб, 960x720
803 1872911
Заебало.
804 1872916
>>872740

> Что именно надо знать?


Уметь добавлять зависимости и плагины в помник (копипастить их с mvnrepository.org), модули, профили сборки, фазы.

> Везде используются Мавен только из-за того, что он раньше появился?


Похоже на то. Но обычно не так много причин выкидывать из проекта мавен и заменять на градл, далеко не всем нужны все фичи из градла, существующих хватает. И есть какие-то плагины, которые только для мавена, это может быть критично.
805 1872918
>>872746
Я вкатывался в этот тред после /b/, так что у меня иммунитет к обоссыванию, лол.
806 1872971
>>872918
А я после /asylum/
807 1872995
>>872971
Мне не сидится в таких местах, там почитаешь треды - так у каждого первого по их собственным заверениям аутизм, шизофрения, депрессия, синдром Аспергера, ПТСР, ОКР, интроверсия, социопатия, социофобия, апатия, психопатия. Один я нормальный, есть пруф от психиатра.
808 1873005
>>872995
Это они так оправдывают своё нежелание работать.
809 1873248
Есть класс BankClient - это класс, описывающий клиента банка.
Есть интерфейс BankWorker. Объект класса, который реализует этот интерфейс является работником банка, в задачу которого входит одобрение или отклонение заявок на кредиты.
У него есть метод checkClientForCredit, который на вход принимает экземпляр BankClient и возвращает true, если всё впорядке и кредит переданному клиенту можно выдавать, или false - если клиент не подходит под условия кредита. Также, этот метод может выбросить исключение BadCreditHistoryException, если у клиента плохая кредитная история. Или ProblemWithLawException, если у клиента есть проблемы с законом.

Ваша задача:

Реализовать метод getCreditForClient, который принимает работника банка и клиента, который хочет получить кредит. Метод должен возвращать true - если кредит выдать можно и все условия соблюдены и false если есть какие-то проблемы. Если клиенту отказали в выдаче кредита по причине плохой банковской истории - метод должен выводить в консоль сообщение "Проблемы с банковской историей", если клиенту отказали по причине проблем с законом то ничего выводить на экран не нужно.

Анон выручай
810 1873250
>>873248

>У него есть метод checkClientForCredit, который на вход принимает экземпляр BankClient и возвращает true, если всё впорядке и кредит переданному клиенту можно выдавать, или false - если клиент не подходит под условия кредита. Также, этот метод может выбросить исключение BadCreditHistoryException, если у клиента плохая кредитная история. Или ProblemWithLawException, если у клиента есть проблемы с законом.


{Хуевый дизайн, дальше не читал.
811 1873257
>>873248
Чёт даже на лабу не тянет.

@Override
public boolean getCreditForClient(final BankWorker worker, final BankClient client) {
try {
return worker.checkClientForCredit(client);
} catch (final BadCreditHistoryException ignored) {
log.info("Проблемы с банковской историей");
} catch (final ProblemWithLawException ignored) {
}
return false;
}
812 1873272
>>873250
Двачую - возвращать boolean, и, при этом, выбрасывать исключение для нормального бизнес-кейса - это пиздец, а не дизайн.

>>873248
Это вам такой онанизм на каких-то курсах преподают?
Скажи им, что за такое в приличном месте и обоссать могут.
813 1873297
Если ничего не путаю, в Java тредах раньше были пикчи с идеями для пет проджектов. Именно среднего размера проекты, чтобы изученные технологии испытать, не уровня универских лаб и не задачи для олимпиадного программирования. Мне периодически приходят всякие идеи, но вдруг те что были на той картинке интереснее. Поделитесь пожалуйста если сохранилась у кого.
814 1873299
Кстати, а почему в мавене не используются атрибуты у тегов? Это же очевидная фича xml.
815 1873305
>>873299
Атрибуты - это спорная фича xml.
Во многих случаях принимают решение принципиально их не использовать.
816 1873335
>>873257
Я писал что-то типа .
public boolean (BankWorker bankWorker, BankClient bankClient) {
//тут ваш код
public class void getCreditForClient throws BadCreditHistoryException,ProblemWithLawException {
try { return checkClientForCredit(bnakClient)
}catch ( писал примерно то же, что у и у тебя){
принтил сообщение и писал ретерн правда, видимо ретерн не нужен в кажом катч}
}
}
Нет, не лаба. Задание видимо на написание своего исключения.
Я еще не понимаю что писать в try типа код который может выдать исключение, кто это такой ваш исключение .
817 1873336
>>873272
Да в точку. Очередной вкатышь ради денег, да и еще не понимает ничего.
818 1873454
Кто-нибудь в курсе зачем нужны singelton proxy?
819 1873456
820 1873457
>>873456
При создании спринг компонента можно указать @Scope(scopeName = "singelton", proxyMode=ScopedProxyMode.TARGET_CLASS) или через конфиг @ComponentScan(scopedProxy =ScopedProxyMode.TARGET_CLASS), для prototype все очевидно, но зачем спринг проксирует сингелтоны, собсно и вопрос зачем нужны singelton proxy?
821 1873458
>>873457
Для обработки посстпроцессорами, наверное, хуй знает.
822 1873468
>>873458
А при чем тут постпроцессоры? Мы же говорим о создании кастомных объектов, имеется в виду практическая ценность, то как создаются прокси и их lifecycle в спринге я и так знаю
823 1873472
>>873468

>наверное, хуй знает.


А хули ты тогда такой вумный пришел сюда, раз все знаешь? Пошел нахуй.
824 1873474
Аноны, почему у меня
server.error.path=/error
возвращает правильную html страницу, но у нее, сука, не грузится изображение <img src="img/error.png">.
Если просто переходить на страницу /error, то все ок.
Для этого надо делать свой error controller, нихуя не понимаю?
825 1873480
>>873472
Потому, что это джава тред и я надеюсь, что тут сидят не только люди, которые решают задачи на циклы нет ты иди нахуй
826 1873518
>>873454
>>873457
Сам себе отвечаю:
You may also use <aop:scoped-proxy/> between beans that are scoped as singleton, with the reference then going through an intermediate proxy that is serializable and therefore able to re-obtain the target singleton bean on deserialization.
Можно использовать для сессий, если сессия упадет можно заранее сериализовать прокси необходимого бина и по необходимости его достать. Круто же.
827 1873529
>>873518
Хуйня бесполезная.
828 1873620
>>873518
Бин - это сервис?
Нахуя его сериализовать?
829 1873720
Сап двач, у меня есть докер композ из веб апа и его бд. Как все это дело лучше развернуть на кубере? Что-то куча всяких вариантов отовсюду, я запутался
830 1873729
>>873720
Хуево выразился, просто есть ап и его бд, каким способом лучше всего его на кубере крутить
831 1874057
Извиняюсь за тупой вопрос: пытаюсь зарегистрироваться на oracle.com, после ввода информации перекидывает на страницу "Произошла ошибка", не могу зарегаться.
Пробовал из разных браузеров - не помогает.
Кто-нибудь с таким сталкивался?
832 1874076
>>874057
Зачем регистрируешься?
833 1874083
>>874076
Хочу скачать Java JDK и учиться программировать на Android.
834 1874094
>>874083
А в Android Studio он разве не подтянет все нужное?
Тебе в андроид-тред.
835 1874097
>>874094
Спасибо за совет.
Как думаешь, почему при попытке регистрации на Oracle возникает ошибка?
836 1874121
>>874057
Попробуй приватную вкладку. Или попробуй с телефона.
837 1874142
>>874121

>Попробуй приватную вкладку


Лол, реально помогло. Спасибо, антош.
838 1874173
Привет анон. Нужен твой совет как лучше сделать.
Сейчас на джавараше добиваю кор потихоньку и есть два варианта.
Первый - продолжить обучение на ресурсе
Второй - попробовать запилить свой первый проект. Хочу сделать приложение для учета расходов с пользовательским интерфейсом(о нем я вообще пока представления не имею). Хватит ли неуверенных знаний джава кора на реализацию подобного? Понятно дело, что я буду еще кучу инфы в процессе гуглить. Вопрос состоит в том, стоит ли вкладывать время в это, не будет ли полезнее пока джавараш закончить?
839 1874199
>>874173
делай, а то так и будешь оторванные от реальности примеры задрачивать, непонимая нахой оно нужно
840 1874212
>>874173

>Хватит ли


Хватит.

Тут вопрос - это веб-приложение или десктопное?
На джаве сейчас десктоп делать может быть проблемно (для ньюфага).
А веб - сложновато вот так сразу.

Поэтому, найди книжку по спринг-буту и сделай пару хелловорлдов.
Потом - TODO list на буте + интерфейс на Vue.
Ни в коем случае не на React, хотя инфы и много.

И не надо пытаться сделать сразу быстро, много и хорошо.
Надо просто хоть что-нибудь сделать.
841 1874310
>>874212
Ты уже не в первый раз говоришь, что нужен вью, а не реакт. Объяснись.
842 1874325
>>874199
>>874212
Спасибо за советы.
Поспрашивал еще знакомых и решил попробовать совместить, а там уже по ходу решу, заниматься только проектом или же добивать курсы.
843 1874518
>>874310
Это долго объяснять подробно, лучше поверь на слово.
Если коротко - в Vue есть шаблоны и реактивность.
В реакте нет ни того, ни другого.
Учится за 2 вечера. Нет подводных камней.

Интуитивно-понятные принципы работы.
Non-opinionated, абсолютно (в отличие от блядского реакта).
Прекрасная документация.

Опять же, если коротко - то Vue - это Angular здорового человека.

Можно делать микро-компоненты, и дёргать их из внешнего скрипта.
Можно делать шаблоны прямо в html или в <script type="text/template">...</script>
Можно делать всё без вебпака-бабеля-хуябеля-компиляции-сборки, а просто как в старые добрые времена, прямо в коде страницы писать js.

Помимо шаблонов, есть и рендер-функции и JSX, как в реакте (надо прикручивать, но это не сложно)

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

И бери 2-й, 3-й немножко рановато пока.
Начинай с простых примеров прямо в коде html-файла, без вебпаков-бабелей.
844 1874537
А я думал джависты ангуляр любят.
845 1874538
>>874537
Хуяр.
846 1874539
>>874538
Ахахахах
847 1874542
>>859037
2к$. В этом основная причина почему я так долго там сидел: на жизнь мне и половины этой суммы хватает. Но сейчас я уже так заебался что готов уйти даже на меньшую зарплату, но на нормальный стек в нормальную команду без ебаных индусов.

В январе по собесам пойду, судя по рассказам тех кто уже съебал найти новую работу джавистом в моём городе вполне можно. В крайнем случае буду смотреть в сторону ремоута.
848 1874609
>>874542
Сколько населения город?
849 1874676
>>874542
Около миллиона, Европа.
850 1874742
Когда реальная необходимость юзать прототайп скоп?
851 1874769
>>874742
Когда нужно создать сущность(далее Foo), которая имеет много зависимостей. Без прототайп придется создавать синглтон в котором будут все зависимости и фабрика которая передает зависимости в pojo Foo.
@Component
@AllArgsConstructor
class Factory {
Dependence0 d0;
Dependence1 d1;
...

public Foo getFoo() {
return new Foo(d0, d1, ...)
}
}

Или можно просто создать прототип, который можно получать, например, из контекста.

@Component
@Scope("prototype")
@AllArgsConstructor
class Foo {
Dependence0 d0;
Dependence1 d1;
...
}
852 1874811
>>873620
Вдруг он значения хранит какие-нибудь
Хотя хранить их можно и где-нибудь в другом месте
853 1874814
>>874537
Подтверждаю, мне нравится Ангуляр
854 1874842
>>871749

>getClass().getResourceAsStream()


а зачем так читать? а не просто через файлинпутстрим?
855 1874860
>>874518
>>874173

Этот хуй прав, бери vue.js, будет НАРМ. Для spa очень даже хорошо идет, даже если ты раньше не дрочил жс-ы.

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

Потом конечно можно накрутить и auth и прочие залупо-микро-сервисы и аркестратор и прочие прелести крудошлепства.
856 1874872
>>874842
Из жарника?
857 1874877
>>874769
И часто вы его юзаете? В каких реальных кейсах?
858 1874880
>>874872
нет, у меня просто файл в проекте
859 1874889
>>874877
Использую очень редко, реальный кейс попробую привести, но только кратко, для больших примеров можешь на гит хабе примеры из реальной жизни посмотреть.
Обычно его использование обусловлено архитектурой приложения, а не какими то бизнес тасками. В проекте была группа сервисов у которых был один метод: входной параметр - файл, выходной класс стратегии. Проблема была в том что каждая стратегиz внутри себя содержала разный набор компонентов и сервисов, а так же часть инфы о файле, передавать зависимости в качестве аргумента к get-методу была очень плохой идеей, потому что они были для каждой стратегии разные, и даже 4 зависимости превращали get метод в 2 строки. Решением стало к классу сервисов добавить метод @Bean, а все стратегии пометить прототайпами.
860 1874897
>>874889
Окей, понятно. Остальные скопы вообще не юзаются похоже.
861 1874907
>>874897
Согласен они очень узко направленные, но мне кажется хотя бы знать примерные кейсы их использования нужно, что бы постройке архитектуры не обосраться заранее. Сидеть заново изобретать сессионные бины, такое себе удовольствие. На одном проекте видел как люди в javaEE написали свой контекст и пытались его поддерживать.
862 1874942
>>874769
Вау. Когда я только начинать работать со Спрингом, у меня была задача, для решения которой мне надо было использовать репозиторий в одном из методов сущности (репозиторий был как раз для этой сущности) и я не мог придумать ничего умнее, чем объявлять зависимость в контроллере и передавать параметром в нужный метод.
Сейчас я понимаю, что так лучше не делать, но в голове буду держать такой вариант на будущее
image.png22 Кб, 889x428
863 1875037
>>852911
Ура, я смог создать объект Void, теперь можно наконец-то выпиливать устаревший boolean и заменять true/false на Optional<Void>.
864 1875040
>>875037
Лучше бы маме посуду помыл!
2020-12-0717-42-52.png8 Кб, 433x199
865 1875042
сап двач, посоветуй, как имея 20-летний бекграунд работы в отрасли и не имея в текущий момент фултайм практики на джаве оставаться в курсе текущего состояния дел с наименьшими усилиями.

что читать, на что подписаться чтобы deprecated criteria API в пятом хибернейте или фишки типа пикрелейтед не стали неожиданностью?
866 1875056
>>875042
Насчёт функционала: новая версия Джавы выходит раз в полгода. Я за это время вижу пару постов на Хабре, про новый функционал.
867 1875059
>>875056
Да он шутит наверное, за 20 лет работы, он должен был найти все что только можно, если бы ему было интересно
868 1875075
>>874880
Но, ресурсы кошерно хранить в classpath (в папке в одном из пакетов, как будто это класс), и получать по имени файла в пакете, через getResourceAsStream().
Это работает и когда просто файлы, и потом, когда упакуешь в джар, всё будет работать точно так же.
image.png210 Кб, 800x720
869 1875090
Аноны, сейчас прохожу 5 месячные курсы qa auto, пока 3 лекции было, прошли циклы, дошли до массивов.
Параллельно сижу на джавараше.

Вопрос, я сам ручник с 2.5 годами, сейчас хочу вкатиться в автоматизацию, что вообще нужно автоматизатору знать в java, учитывая, что на проекте используют selenium.
Java core + syntax на джавараше будет достаточно? Если нет, на что обратить внимание?
870 1875177
>>875056
я не верю что в русскоязычном сегменте есть что-то адекватное. хабр еще можно было читать году этак в 2008м, но сейчас это помойка где кроме проплаченных рекламных постов с никому ненужной хуетой ничего не осталось. вот как они свободную регистрацию закрыли так все стремительно в говно и скатилось.

>>875059

>Да он шутит наверное, за 20 лет работы, он должен был найти все что только можно, если бы ему было интересно


где 20 лет назад можно было прочитать про лямбда-функции в жаве?
871 1875190
>>875177
Не надо ничего на профессиональные темы по-русски.
Вообще.
А особенно - хабр.
И постепенно постигнешь дзен.
872 1875192
>>875190
ну это я понял уже давно, а по английски что читать?
873 1875195
>>875192
МЕДИУМ
875 1875203
>>875199
DURGASOFT
876 1875222
>>875192
Гугол, в основном.
Например, по вопросу recent java language changes new features.
877 1875224
>>875199
Меньше умничания и словоблудия?
Нет толпы чсвшных пидоров-ботаников-деревенщины-с-вышкой в комментах?
Но, да, медиум - та ещё параша. Мусора много.
878 1875248
>>875199
Да ничем, тот же хабр, но на английском. Тоже тонны говна, которые надо фильтровать вручную.
879 1875266
>>875203
BAELDUNG
880 1875334
>>875199

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

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

Один хуй, хабр - залупа с кармой и уютным сообществом, а эти джва фактора делят всю пользу на 0
881 1875357
>>875334
Хабр - российский сервис для российских айтишников, и этот факт делит всю его микроскопическую пользу на ноль.

пофиксил
image.jpg11 Кб, 200x200
882 1875423
external-content.duckduckgo.com.png46 Кб, 300x300
883 1875597
>>875037

>public createVoid

884 1875600
>>875597
А что, private должно быть, чтобы только fromBoolean работал? Он намеренно сделан public, вдруг кто захочет вместо Optional юзать null.
885 1875634
>>873474
Не знаю, вдруг поможет, всех подробностей уже не помню, но. Как то долго мучился с изображением, дело было в расширении. Файл назывался error.PNG, а я считывал error.png. В итоге в одном месте это работало, в другом нет
886 1875655
>>875423

Ты зачем моё фото здесь постишь?

SimpleAbstractFactoryOfSimpleFactoriesOfFactories.builder().build()
887 1875675
Почаны, жабушка v. > 11 хоть что-то перенимает из котлена или там все безнадега?

Уж больно блевотно каждый раз переходить с няшного на жабку (11 пока в продакшоне)
888 1875680
>>875675
Нет, жаба это кобол, в ней ничего нового нет и не будет, надо писать на котлине и сярпе, и вообще про этот тред забыть.
https://advancedweb.hu/a-categorized-list-of-all-java-and-jvm-features-since-jdk-8-to-15/
889 1875731
>>875680
А свойства как в шарпе и котлине ожидаются в джаве?
890 1875736
>>875731
В ближайшем будущем - нет. Можно юзать ЛОМБОК.
891 1875740
>>875090
БАМП ВОПРОСУ
892 1875747
>>875740
Тут даже не все знают, что именно "автоматизаторы" автоматизируют, а самих автоматизаторов так вообще единицы, одни разрабы.
В моём представлении автоматизатор - это точно такой же разраб со знанием всего стека, включая спринги, ораклы и сервера приложений, но вместо новых фич он пишет тесты для API/UI.
893 1875748
>>875736

До чего же мерзотная хуйня этот ломбок, от самого названия, до самой своей ебаной костыльной сущности.
894 1875815
>>875747

> но вместо новых фич он садится на огурец



пофиксил
895 1875817
>>875747
А зарплата у них меньше. Получается что это легальный грабеж.
896 1875831
>>875817
И меньше ответственности. Заказчик не видит проблемы с тестами, он видит только косяки разрабов. Автоматизатору никто не кидает скриншоты с прода без комментариев и с единственным вопросом "Почему?". Никто не заставит его остаться в пятницу до ночи срочно чинить блокеры. Все требования описаны и задокументированы по факту реализации, ничего выяснять у бизнеса не надо, дёргай себе готовые апишки и смотри аниме на втором мониторчике, попивая кофеёк.
897 1875877
>>870045
Вполне себе даже оправдано, Projector как один из применений - когда твоя IDE крутится где-то облаке, а у тебя только морда. Мало ли какая там на облаке ахритектура, может модный уже M1 от эпл, но т.к. жаве - вроде как и пох. Может и на котлин переведут... будет вообще на нативный код
898 1875888
>>875748
Привет это я, ломбок, ты зачем в таргет классы зашел? тебя туда кто то звал? я тебе че мешаю, урод?
899 1875905
>>875888

>я, ломбок


Побрей себя и уходи.
900 1875908
почему хейтят ломбок?
901 1875918
>>875908
Хуёк.
902 1875923
>>875888

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

И иди побрейся, пидор.
903 1875956
>>875831

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


На самом деле все правильно. Автотима редко ввязывается в релизную хуйню какую-то, обычно только на саппорте, провести какое-нибудь нагрузочное тестирование, БД пошатать, секьюрность. А так они занимаются регрессией и поддержкой всего проекта который уже релизнулся и работает.
С одной стороны это дикий плюс, нет никакой ебани, никто никуда не торопится, все спокойно. С другой стороны иногда движа не хватает. Автоматизаторы это что-то типа мемных сисадминов с бородатого башорга: сами по себе, чет делает, никто точно не знает, но ЗП почти как у девелоперов (но поменьше (но не всегда)).
904 1876012
>>875831

>блокеры


А что это?
905 1876013
>>876012
Задачи с самым высоким приоритетом, например "ААА ПОЛОВИНА ЮЗЕРОВ НЕ МОЖЕТ ВОЙТИ В СИСТЕМУ!!1 СРОЧНО ПОЧИНИТЬ!!1".
906 1876017
>>876013
Благодарю за ликбез.
907 1876324
https://m.habr.com/ru/post/439432/

Что скажите за статью и roadmap? Стоит использовать?
908 1876325
>>876324
Скажете
быстрофикс
909 1876362
>>876324
получение сертификатов - это хорошая мотивация задрочить спецификацию языка. правда после того как оракл их сделал платными я на них забил, т.к. на мой взгляд для разработчика с опытом они особой роли не играют. но если на джуна идти то это конечно огромный плюс в резюме.

ну и по моему личному мнению полтора года на синтаксис и основную библиотеку - это просто ДОХУЯ. три месяца более чем достаточно, при наличии технического бекграунда то.

что там можно полтора года учить я вообще не представляю.
910 1876365
>>876362
Там же мужику 40 лет, думаю он просто сидел вникал че да как, связи с возрастом + него была другая работа. Мое мнение - хорошая статья, человек без выебонов рассказал как вкатиться и то сколько реально упорства нужно приложить, что бы пройти на позицию джуна
911 1876367
ВРЕМЯ ВАЖНЫХ ВОПРОСОВ

sout ("сОут") или sout ("сАут") ?

Мне нравится "сАут". "сОут" звучит по-уебански и выговаривать труднее
912 1876371
>>876367
Саут, конечно. Приставка/предлог "out" всегда произносится как "аут", а здесь как раз она.
sage 913 1876373
>>876362

>три месяца более чем достаточно


Для человека, ранее не умевшего программировать?
Нет, недостаточно.
sage 914 1876397
>>876324

>Хуева туча курсов, около полугода


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



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

Думаю, что основной смысл этой статьи - реклама курсов.
И курсеры, и вообще, курсов, как явления (их очень дохуя сейчас).
Ехали курсы через курсы, короче.

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

Резюме - там какая-то хуйня написана.
И, не факт, что это вообще правда - рекламой воняет за километр, прямо начиная с картинки в заголовке - "пройди курсы и пей пиво в Германии".
915 1876432
>>876397
Возможно реклама, но опять же он там описывает способ как пройти их все бесплатно.
Вопрос действительно в том, стоит ли тратить столько времени на теорию, либо лучше пробовать говнокодить в пет проектах.
916 1876459
>>876373
он умел программировать, это раз
В университете в течение 2-х семестров мы изучали программирование на Си и С++. Ничего особенного или каких-то глубоких знаний. Сдали – забыли. Далее, будучи студентом, я писал какие-то простенькие программы на Delphi для себя.

Дальше моя карьера выглядела так:
Системный администратор
Системный инженер


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

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

>>876397

>Думаю, что основной смысл этой статьи - реклама курсов.


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

Java Programming: Arrays, Lists, and Structured Data (4 недели)

4 недели на списки! ояебу
917 1876514
>>876459
2 года по часу - два в день с детьми, это не тоже самое что учиться в магистратуре на мамкины деньги
918 1876538
>>876514
джаваю этого
919 1876608
Я правильно понял, что java это интрепретируемый язык? Ведь он компилится в байткод и работает на виртуальной машине, прямо как питон
920 1876614
>>876608
Зато спринг в 1,5 раз быстрее, чем джанго!
921 1876615
>>876608
Строго говоря, ни один современный язык не компилируется напрямую в машинный код. Даже C++ на llvm компилируется в промежуточный код, который потом транслируется в микрокоды процессора, которые, в свою очередь, уже выполняются процессором.
Питон, в отличие от жабы, изначально имел возможность "пошагового" исполнения line-by-line, поэтому он считается чисто интерпретируемым языком. В жабе такая возможность появилась только в Java 9.
922 1876620
>>876608
Любой язык интерпретируемый, ведь машинный код тоже интерпретируется процессором.
Любой язык компилируемый, ведь компиляция - это просто преобразование программы на одном языке в программу на другом, и любая программа так преобразуется перед выполнением, ведь невозможно выполнить исходник непосредственно.

Дальше будем доводить терминологию до абсурда?
923 1876624
>>876620

>Компилируемый язык программирования — язык программирования, исходный код которого преобразуется компилятором в машинный код и записывается в файл с особым заголовком и/или расширением для последующей идентификации этого файла, как исполняемого операционной системой



Достаточно, что бы можно было выкакать исполняемый файл для ОС
924 1876626
>>876624
Не только для ОС, для любого исполнителя
925 1876631
>>876624
Окей, продолжаем абсурд.
Что такое машинный код? Это код, понятный некоторой абстракции, называемой "машиной". Например, виртуальной машине, не имеющей реального железа. Ведь нативный бинарник тоже можно запустить таким образом, эмулируя машину программно. А значит, такой код может быть чем угодно, например, картинкой png. Кто вообще сказал, что машина - для алгоритмов, а не показа картинок? Старая стиральная машина с алгоритмами не согласна.
Вот и выходит, что машинным кодом можно назвать вообще что угодно, будь это хоть питоний исходник. И вообразить, что существует машина, выполняющая питон аппаратно.
926 1876633
>>876631
Да, ты прав, компилируемых и интрепритируемых языков не существует
800px-LISPmachine.jpg91 Кб, 800x1058
927 1876634
>>876631

> И вообразить, что существует машина, выполняющая питон аппаратно.


чому бы и нет
928 1876638
>>876624
Ну а сигнатура может быть из нуля байтов. Ещё никто не доказал, что невозможно написать ОС, которой не нужна сигнатура экзешников. Не надо про доказательство отрицания - у нас не реальный мир, а математика, и такие доказательства возможны.
929 1876640
>>876634
Я как-то читал на лурке рофл, что в SPARC реализована аппаратная JVM. Что там лисп...

>>876633
Более того, не существует тьюринг-полных языков, ведь машина Тьюринга невозможна, ибо у неё бесконечная лента.
930 1876649
>>876615
Строго говоря, команды процессора (любого современного) - это тоже что-то типа байт-кода вирт. машины, т.к. они транслируются внутри процессора уже в настоящий кондовый машинный код, о котором знают только специалисты по этим процессорам.
931 1876714
>>876649
Собсвтенно, упомянутый мной llvm и расшифровывается как Low Level Virtual Machine, так что деление языков на компилируемые/интерпретируемые в чистом виде давно потеряло смысл.
932 1876774
Не говоря уж о том, что почти для любого языка можно написать и компилятор, и интерпретатор, и эта характеристика скорее относится к конкретной реализации языка.
933 1876789
Сап двач. Насколько сложно будет вкатиться в Java после 3 лет работы на C++? CS вышка имеется. Можно ли вкатиться сразу мидлом или придётся джуном? Слышал, что в среднем Java джун получает как C++ мидл. Стоит ли тратить время на курсы для вкатышей или достаточно будет прочитать книжку и задрочить сертификат?
934 1876838
Почему-то часто встречаются перекатчики из с++, а из жс и питона нет.
935 1876851
>>876838
Потому что неосиляторы. Они только Go могут осилить.
936 1876857
>>876789

>Насколько сложно будет вкатиться в Java после 3 лет работы на C++?


Java — прямой наследник C++, попытка решить его проблемы и переделать неудачные решения. Попытка сама по себе не на 100% удачная

>Можно ли вкатиться сразу мидлом или придётся джуном?


В твоём случае можно мидлом. Если опыт на плюсах нормальный был, а не laba1.cpp

>Слышал, что в среднем Java джун получает как C++ мидл.


Как повезёт.

>Стоит ли тратить время на курсы для вкатышей


Нет. Там рассказывают про отличия if от switch, int от double и private от public. Если у тебя действительно приличный опыт на C++, ты всё это уже знаешь.

>достаточно будет прочитать книжку и задрочить сертификат?


this
937 1876870
Есть товар, он может быть доступным, скрытым, заархивированным и тд. Какой наиболее бест вей: в таблице товары указывать нужный статус или для каждого статуса делать отдельную таблицу (доступные_товары, скрытые_товары...)?
938 1876878
>>876870
Upd: Статус может быть только один.
939 1876894
Чет хуйню спросил.
940 1876905
>>876870
В одной, конечно. Представь, сколько джойнов и костылей в DAO придётся городить, если их несколько.
image.png764 Кб, 1073x449
941 1877063
>>873297
давно для себя заскринила, пойдет?
image.png76 Кб, 1200x527
942 1877080
>>876640

>JVM


>SPARC

2020-12-1013-36-33.png23 Кб, 987x165
943 1877249
Почему подчеркивается? Так нельзя делать?
944 1877285
>>877249
Идея вечно подчёркивает что-то разными линиями, выделяет курсивом, жирным, жирным курсивом, цветами и ещё какой-то хуитой. Никогда не понимал всех этих обозначений, мне бы, наверное, хватило выделения кейвордов цветом и подчёркивания ошибок/варнингов.
2020-12-1014-48-15.png84 Кб, 976x1085
945 1877291
>>877285
в настройки слабо посмотреть?
2020-12-1014-51-40.png103 Кб, 980x1085
946 1877296
>>877249
переопределяемая переменная
947 1877304
>>877291
Просто не обращаю внимания.
948 1877410
>>877285
Alt+Enter нажми на таком выделении, например.
Напишет, что за хуйня, предложит пофиксить.
Не факт, что это надо фиксить, но, посмотреть полезно.
Переопределённых переменных это не касается, конечно.
949 1877413
>>877249
Если это параметр метода, то это часто нежелательно делать (менять его).
Но, зависит от задачи.
950 1877414
>>877063
И какое же время ориентировочно они хотят в подобных случаях?
Там написано, без жестких ограничений, но, это же нельзя год делать, например?
951 1877415
>>877414
да фик его знает, я так и не взялась делать, на работу и без этого взяли.
952 1877416
>>877063

>документа


Какого, блядь, документа?
С такими тех. заданиями надо задающих посылать на задание, лол.
953 1877418
>>877416
Произвольная json-ка без валидации.
954 1877420
>>877418
Произвольные документы json в реляционной базе?
Посылать, однозначно.
955 1877421
>>877420
Да хоть в key-value, какая разница? Требуется только хранить, запрашивать конкретные поля и как-то ещё обрабатывать не нужно. Так делается повсеместно.
956 1877424
>>877414
тут работы на два-три часа максимум (если знать что такое спрингбут, но смысл тестовых заданий именно в этом - понять умеет соискатель что-то или только притворяется).

ну либо день если до этого спрингбут не ковырял.

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

вполне годное тестовое задание
957 1877426
Для джавы есть декомпайлеры по типу днспай для сишарпа?
Чтобы я мог загрузить скомпиленый байткод, декомпилировать в код, внести пару изменений и собрать обратно?
958 1877428
>>877426
есть
959 1877430
>>877428
Скажи, пожалуйста, названия
А то фернфлауер с гуем у меня работать не хочет
960 1877431
>>877424
Пиздабол, а тестирование?
961 1877433
>>877430
в гугле же все есть. CFR например
962 1877447
>>877431
тестирование чего?
создание юнит тестов включено во время разработки всегда тащемто. да там кода то будет с гулькин нос на самом деле.
основная работа - настройки спринговых объектов типа дао и RestController. Бизнес-логика сводится к написанию пары обращений к БД и выводу данных в шаблонизаторе
image.png337 Кб, 650x410
963 1877455
Джавач, именно ты чаще всего вспоминаешь про коронавирус.
964 1877505
>>877424

> на два-три часа максимум


Вот только не надо пиздеть.

Нечего сказать - просто не говори ничего, лол.
Очень полезный навык, советую потренировать.

И доказывать сейчас тоже ничего не надо, я всё понял
965 1877601
>>877505
чего так подгорело то? взъебали на собеседовании?
966 1877664
>>842154 (OP)
у меня собеседование
по яве афкорс
всё ок, если бы они не хотели что-бы я всё делал на яве 8
со стримами и ламбадами ебаными

я ничего не знаю, есть ли хороший тренер? или сайт где куча всего?

вот будет на этом сайте
https://app.codility.com/demo/take-sample-test/
967 1877676
>>877664
или сайт где куча разной хуйни готовой уже
969 1877770
>>877664
Какая-то олимпиадная хуйня.
Кто нанимает джава девелоперов таким образом?
970 1877798
Таймлифом на работе пользуются или это только для пет проджектов?
А если пользуются, это фронтендеры такие рукастые и умеют пользоваться всякими #strings или жаберы вносят вклад?
971 1877801
>>877798
У нас вместо таймлифа юзается freemarker, но не для фронта (который на реакте), а для генерации кое-каких xml-ек из шаблонов по сложным правилам.
972 1877805
>>877770
А как обычно это происходит?
973 1877819
>>877798
Я не пользуюсь, и мне непонятно, нахуя его вообще высрали.
Я пользуюсь jsp. Кому не нравится - те просто не умеют его готовить.

>>877805
По-разному.
Но, точно не по олимпиадным задачам, если только ты не в яндекс устраиваешься.
974 1877835
>>877819
Ты там в своем легаси настолько преисполнился, что считаешь устаревшую технологию 2011 года хорошей, а всех кто считает против, дебилами которые не разобрались? Может ты ещё и на JavaEE пишешь? Одолжи машину времени.
975 1877844
>>877835

>Может ты ещё и на JavaEE пишешь?


Как ты узнал? Подглядываешь?

И схуяли jsp 2011 года? 2001, тогда уже.

Я не меряю технологии по годам.
JSP - компилируется в java байткод, и работает, как из ружья.
Там есть статическая типизация.
Можно делать свои теги, которые тоже компилируются.
И для всего этого есть охуенная инструментальная поддержка.
Если нужно что-то необычное - можно дописать компилятор, что я и делал пару раз.

Просто не надо использовать мейнстримное говно типа томкэта и прочего подобного.
Или монструозную хуиту от ibm.

Мир многообразен, чувак.
Попытайся это понять.
976 1877852
>>877844
Я работал с Jsp 4 года, основная проблема низкое качество кода который генерит джаспер, если взять например веблоджик, то он страницы размером больше чем не помню сколько, будет выкидывать с ошибкой, а jsp по сравнению с html+js намного тяжелее. Так же проблема, что технологии фронтенда не стоят на месте, я бы даже сказал скачут как бешенные, могу предположить что ты фулл стек джава дев и тебе приходится заниматься и веб мордой и сервером одновременно, ты можешь назвать себя сильным фронт енд разработчиком? я нет. Конечно jsp как дешевая альтернатива хорош, но шаблонизаторы позволяют разделить обязанности, ну и это то что навязывает спринг, а для веба сейчас лучше спринга ничего нет.
Поправь где я не прав.

>И схуяли jsp 2011 года? 2001, тогда уже


Самая новая версия джаспера 2011, я считал с последнего обновление 2.1 вроде
977 1877857
>>877852
Никогда не использовал jasper.
И у меня всё нормально.
Но, мой опыт - не показатель.
Просто удачное стечение целого ряда обстоятельств.

>jsp по сравнению с html+js намного тяжелее.


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

Сложных страниц давно не делаю, но, JSP позволяет внедрять кучу всего на стороне сервера, и клиент получает не просто html, а уже преднастроенное окружение, включая JS и т.п.
Также, фильтры активно использую.
И сессии.

В общем, хейт технологии просто потому, что её придумали 20 лет назад - это не от большого ума, как правило. Для разных задач - разные инструменты.
Золотого молотка не существует.
978 1877878
Я на дизморали сейчас. Все вакансии мидлы 2+ года опыта и сеньёры. Даже через знакомого программиста в какой-то говноконторке получил отворот, просто потому что "человек вообще не из этой области и даже смысла звонить ему нет". Остаются только варианты со вкатом через всякие стажировки от епамов, но и там сейчас по слухам нужно пройти все круги ада, а потом соснуть хуйца в конце.
979 1877881
>>877878
Может через php зайти?
980 1877896
>>877878

> стажировки


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

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

Хотя я и так прошёл, без всяких пхп и стажировок.
981 1877903
>>877857

> Сложных страниц давно не делаю


ну так с этого и надо было начинать

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

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

жсп это блядь уровень пхп 2000го года, это днище ебаное, хуже него только jsf. уж лучше сразу в сервлетах хуячить в стрингбилдер, а там и до нормальных шаблонизаторов один шаг.
982 1877927
>>877896

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


Это да. Причем парадокс в том, что на стажировки в средние и мелкие конторки, которым реально нужны спецы, ищут онли профильную студентоту, а в крупных берут всех мимокрокодилов, но будешь ли ты в конце нужен - не понятно, а 3-6 месяцев на эту стажировку ты убьешь.
>>877881
Хуй знает. Уже мысли были ли в фулстак как-то вкатиться, либо вообще через какую-нибудь узкую хуйню, которую никто учить не хочет.

Я просто так уже втянулся в это ваше программирование, что мне уже все что не крутиться вокруг компов и айти не интересно совсем.
983 1877930
>>877927
Ну даже если не примут после стажировки, за 3-6 месяцев я получу новые знания+ какой никакой опыт. Это разве не плюс?

Сам планирую попробовать идти по такому пути

Мимо вкатыш
984 1877962
>>877930
Плюс, но для себя я вижу два минуса:
1. Знания - это хорошо, но мы то целимся на место в компании, а остальным джуны все еще не нужны по вакансиям, как я уже писал;
2. 6 месяцев нужно купац + если тебя не принимают еще минимум месяц.

Я буду пробовать все варианты, но тут меня смущают эти пункты.
985 1877965
>>877930
Такая стажировка хоть как то оплачивается?
Вообще хотелось бы качнуться перед трудоустройством так, чтобы не с 20к начинать. А например с 50 в милионнике.
986 1877973
>>877965
Ну и амбиции у тебя.
987 1877983
>>877965
Софт ой стипуха на булочку в столовке и на проезд.
988 1877986
Бэкэнд-хуилы, как вам живется при отсутствии видимого результата работы?

мимо-начинающий-бэкэнд-хуила
989 1877990
>>877965
В Сбере 25-50 в зависимости от количества отрабатываемых часов. В ВТБ тоже примерно так.
990 1878000
>>877986
Ты про то, что фронтендеры видят результат своего макакинга сразу, а бэкендеры должны написать дохуя кода, чтобы в json появилось одно полечко?
Честно говоря, хз. То ли привычка после крестов и линукса, то ли сам общий настрой, что функционал важнее внешнего вида, поэтому пойдёт хоть консолька, лишь бы свою задачу делала.
991 1878017
>>877986
А что для тебя видимый результат? Кнопочка на странице? Мне посрать в целом. И более того, такое отношение я считаю достаточно примитивным. Как у тех людей, у которых есть только UI, а за ним происходит магия. Это меня даже веселит слегка: мысль, что многие люди не в состоянии понять просто лишь суть проблемы, которые я решаю, не говоря уже о самом алгоритме её решения и подводных камнях, которые я предусмотрел или нет. Как раз обилие вкатывальщиков, которые сразу же хотял получить видимый результат, вселяет в меня уверенность, что лично я не стану жертвой демпинга на рынке, и моя зп так и останется пределом мечтаний для большинства джуниоров.
992 1878053
>>877903

>wicket


https://wicket.apache.org/learn/examples/dropdownchoice.html
Посмотри этот пример.
Чтобы сделать один ёбаный селект, надо написать хуй знает что, вообще.
На джаве, не в шаблоне.
Какие-то модели, хуйню, малофью.
И это клиентский код, блядь, не библиотечный. Т.е. такой залупы в проекте просто тонны должны быть.

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

>жсп это боль


Реакт жс - это боль, например.
Но, все на нём пишут, нахваливают, и просят добавки.
993 1878063
>>878017
Некоторые мои начальники (или просто старшие проекта) были такими, когда я занимался фуллстаком. У меня бэкенд сыпет исключениями и иногда падает, но приоритет у "на фронтенде перемести кнопочку на пиксель влево". При этом это подавалось в духе: "Да пофиг на бэк, потом разберёмся. Кнопочки важнее".
Понятное дело, что заказчик видит только кнопочки и деньги платит по сути, за них
994 1878080
>>878000

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


Ну скорее это:
А что для тебя видимый результат? Кнопочка на странице?
995 1878082
>>878000
>>878017
>>878080

Ну мб это все СДВГ или еще какая-то хуита. Типа всегда тянет на быстрый результат(
996 1878084
>>878053

> Т.е. такой залупы в проекте просто тонны должны быть.


ты просто не понимаешь о чем говоришь

селект на викете делается в две строки

в шаблоне
<select wicket:id="choise"></select>

в коде страницы:
var combo = new DropDownChoice<Person>("choise", ()->getPerson(), ()->getAllPersons());

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

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

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


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

Попробуй туториал пройди по ваадину или хотя бы видосики посмотри.
https://www.youtube.com/user/vaadinofficial/videos
То что в этих туториалах делается за час на жсп ты будешь делать дни а то и недели.

Но он очень плохо кастомизируется в плане UI, поэтому подходит только для интранета/ынтерпрайза. А викет кастомизируется на отлично, можно любую морду прилепить и его можно использовать везде.
997 1878095
>>878084
Vaadin - это такой GWT на стероидах или что?
Стоит ли сейчас в него вкатываться, не поздновато ли?
Речь про энтерпрайз.
2020-12-1114-59-34.png8 Кб, 640x123
998 1878098
>>878095

> Vaadin - это такой GWT на стероидах или что?


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

> Стоит ли сейчас в него вкатываться, не поздновато ли?


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

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

алсо вот тебе скриншот из гугла который как бы намекает
999 1878104
>>878098
ну и да, если по HH поискать то жирнота типа альфы, сбера, северстали и прочих монстров ищут людей со знанием ваадина, значит он будет жить еще долго, легаси страшная сила.
1000 1878105

> JSP, JSF


> шаблонизаторы


> Vaadin


Ну и тред. По мне так лучше всякие реакты/вуе, чем обмазываться вёрсткой на сервере.

> GWT Java-to-JavaScript Compiler


Пахнет васянством, хоть и от Google.
1001 1878118
>>878105
Сбежал от фронтенда в бэкенд
@
Прибежал
1002 1878122
>>878105

> Пахнет васянством, хоть и от Google.


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

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

я видел проект на GWT где компиляция занимала больше часа и браузер у пользователя потом перемалывал его минут пять на старте.
1003 1878123
>>877819

>По-разному.



ну вот и скажи как это по-разному?
я джун, мне интересно всё
1004 1878128
>>878122
Жесть какая. Не хотелось бы с этим столкнуться. Хотя мне всегда казалось, что в таких приложениях предпочитают JSF, но я мало про это знаю.
1005 1878131
Хоспаде чому так сложно, я как вижу это Scanner Scanner = new Scanner(System.in) у меня в голове все путается, видимо я не способен стать програмистром.
Какого хуя сканер сканер = нью сканер, что вообще это значит, почему повторяется сканер
1006 1878134
>>878131

>Scanner Scanner


Ты даже в примере обосрался!
1007 1878138
>>878131
Тип название_переменной = значение.
В твоём случае значение - это результат вызова конструктора класса, а название конструктора, как известно, совпадает с названием самого класса.
Вместо Типа переменной может быть любой предок этого класса или реализуемый интерфейс (если не добрался до этих тем, пока не задумывайся об этом), и в таких случаях тип будет отличаться от конструктора.
Ну а саму переменную зачастую нет смысла называть сильно иначе, чем тип, потому что сразу понятно, с какой сущностью работаешь.
1008 1878141
>>878131
Я когда начинал учить джаву (после питона) тоже возмущался, какого хуя так многословно. Да и вообще зачем эти типы тупые нужны.
Но стоило мне только понять что есть что (как >>878138 написал), так сразу же всё стало невероятно логичным. А после, во время работы с джавой и джэсом одновременно, понял, что типы это круто.
1009 1878144
>>878131

>Scanner scanner = new Scanner(System.in);


переменные принято с маленькой буквы называть.
1010 1878151
При перекате надо вернуть аниме в шапку.
1011 1878159
>>878151
И убрать шапку добавить книги с упражнениями: >>869027 + http://libgen.gs/item/index.php?md5=3C9D95782A5E3708F2CE568D9D6C7D01.
1014 1878165
>>878159

> убрать шапку


Конечно, ведь шапка не нужна.
1015 1878180
>>878123
В Мы-Вам-Перезвоним треде тебе расскажут больше, чем ты хочешь знать.
1016 1878182
>>878131
Scanner scanner = Scanner.class.getConstructor(InputStream.class).newInstance(System.in)
image.png26 Кб, 153x103
1017 1878224
1018 1878333
>>878082
Используй TDD, будут тебе зеленые тесты как мгновенный результат, макака нетерпеливая.
1019 1878337
>>878131
Иди в Котлин.
1020 1878344
>>878337
Будто в жабе нет var.
1021 1878369
>>878131
По началу было тоже немножко дико.
Особенно когда нет того, кто по-человечески разжуёт.
Спустя пару месяцев это проходит на изич.
1022 1878381
>>878344
С ломбоком есть.
1023 1878382
>>878369
Двачую, первые два месяца сложно воспринималось, а теперь глаз радуется
1024 1878401
Вот бы нахуй try-with-resources назвали with(...), тогда можно было бы писать пиздатые языковые конструкции. А так хуй.
1025 1878406
>>878381
и без него давно есть
1026 1878408
>>878406
А val есть? А нахуй в джаву снова половинчатое решение завезли? Соси хуй.
1027 1878411
>>878408
не нужон, есть final же
1028 1878414
>>878411
final var это вообще нахуй что-то с чем-то.
1029 1878415
>>878408
final var
Или тебе пять букаф жалко в языке, где идентификаторы по 50?
1030 1878744
>>878182

Груви-говноед в треде, я спокоен!
1031 1878753
>>878744
Groovy - охуенен.
А говном пахнет у тебя изо рта, поди помойся.
1032 1878764
>>878414
А если дурак напишет final val, как компилятор это комментировать должен?
1033 1878790
КОТЛИНОШИЗЫ ХАЯТ ЖАБУ
@
ПРОДОЛЖАЯ СИДЕТЬ В ЖАБА-ТРЕДЕ
1034 1878835
>>878131
А нахуя ты лезешь в ООП если основ еще не знаешь?
1035 1878841
>>878835
А как ещё ему прочитать ввод с клавиатуры без ООП. если в жабе даже System.in.readln() нету? Так и писать println-онли программы, пока не дочитает до главы про классы?
1036 1878854
>>878764

>Compilation failure: Duplicate final declaration

1037 1878863
>>878854

>error: repeated modifier

sage 1038 1878878

> error: nie naydien tip "val"

1039 1878911
>>878841
Начинать с процедурных языков, но разумеется он этого делать не будет, лучше мучаться и верить в магию.
1040 1879007
>>878911
Но перед этим нужно изучить линукс и его stdin и stdout
1041 1879029
>>879007
Ну хотя бы книжечки, у Столярова есть например "Введение в профессию" называется
1042 1879031
>>878911

> процедурных


Foo ⚹foo = (Foo⚹)malloc(sizeof(Foo));
1043 1879060
>>879031
Если это си без плюсов, каст нахуй не нужон.
Если это си с плюсами, то нахуй не нужон уже malloc.
1044 1879061
>>879060
Не нужен, но многие зачем-то пишут. Хуй знает.
1045 1879094
Реально найти работу, не связанную со спрингом ебаным? Что ещё используется, сервлеты? Micronaut? Play?
1046 1879099
>>879094
JAVA EE 6
1047 1879101
>>879099

> JAVA EE 6


Там страшна не столько сама технология, сколько коллеги с которыми предстоит работать
1048 1879109
>>879101
Чем именно они страшны?
1049 1879110
>>879109
Ну сам подумай, каким динозавром надо быть чтобы сидеть на работе ковыряя древний проект на древней технологии
1050 1879112
>>879094
asp.net
1051 1879114
>>879112
Дотнетчик - хуже пидораса.
1052 1879118
>>879094
Альтернативы спрингу нету, ееху прикрыли а она была единственным конкурентом, ну как конкурентом сзади спринга че то хромала, упала, а поддерживать уже некому
1053 1879130
>>879114
Зумер вкатышь который ни разу не работал только такое может выдать.
1054 1879144
>>879130
OK.
Дотнетчик - не хуже пидораса.
Так лучше?
1055 1879224
>>879094

> Реально найти работу, не связанную со спрингом ебаным?


спринг прекрасен. ты просто не работал с EJB, особенно первыми.
1056 1879259
>>878753

>динамическая параша



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

Когжа жабушка была 1.6 и это была самая популярная технология в жвм-мире, да, груви и его грейлс выглядели как ПРОРЫВ нахуй.

Но щас грувям можно отвести только роль скрипто-языка. Действительно иногда удобно заебошить один файл с грабом и выполнить это дерьмище где-нибудь разово, чтобы не дрочить руками.
1057 1879324
Второй крупнейший мировой производитель ПО, корпорация Oracle, решила перенести свою штаб-квартиру из Редвуд-Сити (штат Калифорния) в Остин (штат Техас). Причина – в стремлении сократить расходы благодаря отсутствию подоходного налога в Техасе, сообщает Bloomberg.
1058 1879326
>>879324
Держи в курсе.
1059 1879328
>>879324
Скоро офисы Pivotal и Jetbrains станут филиалами оракла.
1060 1879352
Как нужно готовить бд к продакшену? Нужно ли создавать роли с разными ограничениями и тд?
1061 1879359
Добрый день, народ, взяли меня значит стажером в ноунейм инвестиционную компанию, хотел узнать есть ли ресурсы по поводу работы с Apache ServiceMix/ Apache camel, а то мне сказали садись разбираюсь в определенных компонентах сервисов, где всё роутится через camel.
1062 1879377
>>879328

>Pivotal


Его купили VMware
1063 1879378
>>879359
Не повезло, чел, это мертвые технологии.
1064 1879396
>>879378
В твоей докерно-микросервисной реальности, наверное. вообще всё мёртвое.
1065 1879406
>>879396
Да, докер тоже, кстати.
1066 1879520
>>879259
Надо быть очень недалёким, чтобы не видеть разницы между груви и котлином.
Это разные вещи, под разные задачи.

То, что какие-то долбоёбы пишут конфиги и скрипты на котлине, говорит только о том, что они долбоёбы, и больше ни о чём.
1067 1879526
>>879396
Дурачок не понимает, что энтерпрайзные системы благополучно живут десятилетиями, и думает, что их каждые 5 лет переписывают на текущий хайпо-стэк.
изображение.png37 Кб, 925x214
1068 1879554
Блять, мне кривой перевод попался походу, пиздец. И сколько еще ошибок в нем хуй знает. Как же хуево не знать ангельский
1069 1879560
>>879554

> java concurrency in practice


Что за задачи у тебя такие, где нужно настолько глубоко задрачивать потоки, что ты читаешь талмуд на 500 страниц?
1070 1879572
>>879406
Пруфы будут?
1072 1879576
>>879572
Ожидал этого ответа.
Это не то.
К Докеру, как таковому это не имеет отношения.
Есть даже мнение, что кубернетис всех немножечко подзаебал, и пора переползать на терраформ.
1073 1879577
1074 1879578
>>879576

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


Ну то есть уже кубернетис умер, ага.
1075 1879592
>>878753
>>878744
Какой нахер груви? Это код на джаве был.
1076 1879593
>>879560
собираюсь менять галеру, решил повторить все по потокам перед собесами, чтобы не осталось пробелов
1077 1879603
>>879592
Ну наконец-то хоть кто-то это спросил, а то я охуеваю с тех двух шизов, которых понимают только они сами.
1078 1879618
>>879378
Какая разница учить мертвые технологии или хайповые при условии +- одинаковой зарплаты?
1079 1879619
>>879618
Такая, что мертвые технологии рано или поздно вымрут.
1080 1879622
>>879554
английский очень просто поднять, просто ты нытик.
1081 1879625
>>879622
ПРОСТО
1082 1879627
>>879619
Пока хайповые технологии вытесняют друг друга каждые полгода, создавая ещё больше сложностей, чем решая, "древние" "умершие" "легаси" технологии просто работают без хуйни.
1083 1879634
>>879554
Анон ну не.. Такие тексты лучше читать в оригинале, пусть и медленнее.
1084 1879660
>>879627
Кобол тоже просто работает.
1085 1879665
>>879660
Нет, не работает, потому что не развивается. А якобы "устаревшие" технологии вполне развиваются, просто пользоваться ими не модно, смузихлёбы не зауважают.
1086 1879729
>>879359
По camel могу посоветовать только книгу Apache camel in action. Также на гикбрейнс недавно вышел вебинар по camel, поищи.
1087 1879858
bump
1088 1879882
>>879729
нафига все эти книжки нужны когда к любой апачевской бтблиотеке всегда идет подробейший юзер гайд которого хватает за глаза?
1089 1879950
bump
1090 1879955
чел, ты...
1091 1880060
Народ, я стажер в ноунейм компании, хотел узнать вообще у других как начиналась ваша карьера, вас менторили ?
Если да то в каком плане.
А то мне сказали сиди разбирайся в море camel/apache-servicemix и море xml конфигураций, и сижу немного в ступоре что я должен здесь разбирать.
1092 1880076
>>880060
Да, с самого начала был тимлид, который рассказывал, в чём суть проекта, где что искать, как что работает, ключевые классы и конфиги, задачи в джире с расписыванием всех правок в коде.

> сиди разбирайся


Звучит как пиздец. Попробуй вопросами всех позаебать, что-нибудь должно выясниться.
1093 1880081
>>880060
хотел вайти? вот тебе айти
1094 1880082
>>880081
да.... а мечтал о кубере, микросервисах, eureka и роутинг через зуула
1095 1880086
>>879520

Да кто говорит что нет между ними разницы? Конечно же есть.

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

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

Но вообще если бы в котлине был аналог @Grab - я бы не стал и в скрипты тащить груви-парашу.
1096 1880097
>>842154 (OP)
Ребята, помогите, пожалуйста, куда копать надо? Сделал программу, которая обращается по адресу страницы инстаграма https://www.instagram.com/АДРЕС_СТРАНИЦЫ/?__a=1.
Этот запрос возвращает json с данными об аккаунте.
Дело в том, что в intellij idea на локальном сервере всё работает ок (200 response), но когда заливаю на herokuapp, то возвращает 301 ответ (редиректит на страницу логина зачем-то меня). Делаю запрос с помощтю HttpRequest. Я так понимаю, дело в headers запроса? Они отличаются от моих на локальном сервере? Мне нужно как-то скопировать свои заголовки и задать их через код?
1097 1880104
>>880097
у тебя в headers указана "Authorization" : "authType fhjghfjsghfsghjsf" ?
1098 1880109
>>880104
Я сейчас вывел на консоль request.headers() и там вообще пусто. Но, когда я добавляю свои заголовки вручную, они там появляются. Я добавил "Authorization" : "authType fhjghfjsghfsghjsf" и ничего не поменялось. На локальном сервере изначально тоже ни одного заголовка нет, но мой запрос как-то получает 200 ответ без редиректа. Как так?
1099 1880111
>>880109
Лол, я всё дословно ввёл,как ты написал. А ты для примера это написал, походу
1100 1880116
>>880111
Короче, тебе либо надо залогиниться передав свой данные в отдельном запросе и использовать header "Authorization" из ответа логина для дальнейших запросов.
1101 1880142
>>880060
У меня похоже, только я был не стажером, а уже полноценным работником. И мой начальник, который в программировании не особо разбирается, сказал мне сидеть и разбираться с "этим, этим и вот этим". Других программистов в компании не было. Так что сидел и разбирался. И так после института я вышел с пустой головой, то пришлось разбираться во всем. Вообще сложно разбираться в чем-то, когда не знаешь что с этим надо будет делать. Так что, как тебе уже посоветовали, позадавай вопросы, на что именно тебе обратить внимание.

Других программистов в компании не было. Да и других работников тоже не было, я один в офисе сидел. Сам начальник приезжал в офис раз в два-три месяца, обычно мы с ним переписывались и раз-два в неделю созванивались. Весь проект (фулстек) я тянул на себе (напомню, это была моя первая работа и впервые что-то большее lab1) и от этого было очень тяжело. Ну хоть зарплата была нормальной. Через год я уволился.
1102 1880144
>>880142
С версткой как всегда проебался, но да ладно. Сразу же дополню:
Вот этот >>880081 правильно сказал. Как программисту, тебе постоянно надо будет в чем-то разбираться, что-то читать и узнавать новое (хочешь ты того или нет), со временем привыкнешь. Добро пожаловать.
1103 1880182
>>880144
Это то я понимал изначально, просто когда дают тебе компоненты проекта, с фреймворками с которыми ты не то что не сталкивался, а не слышал, это я про ServiceMix, и говорят разбирайся в компонентах проекта, потом будешь рефакторить, и не видишь где логическое начало кода, потому-что всё в camel-context.xml, но это не суть, просто давно себя таким идиотом не чувствовал, прыгнул в море и *бись, хз даже какие вопросы задавать, ибо никогда не имел дело с роутингом сообщений в camel и не работал с очередями.
1104 1880191
А я вам говорил, что нужно привыкать к легаси и не морщить нос. Я вот книжку по джаве 1.0.2 читал, чувствую себя нормально.
1105 1880196
>>880182
Дополнение:
Заебать немного проблематично, удаленка.
1106 1880201
>>880191

> джаве 1.0.2


PROPERTIES
@
HASHTABLE
@
VECTOR
@
MISSING TYPE ARGUMENTS FOR GENERIC CLASS LIST
1107 1880204
>>880201
@
DICTIONARY
1108 1880387
>>880204

@
PROJECT WITHOUT SPRING
1109 1880401
>>880387
@
INTERFACE21 FRAMEWORK
1110 1880486
>>880387
Спринг не нужен.
Давно уже стал более монструозной хуитой, чем было EE.
Причём, на нормальных EE серверах всё из коробки работало, а тут ёбаный колхоз какой-то.
1111 1880490
>>879574
Тут под докером подразумевается конкретная прослойка, которая используется для запуска контейнеров. Если ты создавал совместимые со стандартом контейнеры, то они запустятся в новой среде без проблем.
замени "docker" на "podman" и по сути нихуя не поменяется. Можешь даже алиас между ними сделать, если так нравится слово docker
1112 1880505
>>880490
А ещё, ебанашки не понимают, что контейнеры и докер - это не только (и не столько) облака и кубернетис (в рот бы он ебись).
1113 1880507
>>880486

> на нормальных EE серверах всё из коробки работало


И многопоток там автоматически генерировался.
1114 1880518
>>880507
Таки генерируется, свои ведь нельзя создавать.
1115 1880570
>>880486

> Причём, на нормальных EE серверах всё из коробки работало, а тут ёбаный колхоз какой-то.


ебаный колхоз у тебя в голове. ждать пять минут пока вебсфера просрется чтобы посмотреть как ты бин обновил - вот твои ЕЕ сервера. деплой томката со спрингом аналогичного функционала - 10 секунд. не говоря уже о тестировании где написание банальнейшего юниттеста какого-нибудь контроллера превращается в адовый квест.
1116 1880571
Можно через классы ServerSocket и Socket по локальной сети подключиться? Если можно в клиентской программе в конструкторе Socket на место адреса для подключения что нужно будет писать? Внутренний ИП или внешний динамический. Просто если там все непросто неохота на тянкин комп просто так ждк ставить.
1117 1880575
>>880571
Можно, в клиентской пишешь внутренний IP.
1118 1880618
>>880575
Спасибо. А вот чтобы написать простой консольный чатик, что нужно сделать, чтобы сообщения не по очереди принимать в цикле, а в любом порядке? Потоки разные или как?
1119 1880639
есть метод который возвращает JSONObject, как юниттест написать для него? как проверить что он именно JSONObject вернет?
1120 1880641
>>880618
Достаточно сложно, проще найти готовый пример или сделать HTTP-сервер на каком-нибудь спринге.
Если у тебя UDP, то можно с определённым таймаутом пытаться принять сообщения с какого-то определённого порта, на который второй клиент будет что-то слать, и параллельно читать ввод с клавиатуры и отправлять данные на такой же порт второго клиента. Если TCP, то у тебя будет приложение-сервер, запущенное на одном из хостов, и приложения-клиенты, подключающиеся к этому серверу. И тут можно каждому клиенту либо юзать сразу два порта - один для входящих сообщений, один для исходящих, либо юзать только один порт, с которого ты либо отправляешь серверу пакеты вида "сервер, отправь такое-то сообщение такому-то клиенту" или "сервер, есть новые сообщения? Если да, пришли в ответ". А сервер пересылает сообщения нужным юзерам.
1121 1880642
>>880639
У тебя статическая типизация, и метод всегда будет возвращать JSONObject или null. Вопрос лишь в том, корректные ли в нём данные, это и надо проверять в юнит-тесте.
1122 1880648
Как работает spring session?
1123 1880650
>>880641
Еще раз спасибо. Ну вот самый простой для моего понимания способ - это через 2 порта. Но как сделать, чтобы методы приема/передачи работали параллельно? Каждый в своем потоке и постоянно их усыплять на пару миллисекунд?
1124 1880659
>>880650
Да, два потока. В одном ждать входящие сообщения и выводить в консоль, в другом - ждать ввода с консоли и отправлять исходящие. Можно и не усыплять, для задачи такого уровня это не проблема, пускай поток блокируется и ждёт данные из сокета или с клавиатуры.
1125 1880666
>>880650
Зачем усыплять?

И самый простой - это с 1 портом, и запросами только от клиента к серверу.
Это можно сделать и через http и работать через интернет.

Асло, зачем это тебе?
Консольный чятик ad-hoc между двумя компами делается просто через netcat, без джавы и вообще без программирования.
1126 1880672
>>880666

> netcat


Баш пора официально объявить языком программирования. Время уже давно пришло.
1127 1880698
>>880666

>Асло, зачем это тебе?


Иду по учебнику джавакора и захотелось поиграть и что-то написать по материалу главы. По хттп мне нужен статический ип. Он стоит 2 сотки в месяц. Если буду всякие спринги потом учить то тоже поиграю и куплю, а для простых сокетов пока жалко. Кстати много можно на голых сокетах написать?
1128 1880712
>>880698

> По хттп мне нужен статический ип


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

> много можно на голых сокетах написать?


Всё. что угодно - почта, FTP, HTTP, AMQP. Правда, времени реализовывать это с нуля уйдёт много.
1129 1880718
>>880698
Тебе уже сказали про локальную сеть.
Но, ты можешь запустить http даже на 127.0.0.1
А потом - совершенно бесплатно задеплоить свой чятик на Heroku, и пригласить нас пообщаться.

Алсо, это всё можно ещё и через браузер.
И на веб-сокетах.
Но, это уже будет не совсем кор.
1130 1880725
>>880642
я указываю путь и у меня загружается джсон файл.
в тесте мне нужно проверить, что при указании правильно пути возвращается не null?
1131 1880729
>>880725
JSONObject != корректный JSONObject
1132 1880735
>>880729
что есть корректный JSONObject? файл состоящий из
{
}
?
у меня валидация объекта описана уже в другом методе
1133 1880755
>>880735
JSONObject - это джава класс, я полагаю.
И речь о том, какие данные в его полях.
Например, он может быть просто пустым.
Или с неверной датой.
Или без кода товара, например.
1134 1880758
>>880755
в этом методе мне неважно его содержание вообще. Мне главное чтобы он был, значит я могу проверить метод Assert.assertNotNull()?
1135 1880759
>>880735
Корректный = валидный.
1136 1880775
Позицию треда по OCA можно узнать?
Desktop2012150019.jpg6 Кб, 624x478
1137 1880776
Аноны, делаю курсач - сайт на спринг буте. У меня через форму загружается фотка. Если её не залить, получится пикрил хуета, а я хочу прост пустое место. Че поменять надо если в чтмле картинка энивей выводится

<img alt="" th:src="*{'data:image/jpeg;base64,'+{el.image}}" style ="width:350px; height:350px"/>
Хотел вместо 350 засунуть кастомную el.width, но это так не работает
Картинка по цвету фона тоже не варик, отступ большой будет
1138 1880779
>>880776
Вопросы про вёрстку лучше задавать не здесь и не в JS-треде.
1139 1880781
>>880779
ladno, спросил в пыхе, мб там шарят
1140 1880785
господа, есть приложение на javafx, есть контроллер, есть юнит тесты. как в юнит тесте получить доступ к контроллеру? у меня когда в методе, другой метод вызывается ексепшн выкидывает
image.png30 Кб, 550x458
1141 1880804
>>842154 (OP)
Аноны, делаю апишку на спринг бут. Как изменить начало пагинации с 0 на 1? spring.data.web.pageable.one-indexed-parameters=true
в аппликейшн.пропертис не помогает
1142 1880974
>>880486

>чем было ЕЕ



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

Ты бы еще по JSF скучал, блядь.
1143 1881089
>>880804
бамп вопросу.
как этот ебучий Pageable настроить, чтоб отсчет шел с 1, а не с 0? в инторнетах предлагают spring.data.web.pageable.one-indexed-parameters=true, но мне он нихуя не помогает
1144 1881090
>>881089
Я ваще от тебя узнал, что в спринге есть пагинация из коробки.
1145 1881111
Инициализация объектов в джаве - изъян в архитектуре языка? Если забудешь это сделать, рано или поздно будет NPE. Спринг например борется с тем, чтобы вы не мучились с созданием объектов через new.
1146 1881157
>>881111

> изъян в архитектуре языка?


В каком-то смысле. Но разделение на nullable и не-nullable вводить уже поздно, да и оно выглядит как костыль. И всё равно придётся юзать nullable для инициализации структур данных с циклическими зависимостями.

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


Спринг нужен для удобства управления ресурсами (БД, например), чтобы не писать код инициализации руками. Объекты, которым подобные ресурсы не нужны, так и создаются через new.
1147 1881213
че за хуйню вы несете вместо жявы?

мимо-жявапидор
1148 1881235
>>881213
Подожди, сейчас накукарекаемся, и тогда опять будет 5 постов в день.
1149 1881251
пишите лучше кто где галерит на спринге?

мимо-жявапидор
1150 1881261
>>881251
Сбер
1151 1881413
1152 1881421
bump
1153 1881511
Речь была не о MIT, а о твоих постах.
Те, кто идёт в MIT - знают, куда и зачем они идут.
1154 1881547
>>881511
Кстати да, сомневаюсь, что тут даже студенты итмо или мфти будут сидеть. Все эти треды для вкатунов или вообще для людей без образования или для тех кто закончил говновуз по ит-специальности. И для таких людей соотношение польза/усилия+время от задрачивания мощного фундамета cs очень обычно весьма низкое.
1155 1881572
>>881547
Сам же ты здесь в чисто исследовательских целях, как я понимаю?
Диссертацию пишешь?
1156 1881582
>>881572
Да, а ты?
1157 1881629
В этом треде какой то шизик срет на тему не связаную с жявой
1158 1881632
>>881629
а че нет переката то?
1159 1881700
>>881632
Тогда шизиков будет уже толпа.
1160 1881802
Это вы все шизики без знания электросхемотехники!
image.png792 Кб, 450x450
1161 1881812
ЗНАТЬ СХЕМОТЕХНИКУ
@
НЕ ЗНАТЬ JAVA CARD
1162 1882026
Сервера приложений никуда не делись. Просто их роль теперь выполняют докеры и кубернетесы. Когда до всех это дойдёт, спринг бут сразу же выпилят и вернутся на ЕЕ.
1163 1882163
Допустим, я беру джаву.
Апп апп = нем Апп()
Потому беру спринг
АпКтх ктх = факториМетодДляКонтехт()
ктх.взятьБин(Апп.сласс)

Что произойдет?
1164 1882170
>>882163
нем Апп() произойдёт который будет лежать в помойке
1165 1882185
>>882163

В чем именно вопрос-то?

Все что создано "руками" спрингу неизвестно
1166 1882188
>>881251

На удаленОчке.
1167 1882190
>>882163
БинНеНайденЭксепшен.
Ты же не добавил этот Апп в ктх.
1168 1882236
>>880097
Вообще

>Код состояния HTTP 301 или Moved Permanently (с англ. — «Перемещено навсегда») — стандартный код ответа HTTP, получаемый в ответ от сервера в ситуации, когда запрошенный ресурс был на постоянной основе перемещён в новое месторасположение, и указывающий на то, что текущие ссылки, использующие данный URL, должны быть обновлены.



Но может быть проблема связанная с cors-политиками?
1169 1882290
Насколько фронтенд легче бэкэнда?
1170 1882299
у меня есть патч метод, который изменяет поле. я хочу, чтоб при повторном отправлении этого запроса, ничего не происходило.
я понимаю, что мне нужны куки, для определения сессии, но как мне проверить, что этот пользователь уже отправлял данный запрос?
1171 1882310
>>882290
Имхо, сложнее. См. >>858963

>>882299
Выдавать юзеру куку, означающую, что он уже вызывал этот метод, и если эта кука потом пришла на сервер, ничего не делать.
Но если ты предполагаешь, что пользователь дофига умный и эту куку будет удалять, а ты этого не хочешь, придётся где-нибудь на сервере явно хранить список юзеров, отправлявших запрос, хоть в памяти, хоть в БД. Может, можно придумать что-нибудь с @Cacheable.
1172 1882316
>>882299
Куки - не нужны.
Если нужно надёжно - то только флаг на сервере, причём, там же, в БД (поле), и в рамках той же транзакции.
Если не нужно надёжно - то совсем не нужно.

Но, само по себе требование выглядит довольно странно.
Если поле имеет отношение к пользователю - то тут и вопроса возникнуть не должно.
А если не имеет - то при чём тут это ограничение?
1173 1882319
>>882316

>что этот пользователь уже отправлял данный запрос?


Добавлю - а если он его три дня назад отправлял?
А если в прошлом году?
В этом дизайне чего-то не хватает, понимаешь?
1174 1882321
>>882316

> Если не нужно надёжно - то совсем не нужно.


Хороший аргумент против какого-нибудь NoSQL говна, лол
1175 1882336
>>882310
>>882316

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


тоже думал над этим, но если у меня много таких запросов? типа /review/{reviewId}/like - тут получается на каждый лайк комментарию придется добавлять куку

>Но, само по себе требование выглядит довольно странно.


это мой пет проект. я просто хочу сделать так, чтоб пользователь не мог накрутить дохуллион лайков\дизлайков просто тыкая на кнопку. Причем речь идет об неавторизованных пользователях других нет, да и не будет
1176 1882338
>>882336
Если боишься накруток, то забудь про куки. Тебе придётся создать таблицу лайков с id комментария и ip лайкнувшего.
1177 1882371
>>882290
Если ты маешься с выбором то выбирай бэк, потому что вкатишься во фронт, потом захочешь в бэк, а чтобы наоборот было не видел ни разу.
1178 1882428
>>882299
1. Нахуя тебе что то кроме гет и пост? Ладно делет или пут, но патч ни разу не видел в проектах.
2. Идемпотентность. Твой апи/метод апи/метод контролера/метод сервиса обязан им быть. Потому решай это внутри самого метода. Как? Это другой вопрос.
1179 1882429
>>882336
Почитай про серверсайд сессии.
Их можно даже к ресту прикрутить
1180 1882465
>>882371
Да не, я выбрал бэк уже. 3 месяца втыкаю
Прост интересно. Все же жужжат, что фронт для тупых.
Вот и интересно стало. Насколько фронт легче
1181 1882506
>>882465
Он не легче.
Трудность разная.
В одном случае трудность в глубину (бек), в другом - в ширину (фронт).

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

Правильный ответ - фуллстак.
1182 1882542
>>882506
На фулстаке проще получить фулсак, мне кажется)

Тот же Немчинский не верит в фулстак.

Да и я тоже. Сам знаешь сколько всяких горе-вкатывальщиков (типа меня). Нам бы одну стезю освоить нормально. Да и речь не только про трейни-джунов, как я понимаю.
1183 1882572
>>882542
Я не про вкат.
Для вката это несерьёзно, конечно.
Ну, и фуллстак я считаю возможным в случаях, если фронт не слишком сложный, и его не слишком много.
1184 1882586
>>881157
Спринг нужен был изначально не для управления ресурсами.
А для управления _зависимостями_ - dependency injection.
Ну а потом туда навалили ещё самого разного говна, на все случаи жизни.
1185 1882626
Обращаюсь ко вкатывыльщикам ебАным
Java Back-end

За сколько месяцев изучения (с нуля) получилось вкатиться?
Или не получилось.
Учу 3 месяца. Вроде как и есть синдром самозванца и вся хуйня, но мне кажется, что я реально говно) и такое ощущение, что год надо учить, чтобы норм ся чувствовать.
1186 1882643
>>882626
Лучше совмещать вкатывание с работой.
С какого-то уровня уже можно найти работу, хотя, ты, формально, ничего серьёзного ещё не умеешь.
Многое зависит от того, где ты живёшь, и есть ли там работа.
На удалёнке ньюфагу найти работу нереально, мне кажется.
1187 1882644
Maven или Gradle для спринга?
Groovy хорошо знаю, но и XML меня не смущает.
С аргументами.
Т.е., что теряешь в случае Gradle, например?
1188 1882676
>>882644

> что теряешь в случае Gradle


Может не быть специфичных плагинов, которые есть для мавена. Например https://spring.io/guides/gs/producing-web-service/

> Because Gradle does not have a JAXB plugin (yet), it involves an Ant task, which makes it a bit more complex than in Maven.

1189 1882685
>>882643

>> где ты живёшь


ДС же

>> Лучше совмещать вкатывание с работой.


Сугласен. Есть советы по стаЖЫРовкам?
1190 1882721
>>882685
У меня лично нет.
Теоретически - могло бы быть, но сейчас - нет.

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

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

Чтобы с тобой мог связаться человек, который не проплатил доступ к базе резюме на hh, они берут дорого, и ради одного человека-стажёра могут не дать денег в конторе.
Можно попробовать прямо email указать в тексте инфы в резюме, но, hh может запретить это, х.з., надо пробовать.
1191 1882730
>>882676
Ну, это не очень большая проблема, мне кажется.

Правильно ли я понимаю, что в случае Gradle ты можешь писать произвольный код для билда/деплоймента и вообще имеешь большую гибкость, а в случае Maven ограничен какими-то предопределёнными действиями, плагинами?
И важно ли это на практике?
EiigEFXcAAFu3t.jpg34 Кб, 1024x576
1192 1882754
>>882721

>> Могу посоветовать на деньги не смотреть вообще.


>> какие твои годы, лол.


30lvl-kun~ :D
От голода и правда не умру. Скопил немножк

>> Также, если будешь размещать резюме на hh, например, то:


Спасибо, Анонче
Прислушаюсь к советам
1193 1882758
>>882721

>И не рваться в крупные и известные компании.


почему?
1194 1882762
>>882721

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


Кста, а что писать в блоке "О себе" ?
Чет не вкуриваю.

Хобби им не нужны, навыки и опыта и так расписал в других разделах. Че им надо?
"Возбмимте мня пожалумста?"
Что ли?
1195 1882763
>>882754
Вкатун, расскажи как вкатываешься, с так понял ты прям с нуля?
Тоже вкатываюсь с нуля, но дается все очень тяжело, дай советов.
1196 1882776
>>882763

>> ты прям с нуля?


Да, можно и так сказать

Уволился с работы. Сижу уже 3 месяца втыкаю в java.
Максимально во всем себя ограничиваю(в плане развлечений), но все равно половина (если не больше) времени вылетает в трубу спасибо ебаному СДВГ.

Скачал дохуя всяких курсов по java с рутрекера. Смотрел основы. Знакомый кодер подкидывал задачки.
Первый месяц-полтора учил синтаксис, решал его задачки. Смотрел уроки.
Потом по рекомендации кодеров залез на пресловутый jrush, который многие ругают.
Дохуя воды и однотипных заданий, но зато есть структура какая/никакая. и можно "подшлифовать" основы.
Мне назначали, чтобы я прошел за 2 недели 20 лвлов, но это довольно трудно. Особенно, если проебываться.
В итоге, закончил все это за месяц (как раз под конец подписки).
Затем приступил к изучению коллекций более плотному.
Сейчас учу курсы по Spring, базы данных втыкаю (SQL и т.д).
Открываю наборы всяких "вопросов к собеседованиям" и учу ответы на них.
Параллельно все время смотрю всякие уроки на ютубе.
+Пытаюсь читать "Философию java"

Херово то, что многие кодеры (сужу по тем, которые делают видеоуроки и курсы) так-себе в искусстве объяснений.
Многие очень сухо/сложно/хуёжно объясняют. Прям толковых и понятных уроков оч мало чет.

Ниче необычного
1197 1882779
Где я могу почитать (книги, статьи) про то, где запускаются потоки? Допустим я создаю новый поток, он же у меня не на втором ядре процессора запустится? Потоки вообще одновременно работают, или работает один, прерывается, работает другой и так далее?
Я сейчас читаю "Concurrency на практике" и мне нравится, но также хотелось бы разобраться так же в более низкоуровневых (я не знаю как их правильно назвать) вещах.
1198 1882780
>>882779
Читай книги по операционным системам, там это описано. Ведь каждый программист обязан это всё знать, как здесь один шиз недавно писал.
1199 1882781
>>882780
Я вспоминал его, пока писал вопрос. Но, насколько я знаю, на разных языках программирования по разному, тут одними операционными системами не обойтись.
__
Вообще я собираюсь в ближайшее время прочитать несколько книг, в том числе и по ОС что-нибудь, так эти пробелы в знаниях закрою.
1200 1882782
>>882758
Ты же хочешь найти работу (стажировку) почти нихуя не умея и не имея?
Вот поэтому.

>>882762
У тебя нет знаний и опыта.
Поэтому, нанимателю (нормальному) интересно знать, что ты за хуй такой по-жизни. И стоит ли тратить на тебя время.
Поэтому, надо рассказать, что тебе интересно, и на что у тебя есть мотивация.

>>882779
Как раз на втором ядре и запустится, скорее всего.
За это отвечает jvm и операционная система, и они будут стараться раскидать потоки по ядрам.
Возьми да проверь - добавляй по одному потоку, и смотри загрузку ядер.
1201 1882797
>>882782

>Ты же хочешь найти работу (стажировку) почти нихуя не умея и не имея?


>Вот поэтому.


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

>когда они выполняться.


когда их согласуют*
фикс
1203 1882802
>>882721

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


вот кстати поддвачну. у нас открыто постоянно в течени года три-пять вакансий, так эти пидоры прислали счет на 240 тыс на следующий год, совсем охуели.
bridge.jpg1,4 Мб, 3840x2160
1204 1882821
>>842154 (OP)
Я правильно понимаю, что в простейшем варианте тред общается с остальной программой через какой либо переданный в него при создании объект.
То есть, если у меня есть общая для всех структура с данными, в которую треды должны писать - я должен передать ее в каждый тред при создании?
1205 1882921
Существует ли книга или сайт, где подробно описана теория веб разработки? Чтобы там с нуля как для даунов было описано что такое CRUD, REST, GET, POST и т.д.
1206 1882950
>>882821
Это очень по-разному. Зависит от задачи. Почитай книжку.
То, что ты описал (одна структура на все потоки) - это наиболее мозгоёбный вариант, где все прелести конкурентного доступа вылезут во всей красе.

Также, надо разделять параллелизм и конкурентность - это разные вещи, но, и то и то делается через потоки.
1207 1882955
>>882950
Какую книжку читать то?
1208 1882956
>>882921
CRUD - это просто "создание-чтение-изменение-удаление" каких-то данных.
Любых. Любым способом.
Остальное - в гугле. И в любой книге для ньюфагов по теме веб-разработки на интересных тебе технологиях.
1209 1882963
>>882955
Java concurrency in practice.
Есть и на русском. Качество перевода - хз, смотри отзывы на озоне.
Также см. https://medium.com/javarevisited/6-multithreading-and-concurrency-books-every-java-programmer-should-read-b6a08d2aae54
И гугол по словам java thread concurrency parallel

Вообще, это очень глубокая тема, и перед тем, как в неё нырять, неплохо бы научиться находить нужную инфу в интернетах самостоятельно. И желательно по-английски.
1210 1882975
>>882963
Да у меня вроде нет с этим проблем, просто кодерки переоценивают самостоятельную гуглежку и недоценивают сбор персональных мнений.
А concurrency in practice под старую версию написана, думал появились аналоги какие то. Ну да ладно.
1211 1883105
>>882763
А ты как катишься?
Расскажи
1212 1883302
>>882781
Из за кроссплатформенности то как запускается тред решает jvm, если зайдешь в thread.start там будет нативный метод start0 реализацию скидываю:
http://hg.openjdk.java.net/jdk10/jdk10/hotspot/file/tip/src/share/vm/prims/jvm.cpp
искать метод JVM_StartThread
Скинул просто что бы ты знал где искать. Если ты изучаешь concurrent с нуля, лучше не лезь туда, лучше всякие валатайлы с атомиками посмотри. Если уже все знаешь то лезь куда хочешь дело твое
1213 1883449
>>882921
Вроде на Хекслете что-то было. В статьях на джавараше тоже иногда бывает подобное.
1214 1883493
>>883105
Я сам ручник qa, хочу в автоматизацию влезть через годик.
Читаю хедфёрст книжку по джаве, параллельно делаю задачки, сижу на javarush. Плюс видеоуроки смотрю, когда не понятно что-то.
Пока у меня нет вообще представления что такое программирование на java, задачки я вроде понимаю, стараюсь разобраться в каждом методе, классе, что это и почему именно так и здесь используется, что вгоняет меня в еще большие дебри.
Пока я верю в то, что если я буду уделать обучению java регулярно время, то через полгода, год, я точно продвинусь и смогу найти работу джуном автоматизатором.
1215 1883548
>>883493
Сначала мне тоже дохуя чего было непонятно. Это обычное дело.
Вские конструкции типа:
Huila huila = new Huila();
Вообще были не ясны и прочее.
Сейчас я пришел к тому, что если чет непонятно - попытайся разобраться, но прям до победного не всегда есть смысл упарываться.
Просто двигайся дальше и возвращайся периодически к пробелам.
Увидишь, как они затираются постепенно
1216 1883554
Java-куны, вопрос таков:

Чем отличается собеседование на джуна и на стажера?
Понимаю, что в каждой команде могут все по-своему воспринимать и порядки налаживать.
Но в целом. Какие требования для стажера?

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

Можете тот самый "минимум" сформулировать?
1217 1883577
>>883554
От стажёра ждут знания кора, поверхностного знания стека и умения быстро обучаться. От джуна уже ожидают, что он может делать реальную работу. Грань, конечно, размытая.
1218 1883586
>>883577
А кроме кора?
Всякие БД, maven/gradle, git, Spring?
Паттерны-хуятерны?
1219 1883601
>>883586
Это, собственно, и есть стек. Конечно, надо знать sql, мавен, git и мочь сделать простейший круд на спринге. Правда, с таким уровнем могут и джуном взять.
Наверное, разница как раз в архитектуре, паттернах и бестпрактисах всяких, их от стажёра ждать не будут.
1220 1884299
сап, двощ
вопрос вероятно не по теме, но так как не нашел куда его пристроить, спрошу здесь.
вкрации, есть как говорится два оффера из двух пикрелейтед, внезапно прилетевших одновременно
https://career.habr.com/companies/iteco
https://career.habr.com/companies/digitalleague
условия оплаты и работы практически идентичны, пилить микросервисный бэкэнд на популярном ныне стеке spring boot, kafka, docker/openshift.
к слову, доселе не работал ни с чем из вышеперечисленного, последние лет шесть неторопливо пилил томкатный монолит на спринге, но 2020 простимулировал финансовые поиски нового и неизведанного, и благодаря неплохому сиви и двухнедельному интенсиву по прохождению интервью, получил два оффера из сабжевых аутстаффинговых контор. в первом некий проект для газпромбанка, во втором для сбера.
что выбрать? в некотором замешательстве, поскольку желательно определиться в ближайшее время.
может быть кто то работал в той или другой конторе и знаком со внутренней кухней. или имеет некие представления.
буду крайне признателен за обратную связь!
1221 1884352
>>884299
типикал интеграторы
пофигу куда идти кмк
для новичка самый ок, хорошенько поваришься в кухне и поймешь что к чему, а потом уже на что-то более денежное и интересное перекатишься
1222 1884430
>>883601
А на джава джуна вышку от кандидата ждут? А то на стажера мне везде гуляй сказали. 20лвл
1223 1884470
>>884430
Странно чет

ты же понимаешь, что Джун >> Стажера?
По их логике на джуна не возьмут тож
1224 1884487
>>884470
Не странно, все стажировки в дс куда писал это только для действующих студентов доступны. Правда видел еще какие-то стажировки после курсов, но я сам учу все.
Хочу узнать у анонов кто работает, берут ли к ним джунов без вышки.
1225 1884546
>>884352

>последние лет шесть неторопливо пилил томкатный монолит на спринге


>для новичка самый ок


лол
1226 1884590
>>884487

>> берут ли к ним джунов без вышки.


Да везде своя кухня-кукухня, анон

Туда, куда ты попал - бзик по вышкам, видимо.
Во многие конторы берут без профильной вышки, куда-то хотят именно профильную. Каждый правит своим болотом как хочет.
Засылай дальше резюме и не останавливайся. В один момент пробьешь дно эту стену вакансий
1227 1884615
>>884546
Для микросервисов новичок. Там другое мышление нужно.
1228 1884691
>>884299

>spring boot, kafka,


Не секрет, какого рода задачи?
И почему именно кафка а не кролик, например?
1229 1884747
>>884546

> неторопливо пилил томкатный монолит на спринге


ты не очень представляешь что такое работа в интеграторе видимо

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

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

спринг? а вот тебе легаси проект на ежб да еще и с седьмой жавой. а вот тебе guice, а вот тебе JSF, а вот тебе стратс, а тут спрингбут, а тут ваадин, а вот GWT, а вот вообще адова опенцмс.

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

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

> неторопливо


забудь это слово, в интеграторах сроки горят перманентно.
1230 1884773
есть серверный сокет, как с клиента передать ему jsonobject?
1231 1884807
>>884773
Как-то так.

import com.fasterxml.jackson.databind.ObjectMapper;
ObjectMapper objectMapper = new ObjectMapper();
Socket sock = new Socket("example.com", 1234);
sock.getOutputStream().write(objectMapper.writeValueAsString(jsonobject).getBytes());
sock.close();
1232 1884843
Насколько важно сразу научиться использовать гоф-паттерны?
Решаю задачки у джетбрейнса и большие задачи(на 300-500 строчек) решаю тупо в 1-2 класса. А потом смотрю чужие решения и у залайканых людей там раскидано по 10 классам, с применением паттернов. А я даже не очень понимаю, как применять даже те паттерны, которые учил. Тут мне надолго придется засесть наверно.
Стоит этому внимание уделить побольше, пока я кор не весь еще изучил?
1233 1884906
>>883548
Груви для тебя
1234 1884910
>>884807
Ну и хуйня.
Надо запилить дерево классов с фабрикой клиентов фейна.
1235 1884966
Какая же красота эти ant-таски. Никакой ебли с assembly плагином. Единственный минус - автодополнения для параметров и имен тасок нет.
1236 1885009
>>884966
Так потому что ант создан по подобию тру-юниксоидного cmake
1237 1885170
Анчоусы, захотелось погладить жабу
Для начала думаю запилить самый обычный рест
Вроде сам жабакод понимаю /классы, наследования, декораторы и т.п./, но от всего окружающего глаза начинают на лоб лезть
Чому у каждого файла в проекте путь из 5+ вложенных папок? Что за xmlы, почему они используются для многих вещей, но выглядят как непонятно сгенерированная хуйня? Что за сервлеты? Без томката (это какая-то надстройка над обычный апач, чтобы крутить жаву?) никак? Гредол или мавен? Они ставят одни и те же пакеты из тех же реп? В чём разница?
1238 1885187
>>884966
ты просто еще не работал с ант скриптами где овер 1000 строк
1239 1885194
>>884843
Бамп вопросу.
1240 1885195
>>885194
теоретическая высосанная из пальца хуита как по мне. все эти паттерны они сами самой начинают получаться когда опыта набираешься. а потом оказывается что кто-то их где-то описал уже. к тому же в 95% случаев можно сделать проще, чем описывают шаблоны.

в любом случае новичку не стоит на них заморачиваться.
1241 1885196
>>885194
Мое мнение не стоит, можешь их прочитать но использовать не советую, все эти паттерны рассчитаны на максимальную масштабируемость, которая нужна в 2 из 10 случаев. Во всех остальных случаев ты создаешь дохера классов и интерфейсов, которые никогда не будут использоваться, а будущим программистам в этой херне разбираться, а скорее всего переписывать.
1242 1885334
>>885170

> Чому у каждого файла в проекте путь из 5+ вложенных папок?


эти папки формируют полное имя класса (package.ClassName), которое должно быть уникально для всех классов загруженных в jvm

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


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

> Что за сервлеты? Без томката (это какая-то надстройка над обычный апач, чтобы крутить жаву?) никак?


какая-то слишком низкоуровневая фигня, до сих пор не знаю как там и че, но спринг на них работает да

> Гредол или мавен?


пофигу в целом, но гредл лучше читается

> Они ставят одни и те же пакеты из тех же реп?


репозитории ты сам указываешь

> В чём разница?


для более детальных познаний гугол, бро
1243 1885400
Томкат это плагин для нгинха вроде.
мимопхпшник
1244 1885404
У меня через пару дней собеседование на говнокодера Джуна/Стажера (бэк)

Накидайте плиз хуев за щеку вопросов по джаве
1245 1885409
>>885404
Методы класса Object наизусть.
1246 1885410
>>885404
Разница между абстрактным классом и интерфейсом.
Чё по hashCode() и equals()
1247 1885412
>>885400
Тогда пхп - это плагин для апача.
1248 1885415
>>885410

>Разница между абстрактным классом и интерфейсом.


Кто вообще сейчас юзает абстрактные классы?
1249 1885418
>>885415
Толсто. Скажи это собеседующему, он оценит.
1250 1885552
>>885415
Ну ты сравнил проектирование объекта по оопшной иерархии с тайпчекающим сахаром
1251 1885580
>>885404
>>885409
>>885410

Спасибо, есть!
Давайте еще
1252 1885591
>>885580
Ну ты не гуглил йажа интервью квештонс никогда чтоли? Тонны вопросов в гугле лежат.
1253 1885604
>>885580
Можно ли переопределить статик метод базового класса как нестатик. Можно ли наоборот.
1254 1885639
как правильно указать относительный путь к файлу без привязки к операционной системе? файл лежит в main\resourcer?
1255 1885644
>>885639
System.getProperty("file.separator")
Но / работает на шинде и так.

> main\resourcer?


Если только для чтения, юзай спринговый ClassPathResource или родной getClass().getResourceAsStream().
1256 1885780
>>884352
благодарю, в общем то то же пришел к тому что отличия минимальны

>>884615
соглашусь, тема с микросервисами прошла мимо, и сейчас погружаясь в теорию прифигеваю насколько всё изменилось

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

>>884747
ну есть некоторые представления, но до этого как-то да, старался избегать подобной многопроектности. с другой стороны хотелось вкатиться в финтех, и насколько я понял большинство вакансий в этой области от интеграторов
1257 1885788
Джаба-куны,
А вы часто пользуетесь Num-Pad'ом?

Я вот собрался клаву новую брать. Подумал:
В жопу TLK, нужно полноразмерную, хуё-мое.
А потом вспомнил, что достаточно долго юзал макбук, на котором нет нампадыча и все збс было. И подумал, что в рот его ебать тот нампад.
Без home/end не оч комфортно будет, а вот намыч мб и отрезать можно. В крайнем случае, куплю отдельный модуль нам-пад.
Что скажете?
1258 1885790
>>885788
Когда пишу код, не юзаю, клавиши с обычными цифрами ближе. В остальное время иногда юзаю, но не принципиально, могу и без него.
1259 1885795
>>885788
Не страдай хуйнёй, бери стандартную полноразмерную клавиатуру с классическим расположением клавиш.
Если можешь себе позволить и не боишься шуметь по ночам - бери хорошую механику.

Если будешь брать механику - бери тип клавиш Cherry MX Brown.
Бывают ещё Red и Blue.
Лучше, конечно, прийти в геймерский магазин и потыкать самому в разное.
Но, Red - без тактильного ощущения срабатывания, а у Blue - тактильное ощущение слишком сильное, и они шумнее.
Поэтому, для набора текста народ берёт, в основном, Brown.

И это гуглится.
1260 1885800
>>885795
Та у меня есть механика на красных.
Хочу новую
Думал синие взять и тарахтеть ебать как, но чет отговаривают. Говорят, что заебусь в край.
А вообще, разговор был не про свитчи, а про формфактор.
1261 1885816
>>885800
Красные - хуйня. Это для игр.
Я с дуру купил пару лет назад, за хуевы деньги, и так и лежит в шкафу.
Синие тоже не надо.

Форм-фактор - только полноразмерная, с нумпадом.
Если есть деньги, и хочешь низкопрофильную - Logitech MX keys.
По идее - это калька с новой эппловской полноразмерной клавиатуры. Я сам не пробовал, но, народ очень хвалит.

Если это (по ощущениям) то же, что клавиатура макбука про, то должно быть очень хорошо. Думаю себе взять, но, пока не нашёл, где попробовать живьём.
1262 1885884
А какую мышку посоветуете для джавы?
1263 1885919
>>885884
Подъебнуть решил?

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

И пишет он обычно на ноде-жс и реакте (10 лет назад это были рельсы и руби).

Так вот, джаваёбы - люди серьёзные. Они это презирают. И используют мониторы 32 дюйма и полноразмерные клавиатуры с металлическим основанием. Чтобы этой клавиатурой можно было переебать какому-нибудь хипстеру так, чтобы из него всё смузи вылилось нахуй.

И да, мышь - Logitech MX Master 3.
1264 1885930
>>885919
Охуенно расписал.
1265 1885951
>>885404

Эй, ДвачОверфлоу

А про тесты JUnit'ы могут спрашивать на собесе стажера/жуна?
1266 1885986
>>885951
Ну спроси, даже не знает, если все остальное норм, то скажешь что 100% покрытие на каждый класс обязан делать и все, научится, там особо ума не надо. Заебывает только их писать, но без них хз как, только с божьей помощью
1267 1885987
>>885986

>даже если не знает

2020-12-2110-34-22.png278 Кб, 595x477
1268 1885988
81Gepr-sTpL.ACSX466.jpg14 Кб, 466x363
1269 1885989
>>885788

> А вы часто пользуетесь Num-Pad'ом?



никогда

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

на эти кнопки настроить все самый частые кнопки - ентер, бекспейс, home, end, pgup, pgdown, n т.д. как только привыкнешь поразишься насколько это упрощает написание кода (и не только).
1270 1886008
>>885989
Я в какой-то момент заставил себя научиться кодить только с клавой, очень сильно увеличивает кпд, в редких случаях конечно без мыши не обойтись, но в целом она не нужна
1271 1886009
>>885989
Ты левой рукой код пишешь, в основном?
1272 1886015
>>885884
>>885989
Добавлю ещё про мышь - обязательно колесо прокрутки должно быть тяжёлым металлическим маховиком, со свободным вращением, как в логитековских MX.
Чтобы можно было раз крутануть, и оно по инерции крутилось, пока не остановишь.
Это единственное, что принципиально в мыши.
И сама мышь, соответственно, должна быть достаточно массивной (но не тяжёлой, конечно).
1273 1886039
>>886015
Настрой акселерацию при скроле
1274 1886056
>>886039
Нахуя, когда у меня есть мышь с маховиком, и я настраиваю акселерацию, крутя маховик пальцем, так как мне удобно именно в
этот момент? Это совершенно другой экспириенс.

Дети цифровой эры не осознают всей прелести аналоговых контролов, лол.
1275 1886066
>>886056
Когда тебя настолько огромные классы, что тебе приходится покупать мышку с маховиком
1276 1886106
>>886008
>>886009
ну кодинг это не только текст набирать
1277 1886119
Господа, есть один проект с ебанутыми сущностями.

У каждой сущности есть OneToMany List<Description>. Учитывая, что сущностей тысяча, а у этих сущностей может быть хуева куча описаний, не совсем хочется создавать отдельную таблицу descriptions, на которую будут ссылаться все остальные сущности. Как я могу создать таблицу xyita_table и таблицу xyita_descriptions_table, не создавая таблицу descriptions? Вариант с созданием отдельной сущности XyitaDescription на каждую сущность, очевидно, отпадает
1278 1886143
>>886015
последние лет 7 пользуюсь microsoft arc touch
недавно сломалась, пробовал перейти на новую версию, но не смог пользоваться новым скроллом
как по мне в лучшая реализация скролла, колесные у меня регулярно ломались, а здесь он хоть и сенсорный, но с эмуляцией щелчков и акселерация настроена оптимально. хотя это возможно привычки
1279 1886146
>>886143

>microsoft arc touch


Не пробовал, но, идея понятна.

Что-то среднее между эппловской мышью с тачем и эпловским же тачпадом. Да, такие вещи работают, и управление акселерацией весьма годное. По-сути - симуляция аналогового управления.
1280 1886165
>>886119

> не совсем хочется создавать отдельную таблицу descriptions, на которую будут ссылаться все остальные сущности.


почему? это единственное нормальное решение тут
1281 1886171
>>886165
Так она станет огромной пиздец. На каждую новую запись в БД появляется n записей в таблице описаний. Там с размеров потом нормально охуеть можно будет, кмк
1282 1886174
>>886171

> Так она станет огромной пиздец.


ну и что? это во первых.
во вторых - огромной, это сколько в террабайтах?
1283 1886257
>>886171
короче создавай отдельную таблицу дескрипшн и не еби себе мозги.

преждевременная оптимизация корень всех зол же. ты скорее всего не осознаешь какие размеры могут тянуть современные СУБД.

> Учитывая, что сущностей тысяча


т.е. даже если у каждого объекта тысяча описаний это всего лишь один миллион срок в БД. это вообще считай что почти нихуя.

алсо, даже если бы у тебя там были бы миллиарды строк то все равно нужно было бы создавать одну сущность а то что ты хочешь сделать, а именно создание нескольких файлов для хранения данных и индексов нужно делать средствами СУБД (например загугли table partitioning for postgres). это чисто админская задача и жава слой туда вообще не должен лезть. ну и повторяю, пока твои таблицы не достигли размера хотя бы в сотню гигабайт вообще забудь про это.
1284 1886294
>>886257
Понял, анон, спасибо
1285 1886568
Есть несколько енамов, у каждого есть строкове поле, которое называется по разному и переопределено для каждого элемента енама. В каждом енаме также есть статический метод getByИмяПоля, который итерируется по всем элементам енама, сравнивает значение поля с аргументом и возвращает один из элементов. Вопрос, можно ли это как-то переписать, чтобы не дублировать код?
image.png30 Кб, 912x572
1286 1886589
>>886568

> называется по разному


Только один способ - рефлексия. На продакшене лучше так не делать.
1287 1886600
>>886568
>>886589
Не надо рефлексировать, лол.
Надо вынести метод для поиска в утилитный класс (модуль, строго говоря, т.к. метод static).
И сделать общий интерфейс у этих енумов.
https://pastebin.com/rwMi5env
1288 1886601
>>886589

>На продакшене лучше так не делать.


отрефатори чтобы вместо строки был саплаер какой-нибудь и будет ок
1289 1886616
>>886600
Ну в принципе норм. Еще бы toString у всех этих классов переопределить одинаково и аннотацию @JsonValue повесить.
1290 1886648
Кто нибудь юзал https://immutables.github.io/ ?
Как они по сравнению с ломбоком?
1291 1886653
>>886600
Хотя нашел другой вариант, он мне больше нравится. Жаль все-таки полноценных (хотя бы даже через ломбок) трейтов нет.
https://github.com/alexradzin/enumus/blob/master/README.md#Customized-`valueOf()`
1292 1886662
>>886648
Ебать, нам и один ломбок не нужен, а тут новые ломбоки пилят.
Вообще, надо описывать дата-классы в виде XSD и генерить через jaxb-maven-plugin, а иммутабельность на самом деле не нужна.
1293 1886669
>>886648
Зачем эта херовина нужна?
1294 1886826
>>886669
ну типа чтобы гетеры и сеттеры не писать.

тащем то высосанная из пальца херня, сложно представить ситуацию где применение этой библиотеки было бы оправдано и сильно упростило бы разработку
1295 1886837
>>886653
все эти либы они от хуевого дизайна кода. если у вас началась ебля с енумами то значит вам нужны не емумы а нормальные датабины/ентити и дао/билдеры для них.
1296 1887103
Есть шансы найти работу, если я хорошо знаю сервлеты, но не знаю спринг?
1297 1887109
>>887103
Нет, учи спринг.
1298 1887117
Анон, занимаюсь фронтом. Хочу перекатиться в бекенд.
Выбираю между шарпом и джавой для бекенда в Украине.
Цель не выявить лучший, а более перспективный по времязатраности/зп/месту
1299 1887152
>>886662

>Вообще, надо описывать дата-классы в виде XSD и генерить через jaxb-maven-plugin


So enterprise, such EJB.

>>886826

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


А также equals/hashCode/toString/builder и проверки на обязательные поля. Когда у тебя два десятка полей замучаешься это все перегенерировать на каждое добавленное поле.
1300 1887155
>>887103
стажером может и возьмут где-нибудь
Но "знаю сервлеты" звучит дико, такого лучше на собеседовании никому не говорить. По крайней мере если ты сходу не можешь сказать, чем, например servlet-api третьей версии от второй отличается, а третья от четвертой, с пониманием механизмов реализации. Иначе мокнут тебя в говно с головой сразу же.
1301 1887157
>>887152

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


хуита же, любая нормальная иде все это генерирует по шаблонам сама.
1302 1887161
>>887155

> чем, например servlet-api третьей версии от второй отличается, а третья от четвертой, с пониманием механизмов реализации


Со второй версией не работал, за остальные поясню без проблем, включая асинхронную/неблокирующую работу с body stream.
Ты кстати забыл пятую, которая jakarta.
1303 1887163
>>886837
Не от дизайна кода, а от дизайна языка.
image.png22 Кб, 442x232
1304 1887166
>>886837
>>887163
>>886568
>>886589
Приходите к нам в Скалу
1305 1887174
>>887166
Или коКОКОтлин:
enum class Admins {
Makaka, Pedalik
}
println(Admins.valueOf("Makaka"))
println(Admins.valueOf("Pedalik"))
println(try {
Admins.valueOf("Anon")
} catch (e: Exception) {
"not admin!"
})
1306 1887187
>>887117
Ну судя по dou одна хуйня. Не уверен, но в шарпе вроде не такой зоопарк технологий что по мне так плюс, но я могу ошибаться.
1307 1887202
>>887166
>>887174
если в языке можно стрелять себе в ногу, это не значит это нужно делать.
1308 1887204
>>887161
в чем тогда проблема мануал для спринга прочитать? вкатиться можно за один вечер.
1309 1887223
>>887202
Где ты стрельбу в ногу увидел, болезный?
1310 1887251
>>887223
использование енумов вместо pojo или entity - это стрельба по ногам, чреватая архитектураными проблемами
1311 1887261
>>887251
А, ну в джаве да.
Однако енумы в скале это другое, и они вполне идиоматичны
1312 1887263
>>887174
И чем ваша параша от чистой явы оличается?

enum Admins {
Makaka, Pedalik
}

public static void main(String[] array) throws Exception {
System.out.println(Admins.valueOf("Makaka"));
System.out.println(Admins.valueOf("Pedalik"));
System.out.println(Code.runQuietly(() -> Admins.valueOf("Anon"), () -> "not admin!"));
}
1313 1887275
>>887263
Наша параша отличается например тем, что:
1) енумы могут содержать вложенные поля
2) hashcode/equals будут работать примерно как в ломбоке, т.е. сравнивая поля
3) есть паттерн матчинг (свитч на стероидах)
1314 1887287
>>887263

> Code.runQuietly


Не понял
1315 1887295
>>887287
стандартный приемчик же

public static <T> T runQuietly(CodeSupplier<T> runnable, Supplier<T> defaultObject) {
try {
return runnable.get();
} catch (Exception t) {
return defaultObject.get();
}
}

@FunctionalInterface
public interface CodeSupplier<T> {
T get() throws Exception;
}
1316 1887325
>>887295
Ого
1317 1887330
Сейчас учу основы, дошёл до функциональной хуеты и лямбда-еботни. Я ебал, как же СЛОЖНА!!! Я дегенерат или так у всех?
1318 1887339
>>887330
Это считай другая парадигма, к ней придётся привыкать, используется эта наркомания часто.
1319 1887368
>>887157
1. Сгенерировать конструктор
2. Сгенерировать гетер/сетер
3. Сгенерировать equals/hashCode
4. Сгенерировать toString
5. Сгенерировать builder
6. Добавить проверку обязательного поля.

Это все не сложно, но при частых добавлениях заебывает и какие-то вещи, типа toString забыть, а потом в логах не увидеть нужное поле история из жизни.
1320 1887374
>>887368
идея все перечисленное делает комбинацией из трех клавиш
1321 1887396
>>887374
Не пизди, билдеры идея вообще не генерирует - нужен плагин. И проверку на не нул тоже не генерирует.
1322 1887406
>>887396
Ты не шаришь просто.
Пришёл утром на работку, попил кофейка, попиздел с коллегами.
Сходил на дейли, рассказал чем занимался разумеется некоторые вещи умолчал, ввернул пару быдловатых шутеечек, тестировщицы смеются и улыбаются.
Сел за рабочую пеку, читаешь свежие засмеялся-проиграл треды на одном 27" 4K-мониторе, в то время как на другом смотришь какие-нибудь ролики с ютуба.
А вот уже и обед! Идёте с коллегами в ближайшее кафе, где обедаете за счёт работодателя.
Вернувшись с обеда, идёшь к кулеру попиздеть с коллегами и налить кофейка, после чего возвращаешься к пеке и неторопливо запускаешь идею.
Пока она грузится, смотришь вебм-треды на дваче.
Загрузилась.
Создаёшь новый класс. Генеришь идеей всё, что можно сгенерить. Неплохо так, под соточку строк вышло, можно и закоммитить.
После чего открываешь PR коллеги в гитлабе, пишешь LGTM не глядя на код, и идёшь домой
1323 1887412
Сколько разговоров вокруг геттеров для DTO. Мне бы такие проблема, а то я трачу на всё это где-то полпроцента времени, а всё остальное время ебусь с бизнес-логикой.
EBanet 1324 1887515
Два вопроса
1.тут sql-ex советуют для отработки написания SQL. Чет я глянул, сперва там легко шло, но потом заданиях на 30-х че-то кудато не в ту степь пошло (какие-то запросы из подзапросов в подзапросах . Стоит ли так упарываться чтоб все это понять, чтоб взяли макакой?
Книжка у них там какая-то ебанутая, не структурированная, может посоветуете что-нибудь как все это проще разобрать?
2. Нужно ли знание реактивного стека Спринга чтоб взяли макакой? Я вроде как наконец начал осваивать дзен Спринга обычного, сервлетного, пока не до конца конечно понимаю concurrency, но тем не менее. Но чет почитал про реактивный стэк и сразу уныние наплыло.
1325 1887517
>>887515
ну и к первому дополнение напишу - разве реально в реальности макаки на JPQL/HQL/jpa/spring data пишут такую хуйню как предлагает sql-ex?
1326 1887518
>>887515
1. Смысла нет, но джойны и подзапросы знать нужно.
2. Везде юзают разные фичи спринга, но реактивность редко, во всяком случае сейчас.
1327 1887519
>>887517
sql-ex на 2-3 уровнях сложности. Да да, я уже на 2 уровне сложности обосрался. как мне все это подтянуть, есть мнения?
1328 1887521
>>887518
1.Ну джоины +- понимаю, подзапросы тоже. Всеравно, есть че посоветовать дополнительно? Почитать там например, желательно с задачами? С меня нихуя разумеется, тебе плюс в карму анон.
2.Т.е. получается в идеале лучше знать канкарренси и сервлет стек?
1329 1887527
Если пользователь не может никак обратиться к несуществующему элементу (например, на фронте выпадающий список, кроме значений которого выбрать ничего нельзя), нужно ли в беке все равно описывать обработку обращения к несуществующему элементу?
1330 1887529
>>887521
1. Про задачи хз, что-нибудь может быть в шапке БД-треда. По мне так для вката в джаву куда важнее опыт применения SQL-запросов в своих проектах, чем задрачивание задач в духе "вывести второе минимальное значение больше указанного в каждой группе с применением оконных функций" или "сделать умножение матриц одним запросом SELECT". Написать пару-тройку пет-проектов с использованием только SQL, вроде социалочек или бложиков, довести схемы до третьей нормальной формы, пару запросов для сборка какой-нибудь простой статистики, и всё, хватит.
2. Не знаю, что за "канкарренси и сервлет стек", в спрингах надо в первую очередь знать MVC, Data и тестики. Голые сервлеты особо не юзаются, канкарренси делается через какие-нибудь ExecutorService и @Async.
1331 1887530
>>887527
если SPA с апи то да, если SRA то зависит от фронта, наверное
1332 1887531
>>887527
Конечно, вдруг кто хакнуть захочет, лол
1333 1887533
>>887529
1.голый SQL что имеется под ним? JQPL + Spring JDBC сойдет? К примеру если я напишу парочку проектов на JPQL и еще допустим один с ORM, такое прокатит, как думаешь?
2. вот то что мне нужно было, анон.
1334 1887537
>>887533
>>887529
забыл сказать спасибо по 2 вопросу, неблагодарный я
2020-12-2222-25-20.png16 Кб, 667x216
1335 1887542
>>887517
в реальности макаки вместо SQL пишу пикрелейтед.
это, если кто не понял, реализация запроса

select * from AUTHOR a, BOOKS b where b.author_id=a.id and b.title like '%hibernate%'

так что всякие recursive join'ы ХУЙНЯ по сравнению с их реализацией в JPA.

А так то SQL нужно знать на отлично. благо он крайне прост по сравнению со стеком явы. даже его процедурные расширения типа PL/SQL и pgsql полная хуйня по сравнению с самой жавой.

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

вообще реляционные базы жава девелопер должен знать на отлично, потому что почти всегда его работа связана с ними. а когда он их не знает начинается адовый пиздец типа как в примере выше когда кодер собирался тысячу таблиц создавать потому что боялся что база не справится с его тысячью объектами.
1336 1887543
>>887533
JPQL - это уже ORM, под голым SQL подразумеваются нативные запросы, которые. например, можно выполнять в консольке СУБД. В проекте вместо консольки будет NamedParameterJdbcTemplate. С ORM, конечно, тоже нужно разобраться.
1337 1887544
>>887406

> Пришёл утром на работку


нахуй и в пизду.
10 лет уже в офисе не был и надеюсь никогда больше не оказаться
1338 1887546
>>887542

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


а ссылочку можно?
1339 1887551
>>887546
гугли
оракловая документация в свободном доступе и ее дохуища

https://docs.oracle.com/cd/E11882_01/nav/portal_booklist.htm

для вкатывающихся наверное надо начать с этого
https://docs.oracle.com/cd/E11882_01/server.112/e40540/toc.htm
1340 1887552
>>887551
че то я прям какое-то говно мамонта откопал, вот поновее
https://docs.oracle.com/en/database/oracle/oracle-database/19/index.html
1341 1887554
>>887551
это все конечно хорошо, но че-то мне не видно чтоб там сам SQL хоть как-то рассматривался больше чем пары страниц, а специфику бд конкретной я и сам бы нашел((
1343 1887565
>>887561
так это уже почти как спецификация получается, я пока ее читать буду, забуду что в начале было.
Там ни практики нет, ничего. Всеравно джавадоку по спрингу читать а не референс гайд, хорошо наверное. Но не думаю что это то что мне нужно.
1344 1887568
>>887565
у оракла есть мануалы и для таких ленивых овощей как ты
https://docs.oracle.com/en/database/oracle/oracle-database/19/tdddg/2-day-developers-guide.pdf

вот конкретный гайд как вкатиться за два дня. так и называется - "как вкатится в оракл за два дня если я ленивое хуйло".

гугли ебта.
1345 1887578
>>887568
полистал оглавление, про сами запросы там всего несколько страниц, даже про джоины толком нет ничего.
Это гайд о том как вкатиться в специфику базы, ддльки там, судя по всему адмирирование, pl/sql. Для общего развития это норм, но накой мне все это сейчас
Короче лучше поищу книги на рутрекере
1346 1887580
>>887568
в любом случае спс, буду знать где что у оракла все это есть, в принципе я и планировал на оракл пересесть с mysql который пока в тестовом режиме стоит
1347 1887745
>>887568
Норм. Может тоже почитаю. Хотя 90% работы с постгресом, ну и немного мсскл + ликвибейс для миграций.
Мимо-жявапидор
1348 1887837
>>885604
Нет и нет?
1349 1888212
пытаюсь получить путь у файлу.
почему вот так вот работает
(getClass().getResource("/text.txt").getPath())
а вот так вот
(getClass().getResource( File.separator + "text.txt").getPath())
не работает.
как получить слэш просто, а не обратный?
1350 1888252
>>888212

> как получить слэш просто, а не обратный?


"/". Зачем тебе вообще Филе.сепаратор?
1351 1888266
>>888252
интересует, на всех ОС будет работать "/" ?
1352 1888270
>>888266
Должно на всех.
https://docs.oracle.com/javase/8/docs/technotes/guides/lang/resources.html

> The name of a resource is independent of the Java implementation; in particular, the path separator is always a slash (/).

1353 1888286
>>888270
спасибо
1354 1888601
>>888286
Я б на твоем месте юзал файлсепаратор...
1355 1888606
>>888601
файлсепаратор для файлов, а внутри жарника/варника используется /
image.png324 Кб, 513x702
1356 1888833
КТО ГЭП В 2021?
усталотсистемы.jpg57 Кб, 437x604
1357 1889022
1358 1889102
>>885404

Эй, красавчики

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

Дают задачи на логику или чего-то подобное?
Если можно, с примерами, плз
1359 1889123
>>889102
ПОЧЕМУ ЛЮКИ КРУГЛЫЕ?
@
ВЫ УМЕНЬШИЛИСЬ ДО РАЗМЕРОВ МУХИ И ПОПАЛИ НА ДНО МИКСЕРА, ЧЕРЕЗ МИНУТУ ОН ВКЛЮЧИТСЯ, ВАШИ ДЕЙСТВИЯ?
@
ЕСТЬ ПОЕЗД, ЗАМКНУТЫЙ В КОЛЬЦО, В КАЖДОМ ВАГОНЕ МОЖНО ВКЛЮЧАТЬ И ВЫКЛЮЧАТЬ СВЕТ, КАК ПОСЧИТАТЬ КОЛИЧЕСТВО ВАГОНОВ С ПОМОЩЬЮ ЭТОГО?
1360 1889132
>>889123
Первую слышал много раз, а 2 и 3 впервые слышу
Спасиб)
1361 1889146
>>889123
Как на второй ответить то?
1362 1889179
>>889146
Я думаю, что можно лечь на дно миксера
Лопасти, кажется, до дна не достают
не?
1363 1889220
>>889132
В большинстве мест не спрашивают, разве что по приколу. Всерьёз только в яндексах-гуглах. Ещё слышал что-то про скорость самолёта в зависимости от ветра, там какой-то подвох, и решение не как в школьной задаче про реку и лодку.
>>889146
Есть вариант взобраться по стенке - масса позволит это сделать тупо как мухе. Ещё есть вариант выпрыгнуть, как блоха.
1364 1889259
>>889102

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



смотря от того куда идешь.

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

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

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

а люки, трамваи и палки пирса - это херня, корторая по-моему уже лет 15 как себя отжила.
1364 1889259
>>889102

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



смотря от того куда идешь.

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

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

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

а люки, трамваи и палки пирса - это херня, корторая по-моему уже лет 15 как себя отжила.
1365 1889282
>>889259

>что вы любите делать в нерабочее время?


Грустно стало от вопроса.
1366 1889378
>>889259

>>а люки, трамваи и палки пирса - это херня, корторая по-моему уже лет 15 как себя отжила.



Ни-ху-я

Ходил на собес на тестировщика, на аналитика (год+ назад).
И на том, и на другом собесе ебали мозг задачами логическими.
Не HR, а тех. спецы
1367 1890103
>>889146

>Через минуту он включится.


За минуту муха может долететь до канадской границы.
1368 1890135
>>890103
ты не стал мухой, а лишь уменьшился
1369 1890150
>>889146
>>890135
Вот тут разбор этой задачи:
https://tproger.ru/problems/you-are-shrunk-to-the-height-of-a-nickel-and-thrown-into-a-blender/

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

То есть, эти ебанаты в принципе не ориентируются в реальном мире, и не понимают, что будет, если выбросить мышь с балкона. И ни разу не видели, как маленькие насекомые или пауки избегают падать с высоты больше полуметра.
1370 1890379
>>890150
https://studopedia.net/11_9706_vliyanie-soprotivleniya-vozduha-na-skorost-padeniya-tel.html

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

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

А столкновение с поверхностью с такой скоростью не опасно
1371 1890429
Как понять, что java - это не мое? (или моё)
1372 1890486
>>890429
Если кодинг на джаве превращается в пытку, если ты думаешь "бля, скорее бы осилить уже этот курс и перекатиться в реверс-инжиниринг, вот там всё просто и без хуйни", то лучше и впрямь перекат сделать.
1373 1890494
>>890150
>>890379
Но вес мыши и маленького насекомого отличаются раз в 100.
1374 1890594
>>890486
А мб это во всем бывает такое?
И просто надо перетерпеть?
1375 1890664
>>890486
Я думаю так везде и у всех. Периодически появляются мысли по типу: "о, у Го классный маскот, хочу писать на Но" или "Раст компилируемый, хочу писать на нем" или вообще хочу перекатиться на фронт. Всякая ерунда может в голову придти.
1376 1890669
>>890429
Если в целом программирование тебе интересно, изучаешь или уже знаешь другие языки, а с джавой как-то туго - либо неделями не открываешь с мыслью "жаба не волк, в лес не убежит", либо открываешь, читаешь два абзаца и потом либо возвращаешься к другим языкам, либо вообще запускаешь дотан - то определённо не твоё.
И если всё же учишь продолжительное время, преодолеваешь сложности несмотря на проблемы с мотивацией, но при этом у тебя вызывает отвращение мысль, что придётся сидеть в разработке огромного многолетнего проекта с не самыми свежими технологиями и вникать в сложные бизнес-требования - то тоже не твоё.
Если это всё не про тебя, то смело вкатывайся.
1377 1890670
>>890664
Одно дело мысли, совсем другое - когда начинаешь прыгать с языка на язык каждые несколько недель.
image.png59 Кб, 191x179
1378 1890745
>>890429

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

Из плюсов - быстро учится, простой синтаксис, распространенность - отсюда наличие вакансий.
1379 1890754
>>890745

> var


Наконец-то мем обновили.
1380 1890783
>>890754
А скобки в конце() один хуй забыли.
1381 1890787
есть какая-нибудь хуита с полностью описанной структорой джава кора, чтобы выучить все пробелы в нем?
1382 1890790
>>890745
Разве джава так проста?
Я думал, что она не так уж проста и не так уж быстро учится
1383 1890799
>>890787

> полностью


Справочник по документации Java SE на сайте оракла.
Но вряд ли тебе это нужно. Любой популярной книги по кору хватит с головой.
1384 1890805
>>890790
А что в синтаксисе сложного? Ты посмотри на с++ с его ::->*$#
1385 1890850
>>890805
Лол причем тут синтаксис.
На собеседках любят дрочить алгоритмами, структурами данных и канкаренси. Это все коре.

Проверь себя.
Напиши сходу разворот строки оптимальный и по памяти и по озу.
Или обход бинарного дерева вглубь
1386 1890852
>>890850
Или напиши тредсейфти стек используя канкаренси
1387 1890857
>>890850

>разворот строки оптимальный и по памяти и по озу


StringUtils.reverse(s)
1388 1890859
>>890857
Уже StringBuilder.reverse() есть.
1389 1890860
>>890859
С какой версии?
1390 1890861
>>890787
По 8 учи.
Обжект и его методв.
Типы,примитивы, ньюансы типа кеша строк и интежеров.
Коллекции включая новые тредсейфти. Включая нюансы раьоты хешей.
Канкаренси с футурами.
Стрим апи с опшоналами.
Алгоритмы сейджвика читать обязон. Хотя знать как работает квиксерч и б деревья.
Про типы гц и ссылок.
1391 1890862
>>890859
Мы вам перезвоним, лол.
На собеседовании так ответишь.
image.png32 Кб, 433x378
1392 1890864
>>890862
Ты лучше напишешь?
1393 1890866
>>890861
Забыл еще - ооп в жяве.
Про модификаторы доступа, финальные и статические поля и методы.
Дженерики. Еще но врядли их спросят жуна.
Хотя если попросят написать абстрактную фабрику - будь готов
1394 1890867
>>890864
Ты дурачка не валяй.
На собеседовании тебе дадут листочек.
Скажут - пиши разворот строки.
Ты им скажешь - пук кек смотрите сами в ждк исходники.
1395 1890901
Стоит ли вынести отзывы и вопросы клиентов по товарам из товарного сервиса в сервис управления клиентами?
1396 1890912
>>890901
Интересно, задавался ли у нас хоть кто-нибудь такими вопросами, когда дописывал один из часто используемых сервисов на 5000 строчек, ни разу за много лет его так и не отрефакторив.
1397 1890941
Spring data elasticsearch написана долбоебами.
1398 1890943
>>890941
Spring-WS тоже.
1399 1890949
>>890943
У меня на проектах везде cxf для соапа
1400 1890956
>>890941
почему? как раз хотим эластик начать в проект внедрять, было бы интересно если бы ты рассказал
1401 1890959
>>890956
Толку от нее хуй да нихуя, все можно и через RestHighLevelClient делать. У меня конкретно сгорело с того, что они в 3.2 версии для маппинга в json использовали обычный ObjectMapper, а в 4.0 написали свой велосипед, который внутри так же использует ObjectMapper, но настраивать его теперь нельзя. При этом апи, которое мне нужно, есть в 4.0 версии, но не в 3.2.
1402 1890972
>>890867
Теперь все в этом треде знают, что надо развернуть массив байтов, так что проблем с этом вопросом не возникнет
1403 1890986
>>890959
отправила менеджеру. будем разбираться. спасибо.
1404 1890987
>>890986

>Принимать решения на основе комментариев с двача

1405 1891214
>>890972
Теперь еще только осталось написать тредсейфти стек, очередь из двух стеков, обход бинарного дерева и еще с пару десятков типовых задач по алгоритмам и структурам данных с собеседований.
1406 1891220
Скиньте пожалуйста разбор DAO паттерна. Я просто смотрю видосы по другим темам, а там он используется в примере. Посмотрел один видос и одну статью. И ничего не понял. Мне кажется разборы были негодные.
1407 1891231
>>891220
Зачем тебе это говно?
Хочешь легаси ЕЕ обмазаться?

В новых проектах встретить это врядли возможно
1408 1891238
И да еще совет вкатывальшикам.

Не слушайте тех кто вам втирает дичь про необходимость знания некротехнологий.
Никто вас не будет спрашивать про 7 лвл явы или работу с асинхронными сервлетами и каким-нить некрожсп/жсф.
Не забивайте голову этим. Это нахуй не нужно. А в проекты или команды где нужно я б не рекомендовал идти.

Лучше учите кор 8. Ну и сахарок из 11-14. Хотя врядли вы где встретите выше 11 в продакшене. А из фреймворков - только спринг. Разумеется с бутом. Из подсистем кроме кор фреймворка обязательно спрингдату, можно ждбцтемплейты(стремится уже к легаси). Почти обязательно месаджинг, рест и возможно соап контролеры.
Ознакомьтесь с вариантами использованием котлина вместо ломбока, это на самом деле топчик и в спринге используется без особых проблем оба языка. Спрингбатч с кварцем - если планируете в банки. Ликвибейс для миграции схемы. Кеширование кофеином. Транзакционность ее типы и условия применяемости. Мож еще чо забыл...

А легаси кал типа ЕЕ - не забивайте им голову
1409 1891249
>>891231
Ну там видос был по мокито. И у объяснятора это на примере с даопаттерном было. Я гуглю про дао, а там какая-то шляпа.
1410 1891366
>>891238

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


А вот не пизди, у котлина куча проблем.
1411 1891479
>>891231
Слишком толсто.
1412 1891503
>>891366
Например какие?
Озвучивай раз начал.
1413 1891507
>>891479
Вы это. Если утверждаете что то - пруфайте.
Вот ты пруфай использование дао вместо репозиториев в спринге.
1414 1891525
>>891507
Ты прав, все используют репозитории, таблиц больше чем на 1000 записей не существует, в говнохибернейте нет проблемы N+1.
1415 1891603
Други, помогите обезьяне.
Есть контроллер на пике 1 и вью на пике 2.
Если открываю value="/", то все нормально, а если открываю value="/abc", то пик 3.
Помогите, ЧЯДНТ?
1416 1891640
>>891603
логи включи баран
1417 1891649
>>891640
Какие? Где именно?
1418 1891673
>>891603
Какой нахуй JSP в 2021? Сейчас все нормальные люди юзают шаблонизаторы + немного хипстеров с реактом.

Написал контроллер как у тебя - всё работает, обе страницы находятся. У тебя вообще есть abc.jsp рядом с home.jsp?
1419 1891680
>>891673
Но итт говорили, что jsp лучше, а остальное говно ненужное.
image.png95 Кб, 1246x532
1420 1891681
>>891673

>У тебя вообще есть abc.jsp рядом с home.jsp


Вроде как. Хотя я та еще обезьяна, мог и обосраться.
1421 1891682
>>891680
Это говорил анон, у которого ЕЕ на работе, а сам он вообще хочет в Go перекатиться.
1422 1891688
>>891681
Тогда вообще хз. Попробуй собрать с clean, удалить с сервера приложений и задеплоить с нуля.
image.png53 Кб, 1191x450
1423 1891692
>>891688
Я идиот, спасибо за помощь.

Тогда другой вопрос. Какой адрес указать, чтобы все работало.
Сейчас при переходе localhost/abc, а должно быть localhost/try1/abc.
Конкретно здесь поменять не трудно, но на будущее, как правильно сделать?
1424 1891695
>>891692
в гугол
1425 1891707
>>891692
Если у тебя спринг бут, то нужно указать contextPath в application.properties ( https://stackoverflow.com/questions/20405474 ). А если не бут, то обычно это настраивается на сервере приложений.
16023132600860.png1,1 Мб, 800x1280
1426 1891714
>>891707
Понял, спасибо.
Держи няшу.
1427 1891771
Кто-нибудь уже нашёл новогоднюю аниме-картинку с джавой для переката?
1428 1891790
Реально ли найти библиотеку, которая будет покадрово распаковывать в bitmap, что-то типо
Picture p = video.getNextFrame().
И наоборот
VideoKit vk; vk.saveFrame(p);
Video v = vk.create();
Мне нужно работать с пикселями.
1429 1891794
>>891790

>Мне нужно работать с пикселями.


А ява тут причем?
image.png83 Кб, 246x204
1430 1891799
>>891771
А я напоминаю, что пикрил - тру вайфу настоящего жависта.
1431 1891800
>>891794
Язык программирования.
1432 1891817
>>891525
Ебать дебил.
Что за хуйню ты высрал?

На вопрос отвечай.
1433 1891822
>>891817
Я полностью с тобой согласен и признаю свою неправоту, и вообще я слился, всё, ты как обычно подебил, возьми пряник с полки.
1434 1891877
>>890850

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

Тут 10 лет учиться надо нахуй, без шутеек. И все равно будешь нихуя не знать. В жабушку же вкатиться - год-джва, если ты не долбоеб.
1435 1891912
>>891525

>таблиц больше чем на 1000 записей не существует


У нас на прошлом проекте больше миллиарда записей было, данные по двум-трём столбцам фильтровались шустро. В чём проблема может быть?

>N+1


Проблема N+1 решается либо с помощью дополнительной view в БД и её сущности и репозитории в коде, либо с помощью fetch = FetchType.LAZY в описании исходной сущности. Или в этих решениях есть какие-то подводные?

Я без наездов. Просто интересно, может я чего-то не знаю.
1436 1891914
>>891603
Что это за магия? Я не работал с JSP, но возвращал из метода контроллера строки и у меня в ответ запроса приходили просто строки. Это из-за JSP и его настроек на запрос возвращаются страницы?
1437 1891920
>>891914
RestController и Controller работают по-разному. В обычном контроллере ты возвращаешь название вьюхи в виде строки, либо ModelAndView, в котором это название. Это не только про JSP, но и про thymeleaf, freemarker и прочее.
1438 1891928
Привет ребята,увидел в интернетике задание и пришел узнать как делается.

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

Я подума,что нужно просто создать Сет и Лист и сету присвоить лист.Но так оказалось нельзя
1439 1891929
Ребят, мне кажется что java это не моё
1440 1891938
>>891928

> Но так оказалось нельзя


List<Integer> integerList = ...;
Set<Integer> integerSet = new TreeSet<>(integerList);

TreeSet уже отсортирован и содержит уникальные элементы, надо только пройтись.

Это если не требуется реализовывать свой сет с нуля.
1441 1891939
>>891920
Понял, спасибо. Что-то я не заметил, что это обычный контроллер.
image.png120 Кб, 1153x615
1442 1891943
Снова выхожу на связь.
Попытался прикрутить бд, но вот этот класс ломает отображение вьюх.
Где и в чем я обосрался?
1443 1891968
>>891943

> basePackages = {"project"}


Попробуй basePackages = {"p.project"}. Но хз, при чём тут вьюхи.
И классы, кстати, правильно именовать с большой буквы.
image.png12 Кб, 865x170
1444 1891979
>>891968
Пробовал и так и так. Результат один.
Если удалю классы с бд, все работает.
1445 1891993
>>891979
Магия какая-то.
1446 1891996
А что в джаве с concurrency? Когда завезут гринтреды как в го/котлине?
1447 1891998
>>891996
В 1.1.
1448 1892002
>>891996

> гринтреды


Давно выпилили это говно. И в Go не совсем гринтреды.
1449 1892010
>>892002
А что же там тогда? Ну ты понял, что я имею в виду. В го можно наспавнить тысячи горутин, базовый размер стека у них всего 2 килобайта. Когда такое будет в джаве? И что из неё выпили? Я сам не джавист, присматриваюсь просто. В эрланге тоже так можно, например. Или rust + actix.

>>891998
???

Нашёл что-то про fibers/project loom, это оно? В 15 версии релизнули, как я понял.
1450 1892013
Анонисы, как под такой жсон правильно класс написать?

{
"coord": {
"lon": -122.08,
"lat": 37.39
}

Так?

private String[] coord;
private String lon;
private String lat;

Подскажите, пожалуйста.
1451 1892020
>>892010
В древней джаве 1.1 под гринтредами понимали выполнение вообще всех тредов на одном ядре. Ну то есть реализация вообще не использует механизмы мультитрединга, а просто выполняет команду за командой из разных тредов, но на одном ядре.
В Loom же подразумевается некий параллелизм, как в Go. Вводится понятие виртуальных тредов. Реализовано не полностью, даже в 15 джаве это экспериментальная фичаа.
Ну а до Loom так и будет юзааться пул тредов и диспатчер.
1452 1892021
>>892013
class Coord {
private double lat;
private double lon;
}
class MyJson {
private Coord coord;
}
1453 1892023
>>892021
Класс внутри класса?
Понял, спасибо.
1454 1892028
>>892023
Да, каждый json-овский object с полями - это отдельный класс.
1455 1892032
>>892023
Не "класс внутри класса".
А свойство класса A - объект, экземпляр класса B.

Класс String уже есть в стандартной библиотеке.
А класса Coord там нет.
Но, он вполне может быть в другой библиотеке, или ты можешь написать его сам.
1456 1892039
>>892020
Типа в джаве не параллелизм сейчас?
А что?

Чем в этом смысле лучше Go (не на уровне синтаксиса и расхода ресурсов)?
Горутины, как раз таки, не выполняются в отдельных тредах, насколько я помню, они именно что виртуальные.

И как это добавляет Go параллелизма, относительно джавы?
Как по мне, так это меньше параллелизма, а не больше.
Но, он дешевле, при этом.
1457 1892041
>>892039
Гринтреды после джавы 1.1 выпилили и заменили на нативные, которые и юзаются по настоящее время, в них параллелизм. Просто это жирные треды, жрущие далеко не пару килобайт. Поэтому обычно юзается явный пул тредов.

В Go, насколько я понимаю, тоже неявно создаётся пул нативных тредов, в которых уже и запускаются горутины, но программист про это ничего не знает и просто создаёт горутину, будто это обычный тред. В джаве для юзания пула нужно явно его создать и давать по очереди таски ему на вход. Это всё равно разные механизмы, если в Go есть планировщик, приостанавливающий горутины и запускающий другие для обеспечения конкурентности, то в джаве на одном ядре таска будет выполняться от начала и до конца, а другие будут ждать в очереди, пока хоть одно из ядер освободится. Ну а в Loom хотят сделать планировщик типа как в Go.
1458 1892058
>>892041

>в Go есть планировщик, приостанавливающий горутины


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

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


Не думаю.
Это что же, на одноядерном процессоре пока 1 поток не выполнится, другие стоят? Вряд-ли.
А если поток заблокирован по вводу-выводу? А если все ядра с заблокированными потоками? Всё встанет?
Бля, не верю, надо проверять.
1459 1892060
>>892058
Не совсем правильно выразился. Скажем, будут ждать, пока хоть один из тредов в пуле (а не ядер) не освободится. Просто обычно запускают столько же тредов, сколько ядер.

> А если поток заблокирован по вводу-выводу? А если все ядра с заблокированными потоками? Всё встанет?


В пуле - да, встанет. Но остальные треды, в том числе главный тред, так и продолжат работать, они про пул ничего не знают. Вообще, в пул лучше не отправлять подобные таски, к примеру какой-нибудь гуй будет обычным тредом.
1460 1892147
>>891938
Я не понял как это работает,я когда создал
List<Integer> x = new ArrayList();
и
Set<Integer> y = new HashSet();
а потом
y=x;
У меня вылезла ошибка,что нельзя преобразовать,когда я сделал так:
y=(Set) x;
То там тоже какой-то пиздец
1461 1892184
>>892028
Или мапа.
1462 1892192
>>892147

> y=x;


> y=(Set) x;


Нельзя так делать, один не является наследником другого. Джава не знает, какой результат ты при таком приведении хочешь получить, это всё равно что пытаться привести Integer к System, например. Можно только сконвертировать олну коллекцию в другую с помощью специальных методов или конструкторов. Вот у TreeSet есть конструктор, принимающий коллекцию и наполняющий по ней свои внутренние данные.
1463 1892195
>>892192
Что тогда делается в твоем варианте?
1464 1892242
Я что-то не пойму, что джавараш действительно говно? И может кто обьяснить толком почему? Вроде все интерактивно, визуально
1465 1892255
>>892242
да юзай что нравится и забей хуй. я на хайперскилле до джуна докачалась. вообще похуй на все эти советы.
1466 1892257
>>892255
Сколько качалась? (по времени)
1467 1892262
>>892255
Сиськи с пруфом джуна.
1468 1892263
>>892257
месяца три. но я уже питончик знала + хорошая алгоритмическая подготовка.
1469 1892284
>>892195
Вызывается этот конструктор: https://docs.oracle.com/javase/8/docs/api/java/util/TreeSet.html#TreeSet-java.util.Collection-
Он принимает коллекцию и по ней строит TreeSet. Это не приведение типов, а просто там внутри код наподобие:
for (E item : collection) {
if (!this.contains(item)) {
this.add(item);
}
}
1470 1892286
>>892263
Алгоритмическую подготовку где и как знать?
1471 1892322
>>892286
В вузе
image.png391 Кб, 509x505
1472 1892324
1473 1892327
>>892324
Я лично только там въехал зачем оно все надо, в школе не понимал и забивал.
1474 1892354
>>892286
ну я всю школу математику делала, в 8 классе в физмат школе училась. яндекс лицей как раз питончик + алгоритмы. так вот.
1475 1892440
>>892354
Алгоритмы - не математика и не физика.
Алсо, надобность в (серьёзном) знании алгоритмов в реальном программировании на джаве - весьма небольшая.

>>892263

>Питон, алгоритмы


>3 месяца - и работа на джаве


Как-то не очень верится. Джава - не питон.
И что же ты смогла делать через три месяца такого, за что тебе платили?
Приведи пару примеров.
1476 1892510
>>892440
лан алгоритмическая подготовка плохо подходит под то, что я имею ввиду. я хз как это назвать, просто умение придумать какой-то алгоритм под простенькую задачу. как пример могу привести задачку с яндекс лицея на пикрил один и два. были и посложнее, просто это - единственное, что осталось. насчет ненадобности алгоритмов я согласна, но опять же не имела ввиду буквально сортировку пузырьком и тд.

>Джава - не питон.


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

>И что же ты смогла делать через три месяца такого, за что тебе платили? Приведи пару примеров.


я переношу старый бекенд написанный на пхп на джаву. я единственный бэк в команде и пишу все с нуля. как бы в целом ничего особенного не делаю пока что. в основном постигаю основы по типу более глубокого изучения спринга, докера и тд. работаю всего два с половиной месяца пока что. задачи по мелочи в общем.
почему чела без опыта взяли для написания проекта с нуля - сама хз, можете даже не спрашивать. фронт у нас тоже единственный и тоже особо без опыта кстати.
1477 1892530
А есть какие-то человеки тут, которые проводят интервью для жунов/стажеров?
1478 1892536
>>892020
А когда Loom полностью реализуют?

И ещё такой вопрос, почему так часто именно Java 8 используется в работе? Получается, Loom релизнут, а толку мало будет, всё равно ведь все старую версию используют.
1479 1892564
>>892530
Раньше был синьор, но давно не видно.
1480 1892570
>>892536

> А когда Loom полностью реализуют?


Не знает никто. Давно его ждут.

> И ещё такой вопрос, почему так часто именно Java 8 используется в работе?


В легаси очень сложно обновить версию, спринг тоже старый, даже ЕЕ не самая свежая. Например, некоторые сервера приложений на джаае больше 8 тупо падают с кучей ошибок, хотя заявлена обратная совместимость. Ну а в новвх проектах новых жаб не боятся.
1481 1892593
>>892536

>И ещё такой вопрос, почему так часто именно Java 8 используется в работе?


Потому что в 9 появились бесполезные модули, которые сломали обратную совместимость.
1482 1892660
>>892263
А почему свитчнулась с Гадюки на Жабу?
1483 1892699
>>892536
>>892593
И потому, что в 8-й есть апплеты и java web start.
Во внутренних разработках ими активно пользуются, но, в хипстернете ты об этом ничего не услышишь, это другой мир.

По этой же причине бизнес продолюает юзать IE-11, что вызывает лютый баттхёрт у js-смузихлёбов, которые искренне недоумевают - зачем, потому, что долбоёбы комнатные, лол.

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

Ну, и потому, что бритва Оккама.
Если на 8-й можно делать всё то же самое - зачем ебать мозги?
Алсо - модули - это опять облачная хуита, в реальной корпоративной жизни не нужная.
1484 1892720
>>892660
не помню уже. возможно я сама себе придумала, что так будет лучше. так в целом и оказалось. теперь тошнит от любого не джава-подобного языка.
1485 1892728
Есть товарный контроллер с пост методом, принимающий дто товара. Дто содержит идентификаторы других сущностей, сохраненных заранее, которые нужны товару (идентификатор вендора, например). Нормально ли из пост метода товара кидать 404, если вендора с таким идентификатором нет?
1486 1892738
>>892728
Нет, это не нормально.
А что делать? Зависит от задачи.

Вот, например, описан буквально твой случай:
https://stackoverflow.com/questions/44915255/is-it-ok-return-http-status-404-in-the-post
1487 1892740
>>892728
400 же
1488 1892743
>>892738
А, спасибо. Не наткнулся на этот вопрос в гугле.
1276415.jpg30 Кб, 344x326
1489 1892747

>нету if then


>но есть ? :

1490 1892786
>>892747
чего? ты ебанутый?
1491 1892796
>>892786
я так понял функцию then выполняют фигурные скобки {}
ну типа это как незаконченная фраза IF .. а где then ??
1492 1892815
>>892796
ты из паскаля пришел?
1493 1892852
>>892796
Тебе ещё рановато в этот тред, мне кажется.
Начнём с того, что ты не видишь разницы между управлением потоком вычислений (if-else) и условным _выражением_ (тернарный оператор a ? b : c)

if не имеет значения. А тернарный оператор - имеет.
Ты не можешь написать a = if (true) {1} else {2}
Но, можешь написать a = true ? 1 : 2
Понимаешь?

А then - это просто синтаксис.
Во всех си-образных языках и многих других, then просто подразумеватся, т.к. это и так понятно, и незачем засирать код лишними буквами.
То же касается и begin-end
1494 1892857
>>892510

> я переношу старый бекенд написанный на пхп на джаву. я единственный бэк в команде и пишу все с нуля.


> 3 месяца опыта

1495 1892858
>>892857

>почему чела без опыта (МЕНЯ) взяли для написания проекта с нуля - сама хз, можете даже не спрашивать. фронт у нас тоже единственный и тоже особо без опыта кстати.

1496 1892864
>>892858
Значит и проект там такой же.
Денег сколько?
1497 1892869
>>892857
У меня было 4 месяца опыта, когда мне надо было перенести бэкенд с python/django (предыдущие 4 месяца я его дорабатывал) на java/spring boot. На тот момент jav'у я знал на уровне lab1.java, о spring'е даже не слышал. Но в моём случае я ещё переносил фронт с шаблонов django на react. Так что всякое может быть, особенно в небольших компаниях, у которых нет опыта в программировании и/или это не основное направление.
1498 1892872
>>892815
да -_-
>>892852
жалко лишней команды что ли?

>Ты не можешь написать a = if (true) {1} else {2}


Но, можешь написать a = true ? 1 : 2
Понимаешь?

Я ща только вкатываюсь по курсам со skillbox и какой же там пздц.. нигде никогда ещё не видел чтобы обучение было для людей сделано - последовательно и методично от простого к сложному. У меня там уже задания идут, я должен код писать без объяснения синтаксиса и что по чём.
1499 1892878
>>892864
на испыталке трицоть. через недельку будет сорок. москва.
1500 1892889
>>892699

> По этой же причине бизнес продолюает юзать IE-11


Не совсем понял зачем бизнес продолжает поддерживать IE-11, если на нём сидят 0.00000000000000001% клиентов.

мимо-js-смузихлёб
1501 1892891
>>892878
Ну, это многое объясняет.
Хороший шанс наработать опыт, кстати.
Особенно, если не надо снимать квартиру.

Есть ещё один вопрос - у тебя девочка внутри или снаружи?
Если снаружи, то надо предъявить сиськи, иначе - нечестно.
1502 1892893
>>892889
Нет, если продукт внутренний для самих себя, то клиентов на нём будет сидеть 100%. У работников просто нет выбора.
1503 1892894
>>892889
Ты пост читал, на который отвечаешь?
Или смузи глаза залил?

В интранетах его юзают, понимаешь?
Используют, а не "поддерживают".
Но, в вашем смузинете ты никаких следов этого не найдёшь, как я уже сказал. И на смузи-проценты это не влияет.
1504 1892895
>>892891
да опыта тут предостаточно, мне курсы покупают постоянно, менеджер бывший девопс очень няшный нянчится со мной, прекрасно. живу с мамкой, так что ни за еду ни за квартиру платить не надо)

а в интернете сисек не хватает?
1505 1892896
>>892889
Добавлю, т.к. всё-равно двусмысленно получилось, зумер может не догадаться:
IE-11 используют потому, что это единственный современный (более-менее) браузер, в котором есть поддержка java-апплетов.
1506 1892901
>>892895
Хватает, конечно же, лол. Но, таковы правила.

А знаешь ли ты, что есть реализация php, написанная на java?
И это не какой-то эксперимент, а серьёзный высокопроизводительный продукт:
http://quercus.caucho.com/

Сделан он был с целью повысить быстродействие пыхосайтов на кластерном хостинге.

Не знаю, прикручивали ли это к спрингу, можно погуглить. Hessian (тоже Caucho) точно в спринге есть.
В любом случае - это просто сервлет, и прикрутить его можно куда угодно, наверное.
Для убойного быстродействия в кластере, конечно, нужен Resin.
А чтобы просто работало на уровне всей остальной спринг-чешуи, то и так сойдёт.

Это я к тому, что можно пыху переносить на джаву вообще не переписывая, или почти не переписывая. А потом постепенно допиливать.
Но, это зависит от версии пыхи, которая у вас.
1507 1892905
>>892891

> Хороший шанс наработать опыт, кстати.


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

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

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

если у тебя нет опыта - то нужно искать место где есть люди которые гораздо опытнее тебя не только в программировании, но и в организации процесса разработки. а если что-то сидеть в одиночку ковырять не зная как оно должно быть на самом деле то даже через 5 лет у тебя будет знаний максимум как у джуна и соответствующая зарплата, а поебашив на галерах 5 лет можно уже 300-500к в месяц делать, а то и перекатиться на тракторе куда-нибудь.
1508 1892920
>>892901
Если у кого-то появится желание поиграться с джава-пыхой, то можно просто скачать текущий Resin, там всё уже из коробки настроено.

Делаешь подкаталог в webapps, в нём пустой (или не пустой) web.xml, ну, и пишешь index.php и всё остальное, как на пыхе, с возможностью юзать джава либы.

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

https://caucho.com/products/resin/download/gpl#download

>>892905
Да, думаю, ты прав.
Но, всё равно, когда сам решаешь проблемы - это развивает.
И многое зависит от человека, и от его подходов.
Главное, не закиснуть надолго в болоте.
1509 1892932
>>892920

> когда сам решаешь проблемы - это развивает.


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

> Главное, не закиснуть надолго в болоте.


если есть интерес развиваться как профессионал то валить надо сразу, если нужно до декрета досидеть то сойдет и так.
1510 1892953
>>892901

>quercus


а он еще живой? одно время (лет 15 назад) его сан, пока был жив, вместе с жруби продвигал. я думал он уже загнулся давно. да и по ссылке последний варник аж 14 года. не думаю что он современный пых сможет интерпретировать.
1511 1892963
>>892901
Пиздец.
Ты поехавший?
Уноси это говно отсюда
1512 1892965
>>892953
Он может интерпретировать php 5.
С небольшими оговорками по части некоторых пыхо-модулей.
Он был сделан для поддержки типичных пхпшных цмс того времени.
И он совершенно живой. Включён в последнюю версии Resin, от июля 2020 года.

>>892963
Припекло, хипстерок-зумерок?
Давай договоримся - ты не будешь говорить мне, что я должен делать, а я не буду говорить, куда тебе нужно идти.
1513 1893040
>>892896
>>892894
>>892893
Понял. Как хорошо, что в моём смузи-мирке требуется поддержка только самых новых браузеров. К слову, до того как стать js-смузихлёбом я писал бекенды на дотнете, питоне, го. Уныло было, теперь я на переднем конце.
1514 1893232
>>892699

> И потому, что в 8-й есть апплеты и java web start.


а что насчет https://openwebstart.com/ ?

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

>теперь я на переднем конце

1516 1893419
>>892932
плюсую 1 год работал с монолитом написанным на стеке ee, jsp, servlet и спринг с кучей xml. Ушел уже 3 года как, это конечно была моя первая работа, но единственное что я понял там это как не надо вести проекты. Тестов эти люди кстати не писали, хз как они еще живы
1517 1893536
>>892965
Ты долбаеб?
Нахуй ты это дерьмо тащишь в жява тред?
1518 1893540
Я что-то не понял.
Вот я хочу пройти тутор по спринг-буту. И у меня идея бесплатная. Я могу создать спринг-проект на сайте спринга, засунуть его в бесплатную идею и дальше никаких ограничений или что-то не будет работать?
1519 1893557
>>893540
Ты можешь вообще без идеи это все сделать. Отличие ультимейта от комьюнити только в разных удобных интеграциях, которые упрощают работу с конкретным фреймвороком.
1520 1893589
почему блет по питону нет вакансий ток под java. Насколько она сложная?
1521 1893603
>>893536
Если ты, говно, не умеешь читать, и не можешь понять, почему я это запостил, то сиди тихо. Или иди на хуй.
1522 1893612
книги на заболоченном сайте залейте на яд пож
1523 1893614
>>893603
Сьеби нахуй говноед со своей похапе блядь
1524 1893616
>>893232
Из того, что ты написал, совершенно ясно, что ты понятия не имеешь, о чём пишешь. Причём - ни малейшего.
Попробуй, например, рассказать мне, как твои десктопные приложения будут разделять сессию с веб-приложением.

>зачем сейчас что-то на них писать и поддерживать


Затем, что это в разы менее затратно, чем писать гуй на жс-говне, вот зачем.
Не говоря уже о том, что переписывать.

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

>>893419
То, что ты описываешь - нормальная практика.
И тесты в таких случаях мало что дают, поэтому их и не писали.

>>893540
В бесплатной идее нет полноценной поддержки спринга.
Т.е. это будет просто обычный джава-код и т.п.
Т.е. работать всё будет, но без ништяков при написании кода.
1525 1893618
>>893614
Соси хуй и не писхуй, лол.
1526 1893649
1527 1893651
>>893616

Однако нынешнее жс-говно вполне себе удобное в плане биндингов и реактивности.

Хорошим примером этих двух вещей является то, как это выглядит в Vue.js и как уебищно и монструозно это выглядит в Android.
1528 1893671
>>893651
Да, ты прав - оно стало лучше.
А vue - так вообще охуенно.
Я, кстати, в последние пару месяцев, регулярно устраиваю пропаганду vue (и унижение реакта) в жс треде, лол.

Но, веб-говно - это веб-говно.
Это не десктоп, и даже не близко.
Все просто привыкли уже, и смирились.
jb4-splash.gif71 Кб, 448x346
1529 1893707
>>893616

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


а какие тут могут быть проблемы, спринг умеет сессии в БД хранить. (впрочем это даже томкат из коробки умеет, просто со прингом их еще и доставить оттуда в десктопе легко)

> Затем, что это в разы менее затратно, чем писать гуй на жс-говне, вот зачем.


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

> Вообще охуеваю с детского сада выпускников различных курсов.


остынь, ветеран, пикрелейтед - моя первая ide
1530 1893721
>>893616

>Т.е. работать всё будет, но без ништяков при написании кода.


а что такое ништяки, можно вкратце?
1531 1893723
>>893721
да хуйня, ультимате едишн просто можно раз в месяц переставлять и все. после этого даже настройки проекта не слетают.
1532 1893754
>>893723
Стоить ставить ебаться с перестановкой ради обучения? Я просто не понял, что я могу без ультимате и что я с ней получу.
Идея клевая, хоть и тормозная. Где-то читал, что ради обучения спрингу нужно на эклипсу переходить.
1533 1893768
>>893721
https://www.jetbrains.com/lp/intellij-frameworks/

>>893723
Ещё можно активатор купить в торрентах.
1534 1893769
>>893754

>Идея клевая, хоть и тормозная.


Открой для себя SSD.

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


Это ты хуйню читал.
Эклипс - тупое говно. Порождение сумрачного гения IBM.
Как на ней вообще можно работать - для меня загадка.
Не говоря уже о том, что она тоже написана на джаве, и если у тебя идея тормозит, то и эклипс тоже будет.
1535 1893782
Как у строки "978-3-16-148410-0"
Максимально быстро достать все после последнего '-', включая его?
В данном случае должно получиться "-0".
1536 1893784
Тут кто-то выше хвастался, что после гиперскилза работу нашел.
Помогите плиз, никак не могу понять что конкретно должны делать методы execute() и undo().
1537 1893785
>>893782
StringUtils.substringAfterLast
1538 1893790
>>893782
Ты уверен, что тебе действительно нужно "максимально быстро"?
Используй регулярку, оно будет более наглядно и future proof.
1539 1893844
>>891943
В именах классов.
1540 1893915
Надо завтра новогодний перекат!
1541 1894019
Новогодний перекат с аниме тяночкой и новыми книгами.
1542 1894032
import java.util.Scanner;

public class Test{

public static void main(String[] args){
Scanner in = new Scanner(System.in);
int a = in.nextInt();
System.out.println(a);
String s = in.nextLine();
//почему оне жрет стринг s а сразу выводит
System.out.println("Hello");
System.out.println(s);

}
}
1543 1894033
хелп плз
1544 1894071
>>894032
Не знаю причины, моих знаний не хватает.
Но если поменять местами и сначала спросить nextLine, а потом nextInt, то работает нормально.

В принципе, ты можешь считать строку, а потом из строки преобразовать в int:

String s = scanner.nextLine();
Integer inta = Integer.valueOf(s);


Коряво, но получишь то что надо)
1545 1894171
Поделитесь пож ссылками java конф тг
1546 1894201
>>894171
Могу поделиться только рекомендацией учить джаву, а социоблядствовать, играя в изучение джавы.
1547 1894358
>>893784
Бамп вопросу.
1548 1894427
Нужно ли джависту знания линукса? Если нужны, то какие и зачем?
1549 1894458
>>894427
Нужны.
Вроде ведь серваки на линухах.
Надо уметь в терминал команды писать

мимо-пре-джун даун
1550 1894477
>>894458
Просто думаю себе на нг подарок сделать в виде ссд на 500, старого на 120 не хватает вообще ни на что. Отделять ли там часть памяти под другую файловую систему или нет?
Линуху вообще в глаза не видел.
1551 1894532
Дайте пожалуйста какой-нибудь годный курс по спрингу/хайбернейту
1552 1894561
>>894477
Не надо ничего отделять.
Линукс надо ставить на виртуальную машину.
Работает всё быстро, а мозгоёбки в разы меньше.
1553 1894600
>>894032
Потому что там один из методов не переводит карэтку.
image.png37 Кб, 1152x365
1554 1894610
почему только 2???
1555 1894611
В Java Math.max() возвращает максимальное число из двух аргументов.
1556 1894614
>>894610
Ссылку на сайт плес
1557 1894633
>>892901
>>892905
все конечно прикольно да, но у нас и фронт тоже новый будет. на реакте. а насчет опыта я и так огромный буст имею. и все эти штуки:

> гит, жиру, дженкинс, мавен, юниттесты


я либо уже давно юзаю, либо планируем юзать в перспективе. думаю вы обо мне думаете хуже, чем на самом деле есть.
1558 1894637
>>894610
В джаве не задаются вопросом "почему", всё равно никак на это не повлиять. Поэтому жрём, что дают:
import java.util.Arrays;
Arrays.stream(myIntArray).max().getAsInt();

Ну а если у тебя только три инта, не проблема написать:
Math.max(Math.max(a, b), c);
1559 1894651
1560 1894660
>>894637
спс, про массив тоже думал
1561 1894673
а как это реализовать на java? 100//10(ласт цифра числа)
1562 1894680
>>894673
Число % 10
sage 1563 1894684
>>894532

В рот ебать те курсы, читай Spring in action последний на инглише.

По хибернейту - в рот его ебать, лучше дрочни на JPA сначала: https://en.wikibooks.org/wiki/Java_Persistence
1564 1894710
int a = in.nextInt();
System.out.println(Math.pow(a,a));
там 10 введено почему так?
1.0E10
1565 1894782
>>894710
Неявное приведение типа к даблу
1566 1894799
Анон, нужна твоя помощь. Требуется прервать работу метода после того, как он 10 часов проработал. Затем через 10 часов снова начал работу. В идеале, конечно, вообще привязать остановку и начало работы метода к конкретному времени. Грубо говоря, начать работу в 8 утра, закончить 6 вечера
1567 1894807
>>894799
Для запуска нужен некий планировщик, в зависимости от используемых фреймворков может быть что угодно. Прерывать не нужно - это полный пиздец, обсасывали много раз уже. Нужно каким-то образом слать методу сигнал, который внутри метода будет отслеживаться с последующим обычным завершением работы метода через return.
1568 1894828
bump
1569 1894856
>>894477
потестировать можешь даже запустив с флешки их
1570 1894869
>>894799
если будет просто интервал времени - то можно обойтись spring scheduler (гугли аннотацию @Sheduled)
если более сложное - типа выражения cron, то гугли quartz sheduler
главное не изобретай велосипедов - всё почти уже украдено за нас
1571 1895050
>>894869
Spring прекрасно работает и с кронами.
1572 1895080
>>894633

>я и так огромный буст имею


Это прекрасно.
А что насчёт фотограммы буста?

Кстати, что таки имеется в виду?
И что такое "давно юзаю", если опыт 3 месяца?
1573 1895084
>>895050
Кварц - довольно продвинутая вещь.
https://www.baeldung.com/quartz

К спрингу его тоже прикручивают, можно почитать в гугле.
1574 1895229
>>894869
Самый простой способ это же из стандартного concurrent scheduledExecutor, там же можно и задать время в которое стартовать, и нужно ли запускать таску если если старая не выполнилась. Я посмотрел реализацию спринга, там именно эта штука и используется только добавь к этому перегруженность спринга, не спорю спрингом удобно, но какие ещё бонус по сравнению с стандартной реализацей?
1575 1895240
>>895229
если проект не спринговый то конечно ради шедулера не надо его цеплять
1576 1895300
В чем заключается работа джавистов в большом финтехе?
Я понимаю что должно быть жуткое легаси и т.п., но какие конкретно задачи решаются?
Парсинг хмл, джейсонов, круды ?
1577 1895354
>>895300
Процессинг данных
1578 1895355
>>895300
В догонку к первому.

Жуткого легаси не видел. Везде где работал - спринг.

А так да. Соап, jms, работа с ораклом и plsql хранимками.
1579 1895357
>>894807
>>894869
>>895229
Спасибо за помощь
1580 1895373
>>895355
Благодарю.
Про спринг есть общий вопрос: если апи рест сервиса изменяется, то это все ручками переделывается или как ?
1581 1895376
>>895229
Чем спринг перегружен?
Не добавляй модулей кроме кора.
Зато спринг дает гарантию что его таск не помрет сам по себе. Контейнер можно и в варку завернуть и задеплоить в томкат какойнить, а можно и бутовский жарник собрать.

Ну а вообще что такое прервать метод?
Таск остановить шедулером одно. А корректно завершить задачу другое
1582 1895382
>>895373
Если ты пишешь клиента на чужой рест?

В спринге очевидно ты будешь юзать фейн для этого. И тут по сути 2 разных задачи.

1. Если меняется эндпойнт сервиса.
Тогда добавляешь новые методы и правишь эндпойнт в интерфейсе, описывающем апи.

2. Если меняется схема жсона.
По сути это самое неудобное. Придется и модели для маппера подгонять. И логику
1583 1895424
>>895376
Про перегруженность я имел в виду в целом спринг перегружен, так как тебе нужно сканировать объекты, делать из них прокси и вообще верить тому, что спринг сделает за тебя всю работу, обычно так и происходит, и то что я сказал выше не является проблемой или ошибкой, просто такая реализация спринг. Если делать через стандартные методы ты получаешь больше контроля над ситуацией, а значит не получаешь неявного поведения. Мне просто было интересно может там какие то крутые фичи есть у спринга, я просто детально этот вопрос не изучал.

Про прервать, кстати я ничего не говорил, но такая возможность в стандартной реализации отсутствует, только если вырубать весть executorService, либо на уровне таски, прерывания делать, но что-то, что другое херня как по мне
1584 1895429
>>895424
Как вариант сделать проверку внутри самого метода.
Если он итерационный, то в начале итерации чекать статус задач и если активна задача - прерватьЗадачу - то выходить из цикла и завершать метод.
1585 1895436
>>895429
Но это добавляет синхронность. И зависимость от шедулера задач.
1586 1895442
>>895436
Назовем задачу запущенную в 6 утра A.
Если создать ещё одну отложенную задача, которая сработает например в 12 дня, и просто проставит A статус interupt.
А в задаче A будет проверка на isInterupt, то она завершится корректно и проработает +-6 часов.
Но это велосипеды конечно ещё те.
1587 1895447
>>895442
Можно напердолить акторов еще.
Супервизор управляет запуском задач. Основной актор - обслуживает сам метод. И слушает сигналы. По планировщику супервизор стартует новый актор прерыватель, тот запускается и шлет сигнал на завершение работы основному актору.

Выглядит как пиздец. Зато асинхронно
1588 1895703
Scanner in = new Scanner(System.in);
float count = (float) 0;
float a = in.nextFloat();
int c = 0;
while (a!=0.0){
count += a;
c +=1;

}
System.out.println(count/c);
}
1589 1895705
как заставить выходить из цикла? если а == 0.0
1590 1895737
да бля че он не выходит
1591 1895738
Scanner in = new Scanner(System.in);
float count = (float) 0;
int c = 0;
int a = in.nextInt();
boolean flag = true;
while (flag){
if (a == 0)
break;
count += a;
c +=1;

}
System.out.println(count/c);
}
1592 1895753
while (true){
int a = in.nextInt();

if (a == 0) break;

count += a;
c +=1;

}
System.out.println(count/c);

vможете поздравить
1593 1895805
почему у жабистов зп выше, чем у пхпшников? или у пхпшников на ларавеле\симфони примерно столько же?
1594 1895808
>>895805
Зарплата не зависит от языка.
1595 1895812
>>895808
просто смотрю по вилкам вакансий, в среднем у жабистов они вкуснее
2020-12-3017-22-05.png13 Кб, 802x69
1596 1895844
>>895805
ниши разные. серьезные вещи на пхп никто не делает. пхп - это низкооплачиваемый макакинг, найти серьезную задачу на пхп очень непросто. пикрелейтед - типичная работа пхпшника - устанавливать GA на страницы и настраивать джумлу с вордпрессом, платить за это 300к в месяц никто не будет.
1597 1895970
Давайте самые тупые вопросы оставим в старом году.
1598 1895992
>>895382
Понял.
Скорее второе, например если используется аннотация JPA, а потом модели поменялись. Ведь создаваемые таблицы тоже менять придется и уже существующие данные как-то привязывать.
1599 1896031
Есть класс в котором куча однотипных полей - реализаций одного и того же интерфейса. Разные методы этого класса используют разные реализации. Для этого есть какой-нибудь паттерн по рефакторингу?
image.png127 Кб, 676x707
1600 1896038
>>896031
Прилагаю скрин.
1601 1896053
>>896038
это какой-то пиздец
но не так уж и страшно
а пример методов в этом controller есть? что там с mapper'ами делается?
1602 1896055
Объясните студню, чем отличается работа в java энтерпрайзе от разработки на условном php в средней галере?
image.png123 Кб, 669x699
1603 1896061
>>896053
Мапперы маппят каждый вложенный ресурс. При этом, в каждом маппере логика разная и просто использовать spring data projections не получится.
1604 1896064
>>895844
кажется, твои знания о пхп и том, что на нем делают - устарели
1605 1896094
>>896061
хз по паттернам не подскажу, надо бы избавиться от одинакового кода в контроллере - на первый взгляд неправильно реализован интерфейс EntityMapper - он всегда должен принимать product, а реализации сами уже будут знать что там брать - vendor, parameters и т.д. ну и метод чтобы у него был один - а не 2: toDtos или toDto. Тогда можно вынести это из контроллера, опять же реализовать интерфейс типа SuperMapper у которого будет строка в параметре и на выходе ResponseEntity<?>, и в реализации будет уже вся эта лабуда заимплеменчена - автовайрены нужные мапперы и вызов через case. А в контроллера останется только:
@GetMapping("/{id}/{type}")
получение продукта по id и вызов SuperMapper(product, type)
короче думать не охота, с наступающим бля
1606 1896099
>>896038
Registry
1607 1896123
>>896094
Окей, учту.

>>896099
Выглядит не очень, ну пойдет.
1608 1896134
>>896123
Че тебе не очень блядь?
1609 1896137
>>896134
Че рычишь.
1610 1896138
Можно ли в спринге заавтовайрить все бины, имплементирующие некоторый интерфейс в мапу, где ключом будет возвращаемое значение одного из методов этого интерфейса? Или автовайрить в конструктор и разбираться там?
1611 1896148
>>896064
да? и что на нем делают кроме говносайтов?
1612 1896176
Есть один сервис, который принимает от юзера некоторые команды и сторит их в хранилище. Затем он берет все засторенные команды и начинает их выполнять, причем в зависимости от типа команды, выбирает один из вспомогательных сервисов, который выполняет команды этого типа, вспомогательных сервисов столько же, сколько типов команд. Какой сервис правильнее назвать Handler, а какой Processor? Я думаю, главный сервис - Handler, вспомогательные - Processorы, я прав?
1613 1896186
>>896176
Ещё главный можно назвать Dispatcher, например.
1614 1896189
>>896186
При приеме команд тоже выполняется некоторая логика, если бы ее не было, то мне кажется Dispatcher тоже бы подошел, а так не очень.
1615 1896294
>>896148
не понял? тебе скинуть крупные сайты на нем или что?
если

>на похопэ пишут толька лендинге


то

>на жабе пишут говнолиты из сервлетов и говна


чел, ты либо застрял в прошлом, ковыряя свое обоссаное легаси, либо сектант
1616 1896380
>>896176
Диспетчер - выбирает.
Хендлер - обрабатывает (выполняет)
1617 1896448
>>896138
В мапу по значению метода нельзя.
Можешь автовайрить в лист и руками в мапу.
1618 1896615
>>895992
Ну тут я даже хз. Зависит от того как сильно изменилась схема.
Может там добавились служебные поля которые особо и не нужны.
А может изменили структуру жсона и например переименовали массив значений, сменили тип поля или еще что. Модели, аннотации джексону, допмаршаллеры - править.
Ну а саму логику в сервисе?
У тебя как приходит в метод на входе модель от маппера - так и приходит. Если нужны новые поля - обрабатывай. Под них и сущности подправь если нужно.

Пример.
Изменился в апи формат в поля с временем создания записи.
Приходила строка с датой dd-MM-yyyy.
Стала приходить строка с iso8601 с датой, временем и таймзоной.
В моделе правишь тип поля.
Либо используешь аннотацию джексона для маппинга iso формата, либо в контроллере в цепочке создания маппера заменяешь маршаллер для локалдейт на офсетдататайм/локалдататайм.
В сервисе изменений по сути нет.
В сущности? Тут сложнее.
Если у тебя в базе поле просто дата а не дататаймстаймзоной то -
Пишешь миграцию на эту таблицу (ликвибейс то в проекте есть?) В которой средствами скл апдейтишь тип столбца и данные в таблице.
Правишь сущность привязаную к таблице.
Если миграций нет - тут я хз. Пишешь дба или кто за субд отвечает. Чтоб предусмотрели при выкате новой версии обновление субд
1619 1896619
>>896615
А. Ну либо если время наыигине нужна то в сервисе переводишь офсетдататайм в локалдейт и сохраняешь в существующей таблице
1620 1896623
>>896615
Вообще проблема времени в прогромизме как стояла так и стоит.
Ебаные локальные форматы, таймзоны и все это говно.

Потому обычно при проектировании базы используют максимально охватывающий тип дататаймстаймзоной.

А для парсинга маппинга используют кастомные маршаллеры под конкретный формат.
1621 1896632
>>896623
Ну и под конец.
Если не понимаешь о чем я про маршаллеры дататаймы то начни отсюда

https://javadeveloperzone.com/spring/spring-jackson-custom-date-format/
1622 1896645
>>896615
>>896619
>>896623
>>896632

На будущее буду подписываться мимо-кiт если вопросы по моим постам то тегайте.

мимо-кiт
1623 1896872
Это пиздец, можно как-то более красиво сделать?
ArrayList<Boolean> valid = Arrays.stream(Collections.nCopies(50, true).toArray(new Boolean[0]))
.collect(Collectors.toCollection(ArrayList::new));
1624 1896964
>>896645
Ебу дал? Пошел нахуй отсюда.
1625 1896967
>>896872
Зачем тебе 50 тру?
1626 1896973
>>896872
new ArrayList<>(Collections.nCopies(50, true))
1627 1896996
>>896645

>кim


Ким Чен Ын?
Хули ты тут делаешь?
1628 1897028
как мне их подключить
1629 1897030
byte-buddy-1.8.15.jar guava-25.0-jre.jar okio-1.14.0.jar
commons-exec-1.3.jar okhttp-3.11.0.jar
1630 1897033
вкатываюсь в QA
1631 1897036
>>897033
выкатывайся нахуй
1632 1897051
>>897030
Через maven. Или, если ты упоротый, через -classpath
1633 1897055
>>897033
А я наоборот, из qa в java вкатываюсь, хочу в автоматизацию войти через год, а там глядишь затянет и в разрабы, но тестирование мне нравится
1634 1897061
>>897051
у я не хочу через ителедж айди кодить чисто так в тектовом документе
1635 1897063
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>MyTestProj</groupId>
<artifactId>MyTestProj</artifactId>
<version>1.0</version>
<dependencies>
<!-- https://mvnrepository.com/artifact/org.seleniumhq.selenium/selenium-java -->
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>4.0.0-alpha-7</version>
</dependency>
</dependencies>
</project>
image.png7 Кб, 326x147
1636 1897067
че дальше?
1637 1897074
>>897061
Мавен без IDE работает. Другой вопрос в том, что на джаве в целом без IDE писать очень сложно.
1638 1897088
ладно убедил
1639 1897091
>>897074
дв mvn -v
1640 1897098
нахуй мавен без идэ есть есть идэ с мавеном оправдывайтесь
1641 1897141
>>897061
И в Блокноте обязательно.
Иначе не тру.
1642 1897144
>>896964
А ты кто такой?
Чего развизжался?

Мимо-кiт
1643 1897377
Чет ничего найти не могу, везде пишут про самоподписанный сертификат.
Мне на почту переслали заверенный сертификат, в нем корневой, промежуточный, запрос, просто сертификат и приватный.
Что с ними делать, как добавлять?
1644 1897525
>>897377
Куда именно добавлять?

Из того, что тебе прислали, часть - сертификаты, часть - закрытые ключи.
Я бы даже предположил, что это всего 1 закрытый ключ, остальное - открытые ключи (сертификаты) - центра сертификации и какой-то корневой.

"Добавлять" тебе надо твой закрытый ключ.
1645 1897654
Есть граф, у каждого узла графа есть свое состояние. Каждый узел можно перевести в другое состояние, при этом соседние узлы также переводятся в другие состояния по определенным правилам. Какой паттерн для этого подходит?
1646 1897659
>>897654
В джаве отсутствует структура данных - граф, поэтому если нужна структура по которой ты будешь делать, именно что, операции с графами: объединение графов, поиск пути, поиск подграфа - то ищи какую-нибудь либу, которая тебе предоставит такую структуру. Если структура не очень сложная, то можно использовать либо дерево если нужны его методы, либо просто создай объект с ссылками на другие объекты.
1647 1897660
>>897659
Чел...
1648 1897661
>>897660
С новым годом!
1649 1897702
Если я импорчу Apache 2.0 библиотеки и выкладываю код на гитхаб, надо что-то указывать в описании?
1650 1897714
>>897702
Нет.
Вот если бы ты форкнул эти либы - надо было бы.
1651 1897763
>>897525
В Спринг, везде пишут про подключение PKCS12.

Но мне пререслали эти сертификаты, не указав вообще ничего(а тот, кто прислал, ничего не знает).
Их можно упаковать, например, через консоль в PKCS12?
1652 1897767
>>897763
Попытаться засунуть туда только приватный? >>897525
1653 1897772
>>897763
А, да, похоже, можно, что-то затупил.
1654 1897907
>>897702
Если решишь закрыть сырцы и продавать софт - укажешь в использованных.
Это не спидозный жпл который требует открытия при использовании
1655 1897930
>>897654
Бамп. Для долбоебов - вопрос не про то, как сделать граф в яве, а как сделать стейт машину с распространением на соседние узлы.
1656 1897932
Есть БД с 100500 таблицами. Для каждой таблицы создавать сущность не рационально.
Есть спринг бут с настроенным подключением к бд, юзающий хибернейт
<bean id="entityManagerFactory" class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
<bean class="org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter" />
Как я понимаю, все подключения с БД завязаны на сущностях, но мне нужно сделать String запрос и вернуть String.
Я не пробовал все методы EM, но, вангую, что они завязаны на сущностях.

Как в рамках всего этого сделать простой запрос, возвращающий String?
На сколько плохо использовать стандартные методы Java и, выходит, плодить подключения к БД?
1657 1897937
>>897932

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


почему? ответь развернуто и будет понятно решение.
1658 1897941
>>897930
можешь делать рекусривно, вызывая методы обновления соседних узлов в самих узлах, либо через какой-нибудь визитор/обсервер, если хочешь делать логику вне классов узлов графа.
1659 1897944
>>897937
Потому что данные из них получаются в одном месте и по факту это просто строки.
Для сущности надо как минимум завести модель(не используя сервис и репозиторий/дао), получается, у меня будет несколько классов-сущностей, содержащих одно поле String и использующихся в одном месте программы. Мне кажется, это лишнее.
1660 1897947
>>897944
Да, они используются только для получения.
1661 1897953
>>897944
Т.е. таблицы одинаковы? Тогда тебе нужно
1) использовать один абстрактный класс с аннотацией @MappedSuperclass и наследовать сущности от него указывая только через аннотацию @Table название таблицы
2) Если не хочешь плодить много классов-пустышек и не нужно делать джойнов между таблицами то тогда тебе нужно разделить маппинги в каждую таблицу через persistence unit, в этом случае нужен будет только один класс сущности на всё.
3) если нужно только читать данные то можно вьюху создать
1662 1897973
>>897930
Блин чувак ты не говоришь как ты сделал граф. Но при этом хочешь решения какого то. Мне угадывать как ты данные хранишь? Ну предположу что кастомным классом нод и ребер. Значит к тебя в ноде должны хранится ребра. Какие тогда вопросы по обновлению всех связных нод могут быть.
так что долбоеб тут только ты
1663 1897977
1664 1897981
>>897953
Вроде годные советы, буду гуглить.
Там есть разные данные, в частности, мне надо создавать запросы вроде
SELECT Name FROM worker
WHERE WORKER_ID ==
(SELECT WORKER_ID FROM job
WHERE job.reg == "2020.03.21.12.23");
Но вернуть мне надо всегда одно поле String, хотя могут быть другие разные поля.
Здесь reg будет везде одинаково называться и будет одного типа, но будет в разных таблицах.
(я сейчас бухой, не очень соображаю)
В общем, вторая часть запроса тоже содержит таблицы, сущности которых не хочется создавать, но название нужного поля у них одинаковое.
1665 1897982
>>897981
Напиши хранимую процедуру.
1666 1897989
>>897982
Не очень разбираюсь, но это то, что выводит хибер с флагом "show sql"? Не могу их написать, потому что не создавал сущности, по другому не знаю, как получить. Может потом пойму, когда отрезвею.
1667 1898023
В котлине можно вызвать генерик метод с параметром, типа такого: getEnumConstraints<EnumClass>(), и в методе будет доступен тип, использовавшийся при вызове. А в яве такого нет?
1668 1898141
>>897953
Про первое понял
https://en.wikibooks.org/wiki/Java_Persistence/Inheritance#Table_Per_Class_Inheritance
А про второе не совсем, смысл в том, чтобы в запросе указывать имя юнита и замапать несколько юнитов на один класс?
Если так, то тоже решение проблемы, спасибо.
1669 1898150
>>898141
Вроде нашел, что он на EM вешается, буду пытаться собрать вместе.
1670 1898229
>>898023
Что в Котлине кроме андроида и сахара есть, чтобы чисто для себя? Андроид не интересен, в принципе.
1671 1898237
Стоит ли чистый код читать?
1672 1898287
>>898229
А ты понимаешь, вообще, откуда этот Котлин взялся, и для чего был сделан?
Узнай, и узнаешь ответ на свой вопрос.
Андроид тут ни при чём вообще.

Понять, надо тебе это или нет, можно открыв хорошую книжку по Котлину. Например, The Joy of Kotlin.
И это зависит от тебя. Если фп тебе не интересно, сахар не интересен, то тебе это не надо, скорее всего.
1673 1898291
>>898237
Какого ответа ты ждёшь?
"Не стоит, каждый двачер сосачер всё это всасывает с молоком матери" или что?
1674 1898357
>>898237
Я не читал, прекрасно себя чувствую.
1675 1898364
>>898229
по сути любой язык - синтаксический сахар в моем понимании честно сказать, уже дофига одинаковых инструментов для одинаковых задач существует, но хорошими для этих задач языки делают именно их синтаксические фичи, так вот. статическая и динамическая типизация тоже в целом-то просто синтаксический сахар, можно сказать, ведь в статике можно и на питончике писать если хочешь захотеть.

ток без шейминга за эти слова плиз, знаю, вам вряд ли они понравятся
1676 1898368
>>898291
От тех кто читал их мнения. Стоит ли или нет.
1677 1898384
>>898023
Можно, но это не очень удобно. Поэтому либо делают джинерик на уровне класса, либо если делают на уровне метода то добавляю в входные параметры этот класс T что бы джава сама в рантайме подставила джинертк
1678 1898389
>>898237
читала около трети или около того, прикольная книга, если ты только начинаешь и уже имеешь какие-то представления о ооп. в моем случае там были изложены мои же мысли, но более структурированно и понятно.
1679 1898399
>>898364
Ты употребляешь термины, смысла которых не понимаешь.
1680 1898426
>>898368
читать нужно все
1681 1898428
>>897932
Зачем тебе тогда орм?
Используй или jdbcTemplate, ну или вообще просто jdbc.

Мимо-кiт
1682 1898476
>>898428
Да мне бы научиться чему-то новому. Просто буду потом делать.
1683 1898489
>>898384

>Можно, но это не очень удобно.


И как, например?
1684 1898562
Анонэ, какое самое прибыльное направление для Java? Хочу онли бабки зарабатывать, остальное не интересует.
1685 1898582
>>898562
Банки, судя по отзывам и открытым вакансиям.
мимо вкатун в Андроид
1686 1898591
>>898562
Quantitative Developer

из наемных технарей выше никто не получает
больше - только люди имеющие долю в бизнесе
1687 1898609
>>898591

Ого, ничего себе. Сколько гуглил по айти, ничего подобного не находил. Спасибо.
1688 1898635
>>898489
Пример высосанный из пальца:

class Foo {
interface A{};
interface B extends A{};
interface C extends A{};
class BImpl implements B {}
class CImpl implements C {}
static <T extends A> List<T> createArray(){
return new ArrayList<T>();
}
static <T extends A> void print(List<T> list){
System.out.println(list);
}
public static void main(String[] args) {
print(Foo.<BImpl>createArray());
print(Foo.<CImpl>createArray());
}
}
1689 1898686
>>898635
Ты ведь нихуя вопрос не понял опять.
1690 1898692
>>898686
Почему опять? Ты кто?
1691 1898694
>>898023
На коболе нельзя сделать ничего, что можно сделать на Великом Котлине, на фоне которого кобол теряет свою тьюринг-полноту.
1692 1898706
Сап, жабисты. Короче, я мидл кудер на php, так же использую node. Вопрос, стоит ли мне учить java для более полного понимания? Интересует работа в бэкенде. Есть ли на джаве бэкэнд, крудики и тд.

Или это совершенно другая хуйня и там другие правила?
1693 1898722
"Простажировался" три месяца у Кислина запилил маленький круд из говна и палок на Spring Boot с тестами и мелочами вроде базовой авторизации и кастомного Jackson-сериализатора. Могу писать базовые SQL-запросы, понимаю базовые алгоритмы, хромаю на многопоточке и шаблонах. Чекал вопросы из шапки, на все вопросы по кору (кроме многопоточности) и ооп отвечаю. Этого достаточно что-бы не обосраться на собесе? Я понимаю, что первые пару собесов это 100% луз, но у нас в городе проблема с жаба-вакансиями, а денег на переезд нет, поэтому не хочу проебаться.
1694 1898723
>>898722
Да, достаточно.
1695 1898839
>>898722

> шаблонах



Проектирования?
1696 1898846
>>898722
А каким тестам на буте учат?
1697 1898855
Аноны, которые смогли вкатиться и уже имеют опыт, сколько у вас заняло времени на обретение скиллов и знаний уровня джуна?
1698 1898877
>>898855
Месяца 3-4 в общей сложности, но уже был бэкграунд с плюсами и питоном.
1699 1898925
>>898855
сэйм эз >>898877
1700 1898960
>>898877
>>898925

Я рассчитывал что у меня должно уйти около полугода. Спасибо за ответы.
1701 1899016
1702 1899031
С Новым Годом
1703 1899033
>>898846
На стажировке мы писали на обычном спринге - использовали JUnit 4(в процессе перешли на 5) + assertJ, контроллеры тестили через mockMvc. В выпускном проекте я не стал ничего сильно менять и воспользовался тем-же набором для тестов.
1704 1899037
>>899033

>JUnit 4(в процессе перешли на 5)


Хуйня кстати.
1705 1899042
>>899037
Что лучше?
1706 1899050
1707 1899061
>>899042
TESTNG
1708 1899137
Уже задавал этот вопрос, но сформулирую конкретнее. Есть куча сущностей, на каждую сущность есть контроллер. Но все контроллеры почти полностью идентичны. Или это нормально? Если нет, как от этого избавиться? Пытался делать один суперконтроллер с нужными методами и кучу подконтроллеров вообще без методов. Но при этом приходилось наворачивать идиотские костыли, да и читал что наследование контроллеров является плохим тоном.
1709 1899138
>>899137
Тебе сука выше ответили.
1710 1899143
>>899138
Ткни где.
1711 1899145
>>899143
Там где ты уже задавал этот вопрос.
1712 1899167
>>899145
Если ты про реестр, то я ведь избавлюсь только от кучи зависимостей. Код в контроллерах все равно будет идентичен же.
1713 1899175
>>899167
У тебя будет один контроллер ебана
1714 1899179
>>899175
А, вот как. Понял, спасибо.
1715 1899181
Народ,когда на джуна устраивались какие проекты у вас уже были?
1716 1899182
>>899181
Социалочка.
1717 1899186
>>899181
круд фигня на спринге и как тестовое задание рекоммендовательная система с эластиком
1718 1899193
>>899182
>>899186
Можете подробнее рассказать что делала ваша программа?
1719 1899198
>>899182
Че это ?
1720 1899203
>>899198
Социальная сеть.
>>899193
Несколько простых страничек на хтмл без жс, можно регистрироваться, можно добавлять в друзья и писать личные сообщения (конференций не было), можно создавать паблики и постить в них что-нибудь (подписаться нельзя, но просматривать могут все). Mysql, thymeleaf, spring (boot, mvc, security, data jpa).
1721 1899208
>>899193
круд фигня - проект с хайперскилла. литералли одна сущность с одним репозиторием и парой эндпоинтов. так же basic http auth было прикручено.
рекоммендовательная система выдавала рекоммендации к статье. были статьи, кидаешь запрос на эндпоинт с ее айдишником и тебе по статье с этим айдишником выдаются статьи лучше всего подходящие по содержанию.
1722 1899218
>>899203
>>899208
Ебать вы жесткие,я думал там говно какое-нибудь сойдет
1723 1899223
>>899218
так там по сути и есть говно, абсолютно нулевая хуйня. примеров таких проектов дохуя. а рекоммендовательную систему я вообще у индуса спиздила.
1724 1899225
>>899218
Это и есть говно, лол. Когда приходишь на работу и видишь реальный проект на 500К строк, свой проект начинает казаться нелепым. Поработаешь сколько-то и уже можешь такие пет-проекты писать хоть за несколько часов.
1725 1899227
Какой в спринге есть класс для того, чтобы доставать значение из метода или из поля? Не хочу вручную писать.
1726 1899233
>>899223
Асечку?
1727 1899239
>>899227
Ты о чём вообще?
Возможно, тебе нужны Spring Expression Language и в частности @Value.
image.png29 Кб, 488x491
1728 1899246
>>899239
Что-то типа пикрила.
1729 1899255
>>899239
Что за хуйню ты написал.
@value это загрузка из конфига
1730 1899258
>>899255
По моему это один и тот же шизик сидит и отвечает на все вопросы невпопад.
1732 1899267
>>899266
Ну и зачем ты второй раз написал хуйню? Причем тут вообще бины, конфиги? Тебе уже пример с интерфейсом показали.
sage 1733 1899271
>>899267
Пошёл нахуй.
1734 1899438
>>899246
Это не у спринга, а у кора - Reflection API,
но ты туда не лезь - убьет нахуй. Это вообще нарушение ООП так обращаться, нарушение DDD точно.
Если тебе нужна общая логика у реализаций интерфейса - используй default методы или реализуй абстрактный класс.
1735 1899441
Везде пишут, что у Entity обязательны геттеры и сеттеры.
Я ебашу только геттеры
@
Все работает
1736 1899460
>>899438
Я знаю, что это рефлексия. Но у спринга наверняка уже есть готовая реализация таких штук для доступа к полям и методам.
1737 1899466
>>899441
Попробуй и без геттеров вдруг сработает
1738 1899468
>>899460
у тебя хуевая архитектура
говнокод
1739 1899469
>>899468
Держи в курсе.
1740 1899470
>>899466
Может без Entity тоже сработает?
1741 1899472
>>899460
Спринг использует класс ReflectionUtils + Reflection API. Глянь там утилитный класс там много чего есть и поиск методов и.т.д. Или я опять вопрос не понял?
1742 1899549
Спасибо за новогодний тред, придурки.
1743 1899550
>>899549
Ты салатик уже доел?
1744 1899555
>>899549
Дождёмся треда имени Covid-20, блять.
1745 1899798
Ничего не понимаю
java.lang.IllegalStateException: No PlatformTransactionManager set
Если была бы несовместимость версий, были бы другие исключения, а тут просто не инжектится/не создается бин.
Кроме PlatformTransactionManager все работает
@SpringBootApplication должен автоматически определять этот бин, вроде как.
@Autowired висит
1746 1899863
>>899798
Нахуя ты вручную описываншь бины если используешь бут?
Ты долбаеб?
1747 1899900
>>899863
Хуй знает, на каком-то сайте скопировал.
1748 1899982
>>899863
Убрал все описание вручную, оставил только Бут, выходит то же самое.
1749 1900004
>>899982
Бля, все.
1750 1900051
>>899438
При чём тут ООП и ДДД?
Рефлекшн - это инструмент, и ты либо умеешь, либо не умеешь им прользоваться.
Но, да, если это не библиотечный код, то надо десять раз подумать, прежде чем использовать рефлекшн.
1751 1900054
>>900051

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


хуле тут думать, рефлекшн используется везде. в любой более-менее серьезной либе есть ReflectionUtil или его аналог. как работать с аннотациями без рефлекшена? макароны типа >>896038
с помощью рефлекшена превращаются в пять строчек кода. при помощи рефлекшена можно свой дсл замутить, можно писать тесты которые тестируют объекты вдоль и поперек. дохуя всего можно короче. и он очень сильно упрощает жизнь. думать нужно только над тем чтобы достаточное количество тестов написать чтобы переименование поля в классе не сломало его вызов в какой-нибудь строке.
1752 1900201
Мертвый тред мертвого языка
1753 1900223
>>900054
Не согласен с тобой, рефлексию используют крайне редко и там где нет возможности сделать по другому. Она необходима это факт, но её использования лучше избегать, если её можно заменить. Либо использовать уже готовые фреймворки.

> как работать с аннотациями без рефлекшена?


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

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


ты это про моки написал? или ты предлагаешь рефлекшн апи использовать в тестах?
1754 1900409
Как в spring-cloud-stream при использовании функций просто послать сообщение в какой-то канал? Напридумывали какой-то хуйни с поллингом.
1755 1900410
>>900223

> АОП вообще не очень хорошая парадигма.


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

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

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


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

> или ты предлагаешь рефлекшн апи использовать в тестах?


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

вообще рефлекшн - это киллер фича жабы, хотя сейчас это почти никто не осознает.

ни спринг, ни хибер, ни какое jee не были бы возможны без рефлекшна.
1756 1900448
>>900410

>хотя сейчас это почти никто не осознает.


В смысле?
Никто на этой борде, или что?

Потому, что все нормальные девелоперы осознают, активно используют, и не рефлексируют лол по этому поводу.
1757 1900453
>>900448

> В смысле?


ну сейчас когда полмира пишет на жабе рефлексировать по поводу того почему она выстрелила а не руби, оберон, смалталк или тикль особо повода нет.
1758 1900456
>>900409
Короче сам разобрался, надо создавать supplier, который возвращает EmitterProcessor. Какие-то костыли ебаные блядь, ебанина функциональная. С @StreamListener и @SendTo был нормальный человеческий подход.
1759 1900470
>>900410
Я согласен с тобой в очень многих твоих высказываниях, но в некоторых моментах я против а именно:

> что тебе мешает в своих проектах делать так же?


1. Давай сразу условимся AspectJ мертв, я пытался его поставить год назад он требует толи 6 толи 8 джаву качал с m2 последнюю версию, может он переехал куда-то по факту говоря аоп мы говорим про Spring AOP.
2. Из первого пункта мы можем работать только с объектами управляемые спрингом, да мы все ещё можем встраивать обработчики, но это значительно усложняет работу в этой области.
3. АОП плох тем, что дебажить его практически не возможно если ты только сам его не писал, поэтому тот случае который ты привел это разработка фреймворка, в этом контексте, это уместно, но большинство проектов это бизнес задачи и туда тащить АОП это смерть.

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


Опять же для разработки библиотек это необходимая вещь, без неё никак, но не для обычных проектов.

> она очень сильно сокращает код (но делает его хрупким)


Что ты имеешь в виду?

> те же самые моки без рефлекшна были бы невозможны


я поэтому и спросил, что ты имеешь ввиду: реализацию через моки или прям использование рефлексии, но похоже и то и то. Я честно говоря не сторонник рефлексии в тестахкроме моков потому-что по-моему мнению у класса должен быть публичный контракт и то какими методами он его достигает меня волновать не должно TDD в числом виде. Поэтому тут скорее в другом вопрос тебе зачем приватные методы тестировать? Или зачем проверять приватные переменные?
1760 1900541
Почему джаверы так любят сидеть в протухшем треде?
1761 1900551
>>900470

> Что ты имеешь в виду?


ну то и имею - вмето того чтобы писать 1000 строк я пишу 50

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

решение - создаешь аннотацию @Trackable (которую ставишь у тех полей бинов которые нужно мониторить) и в абстрактном классе ДАО пишешь в методе save его обработчик. решение тривиально прозрачно и понятно, тестируется элементарно, тут даже 50 строк нет. а теперь попробуй прикинуть трудоемкость чтобы это реализовать без рефлекшена и аннотаций.

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


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

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

а с использованием рефлекшена пишется один класс и в нем один метод (либо один метод в абстрактном классе AbstractEntityTest), который гарантированно проверит все твои бины.

> Или зачем проверять приватные переменные?


почему сразу приватные? Например, можно сделать такой тест - все булевы значения в Entity должны храниться только в виде примитива boolean а не в виде Boolean (который может иметь значение null). и заодно сразу проверить что в базе колонка с констрейтом not_null.

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

или сделать такой тест - допустим у тебя есть абстрактный тест, который проверяет твои классы, ну те же Entity или дао, или другие классы с известным интерфейсом. ну так вот - можно сделать тест, который будет проверять что у тебя присутствует тест для твоего дао и он наследуется от этого абстрактного класса. т.е. если кто-то добавил новую сущность в код то он должен будет сразу и тест написать иначе вообще ничего не соберется. ну и т.д.
1761 1900551
>>900470

> Что ты имеешь в виду?


ну то и имею - вмето того чтобы писать 1000 строк я пишу 50

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

решение - создаешь аннотацию @Trackable (которую ставишь у тех полей бинов которые нужно мониторить) и в абстрактном классе ДАО пишешь в методе save его обработчик. решение тривиально прозрачно и понятно, тестируется элементарно, тут даже 50 строк нет. а теперь попробуй прикинуть трудоемкость чтобы это реализовать без рефлекшена и аннотаций.

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


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

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

а с использованием рефлекшена пишется один класс и в нем один метод (либо один метод в абстрактном классе AbstractEntityTest), который гарантированно проверит все твои бины.

> Или зачем проверять приватные переменные?


почему сразу приватные? Например, можно сделать такой тест - все булевы значения в Entity должны храниться только в виде примитива boolean а не в виде Boolean (который может иметь значение null). и заодно сразу проверить что в базе колонка с констрейтом not_null.

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

или сделать такой тест - допустим у тебя есть абстрактный тест, который проверяет твои классы, ну те же Entity или дао, или другие классы с известным интерфейсом. ну так вот - можно сделать тест, который будет проверять что у тебя присутствует тест для твоего дао и он наследуется от этого абстрактного класса. т.е. если кто-то добавил новую сущность в код то он должен будет сразу и тест написать иначе вообще ничего не соберется. ну и т.д.
1762 1900557
>>900541
Меньше залётной зелени.
1763 1900615
>>900551

> создаешь аннотацию @Trackable


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

> для всех определенных полей моих Entity


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

> все булевы значения в Entity


> все методы, ... должны начинаться с is а не get


Ну это опять же относится к интеграционным тестам, причем даже не интеграционным а типо тестирование политики компании, честно такого не встречал, но имеет место быть.
1764 1900634
>>900551

> историю изменений определнных полей


Понял ты о полях, читал жопой, ну да аоп тут напрашивается. Но это все ещё логирование.
1765 1900650
Можете кинуть какой-нибудь проект на Гитхабе вроде тех, что разрабатывают в коммерческой разработке на Спринге
1766 1900751
Как обычно анальники вместо дискуссии друг друга учить начали.
Перед кем выебываетесь, дауничи? Духота.
1767 1900767
>>900751
МВП-тред дальше.
1768 1901015
что ему не нрав
image.png38 Кб, 884x448
1769 1901016
1770 1901017
javac 11.0.9.1
1771 1901018
>>901017
ты ебанушка
1772 1901024
>>901016
лал вот я смарт
1773 1901060
привет аноны, есть вопрос. написал свой апи сервис, но основу брал с гайда. Суть в том, что у меня есть условные интерфейс ReviewsService, класс ReviewsServiceImpl и класс ReviewsRestController. Сам вопрос: где должна храниться логика? на данный момент все в контроллере и я не понимаю, зачем мне и интерфейс и класс ReviewsService. и посоветуйте что-то почитать на эту тему желательно статью какую-нибудь
1774 1901075
>>901060

>где должна храниться логика?


В сервисе

>на данный момент все в контроллере


плохо

>зачем мне и интерфейс


чтобы описать контракт и иметь возможность использования моков в тестах

>и класс ReviewsService


чтобы не иметь логики в контроллере.
Задача контроллера - описать контракт твоего апи и дернуть нужные методы нужных сервисов, максимум еще как-то провалидировать формат запроса, но это тонкий момент.
1775 1901076
Spring State Machine - нормальная поделка или хуйня?
1776 1901087
>>901075
спасибо за ответ. Пользуясь случаем:
1. что подразумевается под контрактом?
2. можешь еще подсказать, зачем делать интерфейс сервиса и класс, который имплементирует его методы?
1777 1901090
>>901087

>1.


В гугл.

>2.


Уже подсказал.
1778 1901092
>>901090
понял + принял + спасибо
1779 1901095
>>901060
Интерфейс нужен затем же, зачем абстрактные фабрики и простыни геттеров-сеттеров в POJO. Просто пиши и не задумывайся, традиция такая.
1780 1901098
скажите как как решить задачу если в одну строку десят чисисел пишут?
1781 1901100
import java.util.*;

public class Main {
public static void main(String[] args) {
int count = 0;
for (int i = 0; i < 3; i++){
Scanner in = new Scanner(System.in);
count += in.nextInt();

}
System.out.println(count);
}
}
1782 1901132
>>901016
javac .class | rm -rf /
1783 1901136
>>901132
Нужно два ||, а то будет пайп.
1784 1901181
>>901075
Если я хочу провалидировать тело запроса, мне нужно это делать в отдельном методе или в методе сервиса, в котором я работаю с этим телом?
1785 1901183
String [] arr = {"aa","a","green","one","milk","even","odd"};
System.out.println(arr);

как отображать массивы?
1786 1901184
[Ljava.lang.String;@d716361
1787 1901189
>>901183
Например, System out println(String.join(", ", arr));
Или через простой цикл for по массиву.
1788 1901190
>>901181
дополню: а если у меня этот метод войд? сохранение сущности из тела запроса
1789 1901246
>>901183
Arrays::toString
Удаленка? 1790 1901332
Банковские джависты, вы на удаленке сейчас работаете или вас уже в офисы выгнали?
1791 1901400
>>901332
Молодой человек, вам в мвп ответили
jb3.jpg89 Кб, 1200x1200
1792 1901404
Сап, java-куны

Какие косвенные штуки полезно делать, чтобы лучше кодилось?

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

Поделитесь, плиз
+ сразу плиз примеры упражнений/техник. Или направьте туда, где искать
1793 1901423
>>901181
Смотря какая там логика валидации.
Если проверить что передали один параметр - checkRequired() прям в методе.
Если у тебя сложная логика, с ветвлением в зависимости от типа запроса, чтение данных из базы и т.п. То выноси в отдельный класс валидатор. Или даже цепочку валидаторов.

В общем надо смотреть по месту.
Стикер575 Кб, 308x281
1794 1901430
Что лучше, eclipse или IntelliJ IDEA, и почему? Надо написать прогу на яве под windows. Дайте ссылки на статьи по теме холивара.
1795 1901441
>>901404
Зарядку.
1796 1901442
>>901430

> на яве под windows


лол
Идея лучше нодискас. Но тяжеловесная, сейчас хайп на Visual Studio Code - он легковесней, есть плагин для java
1797 1901443
>>901442

>легковесней


>электрон

1798 1901448
>>901442

>лол


А что не так?
1799 1901464
>>901448
Ява живет по понятиям WORA
АУЕ!
1800 1901487
А как найти максимальный элемент в бинарном дереве?
1801 1901489
>>901487
TreeUtils.findMaxElement
1802 1901498
>>901489
Ебать, в апацхе коммонс и гуаве хоть чего-то нет?
1803 1901605
>>901498
TyanUtil.findTyan() - пока не реализовали.
1804 1901723
>>901430
я писал в разное время на
Jbuilder
JDeveloper
netbeans
eclipse (RAD)
jidea

видел еще kdevelop, atom - написать программу в три класса сойдет, но не более.

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

также +100 к удобству дает программирование под линуксами, если есть возможность (т.е. если нет необходимости использовать рутокены и прочую поебень) сразу перекатывайся.
1805 1901728
>>901723
Так, давай ка про тормоза подробнее? И мне не нужен линукс, у меня винда.
Чем именно эклипс плох?
1806 1901740
>>901728

> Чем именно эклипс плох?


всем. хотя одних хоткеев в 4 кнопки будет достаточно, поверь.

> Так, давай ка про тормоза подробнее?


никаких тормозов нет. в папке с идеей лежит файл idea64.exe.vmoptions, отредактируй его дав идее гигов восемь оперативки и все будет летать. также хорошо все свои проекты с кодом и папку с кешами идеи держать на SSD.

мифу про тормоза идеи и быстроте эклипса уже лет 15, и связаны они с тем что идея на свинге а эклипс на SWT который есть расширенное AWT. но ебана, в 2005 еще можно было это всерьез обсуждать но сейчас это просто смешно.
1807 1901768
>>901430
Идея лучше всего, но самая тяжёлая. На бюджетном ноуте её тормоза - вовсе не миф, и пользоваться ей очень больно, если у тебя всего 8 ОЗУ или меньше.
А больше ничего и нет, то импорты надо писать вручную, то кривая интеграция с мавеном. Vs code вообще не юзабелен, какие плагины ни ставь - так и остаётся в лучшем случае продвинутым текстовым редактором, с которым всё равно нужно держать открытыми терминал и файловый менеджер.
Если бы в вижуалке (не vs code) была поддержка джавы, юзал бы её.
1808 1901802
Вопросы про структуры данных и алгоритмы
Какую пользу принесет мне их изучение?
Почему бы просто не использовать для работы с данными ArrayList и циклы for?
Когда следует применять те знания, которые я получу после изучения?
1809 1901843
>>901768
У меня 8 озу, правда не ноут, а пк с i5-3570. IDEA не тормозила, даже когда была запущена вместе с WebStorm'ом, запущенным angular-сервером (2гб, примерно, при сборке) и docker с БД, в которую каждую секунду писалось от 100 до 1000 значений.
Она действительно тяжелая, открывается дольше (хотя ssd спасает при индексации проекта), но при этом чуть ли не за тебя пишет код.
1810 1901872

>В старых версиях JDK конструкция System.out.print() ничего не выводила на экран — за ней должен был следовать вызов System.out.println() или System.out.flush(), который выводил содержимое всего буфера. Теперь данные выводятся на


экран немедленно.

Кто помнит те времена?
1811 1901873
>>901872
Так это вчера было.
1812 1901879
>>901872
Выводила, но когда буфер заполниться.
1813 1901902
Что занимает меньше места в памяти: массив из трех енумов или один лонг?
1814 1901913
>>901902
Тебе сюда: >>1888626 (OP)
1815 1901915
>>901913
Ну мне интересно все-таки.
1816 1901917
>>901872
первый раз такое слышу. и вообще похоже на гон.
может и было где-то в альфаверсиях.
но в 1.1 уже такого точно не было.
1817 1901920
>>901872
ну да, вот нашел спеку 1.1

> The autoflushing of PrintStream described on page 199 has been cleaned up. If autoflush is turned on, any newline anywhere in the output causes a flush, as does any write of a byte array. If autoflush is off, no automatic flushing is done.



то есть это баг который был пофиксен еще в 1996 году. пиздец откуда это можно выкопать было.
1818 1901930
>>901802

> Какую пользу принесет мне их изучение?


огромную

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


ну да, когда у тебя есть только молоток то все вокруг гвоздь. потом мемчики будут рождаться на тему жава тормозная и жрет много памяти.
1819 1901951
>>1901934 →

Бампану сюда
1820 1901952
Какого хуя @JsonProperty(access = Access.READ_ONLY) не работает?
1821 1901967
>>901951
Потому что когда проект разрастётся дальше интернет-магазина, то на чём ни пиши, архитектура будет сложной. Спринги и хибернейты юзают как раз для больших проектов, а поэтому с самого начала думают, что потом это всё разрастётся, и придётся поддерживать.
А геттеры-сеттеры потому, что нет свойств, а управлять доступом как-то нужно, и тупо делать все поля public недостаточно. Да и дохуя либ, игнорирующих поля и сразу ищущих методы get и set через рефлексию, с этим тоже нужно что-то делать.
1822 1901972
>>901952
Блядь, понятно, в бухгалтерии все перепутали.
1823 1901976
>>901951
руби это такое гламурное пхп. динамическая типизация делает ее не приспособленной ни для чего кроме написания говносайтов и мелких консольных утилит
rubyhahaha.jpg75 Кб, 500x375
1824 1901999
>>901976
Ты хуйню написал.
Руби никакого отношения к пыхе не имеет вообще, ни в каком смысле. Это очень разные вещи.

Руби - говно, да.
Но, по совершенно иным причинам.

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

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

А то, что он тормозной, и то, что там нет современных конструкций (как в современном питоне), и всё прочее - это уже на втором месте.

>>901951
Чувак, твои претензии к джаве - это претензии дилетанта.
Для таких как ты и сделали руби, собственно.
1825 1902010
Народ,есть коллекция листов с объектами,нужно чтобы после некоторых манипуляций остались только уникальные. Как реализовать?
1826 1902018
>>902010
list.stream().distinct().collect(Collectors.toList());
Или сконвертировать в Set и обратно.
1827 1902021
>>901999

Мои претензии к джаве в том что надо дохуя кода писать, а код этот будет делать просто нихуя. Просто крудик-хуюдик library app написать можно так заебаться со всеми этими аноташками. Я вот раньше работал на php, и был у меня проект на codeigniter. И бля я прям вайбы получаю, прям та же боль как и от него. Пишешь какую-то хуйню.

> Программа на руби - это всегда внутренний DSL.



Ну а чё такого. Это же не полноценный язык, а интуитивно понятная поебень которая "бах и работает".

> динамическая типизация



Ребзь, я вам щас такую хуйню скажу. Только псс, никому. Динамическая типизация - это норм. Рили, никаких проблем от динамической типизации нет. Любые проблемы с типами контрятся ТДД, а в рубе писать не через ТДД будут только ебаклаки. В джаве разве не юзают ТДД?
1828 1902029
>>902021

> ТДД


Писать 100500 тестов тупо ради проверок, который делает компилятор в нормальных языках.
1829 1902039
>>902021

>Любые проблемы с типами контрятся ТДД


Нет. Это просто мантра дурачков.

И, когда я писал "полная динамика - это пиздец" - я _не_ имел в виду динамическую _типизацию_. Но, думаю, тебе сложно будет это понять.
1830 1902042
>>902029

Ну я позырил как выглядят тесты на JUnit, да, я бы их тоже не хотел писать)))

Java не заточена под ТДД просто. В рабби тесты наоборот помогают код писать, делают документацию, описывают спецификацию, и ещё и позволяют защитить код от случайных изменений которые всё проебут.
1831 1902044
>>902039

> Нет. Это просто мантра дурачков.



А ну признайся, пишите тестики хотя бы иногда?

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



Там ещё два хуесоса явно про тесты сказали, поэтому воспринял как стандартный заёб про типизацию.
1832 1902049
>>902044

> про тесты


Про типы. Пойду спать, темно чет
hypedrivendevelopment.jpg79 Кб, 500x700
1833 1902050
>>902044
Полная динамика означает, что ты не поймёшь, что делает этот код, и почему, пока не ты _внимательно_ не просмотришь все исходники, до семнадцатого колена. И так - каждый раз.

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

Алсо, ты как-то поздновато начал кукарекать за руби.
Ruby hype is over, и поезд ушёл по рельсам.
1834 1902056
>>901999

> Руби никакого отношения к пыхе не имеет вообще, ни в каком смысле.


я не говорю что они похожи я говорю что они взаимозаменяемы и делят одну нишу
1835 1902075
>>901902
Бамп, вопрос актуален.
1836 1902076
>>902075
напиши класс, посмотри байткод, в чем проблема?
1837 1902077
>>902076
Долго
1838 1902090
>>901902
Ты решил сделать битовые поля?
Иногда это оправдано, но, чаще - нет, т.к. работать с ними будет заёбисто.
И лонг - 64 бита. Не думаю, что массив из 3-х енумов займёт меньше восьми байт.
1839 1902091
>>902090
Все уже сделано, я хочу понять, что выгоднее: EnumSet.of или Arrays.asList.
1840 1902104
>>901902
long
Любой массив это заголовок объекта, около 24 байт.
А вообще для ответа на такие вопросы есть https://github.com/openjdk/jol
1841 1902136
>>902091

>что выгоднее: EnumSet.of или Arrays.asList


Это немножко разные вещи, вообще-то.
И разница тут вовсе не в "выгоде".
Хотя, EnumSet будет выгоднее однозначно.

Алсо, зачем ты вообще озаботился расходом памяти?
Попахивает дилетантскими преждевременными оптимизациями.
1842 1902242
>>902050

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



Тесты почитай

> Алсо, ты как-то поздновато начал кукарекать за руби.



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

> Ruby hype is over, и поезд ушёл по рельсам.



Ну и чё? Мне плакать начать от того что на дваче больше про руби не пишут так яро? У нас в компании руби основной язык, так же пишем на php, node и вот щас сказали что закинут меня на проект на джаве. Вот сижу учу джаву.
1843 1902249
>>902242
После руби обычно в джаваскрипт вкатываются.

В джаве смузихлёбам неуютно.
Они не понимают, что и зачем, и куда делось всё смузи.
И пытаются принести свой устав в чужой монастырь.
Вот, как ты, например.
1844 1902320
>>902249

>После руби обычно в джаваскрипт вкатываются.



Ну так вкатываюсь. Просто node не то чтобы конкурент всяким php/ruby, на нём немного разные проекты пишут.

> В джаве смузихлёбам неуютно.



Еееееесть такое. Действительно что, зачем, куда смузи делись. Сидят тут свои.

> И пытаются принести свой устав в чужой монастырь.



Да я не пытаюсь, я пытаюсь понять чё у вас монастырь такой уебанский. Я всегда считал себя таким прагматиком, который пишет не на любимом хачкеле а на том что эфективно делает свою работу. Если какой-нибудь go хорош для микросервисов, я буду жевать эту байду и делать микросервисы.

А тут меня чёт мобмит с джавы. Куда бля смузи дели, вместо смузи какой-то индийский кофе
1845 1902347
>>902320
Всегда поражался людям, которые яп меняют как перчатки.
На джаве уже сижу 4 года, до сих пор всех тонкостей не знаю и ещё целая телега знаний, которые нужно выучить. Нет я конечно могу и на js и на питоне и на го и на скале че-нить написать, но это будет ctrl+c ctrl+v, сделал и забыл.

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


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

> Всегда поражался людям, которые яп меняют как перчатки.



А чё тут сложного-то? Слышал анекдот про свинью и курицу? Ну тут как бы так же.

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

Проекты-то не супер большие, не всем же ебучий банковский тырпрайз писать.
1847 1902360
>>902352

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


Ну если тебя такая позиция устраивает, то конечно все ок. Просто ты ж по сути знаешь все и ничего одновременно. Куда развиваться? Новый яп учить?
jfff.jpg17 Кб, 895x80
1848 1902368
Джаваны, сап.
Подскажите если кто знает как в IntelliJ врубить хинты в цепочках вызовов, в частности в стримах вроде пикрил. После каждого вызова д.б. серый прямоугольник в котором показывается тип, который крутится в стриме. Знаю, что такая фича есть только в ultimate версии, и как-то она включалась в каком-то меню которое выплывает по какой-то горячей комбинации. Но забыл. Не то чтоб они мне нужны, но то что не могу вспомнить как их включить неимоверно бесит.
1849 1902369
>>901441
Это верно, делаю уже

>>901404
Бамп вопросу
1850 1902374
>>902360

> Просто ты ж по сути знаешь все и ничего одновременно.



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

> Куда развиваться?



Туда куда рыночек порешает

> Новый яп учить?



В том числе
1851 1902454
>>902368
Editor -> inlay hints -> java -> method chains.
1852 1902479
>>902454
Это место я и так знаю, и там все включено, но хинтов все равно нет
1853 1902489
>>902454
все, разобрался. вопрос снимается. Там нужно соблюсти форматирование кода такое же как на закладке с настройкой инлэй хинтов. это я в общем-то тоже знаю, но в памяти у меня почему-то отложилось что и так работало.
там как-то по уебански все - надо во всей цепочке расставить по этажам вызовы, а я тестировал только часть выстраивая. спасибо, короче.
1854 1903013
Какие паттерны чаще всего используете?
Читали что-нибудь из пикрил?
___
На следующей неделе начну работу искать, самое время узнать что-то новое
1855 1903029
>>903013
Стратегия, фабрика ApplicationContext, синглтон бины.
1856 1903035
>>903013
Почитай лучше "Object Design Style Guide" (есть на scanlibs.com)
Потом - Refactoring Мартина Фаулера (есть там же).

И, в любом случае, читать такие вещи в переводе - зашквар и неуважение к себе. Либо ищи оригинальный русскоязычный контент, либо читай по-английски.
1857 1903042
Научите плз подключать внешние библиотеки без ide
1858 1903044
Мавен ант градл какой легче всего будет их собрать?
1859 1903048
>>903029
Спасибо. Такие названия, кстати, я чаще всего и слышал.
>>903035
Спасибо, сейчас посмотрю первую книгу.
На английском я пока что читаю в два раза медленнее, надо практиковать больше.
1860 1903075
>>903048

>посмотрю первую книгу


Имей в виду, что там в примерах не джава, а универсальный псевдокод.
Что-то типа гибрида джавы-скалы-тайпскрипта-пыхи.
Но, всё понятно.
1861 1903118
>>901443

Электрон довольно легковесный, на самом деле. Он сжирает константно сколько-то МБ потому что хранит в памяти кусок браузера, но это как бы всё. Это не делает его тормозным. Шустрее него будут разве что Sublime какой-нибудь.

Ну и вим, ясное дело, вне конкуренции.
1862 1903157
>>901442
А ничего, что разница между идеей и vsc - как между каналом и канализацией, примерно?
Алсо, заебали вы все уже, ставьте ssd, и всё будет быстро.
1863 1903170
>>901430
IDEA.
Почему - попробуй и поймёшь. Или можешь поверить на слово.
Писать на Swing.
Читать - гугол.
Вот, например:
https://beginnersbook.com/2015/07/java-swing-tutorial/
1864 1903220
>>903170

>Писать на Swing


сразу бы ему пожрать говна уже тогда предложил
1865 1903228
>>903220
На чём ни пиши гуи на жабе - будешь жрать говно.
1866 1903236
>>903220
>>903228
О, а вот специалисты подоспели.
Уроки сделали уже?
1867 1903460
Пересоздайте тред, а то у меня не работает.
1869 1903673
>>902018
Как в сет и обратно сконвертировать?
1870 1903830
>>903673
new ArrayList<>(new HashSet<>(list))
1871 1903881
>>903830
Грамоздко получается по моему,его же еще заполнить нужно. Как это можно покрсивше сделать?
1872 1903957
>>903881
Вряд ли, джава вообще лаконичностью не отличается. Примеры со стримом и с сетом - самое лаконичное, что можно придумать.
1873 1904672
>>903957
Верхний пример работает,когда мы создаем новый лист,а можно уже с существующим ?
1874 1904684
>>904672
Можешь вручную обойти свой list внешним и вложенным циклом за О(n^2), искать повторы и удалять. Но изменять коллекцию во время итерации по ней просто так нельзя: https://stackoverflow.com/questions/10431981/remove-elements-from-collection-while-iterating
1875 1904946
Как понять, что я уже могу джуном попробовать куда-то пойти? Киньте может какой-то вопрос или таск, который примерно может это задетектить, плес.
1876 1904958
>>903830
>>904672
ты что-то какую-то хрень говоришь. и тот и тот пример делают очищенный от дублей лист из уже готового листа с именем "list"
Олсо, если твоя модель данных предполагает, что не должно быть дублей, то тебе, возможно, стоит отказаться от коллекции типа List
1877 1905236
>>904946
Если можешь сам наклепать примитивный круд с репозиторием, рестом и юнит-тестами, закоммитить и запушить, то можешь уже работать.
1878 1905408
>>905236
И это должен уметь кандидат в джуны? ты серьезно?
1879 1907043
>>905408
А что сложного?
Он же не написал интеграционные и е2е тесты.
Нетнаписал спринг батч и мессаджинг
1880 1907528
Поясните, насколько сильно отягощает возможность вкатиться отсутствие вышки или спо?
1881 1908369
>>903013

>Какие паттерны чаще всего используете?


агрегат
.PNG31 Кб, 828x334
1882 1912114
Аноньчик, что здесь происходит? Поясни долбоёбу, пожалуйста. Нихуя не понимаю!
1883 1912503
>>912114
Если ты про смысл всей конструкции, которая выделена, то это тернарный оператор, как я понял
Вот почитай
https://javarush.ru/groups/posts/ternarnyj-operator
1884 1915242
>>905408

Да. Если это говно запускаешь еще и под докером- то уже умелый мидл.

А если ты накрутил спринг бут и ЛОМБОК фубля фунахуй, и все это под кубернетесом - то ты уже уверенный синьор и в любой кофейне можешь требовать ванильный раф и смазку для жопы
1885 1923048
>>905236
>>905408
>>915242
Одна поправка: этого будет достаточно на реальной работе, но на собесе требования будут выше.
Энивей, скилл прохождения собесов это отдельная дисциплина, которую нужно качать, проходя собесы
Другой-анон
1886 1935368
Что порекомендуете в качестве реализации JPA?
EclipseLink или Hibernate?
С первым уже работал ранее, но почему-то все топят за hibernate.
Аноним 1887 1950242
>>935368
Может стоит работать через средства Spring ?
1888 1950291
Подскажите пожалуйста, какую базу данных облачную можно попробовать использовать для студенческого проекта?
Ранее пока работал со свифтом, там очень годным был Firebase. Но я как понял, его можно адекватно использовать только на андроиде или ios, для десктопного приложения чтобы его прикрутить нужны танцы с бубнами.

Спасибо заранее!
1889 1952654
>>877505
Ну в целом он прав. Может не 2-3 часа конечно, но за день лениво делается.

мимо вкатун
1890 1961579
Чем подключиться к процессу java, чтобы глянуть, какие функции вызываются? VisualVM + Btrace не пашет (проблема в virtualvm, там чет фиксили, без толку), об intrace ваще молчу (лет 7 назад последний релиз). Неужели нет такого, чтобы подключился к процессу в два клика? Как в ollydbg. Геморрой с этой джавой
1891 1965592
>>952654
Посмотрел задание.
Сам круд то накидать - хуйня на вечер.
А вот с RSA, pkcs7, подключение по SSL - тут я б завис на несколько дней. Может там конечно все просто, а может и нет.
Да и опять же что значит "посмотреть" документ. Это скачать его прям в браузере открыть? Я ж не ебу какого он формата будет, чтоб какой-нибудь docx открыть надо будет в жаваскриптовых библиотеках ковыряться или еще чего придумывать. Вряд ли там тхт имели ввиду, если уж про криптографию упомянули.
1892 1965594
>>965592

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


фикс
1893 1997710
Тред утонул или удален.
Это копия, сохраненная 18 апреля 2021 года.

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

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