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

Ответить в тред Ответить в тред
Check this out!
Java #100 thread /java/ Аноним 09/03/21 Втр 15:09:55 19618751
java3.png 126Кб, 503x711
503x711
java2.png 166Кб, 503x711
503x711
java1.png 180Кб, 427x604
427x604
Прошлый >>1903662 (OP) (OP)

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

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

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

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

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

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

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

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

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

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

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

Перед тем, как задать вопрос Как вайти в айти?, ознакомься с вики:
https://github.com/qqqlll/Java-Thread/wiki
https://github.com/random76/Java-Thread/wiki
Аноним 09/03/21 Втр 16:08:54 19619472
>>1960809 →
>>1960798 →
>>1960355 →
Вычищатель спринга их обоссыт. А потом мы все дружно будем выяснять, что наследуется - квадрат от ректангла или наоборот.
Аноним 09/03/21 Втр 16:14:12 19619523
изображение.png 132Кб, 1366x768
1366x768
изображение.png 45Кб, 1097x441
1097x441
изображение.png 6Кб, 542x100
542x100
Пацаны,почему оно не работает? Еще и тип данных не обновляет,в базе уже давно не TIMESTAMP
Аноним 09/03/21 Втр 16:18:11 19619604
>>1961947
Лишь бы без легаси хибернейта.
Аноним 09/03/21 Втр 17:35:36 19620705
Перекатываю реквест. Аноны, киньте годные статьи, где объясняется многопоточность, как работают треды, локи, форкжоинпулы, экзекутеры, как все параллелится и тд. Только чтобы было реально понятно. В прошлых тредах сеньор кидал задачки, смотрел решения и мало что понял, почему и зачем написали именно так.
Аноним 09/03/21 Втр 18:10:38 19621096
>>1961952
Ошибка говорит, что ты ожидается получить дату без таймзоны, а передаешь ты character varying.
Вопрос: откуда у тебя String? Что ты получаешь на выходе с pst.setString(2, date)? Можешь посмотреть профайлером какой запрос реально выполняется?
Аноним 09/03/21 Втр 18:50:54 19621277
>>1961960
>хибернейта
Как ты собрался с базой работать? Не думаешь же ты, что кто-то в здравом уме потащит MongoDB в продакшен?
Аноним 09/03/21 Втр 18:55:25 19621288
Аноним 09/03/21 Втр 18:55:54 19621299
Ничего себе, тред, который не долго грузится и не тупит? Ну хуй знает, для джавы такое не подходит.
Аноним 09/03/21 Втр 18:58:53 196213410
>>1962129
Ты можешь это исправить.
Аноним 09/03/21 Втр 18:59:43 196213511
>>1962127
Если верить треду, то Spring JDBC
Аноним 09/03/21 Втр 19:09:50 196214212
>>1961875 (OP)
Джавач, а есть фриланс на жабе? Ну, я знаю, что нет, но заебался на удалёнке в потолок сидеть плевать, а денег много не бывает. Как/где искать проекты, на которые требуется 2-4 часа в день?
Аноним 09/03/21 Втр 19:13:43 196214413
>>1962127
> Как ты собрался с базой работать?
Через божественный JdbcTemplate.
> Не думаешь же ты, что кто-то в здравом уме потащит MongoDB в продакшен?
Конечно нет, монга - это для MVP-проектов на пхп и жс, которые дольше пишутся, чем находятся в эксплуатации.
Аноним 09/03/21 Втр 19:14:55 196214614
>>1962142
Только всякое говно для андроида, и то там котлин.
Аноним 09/03/21 Втр 19:20:20 196215115
>>1962128
Маняме сраное
Где полтреда, ебать?
Аноним 09/03/21 Втр 19:21:09 196215316
>>1962151
мочух разбушевался. его просили только тег фиксануть
Аноним 09/03/21 Втр 19:33:59 196216617
image.png 97Кб, 767x693
767x693
Круданы, шо за Dropwizard ? Слышал кто?
Аноним 09/03/21 Втр 19:48:48 196218118
>>1962166
Тут кто то писал, что сейчас Спринг без Бута не нужен. А где в комментах я читал, что люди начали отказываться от Бута. Что с ним не так?
Аноним 09/03/21 Втр 19:52:36 196218419
>>1962181
> Спринг без Бута не нужен
Пиздёж.
> люди начали отказываться от Бута
Зависит от кейсов.
Аноним 09/03/21 Втр 19:53:17 196218520
>>1962181
Тут аналогия как в линуксах. Есть сложный, но могучий спринг, который нужно много настраивать и конфигурировать, а еще важнее уметь это делать хорошо. А есть коляска - спринг бут, где за тебя все настроили, и тебя в ней катают, а ты только на несколько кнопок нажимаешь и полностью переделать под себя не можешь.
Аноним 09/03/21 Втр 20:21:38 196220821
>>1962184
Ну вот написано, в этом году 62% - в прошлом больше. Почему те кто пользовался, отказался? В каких кейсах?
Аноним 09/03/21 Втр 20:32:06 196222622
>>1962127
>>1962144
Лол. Мимо-с-монго-на-продакшене
>>1962142
Есть. На фл.ру. Ставка - копейки. Разбирают моментально. Минут за 5. В основном студенты которым лень делать лабу. Один раз писал микросервис для какой-то компании. Заплатили косарь. Ниочем короче.
>>1962185
В целом да. Но те же микросервисы поднимать за 5 минут - самое то.
Аноним 09/03/21 Втр 20:32:23 196222723
>>1962226
>Лол. Мимо-с-монго-на-продакшене
Как впечатления?
Аноним 09/03/21 Втр 20:34:45 196223624
>>1962227
А как должно быть? Работаем, не жалуемся. В чем вопрос то?
Аноним 09/03/21 Втр 20:37:21 196223825
>>1962236
Есть какие-то особенности, трудности? По сравнению с постгресом, например.
Аноним 09/03/21 Втр 20:45:30 196224826
>>1962238
Лол. Как ты жопу с пальцем сравниваешь? Я в прошлом треде писал. Монго не заменяет нормальную базу. У нас стек по базам: мускуль+монго+редис. Каждая под свои задачи.
И как правильно сказали, последняя версия того же мускуля уже может заменить монгу или редис. Но так как у меня суровое легаси, мы юзаем три старых базы, вместо одной новой.
Опять же, лучше пойти в тред к базунам, я думаю там смогут пояснить по хардкору какая база и для чего лучше. По крайней мере, в том треде пишут, что пока noSql не заменяют SQL базы, и наоборот.
В общем все от задачи зависит.
Аноним 09/03/21 Втр 20:46:38 196225227
>>1962248
>Монго не заменяет нормальную базу
Тогда вопрос снят. Мне было бы интересно об особенностях использования его именно в качестве основной базы.
Аноним 09/03/21 Втр 20:49:31 196225728
>>1962252
Не это говно. Транзакций нет(хотя говорят что в последних версиях частично есть), нет реляций, большой занимаемый объем на диске. Ну и ещё куча всего, почему монго не заменит нормальную базу.
Аноним 09/03/21 Втр 21:00:21 196226629
переходим на модную молодёжную монгу
@
а где тут транзакции и нормализация?
Аноним 09/03/21 Втр 21:02:34 196226930
>>1962266
Пока и без них нормально живется. А вот от эластика меня прям корежит.
Аноним 09/03/21 Втр 21:03:43 196227031
>>1962134
Обязательно исправлю - насру еще косарь сообщений.
Аноним 09/03/21 Втр 21:07:26 196227532
ТРАНЗАКЦИОННЫЙ КЕШ
@
ТРАНЗАКЦИОННЫЕ ЛОГИ
@
ТРАНЗАКЦИОННЫЕ СОКЕТЫ
Аноним 09/03/21 Втр 21:08:02 196227733
>>1962266
>а где тут транзакции и нормализация?
нинужно, сикуль - устарелое говно 50-летнее. Бэк можно писать на ноде+монга.
Аноним 09/03/21 Втр 21:12:38 196227934
>>1962277
> сикуль - устарелое говно 50-летнее
Я уже почти уверен, что всевозможные носклы пилят не для решения несуществующих проблем реляционных СУБД, а тупо потому, что SQL всем наскучил.
Аноним 09/03/21 Втр 21:14:59 196228335
>>1962275
типа чтобы получить кеш, нужно сходить в другой сервер, сделать запрос, вернуть обратно, и подставить это вместо результата? А не проще в саму базу сходить?
Аноним 09/03/21 Втр 21:19:42 196229036
>>1962283
Смотря что там в кеше, если результат очень жирного (в сравнении со скоростью сети) запроса, то лучше кеш.
Аноним 09/03/21 Втр 21:42:20 196231837
Аноним 09/03/21 Втр 22:04:47 196234838
>>1962318
реально такое слышал от фронта, который немного ноду потыкал.
Аноним 09/03/21 Втр 22:06:44 196235239
>>1962318
Тебе правда select from where join нравится больше, чем json?
Аноним 09/03/21 Втр 22:09:52 196235540
Аноним 09/03/21 Втр 22:10:48 196235741
>>1962352
Да, при желании можно такой запрос заебенить, что половину кода писать не нужно
Аноним 09/03/21 Втр 23:05:02 196239642
>>1962352
Да вы заебали. Разные задачи сравниваете. Может ты и в писсуар срешь?
>>1962357
Вот этого двачую кстати
Аноним 09/03/21 Втр 23:10:24 196240243
изображение.png 44Кб, 300x210
300x210
>>1962396
>Да вы заебали. Разные задачи сравниваете. Может ты и в писсуар срешь?
Ты не понял пикрил отсылку.
Аноним 09/03/21 Втр 23:25:40 196240844
>>1962352

Щас бы выбрать монгу и страдать от проблем, решенных rdbms еще в прошлом веке. Хотя жс-опетухам не привыкать к героическому переизобретению того, что весь мир уже давно юзает.
Аноним 10/03/21 Срд 03:21:20 196250245
>>1961875 (OP)
Сишарподебил пририсовал голову петуха в юбилейном треде. Как же смешно, наверное.
Аноним 10/03/21 Срд 03:38:37 196250546
Чем подключиться к процессу java, чтобы глянуть, какие функции вызываются? VisualVM + Btrace не пашет (проблема в virtualvm, там чет фиксили, без толку), об intrace ваще молчу (лет 7 назад последний релиз). Неужели нет такого, чтобы подключился к процессу в
Аноним 10/03/21 Срд 03:39:35 196250647
Чем подключиться к процессу java, чтобы глянуть, какие функции вызываются? VisualVM + Btrace не пашет (проблема в virtualvm, там чет фиксили, без толку), об intrace ваще молчу (лет 7 назад последний релиз). Неужели нет такого, чтобы подключился к процессу в два клика? Как в ollydbg. Геморрой с этой джавой
Аноним 10/03/21 Срд 03:50:12 196250848
>>1962181
>люди начали отказываться от Бута. Что с ним не так?

Много магии
Аноним 10/03/21 Срд 03:51:38 196251049
Аноним 10/03/21 Срд 04:38:01 196251350
>>1962144
> > Как ты собрался с базой работать?
> Через божественный JdbcTemplate.
Как раз изучаю сейчас хибер и
JdbcTemplate малость. Мне мне кажется мутить каскадные операции в темплейте уж слишком заебищно. Особенно с мэни-ту-мэни связями. А в хибере это пару конфигов сделать и все работает.
Аноним 10/03/21 Срд 09:58:27 196254751
>>1962513
а потом на проде обсираешься, ибо фулскан на фулскане и кешем погоняет
Аноним 10/03/21 Срд 10:38:42 196257652
image.png 480Кб, 503x725
503x725
>>1962502

Тащемта не просто головы, это классика, это знать надо!
Аноним 10/03/21 Срд 10:46:39 196258253
>>1962547
Ну он вроде написал что у него пет-проект. Можно и с гибером и с темплейтом поиграться. В бою же в итоге будешь программировать на SQL.
>>1962502
С другой стороны - сами виноваты. Надо было перекат пилить, а не тянуть кота за яйца 1000 постов.
Аноним 10/03/21 Срд 11:00:49 196259054
>>1962576
Ахахахахащваз смифные мемчики. Ставьте лайк, подписка.
Аноним 10/03/21 Срд 11:12:27 196259755
>>1962547
Хз, у нас на проде спринг дата с гибером, в тонких местах native sql запросы в репозиториях, ну и все. Мне по кайфу.
Аноним 10/03/21 Срд 11:15:23 196260156
>>1962582
>Надо было перекат пилить, а не тянуть кота за яйца 1000 постов.
Ничего, вот этот тред не только до 2000 постов добьем, но и 3000 возьмем!
10/03/21 Срд 11:16:57 196260257
>>1962590
Какой же ты душнила. Небось сеньеристый сеньер? Сможешь Дейкстру за 5 минут написать?
Аноним 10/03/21 Срд 11:18:54 196260358
>>1962601
И так каждый тред увеличивать прогрессию на 1к
Аноним 10/03/21 Срд 13:33:30 196267959
>>1962597
Все зависит от изначальной архитектуры, нагрузки и задач. У нас натива 90%. Гибер это прям редкий кейс. И если разработчик решил использовать гибер, это может иметь неприятные последствия в плане перформанса и последующих изменений кода. Ну, у нас так по крайней мере.
Аноним 10/03/21 Срд 15:30:06 196276160
Аноним 10/03/21 Срд 16:50:53 196284361
>>1962576
Бля, я и забыл про этот каноничный пик! Ну тогда ладно, понял отсылочку
мимо >>1962502
Аноним 10/03/21 Срд 16:56:27 196284762
я не могу нигде найти ничего про конфигурацию бинов через xml на спринге. я уже заебался, никакой инфы нетууууууууууууууууууууууууууууууууууууууууууууу
Аноним 10/03/21 Срд 17:00:52 196285063
Аноним 10/03/21 Срд 17:15:36 196286464
>>1962847
Потому что сайты 2006 года перестали платить за хостинг.
Аноним 10/03/21 Срд 17:24:23 196288065
>>1962864
>>1962850
конфигурирование бинов черех хмл топ тема, не понимаю почеум ей щас мало пользуются. Мб кто-нибудь знает какие-нибудь ресурсы по этой теме? даже в доках спринга мало инфы об этом
Аноним 10/03/21 Срд 17:31:13 196288766
Под kotlin native есть фреймворк какой нить, наподобие spring?
Аноним 10/03/21 Срд 17:47:06 196289667
>>1962864
Да не, interface21.com нормально открывается.
Аноним 10/03/21 Срд 18:24:38 196294868
изображение.png 901Кб, 1023x768
1023x768
Дедуля молодец
10/03/21 Срд 19:30:13 196300669
10/03/21 Срд 19:31:48 196300870
>>1962761

jooq всем вроде бы пиздат, но почему-то претит идея завязывать код на рантаймовую схему бд и вообще на доступ к ней.
Аноним 10/03/21 Срд 19:57:45 196305271
>>1963008
>jooq
оно ещё и платное? Опенсорсная QueryDSL существует лет 10
Аноним 10/03/21 Срд 20:00:14 196306072
>>1963008
Ещё не могу понять как из Record сделать сущность. Писать мапперы?
Аноним 10/03/21 Срд 20:31:09 196309573
Пасаны, gwt в 2021 еще жив?
Аноним 10/03/21 Срд 20:32:07 196309874
Аноним 10/03/21 Срд 20:43:26 196310575
>>1963095
сомневаюсь. Хотя идея отличная, и реализация тоже норм
Аноним 10/03/21 Срд 20:51:18 196311276
image.png 5Кб, 318x130
318x130
>>1963095
Очень сильно мёртв.
Аноним 10/03/21 Срд 21:03:19 196313077
>>1963112
Надо было еще javafx и было бы комбо
Аноним 10/03/21 Срд 21:07:07 196313478
>>1963130
Да я постил уже его в прошлом треде. Одного эталона мёртвости достаточно.
Аноним 10/03/21 Срд 21:18:51 196315179
Аноним 10/03/21 Срд 21:20:49 196315580
Аноним 10/03/21 Срд 21:21:30 196315681
Аноним 10/03/21 Срд 21:25:15 196315982
Аноним 10/03/21 Срд 21:26:37 196316183
что в жаве отвечает за веб сокеты?
Аноним 10/03/21 Срд 21:28:55 196316484
Аноним 10/03/21 Срд 21:30:48 196316585
>>1963164
жестко у вас однако,не как с нодой
Аноним 10/03/21 Срд 21:40:02 196317086
>>1963165
Энтерпрайз, хуле. На любом языке достаточно большой проект обрастает кучей конфигураций/кастомизаций, поэтому в спринге с самого начала это всё стараются учесть, чтобы потом меньше переделывать. Кроме спринга есть куча микрофреймворков, там почти неотличимо от всяких нод и питонов, наверняка и для вебсокетов есть.
Аноним 10/03/21 Срд 22:44:35 196323387
Что интересного в этой вашей жаве кроме задротства?
Аноним 10/03/21 Срд 22:51:51 196323688
>>1963233
А что интересного в других языках?
Аноним 10/03/21 Срд 23:00:56 196324089
>>1963236
эта джава как голый без труселей бегаешь. Оперсурс
Аноним 10/03/21 Срд 23:05:20 196324490
>>1963240
Так что и где интересного то на других стеках?
Аноним 10/03/21 Срд 23:09:37 196325191
>>1963236
На питоне много библиотек.
Аноним 10/03/21 Срд 23:14:14 196325492
>>1963251
У всех популярных языков много библиотек. Что интересного-то?
Аноним 11/03/21 Чтв 10:58:25 196343693
image.png 7Кб, 450x112
450x112
image.png 162Кб, 564x460
564x460
Почаны, есть ли в мире jvm хоть что-то напоминающее по гибкости MitmProxy?

Чтобы аддоны, поддержка http1/2, websockets?
Аноним 11/03/21 Чтв 11:05:10 196344094
>>1963254
Точку с запятой надо ставить.
Аноним 11/03/21 Чтв 14:52:31 196365095
Аноним 11/03/21 Чтв 15:08:33 196367196
На какой жаве проекты на вашей работе? 8? 11? Или может к 17 уже вовсю готовьтесь?
11/03/21 Чтв 15:19:40 196367597
>>1963671

8-11 по моему опыту и опыту коллег пока самые популярные
Аноним 11/03/21 Чтв 15:50:05 196370498
Почему модули не взлетели? Почему спринг не модульный?
Перейдут ли все фреймворки на модули в будущем?
Аноним 11/03/21 Чтв 15:56:55 196371699
>>1963704
>Почему модули не взлетели?
Потому что нет версий и ломают обратную совместимость.
>Почему спринг не модульный?
Модульный.
>Перейдут ли все фреймворки на модули в будущем?
Нет. Джава умерла, новых фреймворков не будет.
Аноним 11/03/21 Чтв 15:58:34 1963718100
>>1963704
Модули решают несуществующую проблему.
Аноним 11/03/21 Чтв 16:04:59 1963725101
>>1963718
Но разве нет кейсов, где было бы нужно отрезать ненужную часть jdk и других библиотек/фреймворков, чтобы освободить часть ресурсов?
Про стронг инкапсуляцию я тоже не понял нахуй она нужна.
Аноним 11/03/21 Чтв 16:13:58 1963737102
Аноним 11/03/21 Чтв 16:25:05 1963752103
>>1963671
У нас 13, но у меня сравнительно маленькая компания. Когда выйдет 17 LTS, скорее всего пересядем на нее надолго. До этого работал в банке на 8 жабе.
Аноним 11/03/21 Чтв 16:26:15 1963754104
>>1963671
8, на 11 проект не компилится.
Аноним 11/03/21 Чтв 16:31:54 1963759105
Обратная совместимость как в пайтоне получилась, если много зависимостей.
Python 2.7 == Java 8
Python 3.x == Java 9+
Аноним 11/03/21 Чтв 16:35:43 1963763106
>>1963759
Да и хуй с ней, с обратной совместимостью. Я серьезно. Не вижу смысла тащить за собой ошибки прошлого, если есть возможность сделать нормально. Все равно версии жабы основной потребитель - интерпрайз - никогда не будет мигрировать на легаси. Только новые проекты будут стартовать на новых версиях. А в микросервисной архитектуре это все вообще перестает быть проблемой.
Аноним 11/03/21 Чтв 16:42:58 1963773107
>>1963763
Ну может после 9 норм будет миграция с 11 на 17 и в далекое будущее на 20 версии.
Аноним 11/03/21 Чтв 17:03:26 1963807108
хочу перекодировать webm в mp4 джавой с помощь xuggle, но приложение крашится если в webm есть аудио. Без аудио все норм, мб кто-нибудь сталкивался?
Аноним 11/03/21 Чтв 18:54:19 1963978109
>>1963671
Перешли на 11 три месяца назад
Аноним 11/03/21 Чтв 19:02:03 1963993110
>>1963759
Да. Немного закосячили. Спасибо ораклу. Но на самом деле, если контора не может с 8 на 11 мигрировать - значит в ней какие-то рукожопы сидят. Да, это не совсем просто. У нас где-то 3 месяца ушло. Но там два человека в свободное время ковырялись. В целом - ничего сложного.
Аноним 11/03/21 Чтв 19:11:23 1964008111
>>1963978
>>1963993
А зачем вам это было надо? Что в 8ке нехватало?
Аноним 11/03/21 Чтв 19:13:04 1964011112
Пишу проектную работу с использованием JavaFx
Какие подводные?

Аноним 11/03/21 Чтв 19:15:12 1964013113
>>1964008
> А зачем вам это было надо? Что в коболе нехватало?
Аноним 11/03/21 Чтв 19:19:41 1964018114
7 аннотаций на каждой сущности, иногда их даже больше, чем кода в самой сущности. Нормально?
Аноним 11/03/21 Чтв 19:21:01 1964022115
>>1964018
Где-то я уже это читал.
Аноним 11/03/21 Чтв 19:32:15 1964048116
Аноним 11/03/21 Чтв 19:32:35 1964049117
>>1964011
swing лучше сделан по моему субъективному мнению
Аноним 11/03/21 Чтв 19:34:44 1964052118
>>1964013
вот ты владелец продукта. Будешь тратить кучу денег на переход на другую жабу, если и так все работает?
Аноним 11/03/21 Чтв 19:49:41 1964078119
>>1964013
Я серьезно спросил, какие клевые фичи есть в 11, ради которых не жалко средств на миграцию. Разница между 7 и 8 огромная, а между 8 и 11 - нинужные модули, нинужный вар, нинужный запуск без компиляции.
Что там нужного? 10 разных методов в старых классах? http-client?
Аноним 11/03/21 Чтв 19:53:59 1964090120
>>1964052
Зависит от того, насколько я крупный. Для мелких контор новые технологии - шанс схантить сотрудников получше за подешевле. Сберу и втб каким-нибудь похуй, как сидели на 8, так еще сто лет сидеть будут, даже на новых проектах.
Аноним 11/03/21 Чтв 19:56:32 1964092121
Читаю про массивы в java,
пишут, что на самом деле они объекты, то есть для них Object это предок b и что классы для массивов генерируются динамически,
то есть это объект:
int[] arr = new int[2];
возникает вопрос, а как мне посмотреть на этот объект??
если у arr вызвать getClass(), то я увижу "[i"
это название сгенерированного класса? [i это его название ??
Ответьте, плиз,мучаюсь этим вопросом.
Аноним 11/03/21 Чтв 20:02:05 1964100122
>>1964018
Тебе жизнь упрощают, дурик. Больше нравятся простыни кода по 500 строк?
Если это Spring Boot и какой-нибудь Lombock, который аннотациями спасает тебя от ручного выписывания get set toString, итд, то это нома
Аноним 11/03/21 Чтв 20:11:44 1964128123
>>1964078
Пиши на чем хочешь, хоть на ассеблере, всем похуй.
Аноним 11/03/21 Чтв 20:15:01 1964135124
>>1964078
Ну так ты почитай в чем разница. Вар и клиент это круто. А ещё куча оптимизаций. Очень много методов стали работать в разы быстрее. Когда у тебя большое приложение, это будет заметно.
Аноним 11/03/21 Чтв 20:23:11 1964142125
image.png 507Кб, 899x673
899x673
>>1964100
Ну раз упрощают, то пусть.
Аноним 11/03/21 Чтв 20:25:58 1964148126
>>1964092
Да, внутреннее имя класса, [ - это массив, а i - это инт. Можно даже подгрузить его через Class.forName("[I"). Но ничего интересного сделать нельзя, у него даже конструкторов нет, можешь проверить через int[].class.getDeclaredConstructors() . Не забивай себе этим голову, просто используй массивы так, как предлагается.
Аноним 11/03/21 Чтв 20:25:59 1964149127
Аноним 11/03/21 Чтв 20:48:08 1964185128
>>1964142
На джаве даже упрощения выглядят страшно.
Аноним 11/03/21 Чтв 20:57:00 1964205129
>>1964185
Неча на зеркало пенять если ты урод.
Аноним 11/03/21 Чтв 21:14:03 1964232130
Аноним 11/03/21 Чтв 21:28:48 1964251131
>>1964149
Там java наверно седьмая, судя по тому что 2014 год. В многопоточке не было изменений с того времени?
Аноним 11/03/21 Чтв 21:42:11 1964266132
Зумер 20 лвл, устроился в жавакантору, а тут деды 30+, а то и 40+, самому молодому 26. В qa работают милфы, которые мне в матери годятся. Это норма для жава мира?
Аноним 11/03/21 Чтв 21:48:49 1964278133
>>1964266
Вышка прогерская или техническая у многих есть?
Аноним 11/03/21 Чтв 21:49:40 1964281134
>>1964266
Да. Моему тимлиду 35, ещё у нас есть два разраба 60+. Но и молодые есть.
Аноним 11/03/21 Чтв 21:56:12 1964292135
>>1964278
У всех, почти половина отсидели два-три года в аспирантуре.
Аноним 11/03/21 Чтв 22:08:34 1964308136
>>1964292
Отсидели или с кандидатской вышли? И зачем?
Аноним 11/03/21 Чтв 22:10:14 1964310137
>>1964292
> почти половина отсидели два-три года в аспирантуре.
Не хочется никому долг родине отдавать, да?))0
Аноним 11/03/21 Чтв 22:19:07 1964318138
>>1964310
А разве мага дает отсрочку? Она один раз вроде.
Аноним 11/03/21 Чтв 22:19:27 1964320139
Смотрю доку по спрингу, и вижу там два направления.
Реактивный спринг (асинхронный) и нереактивный (синхронный).
копался в нескольких своих пет проектах, пока их делал, гуглил всякое говно на стэковерфлоу. Судя по импортам там, реактивный совсем не используется. Есть ли смысл его учить? Как решается проблема блокировки в запросах к примеру рест макака с круд-гранатой?
Аноним 11/03/21 Чтв 22:24:47 1964329140
>>1964318
Так им за 30, когда они учились - не было никакой маги. Специалитет + 2 года аспирантуры и в 24 освобожден от сапог.
Аноним 11/03/21 Чтв 22:27:00 1964332141
>>1964318
Даёт, и аспирантура даёт, лишь бы всё очным было. И так до 27 лет можно отсидеться, диссер защищать не обязательно.
Аноним 11/03/21 Чтв 22:34:59 1964343142
>>1964320
Используется в некоторых хипстерских проектах, для работы в энтерпрайзе можешь забить, там ещё повезёт, если спринг будет пятый, что там webflux.
> Как решается проблема блокировки в запросах к примеру рест макака с круд-гранатой?
Спринг может обрабатывать несколько запросов параллельно в тред-пуле, на уровне БД параллельность тоже возможна за счёт одновременно выполняющихся транзакций, лишь бы dbms_lock-ов и select for update-ов было поменьше. Это, в общем-то, всё, во время IO треды тупо синхронно ждут ответа.
Аноним 11/03/21 Чтв 22:55:55 1964360143
хммммм
пиздите, господа
Аноним 11/03/21 Чтв 22:56:23 1964361144
>>1964343
>Спринг может обрабатывать несколько запросов параллельно в тред-пуле, на уровне БД параллельность тоже возможна за счёт одновременно выполняющихся транзакций, лишь бы dbms_lock-ов и select for update-ов было поменьше. Это, в общем-то, всё, во время IO треды тупо синхронно ждут ответа.
я так полагаю по стандарту на каждый запрос контроллере выделяется отдельный новый бин и этот бин кладется в тред пулл?
а сешшенфактори (к примеру гибернейтовский) он потокобезопасный т.к. нет внутреннего стейтмента, верно понимаю?
Аноним 11/03/21 Чтв 22:56:41 1964363145
Аноним 11/03/21 Чтв 23:11:35 1964387146
>>1964361
Нет, бин только один, здесь не EJB.
Потокобезопасность в целом достигается за счёт написания всех бинов так, чтобы в них не было стейта.
Аноним 11/03/21 Чтв 23:31:47 1964410147
>>1964387
ну вот допустим у меня есть контроллер. в нем дао бин зааутовайреный сеттер методом. В том DAO собсно session factory таким же образом припаянный. Больше никакий бинов или полей нет.
За счет чего тут достигается потокобезопасность?
Аноним 11/03/21 Чтв 23:40:34 1964416148
>>1964410
а все, я дурак понял кажется. через пулы соеденений в бд. Правильно?
11/03/21 Чтв 23:46:02 1964421149
>>1964266

Хуя тебе повезло, с молодняком работаешь.
Аноним 11/03/21 Чтв 23:49:51 1964429150
Аноним 11/03/21 Чтв 23:56:15 1964435151
>>1964429
т.е. получается если не использовать c3p0 и аналоги, то это не жизнеспособное в реальном мире веб-макака-код?
Аноним 12/03/21 Птн 00:03:05 1964440152
>>1964435
Хз, о пуле сразу думают. В буте из коробки Hikari, без бута на сервере приложений какие-нибудь EE-костыли.
Аноним 12/03/21 Птн 00:04:59 1964441153
>>1964440
ну я понял, спс.
Может что почитать посоветуешь на тему многопоточности в спринг?
Аноним 12/03/21 Птн 00:08:51 1964445154
>>1964441
Да я сам нахватался по верхам в разных мурзилках, тоже надо бы что-нибудь единообразное почитать. Пока присматриваюсь к Pro Spring, там должно освещаться в том числе и это.
Аноним 12/03/21 Птн 11:27:22 1964665155
Примут ли на работу челика с хорошими проектами, но плохим знанием английского?
Аноним 12/03/21 Птн 11:31:33 1964670156
>>1964665
Проверять знание английского никто не будет. Оно нужно в первую очередь тебе, чтобы читать мурзилки на английском (на русском нихуя нет) или разбираться, когда лучший ответ на стековерфлове не подзодит.
Аноним 12/03/21 Птн 11:35:18 1964675157
>>1964670
Отлично, у меня просто стоит встроенный переводчик, хотя я обычно спешу найти ответ и перевожу сразу всю страницу, из-за этого прогресс на английском плохой.
12/03/21 Птн 11:45:26 1964679158
>>1964665

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

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

Ну а так слышал мнение что лучше хороший код и плохой английский чем наоборот.
Аноним 12/03/21 Птн 12:04:43 1964693159
>>1964670
>Проверять знание английского никто не будет
У меня были собесы на английском, причем, похоже, только ради того, чтобы этот самый английский проверить. Но да, это очень редкая ситуация.
Аноним 12/03/21 Птн 13:18:10 1964732160
>>1962679
Все таки 10% он есть. В каких кейсах использование хибера оправдывает себя?
Аноним 12/03/21 Птн 13:19:31 1964734161
СНГ программисты не палятся.
Но да, если ты хочешь жить и работать в своем коровнике, английского на уровне "Лондон из зе капилал оф Грейт британ" хватит. Если хочется получать человеческую зарплату - придется подтягивать английский до вменяемого уровня.
Аноним 12/03/21 Птн 13:25:07 1964738162
>>1964732
Все тесты написаны с использованием гибера. В тесте проще гибером сохранить сущности, чем писать натив или тянуть реальный сервис, который их создаёт.
Есть ещё кейс, когда ты точно уверен что таблица будет читаться/писаться одна, без реляций или сложной логики. Тогда тоже можно гибер использовать. Но как показывает практика, пишут на гибере, потому что "точно уверены", а спустя пол года, из-за новых хотелок бизнеса, приходится переписывать на натив.
В небольших проектах используют правило: сохраняем гибером, читаем нативом.
Аноним 12/03/21 Птн 18:02:25 1965126163
Сеньоры-наносеки, куда стремитесь дальше? Что изучаете, как боретесь со скукой от рутины?
Аноним 12/03/21 Птн 18:06:28 1965134164
>>1964738
>сохраняем гибером, читаем нативом.
риск сохранить не то
Аноним 12/03/21 Птн 18:16:38 1965148165
>>1965134
Это фантазии или можешь привести пример, когда у тебя сохранилось не то?
Аноним 12/03/21 Птн 18:23:34 1965157166
>>1965148
у меня например был бал на тему что хибернейт автоматически сохраняет любые изменения в энтити.
В маппере модифицировал исходную энтити - хопа и это сохранилось. Очень неприятно и опасно
Аноним 12/03/21 Птн 18:59:39 1965213167
Есть 3 способа создания List из обычного массива

String[] colors= {"red", "blue", "yellow"};

//a list backed by the array;
List<String> colorList1 = Arrays.asList(colors);

//immutable lists
List<String> colorList2 = Arrays.asList(colors);
List<String> colorList3 = Arrays.asList(colors);

У List метод remove существует в 2х ипостасьях:
boolean remove(Object o);
E remove(int index);

со 2ми всё ясно: неизменяемые они и всё, так что если вызвать remove (оба варианта) вылетает UnsupportedOperationException

но вот с backed by the array List непонятка:
если на нем вызывать E remove(int index); то вылетит UnsupportedOperationException
но вот если использовать boolean remove(Object o); вылезет просто false без эксепшена!!!
Почему так??
Аноним 12/03/21 Птн 20:35:49 1965334168
>>1965157
>В маппере модифицировал исходную энтити
Не совсем понял, каким образом?
Аноним 12/03/21 Птн 21:18:21 1965361169
>>1965334
entity.setOrderNumber(entity.getOrderNumber() + 1);
mapper.map(entity);
Аноним 12/03/21 Птн 21:18:56 1965362170
>>1965361
>mapper.map(entity);
Ну и что за умственно-отсталый имбецил будет так делать?
Аноним 12/03/21 Птн 21:20:43 1965364171
>>1965362
Такой же вопрос в голове возник, а главное, зачем так вообще делать.
Аноним 12/03/21 Птн 21:25:47 1965366172
Аноним 12/03/21 Птн 21:26:32 1965367173
Аноним 12/03/21 Птн 21:27:37 1965369174
>>1965366
>В маппере модифицировал исходную энтити
>чтобы из entity получить dto например
И зачем для этого твой маппер модифицирует энтити?
Аноним 12/03/21 Птн 21:29:37 1965370175
>>1965367
Любитель писать ручками конструкторы?
Аноним 12/03/21 Птн 21:29:59 1965372176
Аноним 12/03/21 Птн 21:30:45 1965373177
>>1965367
бизнес-логику в дто? А если в процессе понадобятся бины и сервисы? Делать дто бином?

>>1965369
выше показал пример. Модифицирую поле и скармливаю это мапперу
Аноним 12/03/21 Птн 21:31:41 1965374178
>>1965373
Че ты несешь? Какая у тебя в сущности бизнес логика?
Аноним 12/03/21 Птн 21:33:00 1965377179
>>1965374
маппинг из одной сущности в другую - это бизнес-логика. Ты предлагаешь её сувать в сущность. Это начало антипаттерна Active Record
Аноним 12/03/21 Птн 21:33:38 1965378180
>>1965373
>выше показал пример. Модифицирую поле и скармливаю это мапперу
Ну так ты же сам модифицируешь поле, при чем тут маппер? Зачем ты вообще модифицируешь сущность, если не хочешь, чтобы сущность в базе поменялась? Модифицируй тогда само получившееся дто, если нужно поменять какое-то возвращаемое значение без сохранения в базу.
Аноним 12/03/21 Птн 21:34:44 1965380181
>>1965372
Ок, а чем ты пользуешься для этого?
Но вообще вот этот прав, это антипаттерн >>1965377
Аноним 12/03/21 Птн 21:35:49 1965382182
>>1965377
Какой нахуй маппинг из одной сущности в другую? Маппинг из сущности в дто.
Аноним 12/03/21 Птн 21:38:44 1965385183
>>1965378
side effect. Я про это и говорю. Что есть некие неочевидные последствия, про которые надо знать и помнить. Наличие такого - это очень плохо
Аноним 12/03/21 Птн 21:40:31 1965387184
>>1965382
они необязательно одинаковые и необязательно мапятся 1 в 1. Если они неодинаковые - то правила маппинга это бизнес-логика
Аноним 12/03/21 Птн 21:40:40 1965388185
>>1965385
В смысле сайд эффект? Ты буквально меняешь сущность, связанную с базой, чтобы поменять дто. Не вижу тут ничего неожиданного.
Аноним 12/03/21 Птн 21:41:26 1965391186
>>1965388
я прочитал сущность из базы. Ок. А с каких херов она сама себя сохраняет? Команды на сохранение я не давал
Аноним 12/03/21 Птн 21:41:55 1965392187
>>1965387
>необязательно мапятся 1 в 1
Нахуй такие дто, которые не мапятся с сущностями?
Короче напридумывали хуйни с хибернейтом и ебутся в жопы.
Аноним 12/03/21 Птн 21:43:11 1965394188
>>1965392
зачем по-твоему тогда нужны дто? Давай херачить во все внешние системы энтитями из базы и всего делов
Аноним 12/03/21 Птн 21:45:02 1965395189
>>1965394
>зачем по-твоему тогда нужны дто?
Чтобы представить сущность из базы в определенном контексте. Это единственная цель дто, и поэтому оно естественно должно быть в курсе правил маппинга.
Аноним 12/03/21 Птн 21:49:36 1965397190
>>1965395
Ты так и не написал, чем ты пользуешься, чтобы не писать конструкторы ручками.
Аноним 12/03/21 Птн 21:50:09 1965399191
>>1965391
> с каких херов она сама себя сохраняет?
Потому что это сущность, а не обычный pojo.
Аноним 12/03/21 Птн 21:50:32 1965400192
Аноним 12/03/21 Птн 21:52:32 1965401193
>>1965400
>new ZalupaDTO(zalupaEntity)
Расскажи, какая аннотация в ломбоке существует для того, чтобы передавать в конструктор объект так, как ты показал.
Аноним 12/03/21 Птн 21:55:45 1965406194
>>1965401
А с чего ты взял что она есть?
Аноним 12/03/21 Птн 21:58:39 1965409195
>>1965406
>new ZalupaDTO(zalupaEntity)
>Зачем ручками?
>Ломбоком, епта.
>А с чего ты взял, что в ломбоке есть такая аннотация
Ты шизик что ли?
Аноним 12/03/21 Птн 21:59:30 1965411196
>>1965409
>new ZalupaDTO(zalupaEntity)
Ты это зачем сюда приплел? Внимательнее за веткой смотри.
Аноним 12/03/21 Птн 22:08:21 1965414197
>>1965411
Хочешь сказать, что это не твой пост? Ок, тогда каким образом ты организуешь логику маппинга внутри дто?

>Это единственная цель дто, и поэтому оно естественно должно быть в курсе правил маппинга.
Этот же пост по цепочке твой.
Аноним 12/03/21 Птн 22:09:40 1965416198
>>1965414
>Ок, тогда каким образом ты организуешь логику маппинга внутри дто?
А ты думаешь есть какая-то магическая аннотация, которая бизнес логику за тебя напишет?
Аноним 12/03/21 Птн 22:10:23 1965417199
>>1965416
Ну да, все пользуются мапстрактом для этого.
Аноним 12/03/21 Птн 22:11:46 1965418200
>>1965417
Мапстракт сейвит данные в базу при маппинге или что?
Аноним 12/03/21 Птн 22:12:33 1965419201
>>1965418
>Мапстракт сейвит данные в базу при маппинге
Чего блять? Зачем?
Аноним 12/03/21 Птн 22:13:31 1965420202
>>1965419
Я не знаю. Разговор с этой проблемы начался вообще-то.
Аноним 12/03/21 Птн 22:19:52 1965425203
Пиздец. Ну и хуйню вы тут устроили. Пол кривого кейса 40 постов обсуждаете.
Аноним 12/03/21 Птн 22:20:38 1965426204
>>1965420
Я не тот чел, который сам меняет сущность, а потом почему-то жалуется на маппер.

Меня заинтересовал вот этот >>1965367 шиз, который маппит вот так:
>new ZalupaDTO(zalupaEntity)

А поскольку ты защищал его видение, что маппинг должен происходить в дто, то тебе я задал тот же вопрос, что и ему - как вы маппите и почему считаете, что это лучше стандартного всеми используемого мапстракта и его аналогов.
Аноним 12/03/21 Птн 22:20:40 1965427205
>>1965425
Ну а хули, джава мертва же.
Аноним 12/03/21 Птн 22:22:23 1965429206
>>1965426
Я не использую мапстракт, потому что магия ебаная у меня нет таких сложных сущностей, для которых не хватило бы конструктора. И DTO вообще нужны обычно для того чтобы не таскать с собой мутабельные поля или не показывать лишние поля в rest ответах.
Аноним 12/03/21 Птн 22:23:05 1965430207
>>1965429
>у меня нет таких сложных сущностей, для которых не хватило бы конструктора
Все понял, в крупных проектах не работал.
Аноним 12/03/21 Птн 22:24:20 1965431208
>>1965429
Алсо, это не магия, сгенерированный код всегда можно посмотреть и проверить, если возникают сомнения. Но вообще лучше бы ты рили сразу сказал, что у тебя просто нет опыта в этом вопросе.
Аноним 12/03/21 Птн 22:27:28 1965433209
>>1965431
>Алсо, это не магия, сгенерированный код всегда можно посмотреть и проверить, если возникают сомнения.
Зачем, если можно то же самое написать руками?
>>1965430
>крупных проектах
Это где JSF и сущности на два десятка полей?
Аноним 12/03/21 Птн 22:30:00 1965434210
>>1965433
>Это где JSF и сущности на два десятка полей?
Нет, это где любой крупный банк/прочая финансовая хуйня со спрингом и сущностями на два десятка полей.

>Зачем, если можно то же самое написать руками?
Зачем, если можно писать в одну строчку красивый читаемый код?
Аноним 12/03/21 Птн 22:31:26 1965436211
>>1965434
>сущностями на два десятка полей
Ну и зачем?
>если можно писать в одну строчку красивый читаемый код?
Как это противоречит тому, что я написал?
Аноним 12/03/21 Птн 22:35:28 1965438212
>>1965436
>Ну и зачем?
Поработаешь в околофинасовой/банковской сфере с их процессами - узнаешь.

>Как это противоречит тому, что я написал?
Набирать ручками конструкторы для маппинга - говнокод. Также передача дто логики маппинга противоречит сингл респонсибилити и говнокод еще и поэтому.
Аноним 12/03/21 Птн 23:18:39 1965453213
Когда есть смысл НЕ использовать .parallelStream()?
Аноним 12/03/21 Птн 23:19:13 1965454214
>>1965453
Ни разу не использовал.
Аноним 12/03/21 Птн 23:32:49 1965464215
>>1965453
Поищи на ютубе доклады Тагира Валиева про стрим апи. Там были конкретные примеры про параллельные стримы.
Аноним 13/03/21 Суб 12:23:15 1965741216
JAVA для хуесос[...].png 60Кб, 525x330
525x330
Аноним 13/03/21 Суб 14:00:43 1965809217
8395c49a7eef244[...].png 67Кб, 1889x663
1889x663
Почему с джавки уходят?
Аноним 13/03/21 Суб 14:06:00 1965814218
Аноним 13/03/21 Суб 14:30:37 1965819219
>>1965814
Судя по этому графику, ровно как и шарп
Аноним 13/03/21 Суб 14:33:22 1965821220
>>1965819
Судя по этому графику сильнее, чем шарп.
Аноним 13/03/21 Суб 14:43:21 1965832221
Двач. Дам подсказку - не компилируется в цикле итератора. В чем трабл?
package ru.zol.jpoint2019;
import java.util.*;

public class Pair<T> {
private final T first;
private final T second;
public Pair(T first, T second) {
this.first = first;
this.second = second;
}

public List<String> stringList() {
return Arrays.asList(String.valueOf(first), String.valueOf(second));
}

public static void main(String[] args) {
Pair p = new Pair<Object>(23, "skidoo");
System.out.print(p.first + " " + p.second);
for (String s : p.stringList())
System.out.print(s + " ");
}
}
Аноним 13/03/21 Суб 14:47:21 1965834222
>>1965809
Потому что все сливки сейчас в JS мире
Аноним 13/03/21 Суб 14:56:57 1965839223
>>1965834
Питон тоже растет. И пхп, который все хоронят падает медленнее джавы.
Что с джавой конкретно не так то?
Хейтеры говорят про "устарела и умерла", без конкретики.
Джависты говорят "все в порядке, пошел нахуй".
Аноним 13/03/21 Суб 15:01:41 1965842224
>>1965821
Лол. Теперь будем меряться кто быстрее на дно?
Аноним 13/03/21 Суб 15:04:18 1965843225
>>1965832
Да тут без подсказок скажу что код - хуета. Там иде то тебе не говорит в чем дело? Какого хуя у тебя после return ещё что-то выполняется? Где скобки у фора? У тебя тупо куча синтаксических ошибок
Аноним 13/03/21 Суб 15:14:39 1965860226
>>1965843
это код 1в1 с jpoint, придирки не уместны.
Я не пойму почему цикл for требует Object, и не компилируется по этому.
Аноним 13/03/21 Суб 15:28:13 1965871227
>>1965843
скобки кстати не нужны и это не синтаксическая ошибка.
Аноним 13/03/21 Суб 15:29:30 1965876228
>>1965871
Это код стайл ошибка.
Аноним 13/03/21 Суб 15:43:28 1965886229
>>1965839
Потихонечку переходим на котлин и го. Я вот как раз планирую пет на котлин переписать.
Аноним 13/03/21 Суб 15:43:58 1965887230
Аноним 13/03/21 Суб 15:46:25 1965890231
>>1965876
Как в компании договоритесь, так и будете писать. Всем похуй на твои личные предпочтения.
Аноним 13/03/21 Суб 15:57:24 1965902232
>>1965890
> Как в компании договоритесь
Крестоёб, съеби уже. В жабе только один кодстайл, и либо ты ему следуешь, либо ты долбоёб.
Аноним 13/03/21 Суб 15:58:39 1965906233
>>1965832
Pair p - не параметризован. Пиши Pair<Object> p = new Pair<>(23, "skidoo");
Аноним 13/03/21 Суб 16:09:20 1965921234
>>1965860
Потому что у тебя в дженерике object?
Аноним 13/03/21 Суб 16:13:06 1965924235
>>1965902
А вот тут не соглашусь кстати. В джаве конечно есть best practice. Но мне на работе в первый день выдали целый лист по инструкциям кодстайла и файл настроек претифаера для идеи. Например у нас в начале строк 4 пробела, а не таб. Или у нас запрещено if в одну строку писать. Даже если в ифе одно вырежение - нужно обязательно его в скобках писать. Ну и ещё куча мелочи всякой.
Аноним 13/03/21 Суб 16:15:19 1965926236
>>1965924
> Например у нас в начале строк 4 пробела, а не таб. Или у нас запрещено if в одну строку писать. Даже если в ифе одно вырежение - нужно обязательно его в скобках писать.
Это всё общепринято.
Аноним 13/03/21 Суб 16:25:20 1965930237
>>1965924
У меня на одной работе if без скобок нельзя было, на нынешней можно. Самому мне больше нравится без скобок - 2021 год, какие нахуй скобки. Давно пока вообще на котлине писать.
Ну и да, в в крупных компаниях обычно присылают свой файлик для настроек идеи.
Аноним 13/03/21 Суб 16:35:34 1965939238
>>1965930
Я думаю причина запрета ифа без скобок - чтобы было меньше проблем во время мерджа. Когда скобки уже стоят, и туда дописали два разработчика, это проще проверяется на ревью, чем если оба добавили скобки.
Аноним 13/03/21 Суб 16:42:48 1965947239
>>1965939
Скорее дело в том, что можно случайно написать две инструкции в ифе без фигурных скобок, когда под иф попадёт только одна.
if (usloviye)
....statement1;
....statement2;
И вроде бы хуйня, казалось бы, как тут вообще можно проебаться, но если часто копипастить или перемещать туда-сюда код, нет-нет да проебёшься и не заметишь, а автоформатирование не всегда сработает.
Аноним 13/03/21 Суб 16:43:13 1965949240
>>1965930
Зато легко пропустить ситуацию
| if (...)
| foo();
| bar();
Аноним 13/03/21 Суб 16:44:14 1965950241
>>1965949
Сраная макаба, сожрала мои пробелы.
>>1965947 все правильно пишет.
Аноним 13/03/21 Суб 16:56:08 1965965242
У меня на работе есть легаси код, который скоро будет отмечать совершеннолетие. Так там открывающая фигурная скобка с новой строки. Когда приходится в этих классах ковыряться - глаз дёргается.
Аноним 13/03/21 Суб 17:09:15 1965971243
Аноним 13/03/21 Суб 17:12:18 1965972244
>>1965965
А мне иногда попадается код, где сознательно нарушают конвенцию именования идентификаторов и смешивают camelCase со snake_case, например, в DTO с setHuita_neim() из-за некоторых всратых либ, которые не дают переопределить преобразование имён и просто делают первую букву после get/set строчной. Или в очень длинных названиях методов для тестов, потому что читается легче.
Аноним 13/03/21 Суб 17:18:13 1965977245
>>1965971
Это вообще запрещено строжайше. Можно только в новых файлах, которые ты сейчас написал. В старых - нельзя. Вот тут точно причина в ревью, как мне объяснили. Слишком много бесполезных изменений в файле + потенциальные конфликты на мердже.
>>1965972
Да, у нас так в тестах иногда делают. Хз зачем. Мне и так нормально читать. Наоборот - снейк сбивает с толку.
Аноним 13/03/21 Суб 18:31:17 1966052246
>>1965921
дженерик String-ом объявлен в коде в этом коде
Аноним 13/03/21 Суб 18:32:50 1966053247
>>1965906
кстати тогда runtimeException:
Exception in thread "main" java.lang.ClassCastException: class java.lang.Integer cannot be cast to class java.lang.String (java.lang.Integer and java.lang.String are in module java.base of loader 'bootstrap')
at ru.zol.jpoint2019.Pair.main(Pair.java:18)
Аноним 13/03/21 Суб 19:07:51 1966075248
>>1966053
Ну я так понимаю ты этого и добивался?
Аноним 13/03/21 Суб 19:38:40 1966100249
>>1965965
это из шарпа и плюсов, и сишечки
Аноним 13/03/21 Суб 19:44:31 1966109250
>>1965977
Ну так сделай бля один коммит с Ctrl Alt L под правильный кодстайл, а потом работай бля.
Аноним 13/03/21 Суб 19:52:56 1966119251
qwedas.jpg 97Кб, 772x664
772x664
>>1966053
Никаких эксепшнов нет. Проверь код.
Аноним 13/03/21 Суб 20:13:51 1966132252
>>1966100
Это я в курсе. Просто говорю что видел такой кодстайл в старых файлах.
>>1966109
Лол. Я предложил сделать это на первой же неделе работы. Меня на хер послали с этой инициативой. Так что работаем так. мыши ели кактус
Аноним 13/03/21 Суб 20:17:31 1966135253
>>1966119
ты параметризовал Pair Object-ом
проверь мой код и свой. Под строчкой public static void main
Аноним 13/03/21 Суб 20:18:50 1966139254
>>1966132
кодстайл настроить можно - по автоформату будет подставляться такой стиль, который ты сам определишь в настройках.
Аноним 13/03/21 Суб 20:20:43 1966142255
>>1966139
Земля крутиться вокруг солнца.
Аноним 13/03/21 Суб 20:43:15 1966156256
>>1966142
если взять точку отсчета в центре земли, то вокруг земли крутится и солнце, и вся вселенная
Аноним 13/03/21 Суб 21:18:22 1966177257
>>1966156
а этого не проведешь
Аноним 13/03/21 Суб 21:20:11 1966178258
>>1966135
Чел, ты спросил почему не компилится, я поправил твой код. Ты делаешь ссылку raw типа Pair p. Все дженерики там затрутся, в том числе и на листе(да, так это работает в джаве). Будет просто List, а не List<String>.
Подробно читай тут, если интересно https://stackoverflow.com/questions/2770321/what-is-a-raw-type-and-why-shouldnt-we-use-it
Аноним 13/03/21 Суб 21:21:35 1966180259
>>1966178
чувак , это as is код из листика вопросов с конференции, то что ты поправил спасибо, я это и искал, где ошибка здесь.
Аноним 13/03/21 Суб 23:02:46 1966232260
>>1961875 (OP)
Анон, подскажи, где хорошо расписаны основные алгоритмы и/или структуры данных?
Аноним 13/03/21 Суб 23:03:17 1966233261
Аноним 13/03/21 Суб 23:28:12 1966249262
Аноним 14/03/21 Вск 01:01:05 1966291263
320px-Murzilka.jpg 35Кб, 320x437
320x437
Аноним 14/03/21 Вск 01:05:55 1966296264
как в спринге создать одноразовый бин?
Например, я инжектю этот бин куда мне надо и каждый раз раз при обращении к этому бину создает новый бин, выполняется работа, по окончанию работы запускается кастомный destroy-method ?
В общем, как сделать аналог бина со скоупом "request", но без http сессии?
Аноним 14/03/21 Вск 01:08:20 1966298265
Аноним 14/03/21 Вск 01:12:05 1966299266
Аноним 14/03/21 Вск 02:20:39 1966330267
Аноним 14/03/21 Вск 02:27:44 1966331268
Есть ли какая-то разница в создании объектов через:
SomeClass myObject = new SomeClass("arg")
и
SomeClass myObject = SomeClass.class.constructor.newInstance("arg")
?

Читаю про Reflection Api и не очень понимаю, зачем нужен какой-то другой способ инициализации объекта? Ну кроме тех ситуаций, когда на момент рантайма название класса неизвестно, и мы сначала получаем тип SomeObject через SomeObject.class или myObject.getClass. А в иных случаях, зачем мне нужно использовать второй тип инициализации?
Аноним 14/03/21 Вск 02:36:32 1966336269
Аноним 14/03/21 Вск 02:40:21 1966338270
>>1966331
> Ну кроме тех ситуаций, когда на момент рантайма название класса неизвестно
Именно для таких случаев и существует рефлексия, она как раз для создания всяких либ, где заранее неизвестно, какие именно типы будут юзаться, из-за чего нужно уметь работать со всеми. В пользовательском коде не нужно.
Аноним 14/03/21 Вск 04:12:58 1966353271
image.png 70Кб, 835x490
835x490
>>1966336
Скачал этот святой грааль, скомпилил в экзешник хеллоуворлд со свингом и попробовал запустить, получил пикрил.
Со спринг бутом из их мануала mvn spring-boot:build-image написал "пук среньк не могу подключиться к докер-демону", хотя он запущен.
У хипстерков всё такое? Это же нельзя допускать в прод нахуй. Не удивлюсь, если тестировали только на линуксе с самыми последними версиями всего.
Аноним 14/03/21 Вск 04:56:36 1966357272
Аноним 14/03/21 Вск 04:57:34 1966358273
>>1966353
Почему у тебя до сих пор стоит семерка?
Аноним 14/03/21 Вск 05:08:27 1966360274
>>1966358
В одно время пытался перейти не десятку, она не понравилась некоторыми своими аспектами (не телеметрия) + после одного из обновлений полностью отвалилась сеть. Начал понимать тех, кто 10 лет назад не хотел пересаживаться с XP. Через пару лет хочу опять попробовать.
Аноним 14/03/21 Вск 05:40:25 1966364275
>>1966360
Ну смотри, там вроде на семерку перестали выходить обновления безопасности за исключением Extended Security Updates program, если она у тебя есть
Дестяка после последних апдейтов вполне неплохая, хоть я вообще на маке сижу, но в виртуалках когда есть нужна она вполне юзабельная для меня.
Аноним 14/03/21 Вск 09:28:45 1966398276
Аноним 14/03/21 Вск 09:33:35 1966400277
Пиздец. Пишут на джаве и сидят на маках с виндой. Просто 10 ебанутых из 10
Аноним 14/03/21 Вск 10:16:13 1966402278
>>1966400
а ты на чём сидишь и пишешь? Или ты ещё не вкатился?
Аноним 14/03/21 Вск 10:26:33 1966406279
>>1966402
Очевидно на линухе. Статистика из моей компании: 70% линух, 10% мак, 20% винда. Это если мы про разрабов именно говорим. У куа где-то 50 на 50. Всякий административный персонал на винде.
Аноним 14/03/21 Вск 10:34:08 1966409280
>>1966400
Ты какой то дурачок, какая разница на чем запускать виртуалки.
Аноним 14/03/21 Вск 10:45:53 1966414281
>>1966406
>Статистика из моей компании: 70% линух, 10% мак, 20% винда
разрабы это малолетние хацкеры? Не могу придумать причину, зачем мне мучить себя прыщами
Аноним 14/03/21 Вск 11:06:53 1966419282
>>1966409
Потому что ось это такой же инструмент. И внезапно в линухе инструменты для разработки удобнее. Можно много чего автоматизировать.
>>1966414
> разрабы это малолетние хацкеры?
Сразу видно, что ты не работаешь, а в игрушки играешь. Но тебя никто не заставляет же. Пиши на чем хочешь.

Идите докер поставьте и автоматизируйте на винде. Ну как пример.
Ну а так конечно - бесполезный холивар. Не вижу смысла его тут разводить. Пользуйтесь чем вам удобно. Только потом не удивляйтесь что у коллег все работает быстрее и стабильнее, чем у вас.
Аноним 14/03/21 Вск 11:09:29 1966421283
>>1966419
Зачем докер на жабе?

>Только потом не удивляйтесь что у коллег все работает быстрее и стабильнее, чем у вас.
лол. А винде скоро капец, да
Аноним 14/03/21 Вск 11:26:02 1966426284
>>1966421
Ну нет же. Ты не понял мою мысль. Все нормально с виндой все и не капец ей. И она очень много для чего удобна. Но есть кейсы, тем более в джаве, когда линух лучше.
Зачем нужен докер - это вообще считаю тупой вопрос. Ну если ты конечно пишешь на джаве гуй, тогда не зачем. А если сервер - то нужен. Много для каких приложений в 2021 нужен докер.
У меня лично другой кейс. Наше приложение требует 100500 разных сервисов. Разные базы данных, раббит, кафка, и прочее. Намного лучше и проще использовать композ, чем все эти сервисы настраивать руками. Тем более на винде.
Аноним 14/03/21 Вск 11:39:24 1966435285
>>1966426
>Разные базы данных, раббит, кафка, и прочее
Придумали себе проблем и теперь героически их решаете. Почему нельзя их развернуть на стенде, а у себя указывать адрес стенда?
Аноним 14/03/21 Вск 12:46:40 1966459286
void
Аноним 14/03/21 Вск 13:04:31 1966467287
>>1966459
HWND WINAPI CreateWindow(LPCSTR lpClassName, LPCSTR lpWindowName, DWORD dwStyle, int x, int y, int nWidth, int nHeight, HWND hWndParent, HMENU hMenu, HANDLE hInstance, LPVOID lpParam);
Аноним 14/03/21 Вск 13:25:49 1966480288
>>1966435
Тогда наверное надо на каждого разраба по копии каждой хуйни настраивать на разных портах, потому что в базе данных можно схемы менять и дропать, наполнение бд менять, сообщениями сраными кафку забивать, нахуя тебе это все говно от других разработчиков?
Аноним 14/03/21 Вск 13:52:00 1966489289
Аноним 14/03/21 Вск 13:56:22 1966496290
>>1966480
Ну наверное тогда надо использовать testcontainers и не ебать мозгу?
Аноним 14/03/21 Вск 14:13:06 1966500291
>>1966435
У нас есть тестовое окружение и далеко не одно. Но тебе не понять зачем оно нужно на локалхосте. В общем, поработай в компании где хотя бы 100 сотрудников работают над одним сервисом(не продуктом даже), и где этих сервисов и зависимостей 20-30+. Потом поговорим. >>1966480 Вот этот в принципе все правильно написал.
Аноним 14/03/21 Вск 14:41:49 1966509292
>>1966435
Лол. Крутая позиция. Я не пользуюсь этой технологией, значит она не нужна. С такой позицией далеко пойдешь всю карьеру джуном в усть пердюньске XML обрабатывать
Аноним 14/03/21 Вск 16:12:04 1966560293
Почему джава умерла? Куда теперь перекатываться? Я ведь только что начал спринг учить...
Аноним 14/03/21 Вск 16:13:37 1966561294
>>1966560
Потому что. На котлин.
Аноним 14/03/21 Вск 16:22:16 1966566295
Аноним 14/03/21 Вск 16:22:32 1966567296
>>1966560
>>1966561

Сема, плес, ты подзаебал в этом треде с этим тезисом.

Я сам котленодрочер, но правда такова, что на серверах жабка крутится и будет крутиться. Андроед это еще не весь кусок пирога.
Аноним 14/03/21 Вск 16:22:57 1966568297
Аноним 14/03/21 Вск 16:23:58 1966569298
>>1966567
Есть мнение, что о смерти жабы в этом треде в основном пишут джависты, чтобы распугать вкатышей
Аноним 14/03/21 Вск 16:29:21 1966574299
>>1966569
Да неееееееее, не может такого быть
Аноним 14/03/21 Вск 16:55:36 1966582300
Так надо мне линукс ставить или нет? В каждом треде адепты линуха, 2/3 ютуб-учителей из под линуха.
Я только спринг и хибер начал учить(еще нужно будет доучивать кое что по алгоритмам, бд, верстке, многопоточке). Линух ни разу в жизни не ставил. Стоит на него время тратить то во время вката или после устройства на первую галеру?
И вообще на каком этапе мне все эти докеры будут нужны?
Аноним 14/03/21 Вск 16:57:06 1966583301
>>1966582
Да, все верно. Сначала надо собрать арч линукс из исходников, только потом можно приступать к написанию джаава кода. причем только в виме.
Аноним 14/03/21 Вск 17:01:22 1966585302
>>1966582
Ну поставь убунту, собственно кроме sudo apt update, sudo apt upgrade, cd, ls, rm, mkdir, touch тебе ничего не нужно знать из команд терминала.
Если ноут, то может что-то не работать, но если не критично, то ставь спокойно. Разницы с виндой особо не увидишь. Все равно будешь тратить время только на браузер + ide.
Аноним 14/03/21 Вск 17:10:40 1966589303
>>1966582
Считаю что тратить на это время специально не стоит. Докеры и прочая хуета нужны ближе к концу обучения, и больше для расширения твоего кругозора. Правильно написали. Поставь в дабл бут. Поиграйся. Попробуй. Но вот прям специально себя пересаживать не стоит.
>>1966426-кун
Аноним 14/03/21 Вск 17:10:50 1966590304
>>1966585
Нахуй не нужон этот ваш линукс, когда есть WSL или git bash.
Аноним 14/03/21 Вск 17:13:07 1966592305
>>1966590
>WSL
Ну может ты и прав, я сам пользовался WSL, но все равно люблю сидеть за полноценным дистрибутивом.
Аноним 14/03/21 Вск 17:27:24 1966596306
И еще один вопрос немного не в тему. Короче у меня пека 4/4 проц и 16 оперативка. Недостаток оперативки уже чувствую, когда 3 проекта с хеловордами в идее. Ну а проц пока не трогал больших даже по меркам туториалов проектов, но круды с хибером уже долговато билдятся.
Так в пеку докупить оперативки до 32 или поставить 4/8 проц? Цена в итоге сопоставима, но оперативка будет из магаза, а с процом придется вляпываться в лохито.
Аноним 14/03/21 Вск 18:03:44 1966618307
>>1966596
щито? Я хелло ворды на жаве делал с 512мб памяти (всего)
Аноним 14/03/21 Вск 18:12:39 1966633308
>>1966618
Хеловорды на спрингбуте+хибер+постгрес. Штуки 3 по очереди запуская сервер, ибо по разным мануалам. Все в идее для удобства. Ну и браузеры с видосами с этими самыми мануалами.
Аноним 14/03/21 Вск 18:17:18 1966638309
>>1966633
постгрес по умолчанию на 50мб, спрингбут и хибернейт ну 200мб. Идея 500мб
Аноним 14/03/21 Вск 18:26:12 1966649310
image.png 690Кб, 900x1400
900x1400
Аноним 14/03/21 Вск 18:30:00 1966653311
>>1966596
А ссд то есть? А то хуйня какая-то. У меня проект на пару гигов билдится без проблем на более слабой тачке.
Аноним 14/03/21 Вск 18:41:46 1966667312
>>1966653
Есть. Все неудобства несмертельны. Апгрейд пеки можно сказать блажь. Но вот не могу между оперативкой и процом выбрать.
Раньше думал, что для игор будет лучше при следующем апгрейде. Но оказалось, что те что я поставил после переустановки шинды полгода назад я ни разу не играл.
Аноним 14/03/21 Вск 18:43:01 1966672313
Аноним 14/03/21 Вск 18:45:54 1966679314
>>1966667
у меня рабочий комп с 4 открытыми идеями с проектами тоже 16 гигов. Не тормозит
Аноним 14/03/21 Вск 19:05:51 1966698315
>>1966596
Это идея последней версии почему-то ресурсы жрёт, у меня тоже все тормозит когда несколько проектов открыто и запускаешь мавен или ещё что-нибудь.
Аноним 14/03/21 Вск 19:11:54 1966709316
>>1966585
Я бы в список добавил grep, он быстрее чем поиск в ide
Аноним 14/03/21 Вск 19:19:06 1966718317
>>1966435
Нахуя всякие стенды если можно docker-compose up -d и оно все заработало локально пакеты нужных версий, можно полностью копию прода в контейнерах сделать, при этом не ебаться с конфигами. Потом делай с этим что хочешь и как хочешь, можешь у себя конфиги менять, хоть сортировку крестиком и вышивание пузырьком запускай когда Луна в Сатурне не мешая остальным. А если что-то поломал, то удалил все контейнеры и поднял снова.
Аноним 14/03/21 Вск 19:26:43 1966727318
> стенд
Бля, я думал, что это словечко только в Сбере любят.
Аноним 14/03/21 Вск 19:31:31 1966735319
>>1966727
Нет, у нас тоже любят.
Аноним 14/03/21 Вск 19:32:58 1966739320
MV5BMjI4ODVkY2I[...].jpg 137Кб, 630x1200
630x1200
>>1966727
Обычное слово, чем тебе мне нравится?
Аноним 14/03/21 Вск 19:37:23 1966746321
>>1966739
Мне нравится слово мурзилка.
Аноним 14/03/21 Вск 19:38:16 1966748322
>>1966746
мурзилкошизик, спок
Аноним 14/03/21 Вск 19:43:23 1966755323
152570804819509[...].jpg 119Кб, 1024x640
1024x640
14/03/21 Вск 23:16:33 1966922324
>>1966672

переизобретать это вообще пиздатый движ, очень годно, прям в духе жс-облядей
Аноним 15/03/21 Пнд 00:09:36 1966946325
>>1966596
Пиздец, мы как понять можем че тебе реально поможет?
Ты в момент запуска всей своей ебалы открой диспетчер задач и посмотри что долбится в сотку: проц, оператива или диск. Оттуда сам поймешь что тебе нужно и что исправит твои проблемы.
Аноним 15/03/21 Пнд 01:09:49 1966984326
>>1966946
Так я не знаю как джаваебские задачи будут ебать пеку через полгода, когда я от хеловордов чему то посерьезнее перейду. Там всякие еще виртуалки с линупсами и докерами начну крутить.
4/4 интола хватит? В игорах многих уже не хватает, но на них похуй уже.
Аноним 15/03/21 Пнд 03:44:56 1967046327
>>1966984
> виртуалки
Ставь второй системой, ты че как долбаёб с виртуалками возишься. Я так вообще перестал виндой пользоваться.
Аноним 15/03/21 Пнд 08:50:49 1967104328
>>1967046
Особенно топово, когда винда при очередном обновлении убивает граб, и ты получаешь на руки кирпич, над которым надо танцевать с бубном. Было так 2 раза, оба раза очень не вовремя.
Аноним 15/03/21 Пнд 10:31:22 1967137329
>>1966984
А мы откуда знаем, какое говно ты захочешь написать через полгода?
Вдруг тебе надо будет приложению кучу в 12 гигов выделить?
Решай конкретные проблемы по мере их поступления.
Аноним 15/03/21 Пнд 11:00:02 1967151330
>>1966922
Зато они переизобрели удобно и под себя. А не натянули готовое на глобус.
Аноним 15/03/21 Пнд 11:02:19 1967154331
>>1967151
А нахуя тогда вообще писать переиспользуемый код?
Аноним 15/03/21 Пнд 11:24:26 1967172332
Аноны, что по веб разработке почитать, посмотреть?
15/03/21 Пнд 12:13:11 1967201333
>>1967172

Посмотреть жс-штмл-треды, нахуй ты сюда то воюешь?
Аноним 15/03/21 Пнд 12:51:42 1967264334
>>1967201
А здесь что-ли десктоп на жаве пилят блять?
Аноним 15/03/21 Пнд 12:58:29 1967268335
>>1967172
Ну для веб разработки надо читать все что связано со спрингом, ресты, MVC. Если ты говоришь про фронт, то учи html, CSS, js на learn javascript почитай. Если этого будет мало - поковыряй vue. Этого хватит если идти на бэкенд.
Аноним 15/03/21 Пнд 13:01:11 1967271336
>>1967264
Таки пилят. Пидорасы.
Аноним 15/03/21 Пнд 14:37:36 1967354337
>>1967268
Спасибо, может ты мне посоветуешь тогда.
Да Spring и то что ты перечислил я буду изучать.
Но проблема в том, что мне в целом интересна тема передачи данных, протоколы ну и так-же веб-разработка (последнее, просто чтобы знать), но я тут сильно проседаю по теории.
Искал литературу, нашел - Тотенбаум : Компьютерные сети
Ну читаю потихоньку
Так вот, я все правильно делаю анон?
Аноним 15/03/21 Пнд 14:50:34 1967362338
>>1967354
короче я хочу понять все эти сокеты, каналы, сервера, веб-приложения, протоколы и все что с этим связано, для начала на уровне теории.
В инете нашел кучу говно статей, где за три абзаца хотят все и сразу объяснить, ну и книги Тотенбаума, но там мне кажется слишком уж много физики и математики или стоит прочитать, пригодится?
Аноним 15/03/21 Пнд 16:11:52 1967422339
>>1967362
Как насчет поиска информации через практику?
Напиши приложение, используя один протокол.
Написал? Молодец!
Возьми другой протокол, прочитай в чем его профит (зачем его сделали) перепиши приложение с использованием другого протокола.
Сравни результат - получил тот профит, который тебе обещали?
Аноним 15/03/21 Пнд 16:24:31 1967427340
Есть строка обозначающая тип вольера. Вольер может менять свой тип при удалении оттуда всех животных. Что хранить в переменной при отсутствии животных? Null? Строковую константу с инфой об этом? Что является лучшей практикой?
Аноним 15/03/21 Пнд 16:50:50 1967462341
>>1967422
Ахуенный совет. Написал интернет магазин на TCP - перепиши на UDP. А потом обосрись.
Аноним 15/03/21 Пнд 16:51:06 1967465342
>>1967427
>Вольер может менять свой тип при удалении оттуда всех животных.
Че за бред нахуй
Аноним 15/03/21 Пнд 16:59:02 1967481343
Аноним 15/03/21 Пнд 17:23:38 1967493344
Прувет.
Начал вкатываться в джаву не так давно, необходимо написать один проект для стажерства.

В ходе написания столкнулся с такой проблемой:
Из сети приходит лист ключ-значение, и количество пар разное.

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

Подскажите, можно ли вообще такое реализовать?
Аноним 15/03/21 Пнд 17:35:44 1967501345
Аноним 15/03/21 Пнд 17:35:48 1967502346
>>1967422
суть в том что я даже не знаю что такое протокол и как его ипользовать, ну точнее я знаю определение и зачем он нужен, но не более
Аноним 15/03/21 Пнд 18:08:16 1967550347
>>1967502
Еще раз. Ты пытаешься решить проблему, которой у тебя нет.
Есть список протоколов, есть их описание и предназначение. Всё это лучшим образом описано в спецификации, например, RFC. Хочешь понять как работает - лезь туда. Особо ушлые корпорации спецификацию нарушают, иногда даже намеренно.
Аноним 15/03/21 Пнд 19:06:23 1967630348
springDataJpaDsl.PNG 33Кб, 539x317
539x317
Вот вам не нравится хибер.
А вот это типа редко используется и мне этот недо-dsl не пригодится?
Выглядит прикольно.
Аноним 15/03/21 Пнд 19:12:51 1967641349
>>1967630
Логика не совсем такая. Я вот ненавижу это пиздобоядский легасиговнохибернейт, но знать его приходится, т.к. кто-то его использует. И твой пикрил тоже используют.
Аноним 15/03/21 Пнд 19:19:54 1967652350
>>1967641
Ну я подумал, что он реально не всегда очень нужен. А это бомбаж просто, как от жсеров. Теперь ясно.
На проекте один хуй не джун-мидол будет решать пользовать ждбс или хибер, а техлид/архитектор/какой-то-другой-понтовый-хуй.
Аноним 15/03/21 Пнд 19:24:19 1967659351
>>1967630
Ну так оно прикольно, да. А теперь составь таким образом, чтобы сджойнило ещё две таблицы, сгруппировало по полю из третьей, посчитало среднее значение в одной из колонок, не проебало перформанс из-за индексов, и выдало бы результат одной красивой сущностью.
Аноним 15/03/21 Пнд 19:33:51 1967673352
>>1967652
Будь он однозначно не нужен, о нём бы никто не знал, и срача бы не было. Юзать его можно, но надо знать меру.
Аноним 15/03/21 Пнд 19:34:53 1967676353
>>1967659
я такое и ждбисей сам пока не смогу сделать, хотя на стековерфлоу наверно нагуглю.
Аноним 15/03/21 Пнд 19:37:45 1967680354
>>1967659
Это нужно DBA звать чтоб написал.
Аноним 15/03/21 Пнд 19:44:56 1967690355
>>1967680
Пишешь хуёвый запрос, в пуллреквест добавляешь кого-нибудь, кто занимается БД, он что-нибудь советует, исправляешь, заебись.
Аноним 15/03/21 Пнд 19:48:17 1967697356
>>1967690
А подарок-магарыч ему потом надо давать? У меня плохо с эмпатией.
Аноним 15/03/21 Пнд 19:54:17 1967703357
>>1967697
Это уж смотря какой рабочий процесс/коллектив, у нас такие пуллреквесты вполне обыденны, и подарков никто не ждёт.
Аноним 15/03/21 Пнд 20:06:50 1967723358
>>1967676
Ну я в том плане, что оно красиво, но в итоге не функционально. Это к твоему вопросу, почему ругают хибер.
>>1967680
>>1967690
Я обычно сразу ДБА в шлак пишу, если не могу осилить. Но то что я описал в принципе выполнимо без посторонней помощи. Но опять же, я это написал не к тому, как это делать, а к тому, что хибером ты не сможешь\заебешься это делать
Аноним 15/03/21 Пнд 20:13:09 1967737359
>>1967723
Так вместо findByPoo там будет @Query с хорошим умным запросом.
Аноним 15/03/21 Пнд 21:28:04 1967809360
На спринг-проектах всегда есть дба или все таки бывают такие галеры, где без него?
Аноним 15/03/21 Пнд 21:30:23 1967812361
>>1967809
Скорее на энтерпрайз-проектах в целом. Иногда на спринге пишут небольшие бекенды, там не то что дба нет - бекендер только один.
Аноним 15/03/21 Пнд 23:23:44 1967918362
Аноним 15/03/21 Пнд 23:24:20 1967919363
Аноним 15/03/21 Пнд 23:31:21 1967926364
>>1967812
А где граница между бекендом и интерпрайзом?
Аноним 15/03/21 Пнд 23:33:32 1967929365
>>1967926
Нету, но не назовёшь же ты лендинг ынтерпрайзом.
Аноним 15/03/21 Пнд 23:34:31 1967931366
>>1967929
И кто же мне помешает?
Аноним 15/03/21 Пнд 23:36:08 1967935367
Аноним 15/03/21 Пнд 23:36:09 1967936368
Аноним 15/03/21 Пнд 23:39:02 1967938369
>>1967926
Где разница между говном и поносом?
И то и то говно по сути, только одно твердое, а другое жидкое.
Аноним 15/03/21 Пнд 23:57:31 1967949370
>>1967938
Я думаю, что понос по плотности/проценту воды легко выделить. Думаю, точные можно нагуглить, но не хочется.
Так вот как разграничить подмножество поноса энтерпрайза, в множестве говна бекенда?
Аноним 15/03/21 Пнд 23:58:13 1967950371
image.png 211Кб, 400x501
400x501
Аноним 16/03/21 Втр 03:16:07 1968058372
беседа java-гос[...].mp4 18658Кб, 1280x720, 00:03:58
1280x720
Аноним 16/03/21 Втр 03:56:18 1968069373
>>1968058
Это типа брейншторм про перформанс?
Аноним 16/03/21 Втр 09:10:32 1968171374
Аноним 16/03/21 Втр 10:29:32 1968245375
>>1968171
Ну а тяжелый-тяжелый веб в общедоступном интернете с большими базами, сложной логикой, большой работой над производительностью и прочее и прочее это не интерпрайз? На чем такие штуки мутятся?
Аноним 16/03/21 Втр 10:36:35 1968257376
>>1967926
Некоторые приводят в пример фейсбук и твиттер. Это огромные бекенды, но это не тырпрайз.
Аноним 16/03/21 Втр 10:46:51 1968264377
>>1968245
Я не понимаю что ты хочешь. enterprise и бэкенд это разные вещи вообще. Это разные понятия и я не могу понять как они у тебя связаны в голове. Бэкенд это область разработки. Бэкенд в общем понимании это код, который в первую очередь отвечает за логику, а не за представление. А enterprise это область бизнеса это может вообще никак не связано быть с разработкой ПО.
Аноним 16/03/21 Втр 10:56:01 1968269378
Я придумал критерий энтерпрайза! Если ваша компания ни разу не коммитила в openjdk, значит это обычный бодишоп.
Аноним 16/03/21 Втр 11:07:42 1968275379
>>1968269
А если коммитила, но необычный бодишоп.
Аноним 16/03/21 Втр 11:09:04 1968276380
>>1968264
> Бэкенд в общем понимании это код, который в первую очередь отвечает за логику, а не за представление.

Не совсем. Бэкенд это код который запускается на сервере, а не на клиенте.

Какой-нибудь гугл докс содержит много логики во фронтенде.
Аноним 16/03/21 Втр 11:13:54 1968279381
>>1968276
Ну а например десктоп приложение? Оно запускается на клиенте, но может передавать какие-то данные или хранить в базе, обрабатывать их. Это не бэкенд разве?
Но в целом да, все правильно. Пост был больше про то, что сравнивать бэкенд и enterprise совсем не корректно.
Аноним 16/03/21 Втр 11:17:03 1968284382
>>1968279

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

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

Вообще веб петухи не понимают насколько пиздат хтмл.

Ну я понял, просто приебаться решил))))
16/03/21 Втр 11:17:22 1968285383
>>1967926

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

Например если это телеком или какая-нибудь система анализа данных или еще какая срань. Вот второе я обычно называю ынтырпрайзом, хотя и веб можно так обозвать, если масштабы говнокода солидные.
Аноним 16/03/21 Втр 11:49:33 1968327384
>>1968285
Не обязательно. У тебя может быть онли мобильное приложение без веба. Но бэкенд у тебя будет. Бэкенд это просто то что на сервере
Аноним 16/03/21 Втр 12:31:47 1968381385
Как яваконторы относятся к мидлам и выше с других бэкенд языков? Берут?
Аноним 16/03/21 Втр 12:33:07 1968383386
>>1968381
А зачем, если своего говна полно?
Аноним 16/03/21 Втр 12:35:55 1968389387
Аноним 16/03/21 Втр 13:32:20 1968462388
>>1967659
>А теперь составь таким образом, чтобы сджойнило ещё две таблицы, сгруппировало по полю из третьей, посчитало среднее значение в одной из колонок, не проебало перформанс из-за индексов, и выдало бы результат одной красивой сущностью.
В чем проблема - простые квери делашь этим DSL, йоба запросы с джойнами и группировками - SQL-ем. А Спринг тебе еще их на интрерфейс сможет сам замапить.
Аноним 16/03/21 Втр 14:03:14 1968492389
>>1968462
Вопрос был: почему все хейтят гибер.
Ответ: гибер пока\никогда не заменит натив. Даже если ты будешь запросы подкидывать ручками через тот же @Query это один фиг будет натив. Хейт скорее не к гиберу, а к вкатышам, которые видят как круто и удобно писать на HQL, JPQL, и из-за этого забивают на изучение SQL. А потом удивляются, почему над ними смеются на собеседовании. Тру стори
Аноним 16/03/21 Втр 14:34:22 1968528390
Абу заебал блядь, хули треды только через зеркало открываются.
Аноним 16/03/21 Втр 14:36:55 1968532391
>>1968528
Через приватную вкладку открывай.
Аноним 16/03/21 Втр 15:25:55 1968603392
>>1968492
>Вопрос был: почему все хейтят гибер.
>Ответ: гибер пока\никогда не заменит натив.
Не было там такого вопроса, там вопрос был
>Вот вам не нравится хибер.
>А вот это типа редко используется и мне этот недо-dsl не пригодится?
И ответ - такие вещи покрывают 99% юзкейсов в крудах.


Что касается изучения SQL это общая проблема: мало кто хочет учить основы. Как устроен хешмап еще выучили спасибо, что на всех собесах дрючат, но вот вопрос как быстро найти что-то на указанную дату или ближайшую перед если такой даты нет - уже ставит в тупик 90% кандидатов.
Аноним 16/03/21 Втр 16:07:28 1968663393
Блин. Буду с сегодняшнего для учить SQL серьезней, чем раньше.
Аноним 16/03/21 Втр 16:22:51 1968679394
>>1968603
че порекомендуешь для изучения?
Аноним 16/03/21 Втр 16:37:53 1968696395
>>1968679
Тут сидят педофилы, которые просят телеграм у молодых вкатышей, якобы для скидывания годных учебных материалов, будь осторожен!
Аноним 16/03/21 Втр 16:46:29 1968707396
Аноним 16/03/21 Втр 17:04:38 1968728397
Аноним 16/03/21 Втр 17:05:39 1968732398
>>1968707
А какой именно стандарт?
Аноним 16/03/21 Втр 17:07:20 1968733399
16/03/21 Втр 17:08:15 1968735400
>>1967659
>составь таким образом, чтобы сджойнило ещё две таблицы, сгруппировало по полю из третьей, посчитало среднее значение в одной из колонок, не проебало перформанс из-за индексов, и выдало бы результат одной красивой сущностью
из всего этого пока не знаю только как не проебать перформанс из-за индексов. я вкачусь?
Аноним 16/03/21 Втр 17:25:14 1968760401
>>1968735
Да. В общем и целом, я вкатывался вообще с основами. Даже хорошо что не спросили ничего про SQL. Но первые два месяца работы я процентов 30 рабочего времени изучал SQL чтобы я мог что-то делать вменяемое.
Держи
https://youtu.be/39e1vAGD3hg
По индексам. Надо смотреть на 1.25 или 1.5. но очень годный и подробный гайд
Аноним 16/03/21 Втр 17:30:28 1968771402
>>1968760
О, годнота, спасибо
Аноним 16/03/21 Втр 19:43:21 1968955403
А в REST никто не тестирует по XPath? Это только вместе с template engine?
Аноним 16/03/21 Втр 20:17:15 1968998404
>>1968955
Чо JSON-блядям XPath завезли? Или вы по REST XML отдаете?
Аноним 16/03/21 Втр 20:20:04 1968999405
16/03/21 Втр 20:22:17 1969005406
>>1968998

Отдавать нужно согласно постфиксу .json или .xml.

Ты что, сучара, разрабатываешь rest endpoints without best practices?

ЭТОМУ ПИДОРУ СМУЗИ НЕ НАЛИВАТЬ, ТОЛЬКО АМЕРИКАНО!
Аноним 16/03/21 Втр 20:27:13 1969010407
>>1969005
Да ты охуел, что ли?! Какой постфикс?! WSDLя перебрал?

Для вас козлов Accept завезли!!!
Аноним 16/03/21 Втр 20:31:40 1969017408
> JEP 347: Enable C++14 Language Features
Nice!
Аноним 16/03/21 Втр 20:32:04 1969018409
Аноним 16/03/21 Втр 20:35:28 1969023410
>>1968955
> тестирует
QA-автоматизатор, ты?
Аноним 16/03/21 Втр 20:42:50 1969028411
>>1969023
Интеграционные тесты девелоперам не надо писать? Только юнит?
Аноним 16/03/21 Втр 20:43:39 1969029412
>>1969028
Тесты псать не надо. Тестированием пусть занимаются тестировщики.
Аноним 16/03/21 Втр 20:46:26 1969033413
06a2e240dca16b0[...].png 411Кб, 800x815
800x815
>>1969028
Я пишу только юнит, мне норм.
Аноним 16/03/21 Втр 20:48:51 1969035414
изображение.png 10Кб, 393x164
393x164
>>1968998
Во freemarker приходится по XPath проверять сколько хуйни создалось, json же нету.

Аноним 16/03/21 Втр 20:50:12 1969040415
>>1969035
Да, вот бы кто-то придумал такую же штуку, как xpath, только для json...
Аноним 16/03/21 Втр 21:02:30 1969053416
Аноним 16/03/21 Втр 21:15:02 1969065417


У меня есть база данных заявок резервирования,в нее я вношу данные через свинг формочку и все было неплохо,пока не появилась надобность добавлять время. У меня есть два столбца в базе которые представляют собой время начала заявки и время окончания. Так вот,как мне вбивать время в поля типа Timestamp ? Когда мне нужно было вбивать только дату меня очень выручил jDateChooser,может есть какой-нибудь готовый drag and drop элемент для нетбинса? Или же просто подскажите как мне визуализировать ввод времени и как потом конкатенировать это значение к уже готовой строке даты. Заранее благодарен всем за ответы
Аноним 16/03/21 Втр 21:23:19 1969074418
image.png 15Кб, 259x293
259x293
>>1969065
Не шарю за свинг, но гугл говорит, что готового элемента для времени нет, и можно либо шлёпнуть три спиннера рядом, как на пике, либо искать сторонние васянские компоненты.
Аноним 16/03/21 Втр 21:24:37 1969076419
>>1969065
Просто текст инпута с автоматической валидацией по регулярке в свинге нет?
Аноним 16/03/21 Втр 21:26:59 1969079420
Аноним 16/03/21 Втр 22:29:59 1969137421
>>1969074
>>1969076
Я короче решил тупо сделать комбобокс с выбором,как теперь теперь это значение безопасно конкатенировать к дате типа Timestamp ?
Аноним 16/03/21 Втр 22:32:10 1969142422
>>1969137
Какой нахуй комбобокс, с каким нахуй выбором?
Аноним 16/03/21 Втр 22:34:40 1969148423
изображение.png 4Кб, 406x330
406x330
>>1969142
Для моих задач достаточно
Аноним 16/03/21 Втр 22:36:27 1969151424
Аноним 16/03/21 Втр 22:56:16 1969182425
изображение.png 4Кб, 528x89
528x89
>>1969151
Дата у меня вот так добавляется,а как туда время добавить ?
Аноним 16/03/21 Втр 23:18:06 1969213426
>>1969182
Ну так погугли ещё про форматтеры. Но я бы привел к LocalDateTime.parse()
Аноним 16/03/21 Втр 23:19:26 1969216427
Аноним 17/03/21 Срд 05:57:00 1969363428
А можно замутить клиент-сервер, типа чатика, чисто на джавке на трех платформах: свинг-десктоп и андроид с передачей json-ками(это же рест называется?) и веб с шаблонизаторами без всяких js?
Если я вот такой учебный проект захочу написать, какие проблемы меня могут ждать?
Аноним 17/03/21 Срд 09:54:20 1969469429
Аноним 17/03/21 Срд 10:25:54 1969490430
>>1969469
Уж минорка перед лтс точно не нужна. Главная интрига что будет в 17. Похоже большей части самых хайповых проектов там не будет.
Аноним 17/03/21 Срд 10:29:31 1969491431
>>1969490
Там внезапно добавят столько синтаксического сахара, что даже котлинисты охуеют.
Аноним 17/03/21 Срд 10:38:37 1969498432
Расскажите где бесплатно/дешево деплоить пет-проекты на спрингбуте.
17/03/21 Срд 10:46:20 1969504433
>>1969498

На хетзнере, но там придется все НАСТРОИТЬ
17/03/21 Срд 10:54:44 1969505434
>>1969363

Заебешься на трех-то делать, хозяин коненчо барен.

>это же рест называется
По сути да, но вот тебе для просветления:
https://s3.amazonaws.com/tfpearsonecollege/bestpractices/RESTful+Best+Practices.pdf

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

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

Андроид это отдельная экосистема, чтобы толково сделать нужно документации нормально так вздрочнуть. Ну или сделать через жопу.
Вообще нахуя захватывать свинг/веб/андроид и делать это все хуево, если можно сузить стек и сделать более-менее приемлемо.
17/03/21 Срд 10:57:26 1969507435
Аноним 17/03/21 Срд 10:59:20 1969510436
>>1969507
хочу свои круды маме показать и бабушке
Аноним 17/03/21 Срд 11:10:48 1969521437
>>1969505
сохранил. Вопрос чисто теоретический. Легко ли сделать чтобы в зависимости от хедеров(типа на свинге - одно, на вебморде - другое) запроса с которого начинается сессия сервер отдавал или
>по релоаду странички загружать штмл с новыми сообщениями и в post форме отправлять новое
для веба без жс.
Или джесонки для свинга.
Юзер агент или еще какой хедер, я хз.
Аноним 17/03/21 Срд 11:16:50 1969526438
image.png 19Кб, 400x210
400x210
"Как выстрелить себе в ногу в Джаве"
p.s. нафига они вообще сделали возможность объявлять абстрактными методы класса Object, можно ж такую дичь намутить
17/03/21 Срд 11:18:27 1969531439
>>1969521

Для этого есть уже "стандартный" хедер Accept:
https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Accept

А так есть целый ряд подходов к этой задаче:
https://www.baeldung.com/spring-mvc-content-negotiation-json-xml

Accept-хедер среди них, нужно сприговый конфиг подправить и оно будет само искать метод контроллера который продьюсит то что надо (как я понял)
Аноним 17/03/21 Срд 11:18:51 1969532440
>>1969491
Если сделают работу ломбока за ломбок, будет круто. Потому что псевдо-инкапсуляцию с геттерами и сеттерами в рот ебал, как и прописывание ручками конструкторов для final переменных.
Аноним 17/03/21 Срд 11:19:24 1969534441
>>1969521
Зачем тебе свинг, товарищ?? Ни одного адекватного проекта на нём (кроме IntellijIdea) в данный момент не наблюдается.
Сделай лучше десктоп на electron и это же приложение преврати в фронтенд-приложение 2х зайцев сразу убьёшь
Аноним 17/03/21 Срд 11:20:08 1969535442
>>1969526
А если super убрать, то как отработает?
Аноним 17/03/21 Срд 11:20:48 1969537443
Аноним 17/03/21 Срд 11:24:59 1969542444
>>1969535
StackOverflowError получишь. шило на мыло, короче
Аноним 17/03/21 Срд 11:34:43 1969551445
Аноним 17/03/21 Срд 11:43:21 1969562446
>>1969534
Потому что по свингу я половину главы прочел в учебнике по кору. А жс я не трогал никогда вообще, код на нем для меня, как кракозябры. Рано или поздно я возьмусь конечно. Но хотелось бы для мотивации чисто быстро смочь это запилить.
И ради этого же хотелось бы научиться деплоить в инторнет. Я думал просто фиксированный ип у провайдера купить, чтобы хоститься из дома и друзьям кидать ссылки на свои "проекты", но походу мой провайдер то ли не предоставляет такое, то ли там еботни по времени будет не меньше, чем научиться наиболее просто деплоить.
17/03/21 Срд 11:48:37 1969569447
>>1969562

Раньше для твоей цели я бы предложил любой хостинг (hetzner например) и docker-compose, но щас наверное за такое заплюют и скажут что надо КУБЕРНЕТЕС для этого.

Хотя как по мне для пет-проекта к8с это оверкилл пиздец.

Хотя пили я такую штуку сейчас я бы поигрался с terraform и Hetzner/Heroku в качестве провайдера.
Аноним 17/03/21 Срд 11:48:49 1969572448
>>1969562
Зачем покупать, деньги лишние дай мне?
Есть куча триал хостингов и бесплатные тоже есть
google cloud на худой конец
Аноним 17/03/21 Срд 11:59:50 1969584449
>>1969572
Вот я и спрашиваю. Где бесплатно/дешево. И способ деплоинга самый простой. Я ничего об этом пока не знаю(а там инфы до жопы).
И внешний ип я хотел, потому что там ведь ничего не надо настраивать, насколько я понял. Потому что, когда я запускаю томкат в идее на винде на локалхосте я внутри своей локалки/вайфая могу подключиться по внутреннему ип+ порт. С внешним ип ведь так же будет работать или нет?
17/03/21 Срд 12:06:56 1969594450
>>1969584

Если ты за nat'ом (а это скорее всего так) то тебе в роутере нужно будет пробросить желаемый порт на твою тачку. А так да, должно работать.

Но полезнее думаю поебаться все-таки с удаленным сервером, хоть это и сложнее.
Аноним 17/03/21 Срд 12:14:31 1969599451
>>1969594
Я позвонил ростелекому и они сказали что около недели будут мне этот ип делать, если закажу. И я прочитал, что они неохотно это все делают и могут нахуевертить всякое. 180 рублей в месяц не так много.
Но наверно хероку лучше, гугл по запросу его выдает и всякие мануалы. Там вроде триальные часы какие то.
Аноним 17/03/21 Срд 12:17:04 1969603452
>>1969584
Тебе уже написали про хероку, а ты продолжаешь спрашивать.
Аноним 17/03/21 Срд 12:19:01 1969605453
Аноним 17/03/21 Срд 12:22:21 1969608454
Задача и требования:

- Дано множество картинок
- Необходимо написать программу на Java, которая распознает, какие карты лежат на столе (только по центру картинки). Например, на этой картинке https://i.gyazo.com/65658f6ab114de07d5c08d5f81324dc7.png на столе лежат карты 4hQd7s
- Тестирование программы будет осуществляться на аналогичных картинках, которых нет в исходном множестве
- Допускаются ошибки в распознавании не более 3% от общего количества распознанных карт
- Нельзя использовать готовые библиотеки для распознавания текста. Необходимо написать свой алгоритм распознавания карт
- На распознавание одного файла не должно уходить более 1 секунды
- Исходный код решения задачи не должен быть длиннее 500 строк с нормальным форматированием

- Программу нужно предоставить в виде, готовом к запуску на Windows десктопе. Файл run.bat параметром принимает путь до папки с картинками. В консоль распечатывается результат в виде "имя файла - карты" для всех файлов папки
- Программу нужно предоставить с исходными файлами
- В исходных файлах должен быть ВЕСЬ код, который был использован для решения задачи
- Программу нужно предоставить в виде ссылки на ZIP-файл. Ссылки на на репозитории, например на github, не принимаются

Рекомендации:

- У автора этой задачи решение заняло 100 строк кода. У лучшего на данный момент кандидата - 160 строк. Ничего страшного, если ваше решение занимает 500 строк. Однако, если больше и это - не комментарии, то стоит задуматься

Для решения задачи рекомендуется использовать следующие функции, встроенные в Java:

- BufferedImage img = ImageIO.read(f); - зачитка картинки из файла
- ImageIO.write(img, "png", f); - запись картинки в файл
- img.getWidth(); img.getHeight(); - рамеры картинки
- BufferedImage img1 = img.getSubimage(x, y, w, h); - взятие области в картинке
- img.getRGB(x, y); - взятие цвета точки по координате
- Color c = new Color(img.getRGB(x, y)); c.getRed(); c.getGreen(); c.getBlue(); c.equals(c1) - работа с цветом точки

А ЧТО БЛЯТЬ А КАК
17/03/21 Срд 12:22:42 1969609455
Screenshot63.png 18Кб, 651x329
651x329
>>1969599

Щас современные роутеры уже умеют работать с провайдерами всяких dyn dns сервисов (грубо говоря когда домен привязывается к твоему временному ip и обновляется раз в сутки)

Пикрил с моего роутера.

https://account.dyn.com/
Аноним 17/03/21 Срд 12:25:06 1969612456
>>1969605
А еще ты можешь поебаться с ngrok и получить внешний ip на свой комп бесплатно. Но хероку лучше. А потом можно и облачко арендовать, как со всем разберешься.
Аноним 17/03/21 Срд 12:36:57 1969616457
>>1969609
спасибо. Начну с этого пожалуй.
Аноним 17/03/21 Срд 12:46:50 1969627458
Аноним 17/03/21 Срд 13:07:18 1969647459
Аноним 17/03/21 Срд 13:12:39 1969652460
>>1969608
Лол. Я могу в одну строку это написать. Длинную строку
Аноним 17/03/21 Срд 13:38:50 1969691461
>>1969612
Нигорок оказался проще чем я думал. Две команды в кмд и микрокруд работает. Медленновато, но для начала то что нужно.
Спасибо.
Аноним 17/03/21 Срд 15:10:54 1969761462
А у сервисов должны быть интерфейсы, где описаны все их методы?

Владимир
Аноним 17/03/21 Срд 15:25:50 1969771463
>>1969761
Не обязательно будет работать и без этого, просто инжекти по типу самого класса. Вообще, интерфейсы для сервисов - это спорная фича Интерфейсы хуярят из-за странного понимания SOLID и чтобы легче было писать моки в юнит-тестах.
Аноним 17/03/21 Срд 16:14:02 1969836464
image.png 45Кб, 462x489
462x489
image.png 43Кб, 453x456
453x456
image.png 32Кб, 443x383
443x383
А вы знали, что такой прикол есть в джаве, я вот каждый раз забываю.
Если переменная не константа, то при её требовании в другом классе проходят все статические инициализаторы, а если она константа, то она появляется сразу, без прохода по другим инициализаторам.
Но если ты запрашиваешь константу в psvm методе самого класса, то все статические инициализаторы проходят в любом случае!
Тип переменных, естессно, неважен.

Вот вам и вопрос для собеса, 15ти летние тимлды 300к в наносек, мотайте на ус!
Аноним 17/03/21 Срд 16:19:02 1969850465
>>1969771
>чтобы легче было писать моки в юнит-тестах
Только для этого и используется так-то.
Вообще, самое удобное использование интерфейсов как контрактов получается с @FeignClient в микросервисах.
В общей либе интерфейсом обозначается контракт со всеми @RequestMapping, путями и прочим. Сервис-пользователь наследует интерфейс фейна от контракта с настройкой в одну строчку. Сервис, предоставляющий функционал, наследует свой контроллер от контракта и имплементит методы. За счет этого получается железная связка между сервисами, и никаких проебов в путях или в том, что какой-то додик удалил рест, который используется в другом месте, больше не будет. Теку с этого пиздец.
Аноним 17/03/21 Срд 16:35:19 1969871466
При миграции на JUnit 5 не нужна замена этой аннотации?

@RunWith(SpringRunner.class)

Не могу найти ничего об этом в migration guide
Аноним 17/03/21 Срд 16:39:05 1969875467
>>1969871
Да, поменяли. Но на что - не помню. Гуглить надо
Аноним 17/03/21 Срд 16:41:12 1969879468
>>1969875
@ExtendsWith()

А про SpringRunner.class который на самом деле SpringJUnit4ClassRunner там нет ничего. Странно.
Аноним 17/03/21 Срд 16:50:43 1969896469
>>1969761
>>1969771
>>1969850
Гуглите лекцию Борисова про интерфейсы. Очень годно рассказано. Моки и ресты конечно масхэв.
Но расскажу ещё историю из практики. Я работаю на одним продуктом, который используют разные люди, в разных странах.
И в зависимости от требований бизнеса в конкретных случаях, нужно менять поведение приложения. И это дорого стоит. Когда с помощью одной строки в конфиге можно полностью поменять логику работы того или иного сервиса, не меняя ничего в коде, и не меняя логику приложения целиком.
Аноним 17/03/21 Срд 16:55:12 1969902470
>>1969896
А в реальности класс только один, и в нйм:
if (настройка_нейм_включена) {
одна логика
} else {
другая логика
}
Настройка тоже переключается одной строчкой в конфиге.
Аноним 17/03/21 Срд 17:15:12 1969920471
>>1969761
Не обязательно, но это best ptactise,
loosely coupling можешь загуглить
Аноним 17/03/21 Срд 17:51:39 1969950472
>>1969902
Для мелочи да. Есть и такое. Но есть прям огромные модули, которые должны менять поведение. И тогда удобно.
Аноним 17/03/21 Срд 18:53:01 1969993473
>>1969608
Это кто такие тестовые дает? Гейдев какой нибудь?
Аноним 17/03/21 Срд 19:23:12 1970026474
image.png 372Кб, 1846x1722
1846x1722
>>1969836
Ты бы сам для начала в вопросе разобрался.
Первые 2 пикчи это compile time constant и они инлайнятся во время компиляции.
Если дизасемблировать код TestC то увидишь что константа тупо добавлена в класс и ни к какому полю класса C никто не обращается.

Пик 3 там вообще насрать на тип константы - для выполнения любого метода класса в том числе main он должен быть инициализирован. Более того на старых JDK можно запустить программу вообще без main(), просто пишешь код в static {} инициализаторе, а потом System.exit() и это работало.

Аноним 17/03/21 Срд 19:45:14 1970040475
Пацаны! Оказывается можно спринговые ключи указывать во время java -jar, а я думал так нельзя. Ура!
Аноним 17/03/21 Срд 20:00:48 1970052476
Никита Липский,[...].webm 9439Кб, 500x280, 00:04:11
500x280
>>1969836
>Вот вам и вопрос для собеса

На собесе можно и не так унижать кандидатов, это же как надо заговнокодить чтобы думать что гдето там какието инициализаторы появлялись
Аноним 17/03/21 Срд 20:03:57 1970056477
>>1970040
Хз, в вебсфере никакого java -jar нет.
То ли ещё будет, когда ты узнаешь, что application.properties можно положить рядом с жарником
Аноним 17/03/21 Срд 20:22:50 1970073478
>>1969526
Чтобы заставить тебя реализовывать этот метод
Аноним 17/03/21 Срд 20:32:10 1970084479
изображение.png 66Кб, 890x491
890x491
>>1970056
>application.properties можно положить рядом с жарником
Но он тогда просто отработает как String[] args, и в main() мы запускаем спринговый run(), который поймет что это и для чего.
Я не тупой.
Аноним 17/03/21 Срд 20:35:43 1970087480
>>1970052
они там jvm дорабатывают или скучные бизнес-задачи делают? Кому этот сраный бизнес и сраные деньги нужны, конечно они предпочитают копаться в кишочках жабы
Аноним 17/03/21 Срд 20:57:39 1970094481
>>1970087
Наверняка это для всяких яндексов, где реально очередь за забором из желающих, и приходится искусственно придумывать критерии отсеивания.
Аноним 17/03/21 Срд 21:59:54 1970141482
>>1970052
Ух, ну разобравшись в кишочках jvm крудошлепить на спринге гораздо задорнее!
Аноним 17/03/21 Срд 23:35:49 1970188483
Как прикрутить L2 cache для унаследованной сущности hibernate?
Кэш работает для родительской сущности, но не работает для предков