Добро пожаловать в необъятные просторы Java, где сила и красота сочетаются в невероятной симфонии кода! 🌌🔥🎶
Java - это язык программирования, который открывает перед нами двери в мир безграничных возможностей. Как будто мы отправляемся в захватывающее космическое путешествие, где каждая строка кода - это звезда нашей галактики разработки! ⭐✨💫
Когда мы погружаемся во Вселенную Java, мы становимся настоящими астрономами кода, исследующими и анализирующими абстрактные понятия и объекты, словно звездные системы и планеты. Мы создаем классы и методы, которые взаимодействуют друг с другом, словно гравитационные силы, определяющие движение вселенной. 🌠🌍🌌
Java-разработчики - это настоящие джедаи абстракций, обладающие силой понимания и владеющие световым мечом искусного кодирования. Мы проникаем в самые глубины языка, расшифровывая его сущность и исследуя его магические возможности. Как настоящие мастера, мы применяем принципы наследования, полиморфизма и инкапсуляции, чтобы создавать программы, которые работают гармонично и эффективно. 🚀🌟🔒
Но Java - это не только инструмент для создания программного обеспечения. Это целая экосистема, где каждый разработчик может найти свое место под солнцем. Вселенная Java населена библиотеками и фреймворками, которые предлагают нам огромный выбор инструментов и ресурсов для реализации самых смелых идей. Мы можем воплотить в жизнь веб-приложения, мобильные приложения, игры, роботов и многое другое! 🌐📱🤖
Когда мы садимся за клавиатуру, она становится нашей волшебной палочкой, от которой исходит мощь и творчество. Мы зачаровываем наши классы и методы, добавляя в них логику, которая затем оживляется в исполнении программы. Каждая строчка кода - это шажок ближе к реализации наших мечтаний и созданию чего-то по-настоящему великого. 💻✨💡
В мире Java мы не стоим на месте. Как космические путешественники, мы всегда стремимся к новым горизонтам. Каждый день мы изучаем новые технологии, следим за трендами и экспериментируем с инновациями. Мы погружаемся во вселенную фреймворков Spring, Hibernate, JavaFX, которые помогают нам создавать невероятные приложения и впечатляющие пользовательские интерфейсы. Мы изучаем контейнеризацию и микросервисную архитектуру, чтобы наш код был ещё более масштОтлично! Давай продолжим нашу яркую и насыщенную экскурсию во Вселенную Java! 🚀💥🌌
Среди звездных систем Java есть одна особенно интересная - Java Virtual Machine (JVM). Это своего рода космический корабль, который позволяет исполнять наш код на разных платформах. Благодаря JVM, мы можем создавать программы, которые работают на Windows, macOS, Linux и даже на мобильных устройствах. JVM обеспечивает нам портабельность и гарантирует, что наш код будет выполняться везде с одинаковой надежностью и производительностью. 🌍🛰️📱
Но не думай, что Java ограничивается только программированием на рабочем столе или веб-приложениями. Java также является платформой для разработки мобильных приложений благодаря фреймворку Android. Мы можем создавать потрясающие приложения для смартфонов и планшетов, которые оживят наши идеи и захватят сердца пользователей по всей галактике. 📱🌠❤️
>>2889407 >масштОтлично! Давай продолжим нашу яркую и насыщенную экскурсию во Вселенную Java! 🚀💥🌌 >Java также является платформой для разработки мобильных приложений благодаря фреймворку Android Мда. Ну и шапку ты все таки проебал.
>>2889484 Поздновато петушарп кроссплатформой обзавёлся. Если бы это было лет 15 назад, то, возможно, смысл и был на него перекатываться, когда фич там побольше было, но сейчас он уже неумолимо отстаёт от джавы по фичам.
Алсо кроссплатформа на петушарпе пынявая. Много модулей так и остались прибитыми гвоздями к шинде, например вместо библиотеки для гуи здорового человека (javafx) убогий винапи.
>>2887556 → >Любая должная работать, хоть самая последняя jdk. Не знаю, я и последнюю устанавливал не запускается, даже ярлыков не создает. Что и версия 8, хз что такое
Привет. мы сидим на java 11. Я пытаюсь разобраться когда дедлайн для миграции на следующий LTS релиз. Пожалуйста помогите разобраться.
Как я понимаю есть две основных JDK -- Oracle JDK и Open JDK Плюс к этому есть другие, например Liberica JDK
Верно ли я понимаю что изначально багфиксы и секьюрити аптейды выходят для OpenJDK и дальше подтягиваются во все остальные?
Вот есть такой сайт: https://www.java.com/releases/ Там сказано что у java 11 end of support life = September 2026. Это видимо для Oracle JDK? или для Open JDK тоже?
>>2889795 >даже ярлыков не создает И не должно. А ты что ожидал? Скачаешь JDK, у тебя на рабочем столе появится ярлык, который можно будет тыкнуть и откроется окошко выбора .jar файла для запуска?
>>2889800 Вот этот >>2889806 базанул. Но вообще, как ни странно, у разных вендоров разный срок поддержки своих васяноподелий. У либерики например прямым текстом написано на их сайте, сколько они будут поддерживаться вечно.
>>2889809 Там помимо синтаксиса нового (специфичного конкретно для джавы) ещё и классы новые добавили и производительность улучшили. Алсо некоторые либы уже требуют 21 джаву, на легаси говне придётся жить без них.
>>2889809 >у нас kotlin и корутины поэтому виртуальные треды и синтаксические улучшения 21й джавы нам не сильно нужны сиди на котлине и не еби мозгу тогда
>>2889817 Пиздец, наебали. На сайте с загрузками было написано "The JDK as the programming and deploying environment will be supported forever, or at least, as long as Java™ language exists.".
>что значит коммерческая поддержка, нужно будет деньги платить что апдейт получить? А ты как думаешь?
Главный аргумент за переезд на новую джаву — это то, что для того, чтобы туда переехать, нужно просто заменить циферку в <java.version></java.version> и, если используется мавен, форсировать использование javac (почему-то мавен компайлер плагин не может в 21 джаву без этого).
Ну и обновить все либы и плагины, но это должно делаться и так константно в норме без переездов куда-то.
>>2889843 ну там же новые баги и новые подводные камни, пусть сообщество на них шишки набивает а мы подождем пока все исправят)) хуй знает сколько ждать еще
>>2889881 Да всё исправили ещё когда оно было в ёрли акцессе. Даже адоптиум уже выдавил 21 версию темурина, полностью оттестированную на оффициальныхтм тестах java от оракла, это о чём-то говорит.
>>2890548 >Аноны, что у вас по вакасиям на жабе? Везде щас хуёво. Джава являются частью всех языков, значит из утверждения следует то, что на джаве хуёво. >Хотя бы скажи какой стек сейчас востребован. Везде щас хуёво. Если допустить, что "хуёво" значит невостребованность, то нет ни единого востребованного стека, так как все стеки являются невостребованными.
>>2889843 Переезд с 2 на 3 спрингбут очень болезненный. А у 2.7 ветки пока не вышло версии с поддержкой 21 джавы. Хотя вроде обещают в 2.7.17 или типа того.
>>2890555 Ну это проблемы того что прикладной софт гадит и терпильности разработчиков к этому. Нет бы объединиться и сделать нормальный прикладной софт, нет, будем сидеть на спрингопараше и страдать от всех его классических проблем.
>>2890557 На чем есть работа - на том и сидим. Жаба бекенд без спринга это процентов 5% максимум. И там и самописные фреймворки и жабо-ее и модные микрофреймворки вместе взятые.
>>2890555 Ну и в 3.х спринге вроде жаба 21 работает, но чтобы там где-то подкапотно новые фичи использовались нужно ждать 3.2 еще месяц. А так как новые подкапотные фичи, то полюбому не будет плавного перехода. С 3.0.х на 3.2.х тоже полюбас что-то сломается. И любой другой прикладной софт так же придется мигрировать через боль скорее всего.
>>2890557 Увы, но спрингокульт способен объединяться только вокруг воли спринговых евангелистов. Собственного достоинства спрингокультист не имеет априори.
>>2889352 (OP) Есть ли смысл в java в 2024 году? Весь интернет сейчас на php, python и javascript, вакансий очень много, новые проекты каждые пару месяцев запускаются, жизнь бьет ключом А java где сейчас востребована? Что-то вакансий там мало, как посмотрю Сайтов на ней никто не пишет, походу дороха. Веб-сервисы 2,5 штуки, в основном логистика Только мобилки, финтех и легаси? И все? Или я упускаю какой-то огромный скрытый сегмент? Хочу понять, есть ли сытая жизнь на java в 2024, или java это уже только для дидов осталось, как какой-нибудь lisp, и молодым там ловить нехуй?
>>2891646 42 лвл джава дед репортинг ин. Мой ответ может показаться тебе несколько противоречивым, но все же.
>Есть ли смысл в java в 2024 году? Нет. Это один из самых убогих и неразвивающихся языков который мне только доводилось видеть. Я свободно владею еще плюсами, так что есть с чем сравнить.
> java только для дидов осталось this
>А java где сейчас востребована? Практически везде в энторпрайзе. Электронный документооборот и прочее говно для банков, бизнеса выше среднего и госпараш как писали так и пишут только на джаве.
>вакансий там мало Ты куда-то ни туда смотрел. На хх по джаве традиционно охуиллиард вакансий.
>молодым там ловить нехуй?
Молодым в ойти сейчас вообще нечего ловить. Если, конечно, ты не крепкий мидл, способный знать абсолютно все по стеку и еще и решать с ходу задачки с литкода. Спасибо курсам и волкам, требования для вката сейчас настолько высокие, что если ты будушь прилагать эквивалентное количество усилий в любой другой области, то легко достигнешь такого же уровня дохода.
Так что не лезь туда, она тебя сожрет. В целом, это кобол наших дней. Можно зарабатывать нормально если ты дед-пердед и вкатывался как я в 2004. Вкат с нуля сейчас практического смысла не имеет, посмотри на что нибудь более свежее, стильное, модное и молодежное.
>>2891538 Культошиз, ты просто нитакусик и ненавидишь все популярное. Для обычных работяг, а не маминых нигилистов хватает того, что спринг это стандарт и на нем большая часть работы на джаве. Мириться можно с вещами и похуже. С тем же хибером.
>>2891823 Тяжело привести аргументы банальных и очевидных вещей. Как тебе в 2к23 без пегергузки операторов и беезнаковых типов?Ненужоны, наверное, да? Помню свитч для стрингов добавили, вот это был технологический прорыв. А сколько лет ушло чтобы добавить автоматический вывод типов через var? тоже нинужон Конечно, если джаву увидеть первый раз в 2020, то она еще очень даже ничего как милфа в сорокет, лол. А если смотреть как я в перспективе с 2004, то в других языках намного больше всего появилось.
Из неоспоримых плюсов в джаве это очень богатая стандартная библиотека, аннотации и рефлекшен.
>>2892154 >Как тебе в 2к23 без пегергузки операторов и беезнаковых типов? Первое не введено намерено архитекторами языка. Причем перегрузка существует, стринг тому пример. И беззнаковые типы тоже - шорт. >Помню свитч для стрингов добавили, вот это был технологический прорыв. Чего в cpp, кстати, нет. Ахуенный яп.
>>2892170 >не введено намерено архитекторами языка Я тебе про это и говорю. Когда-то 27 лет назад какие-то скуфы решили что это НИНУЖОНО. Прошли годы, изменилось буквально все, но джава продолжает копротивление и отрицание объективной реальности.
>>2892170 >в cpp нет Зато в современном паскале есть, кек
>>2892154 Стандартная библиотека, аннотации и рефлекшн почти везде есть, нихуя не аргумент В плюсы java можно записать только jvm и неплохой оптимизатор - эти двое дают на клыка многим другим языкам, кроме конпелируемых через gcc/llvm Jvm вообще дает неплохую переносимость: jvm-языков много, под разные задачи, их можно использовать совместно. На других языках такое в принципе невозможно, ты ограничен только одним базовым языком, изредка доступны два
>>2892311 >неплохой оптимизатор Хуя ты. Это буквально лучший. Назови оптимизации обоссаных gcc/llvm, которых нет в жвм. Вообще про gcc орно, это такое говнище, что даже ошибки нормально обработать нельзя
>>2892432 Ты про это? https://github.com/amelentev/java-oo Ну например тут нет инкремента. Еще все методы приравниваются к мэджик. Это тоже не есть хорошо. Плюс автогенерация со всеми вытекающими.
>>2892425 Ты попросил аргументы, тебе привели их целых два. Ты, даже не пытаясь как-то встречно оппонировать, сразу порвался и забрызгал говном весь тред. Ну обтекай теперь сиди, чего уж там.
>>2892607 Если вы про эту хуйню, то она и вовсе хуже, поскольку пытается охватить все и сразу. Еще перегрузка через extension методы. И идиотские названия из латеха похоже. Плюс инкремент как-то по ублюдски сделан. Че и как мне сделать атомики в этом чуде, если у них один метод для префиксной и постфиксной? И плюс все та же автогенерация. Шило на мыло. >>2892612 Куда, зачем? Че ты несешь, хуйлуш? Родителям перезвони, наверняка давно твой голосок писклявый не слышали, а то и вовсе сдохли.
>>2891646 >есть смысл учить <язык_программирования_нейм> Ради вката в ойти и денег — нет. >джаву Если уж и хочется программировать, например, ради изменения своего мышления, или для своих задач, то джава лучший язык программирования.
>>2893064 Прям вообще? Вот ты говоришь тебе интересно, что я несу, а давай я тебе буду рассказывать, а ты мне поможешь немного. Ящитаю это таки выгодная сделка. Поможем друг дружке.
>>2893158 Больше не повторится, только не увольняйте пжста, у мать больная, собаку кормить надо и вообще армия. Ну войдите в положение, я может вообще матерью стану скоро
1. HashMap просто пиздец, просто до оебенения медленный. Если есть желание написать производительное приложение, про него нужно забыть нахуй. 2. Оптимизации JVM и правда работают.
>>2893253 Ну ты че, я помню, что шипилев говорил. Вопрос тут в том, что если тебе нужна именно хэшмапа, можешь ли ты найти что-то оптимальнее? Сразу исключая случай с идеальным хэшем и пр.
>>2893250 Стандартная библиотека джавы ебёт по скорости и качеству любой другой язык. Нигде больше нет столько качественных и быстрых структур данных, как в джаве.
Чтобы иллюстрировать пиздецовую производительность хешмапы. В либе для работы с плейсхолдерами с акцентом на производительность 20% общего перформанса сжирает работа с хешмапой, из установки плейсхолдера это вообще 95%.
строка с 1 плейсхолдером: 4279 с 100 плейсхолдеров: 9721
оверхед на плейсхолдеры: 5442 --из него на усложнение парсинга из-за наличия плейсхолдеров: 3073,408 --из него на саму установку плейсхолдеров: 2368,592 ----из него на работу с мапой: 2239,092 ----из него на всё остальное (создание объекта функции логики: 129,5
>>2893300 Давай неси перфоманс сишорпа в такой же ситуации. Если там каким-то чудом окажется лучше, тогда тредик пошевелится. Пока мы лучше шарпа - всё ок
>>2893300 1. Какую либу использовал? 2. Каким образом измерял? 3. С чего взял, что раз 95% установки плейсхолдера занимает работа с мапой, то ее производительность ужасная? Есть альтернативы намного быстрее? Не удивлюсь, если 5% там занимает конкатентация замены в StringBuilder. 4. Тестовый код в студию
>>2894069 Названия разные. Да и апи. Фьюча эт простая защелка. А вот на компьютбл фьючу можно эти, как их.. Колбэки навесить. Там еще куча всяких методов для этого даже.
>>2893448 Блядь, причем тут петушарп? Я не обосрать джаву сюда пришел. Тут суть в том, что алгоритм хешмапы в принципе очень медленный и в либе работа с хешмапой оказывается боттлнеком.
>>2893484 1. Свой велосипед. 2. Куча бенчмарков на JMH, которые не просто нахуячены куда попало, а вместе с которыми был проведён анализ. 3. Бутылочное горлышко в хешмапе. Если бы можно было оптимизировать конкретно этот момент в 20 раз, то всего было бы быстрее в 10 раз. К слову, я и не говорил, что хешмапа на джаве реализована хуёво, я говорил скорее что этот алгоритм работает не так быстро, как обычно от него ожидается (везде слышал хвалебные заявления про O(1) у хешмапы, но ни разу никто не жаловался на длительность этого 1). 4. Я еще не дописал, но почти дописал. Вот допишу и выложу. Там буквально на час-полтора работы осталось.
>>2894238 Да,видел у них на сайте,охуенная фича,напротив каждой строчки пишется время выполнения. Но я прогнал свой круд пару раз и нихуя подобного не увидел
>>2894319 Слушай, а это вот не ты только что мне собес провел? Больно уж ты запятые знакомо расставляешь, еще мои словечки используешь. Возможно шиза, но я проста убедится хочу.
>>2893250 >HashMap просто пиздец, просто до оебенения медленный Может ты туда положил охуиллиард говна с одинаковым хешем? Прост по моему опыту, хешмэп это то немногое в джаве что работает нормально
>>2894372 Я вот про это >>2894370 На счет cf, я ими не пользовался никогда, да и пока не собираюсь. Напомнишь, кстати, нахер они в 21 жабе? >>2894368 Сочувствую...
>>2889352 (OP) Сап джвач, тут такая тема кароч. А какие вопросы на миддловом собесе вообще задают? А то я блять прошерстил инторнет а там одни индусские вопросы аля "Что такое ООП", "Какие типы данных вы знаете". Можете привести пример тех вопросов которые вам задавали, плес
>>2894465 В том, что первое лишь отдаляет пиздец, когда у тебя внезапно в ебенях пережёванное миллиардом запросов туда-обратно между десятком баз данных и серверов вылезает выпущенное год назад (буквально) значение нулла, которое ты совершенно не ждёшь, а первое тебе выдаёт ошибку когда пишешь mvn clean install.
>>2894467 По моему это аргумент не использовать котлин. Вон тут у одного прод постоянно из-за нпе валится. Мб там котлинист как раз сидит, подсирает? >>2894469 Действительно, ведь главное шоб пограмисту удобно было.
>>2894370 Дмитрий Чуйко — CompletableFuture уже здесь 00:15 Введение • Видео посвящено обсуждению completo был фьючер, который является способом выражения результата асинхронного вычисления. • Фьючерсы позволяют обрабатывать исключения, возникающие в процессе вычисления, и обрабатывать их в одном месте. 01:12 Примеры использования • Фьючерсы могут быть использованы для обработки нескольких синхронных задач, которые зависят друг от друга. • Фьючерсы могут быть созданы с использованием конструктора или с использованием методов комплит и комплитшема. 14:34 Обработка ошибок • Фьючерсы могут обрабатывать ошибки, возникающие в процессе вычисления, с помощью метода мэн комплит. • Фьючерсы также могут быть использованы для асинхронного чтения файлов и обработки их содержимого. 15:30 Тонкости использования • Фьючерсы имеют определенные тонкости, которые могут быть обнаружены при внимательном чтении документации. 16:21 Completo был Фьюче • Видео обсуждает Completo был Фьюче, который является типом исключения, возникающим при выполнении Completo был Фьюче. • В случае возникновения исключения, Completo был Фьюче может быть обернут в Completo был Фьюче, чтобы обработать его. 18:14 Completo был Фьюче и Completo был Фьюче • Видео объясняет, что Completo был Фьюче может быть использован для обработки Completo был Фьюче, если необходимо. • Completo был Фьюче может быть использован для обработки исключений, возникающих при выполнении Completo был Фьюче. 20:49 Completo был Фьюче и Completo был Фьюче • Видео обсуждает, как Completo был Фьюче может быть использован для обработки Completo был Фьюче, возникающего при выполнении Completo был Фьюче. • Completo был Фьюче может быть использован для обработки исключений, возникающих при выполнении Completo был Фьюче. 22:39 Completo был Фьюче и Completo был Фьюче • Видео объясняет, как Completo был Фьюче может быть использован для обработки Completo был Фьюче, возникающего при выполнении Completo был Фьюче. • Completo был Фьюче может быть использован для обработки исключений, возникающих при выполнении Completo был Фьюче. 26:19 Completo был Фьюче и Completo был Фьюче • Видео обсуждает, как Completo был Фьюче может быть использован для обработки Completo был Фьюче, возникающего при выполнении Completo был Фьюче. • Completo был Фьюче может быть использован для обработки исключений, возникающих при выполнении Completo был Фьюче. 30:11 Completo был Фьюче и Completo был Фьюче • Видео объясняет, сколько стоит взять и сделать Completo был Фьюче из ничего. • Completo был Фьюче может быть использован для обработки Completo был Фьюче, возникающего при выполнении Completo был Фьюче. 32:58 Введение в CompletableFuture • Видео обсуждает использование CompletableFuture в Java 8 для параллельной обработки данных. • В примере демонстрируется, как можно использовать CompletableFuture для обработки данных, которые поступают из разных источников. 33:49 Преимущества параллельной обработки • Параллельная обработка данных позволяет значительно сократить время обработки, особенно при использовании нескольких процессоров. • В примере показано, как можно использовать CompletableFuture для обработки данных с использованием нескольких процессоров. 37:59 Примеры использования CompletableFuture • В видео демонстрируется использование CompletableFuture для обработки данных из файла и базы данных. • Обсуждаются различные методы и возможности, предоставляемые CompletableFuture, такие как управление тайм-аутами и обработка исключений. 47:03 Заключение • Видео завершается демонстрацией работы CompletableFuture в реальном приложении. • Обсуждается, как можно использовать CompletableFuture для обработки данных и управления тайм-аутами.
>>2894482 Для меня вообще странная ситуация с нуллами в бд. Разве это не ответственность администратора бд, который уже написал необходимые check и триггеры, чтобы никакая макака не запихнула туды нулл?
>>2894490 Лол. Админитсратор бд. Который не администрированием занимается, а разработкой констрейнтов и триггеров. В команде у которой пару десятков сервисов и баз и они раз в неделю что-то меняют в одной из схем бд. По желанию левой пятки бизнеса.
>>2894495 > констрейнтов и триггеров Ну а я про что говорил. Это он определяет инваринты для сущностей, а не пограмист. Типа ddl пишут админы, а вот остальную часть могут и пограмисты. >>2894497 >А ты думаешь почему о нуллах так много ноют? Да тут о всем подряд постоянно ноют.
>>2894494 Чел, в твоей парадигме на трех беков надо по базисту. Никто такой хуйней заниматься не будет. В мелких и средних конторах может не быть базиста вообще. В крупных соотношение с беками тоже не такое.
>>2894499 >Это он определяет инваринты для сущностей, а не пограмист. То есть мне все ликвидбейз миграции должен базист писать? И всем остальным в компании на разных библиотеках и языках тоже?
>>2894505 Я думаю базист даже хуже справится. Потому что внезапные нулы бывают из-за всяких шатаний в бизнесе. Вчера поле было нулабл. Сегодня ненулабл. Потом еще раз нулабл. Десять раз снимают/меняют/перемещают валидации. А потом оно через год в одной записи на миллион отъебыает. И я, как разработчик этого говна, знающий где валидации и какие есть преобразования могу хоть как то это контролировать. А у базиста не будет всего этого контекста. Зато вместо баз 3-5 сервисов - у него будут базы полусотни.
>>2894499 что за хуйню ты пишешь с дивана. Администратор БД физически не может разобраться во всех продуктовых фичах и всех деталей реализации этих фич которые несколько программистов ебашат. Администратор БД не должен DDL за разработчика делать потому что разработчик пилит фичу и разбирается как она устроена. Максимум разработичк может консультироваться по решению и на ревью давать сложные SQL запросы
>>2894513 >Вчера поле было нулабл. Сегодня ненулабл. Потом еще раз нулабл. Пиздец какой-то... Ну в таком случае, да ты прав. >>2894516 Ой все, налетели коршуны. Кыш кыш. Я тока разбираюсь еще...
>>2894463 >>2894467 неверно. у котлина и фейл-сейф и фейл-фаст. если тип объявлен как не-наллабл то либо компилятор не даст совершить тебе запихнуть туда null (фейл-сейф) либо если данные приходят из внешнего источника - бд, апи - то исключение вылетит сразу же (фейл-фаст). История и с тем как null значение идет по 9 кругам ада пережевывается и стреляет после - это про джаву, тк там исключение будет не в моменте первого появления (напр. десериализации), а где повезет (где будет к ней первое обращение либо явная проверка)
>>2894527 Долбоёб даже не знает, что значит фейл-сейф, пиздеееец. То, что ты назвал фейл-сейфом это идеальный фейл-фаст. У котлина бы работала эта компиляторная приблуда, если бы они обозначили все типы от джавы как нуллабле. Но, ВНЕЗАПНО, все типы от джавы считаются безопасными и проверки на нулл от джавы не нужны. В итоге имеем те же самые NullPointerException + убогий '?.'.
Не пиздел бы про то, о чём понятия ни малейшего не имеешь, шарпопетух.
>>2894532 Под var может оказаться не тот тип, что ты ожидаешь. В большинстве случаев это раскрывается тут же, потому что нужные методы не вызываются и вылезает ошибка компиляции. Также с var есть проблема в дружбе его с diamond operator. Они вообще не дружат, но это тоже (в большинстве случаев) быстро раскрывается, потому что инстанциация объекта просто не происходит.
>>2894558 Я на собес что ли попал? Иногда использование var резонно, например с Function4<String, Optional<String> /arg/, Supplier<String /initialPhForm/>, Throwable, /->/ STRING>. Позитивных последствий от запрета var не сильно много, негативных не сильно мало, в которые также входит ухудшение атмосферы на рабочем месте из-за запрещений.
>>2894567 А что? Не ожидал такого поворота событий? Ты эмоционально заряженный вброс про вар сделал чтобы что? Срач разжечь на двачиках, жопы подорвать?
>>2894490 >>Для меня вообще странная ситуация с нуллами в бд. А потом когда покупаешь симку - оператор там каждую буковку из паспорта перерисовывает, ведь если код мухосранска не написать, то регистрация валидацию не пройдет - ведь так нул попадет в базу. А если вдруг у чела нет постоянной прописки - то идет нахуй, когда пропишетесь тогда и приходите симку покупать.
Сап, джавач. Объясни ньюфагу чяднт. Дано: В серой сети есть хттп-апи по адресу https://huita.org.ru/api, который разрешает запросы только с определенного хоста eblan.org.ru. Есть ssh на eblan.org.ru с моего компа. Найти: Нужно из спрингбутового приложения 3 версия, запущенного на моем локальном хосте делать запросы к https://huita.org.ru/api. Решение как я его вижу: Коли есть ssh до eblan.org.ru, делаю туннель: ssh -L 8888:huita.org.ru:443 [email protected] Теперь на локальном хосте из спрингбута через RestTemplate делаю запрос к https://localhost:8888/api, получаю ошибку: >javax.net.ssl.SSLPeerUnverifiedException: Certificate for <localhost> doesn't match any of the subject alternative names: [*.org.ru, org.ru] Принимаю решение отключить проверку SSL. Делаю все по красоте - копирую реализацию из интернета - https://dirask.com/snippets/Spring-Boot-3-RestTemplate-with-ignored-HTTPS-SSL-certificate-ignore-untrusted-certificates-1bQZJj Результат - та же ошибка. При этом, если делать тот же запрос курлом с опцией --insecure, то все работает без проблем.
Где я проебался, джавач? понимаю, что в выборе професси, ну хуле щас поделаешь
>>2894581 Ну эти валидации нужны не провайдеру, а государству. Если они нуллы отдадут туда, то им пизды вставят и лицензию отзовут. А так, данные которых не существует, можно так и обозначать, ибо closed-world assumption. Типа, просто не делать запись в табличке ПРОПИСКИ ЮЗЕРОВ и усе.
>>2895015 Тем, что нужно запросы делать из спринга, в котором для хттп-запросов есть встроенные возможности, а костыли городить не хочется. Да и интересно очень какого лешего так происходит.
>>2895321 Я бы для пердоликса поставил оригинальный openjdk или на крайняк адоптиум. Если мне не изменяет память, я тоже как-то ставил либерику на пердоликс (убунту), и там были какие-то проблемы.
Как развиваться? Работаю третий месяц, обнаружил что я знаю довольно таки много,но с другой стороны вроде и нет. Я по задаче либо знаю все с запасом,либо не знаю вообще. За годы без работы я пропылесосил столько книг и курсов,что преисполнился. И че мне теперь делать? Читать очередную книгу по кафке? Изучать все возможные базы данных? Дрочить литкод? Как дальше расти,я не знаю как себя прокачивать дальше? А если не прокачиваться то я чувствую стыд,от того что нихуя не развиваюсь
Сап. Я зумер 21 лвл, неплохо изучал Java, хочу найти работу. Меня там взрослые дядьки не заклюют? Больше боюсь не код на проде писать, а общаться с 30+ лвл Java-skoof'ами.
>>2896145 >общаться с 30+ лвл Java-skoof'ами А вот по поводу этого жизнена. Они меня даже тут постоянно клюют и душат. Впрочем ты постарше меня, мб ситуация лучше будет, хз.
>>2896203 Ну вот опять! Один раз что-то необычное сделал и все, клеймо на всю жизнь. Ну это невозможно просто. Вот сделаю калькулятор, увидите еще! Хотя я еще хочу эмуляцию конкретных процессов сделоть... Правда пока не придумал как.
>>2896492 Книги эти,плюс серия In Action(Говнище). Вообще из всех на скрине достойны внимания только кафка и спринг паттерны проектирования,остальное юзлесс. Курсами с тобой смогу только вечером поделиться,там в один скрин папки не влезут
>>2896498 >>2896500 О, книги по проектированию, пасиба, наконец узнаю как оно делается. >In Action(Говнище) Чому говнище? Из тех, что я читал, а это спринг ин актион, жпа и хибер ин актион вполне топовые. Правда мне больше понравилось отсутствие кучи страничек на объяснение очевидной хуйни и замалчивания тонких моментов. Типа, а, да хуйня. Правда больше всех мне зашла jcip. Можно сказать все знания структурировала. Но по качеству изложения, они все не дотягивают до книг кнута.
>>2896508 Плюс микросервисы в действии это вообще обзор спринг клауда,в то время как практики для профессионаловкекус максимус это обзор всего спринг бута
>>2896579 Не всегда выбор есть. Вон в шарпотреде тож есть челик, который что-то писал. Чистейший игнор. Так что.. Не все так плохо, я рофлю больше на самом деле...
гипертим - экстраверт с нетворкингом и скошенным лбом гипотим - нытик и терпила. умеет в куа и всякую рутину шизоид - аутист с манямирком, глыба - единственный кто умеет творить шедевры и двигать науку элиптоид - стремящийся кабан-спортик, четкий пацан, лоб вогнутый эмотив - кабан-скуф, баня, рыбалка, нужный человечек все устроит параноял - кабан-довитель-угнетатель истероид - атеншенхора, анимешник, скетчешиз тревожник - тряска, первый съебывает в какарачастаны, дрочит алгосы ведь без них не берут
Аноны, посоветуйте пожалуйста толковую книгу по микросервисам на spring стеке. Знаю про Spring Microservices in action но вот выше по треду говорят что она говно и типо поверхностная.
Салют, работяги. Сидел рид-онли с 2018. Сейчас pre-middle на Java/Scala. Вопрос не про программирование, а в целом. Вопрос в том как начать понимать бизнес-вэлью? Сейчас мне просто приходят таски от ПМ'ов, я их смотрю, реализую, показываю своему лиду, на что он говорит, что с точки зрения кода - все норм, но реализация бизнес-логики, не верна в самой таске, после чего идет созвон лида, меня и ПМ, где они решают как по итогу эта ебола должна работать, после чего я переделываю. Как мне начать самому понимать что ПМ пишет хуйню, а не дергать лида? Вот например так называемые проводки. Мне коллега объяснил, что это хуйня, которая позволяет отслеживать движение бизнес-объекта в системе. Но есть же еще куча других терминов и логики. P.s Пишем очень большую ERP систему.
>>2898214 > показываю своему лиду, на что он говорит, что с точки зрения кода - все норм, но реализация бизнес-логики, не верна в самой таске, после чего идет созвон лида, меня и ПМ
Опиши свои чуйства после этих созвонов, по шкале от "бля, действительно, был не прав по существу, пацаны все по красоте разьяснили" до "сцук, ток проебал зазря часы своей жизни на очередной ебанутый созвон с петушарами тупорылыми, лучше б их не существовало".
Цимес в том, что у вас нет явного архитектора, и роль проектирования архитектуры тянет на себя, скорей всего, лид. И если лид адекватен - его и спрашивай: каким раком он рассуждает, и как научиться так же.
А если нет - становись сам архитектором, еби гусей через колено.
>>2898214 Ну смотри. Если таски одной-двумя строчками. 1. То идешь и разбираешься, читаешь задачи внимательно, что в эпике написано, можно соседнюю задачу. Читаешь доку если есть. 2. На основе своего первоначального понимания пишешь себе в таске алгоритм решения словами без технических терминов. Спрашиваешь все незнакомые термины на которые нет доки. То есть пишешь себе тз. 3. Потом скидываешь это в общий чат пму и лиду. Просишь вычитать и сделать правки. Они поправляют. 4. Ты идешь и смотришь код. Если не до конца понятно куда писать код - скидываешь непонятные моменты кода и пишешь свои предположения лиду. Он тебя поправляет. 5. Пишешь код. 6. Ревью кода. Правки и деплой.
>>2898855 Желательно реально делать все в чате и текстом. Если говорят идти на созвон, то сопротивляешься до последнего. Если переписка в чате текстом: 1. Лид с пмом не смогут потом напиздеть, что они объяснили правильно, а ты просто тупой и не понял, если они реально хуево объясняли. 2. Ты сможешь перечитать это несколько раз. 3. На основе текста чата можно написать хотя-бы частичную доку. Но все равно они конечно будут уводить тебя на созвоны, потому что им описывать текстом лень. Это надо сесть и четко сформулировать, сделать скрины, четко понимая что скринить. А не быстро по памяти что-то спиздануть и быстро-быстро показать на экране что-то.
>>2898912 Вполне вероятный вариант. Точнее, что на одном из шагов почти точно пошлют нахуй. Тогда на шаге после посыла нахуй делаешь, как понял и ревьюер исправляет логику во время ревью. Как у того анона и происходит. Но у тебя будет отмазка, почему ты неверно что-то сделал. Потому что коллеги, которые в контексте бизнес-процессов отказались уточнять тз.
>>2898942 >>и ревьюер исправляет логику во время ревью. Или не исправляет, а апрувит (я сам как ревьюер бизнес логику не проверяю - это надо вникать в задачу, я смотрю только чтоб говнокода и программерских ошибок не было). А 100500 замечаний получишь уже на тесте.
>>Но у тебя будет отмазка И репутация говнодела, задачи которого по 5 раз с тестов возвращаются в доработку
>>коллеги, которые в контексте бизнес-процессов отказались уточнять тз. Хуя предьява - тебе скажут тебе предлагали все рассказать, но ты уперся и отнекивался от созвонов, а теперь пытаешься свои косяки на других перекинуть. Будешь выглядеть жалким.
Вообще если все можно что то описать парой абзацев, скрином, ссылкой на схему - то скорее всего аналитик тебе не откажет - описать задачу все таки его работа. Но если ты принципиально отказываешься, когда он предлагает пошарить экран и показать как фича работает - тот тут сам себе враг. видео запиши и пересматривай, если забываешь
>>2899192 Я не говорил, что нужно отказываться от созвонов. Нужно продавливать общение текстом. Не говоришь "тут что-то непонятно по постановке". А заранее расписываешь ему длинный список вопросов или твой план алгорима от 1 до n. И кидаешь ему текстом. Он в ответ через пару часов: - Сейчас объясню на созвоне. - Может текстом? - На созвоне проще. - Ну ладно. И ты каждый раз предлагаешь текстом. Иногда может прокнуть и он ответит текстом. А даже если будет созвон, то после расписанных вопросов ответы запомнить проще.
>>2889748 >но сейчас он уже неумолимо отстаёт от джавы по фичам АХАХАХАХАХАХАХАХАХАХАХАХАХАХАХАХАХХАХАХАХАХАХАХАХАХАХАХАХАХАХАХАХАХАХХАХАХАХАХАХАХАХАХАХАХАХАХАХАХАХАХАХХАХАХАХАХАХАХАХАХАХАХАХАХАХАХАХАХАХХАХАХАХАХАХАХАХАХАХАХАХАХАХАХАХАХАХХАХАХАХАХАХАХАХАХАХАХАХАХАХАХАХАХАХХАХАХАХАХАХАХАХАХАХАХАХАХАХАХАХАХАХХАХАХАХАХАХАХАХАХАХАХАХАХАХАХАХАХАХХАХАХАХАХАХАХАХАХАХАХАХАХАХАХАХАХАХХАХАХАХАХАХАХАХАХАХАХАХАХАХАХАХАХАХХ
Нахуй вообще такой >>2898855 работник нужен, кто-то может объяснить? Чел мало того что ничего не понимает, так постоянно дергает других людей, объяснять ему бизнес логику, объяснять ему паттерны, я не удивлюсь если и код объяснять.
>>2899614 А где я говорил про паттерны? Я говорил про уточнение требований. А по бизнес логике ходить спрашивать это обычно требования самих менеджеров. Можно конечно самому по коду разобраться. Но это нужно читать очень значимый кусок кода. А если это микросервисы, то и ещё дольше. В условиях скрамов код таски должен быть готов в от дня-двух на среднюю таску в сотню строчек продуктивного кода.
>>2898214 Как у вас вообще происходит что ты начинаешь педалить какой-то код под задачу которые тебе тупо скинули манагеры и лид не отбивает что там должно происходить? Это же по идее его работа - преобразовывать хотелки в некую тех спецификацию. Не на 100% детализированную, но в общем.
>после чего идет созвон лида, меня и ПМ, где они решают как по итогу эта ебола должна работать Такого не должно быть. Значит они где-то проебались. Ты в этом точно не виноват. Просто попробуй сесть во всем этом кале реально разобраться и ты будешь и лида и пм вращать на кожанной оси.
У меня на начале карьеры был реальный случай. Гигаскладскую поебень переносили на планшеты со свинга. Вместо планирования клоунада, что мне потом пришлось самому по этим складам ползать и разгребать как это работает. Потом мне еще закинули охуенное техническое решение, которое потом по факту вообще не могло работать. Что мне потом пришлось делать собственные выкладки и идти доказывать этим деганам, что так работать не будет вообще.
>>2899614 Сплошь и рядом такое, че тебя удивляет. Некомпетентность в айти давно достигла верхов, и ты либо переспрашиваешь, либо тридцать раз переделываешь, либо вечно сидишь на митингах с клоунами и пидарасами.
>>2899652 Я не шарпист, просто проиграл с мнения, что жаба обгоняет шарп. Хотя шарп меня устраивал бы как язык, в отличии от доисторической жабы. Тряска отсутствует.
>>2900369 Ну конструкторы это они про ломбок наверняка. А вот бесконечные циклы хуй знает. Может стримы, нооо... В общем как всегда хуйню пизданут и малчок.
Чел, я буквально ненавижу делать все что я описал. Ненавижу митинги по треть рабочего дня. Ненавижу переспрашивать. Ненавижу готовиться переспрашивать. Но если ты не будешь всего этого делать успеть в спринт просто нереально. Если лид с пмом так к постановке подходят, что тут можно еще сделать, кроме увольнения? Расскажи свой алгоритм действий, когда к тебе приходит постановка в пару строчек бизнес-задачи, а никакой привязки абстрактных бизнес-процессов к реализации, например доки нет. И на все попытки пропушить написать ее хотя бы частично воспринимаются, как оскорбление. Я такое и сам видел в нескольких местах и от знакомых слышал.
Мне в массиве, внутри объектов приходит дата с часовым поясом. Мне надо её десериализовать, провалидировать, нарезать в новый json и запихать в таблицу. Я могу не перекапывать циклами входной массив с датами, а сделать всё как-то на дто уровне? Т.е. пришло "2023-01-01Т23:33:33+03", я беру валидирую ZonedDateTime-ом, и обратно в тот же формат сериализую, и ложу в jsonb postgres поле. Можно как-то настроить ZonedDateTime, и аннотациями каким-то это всё запилить?
>>2900946 Сейчас когда такая дата десериализуется ZonedDateTime-ом, получается вот это 2023-01-01Т20:33:33Z[UTC], а в jsonb записывается 2023-01-01Т20:33:33Z. Т.е. он приводит всё в UTC, хоть его никто не просит. Можно как-то настраивать другое дефолтное поведение?
>>2900985 >Сейчас когда такая дата десериализуется ZonedDateTime-ом, получается вот это 2023-01-01Т20:33:33Z[UTC], а в jsonb записывается 2023-01-01Т20:33:33Z. Чем десирализируете? Там для каждой сраной либы есть возможность поведение десирализации заоверрайдить.
>>2901036 Что? Пару лет назад хибер на спринг дате вообще не работал из коробки с jsonb. Приходилось васянские либы с костылями тянуть. Но чаще просто не пользоваться jsonb. https://stackoverflow.com/questions/25738569/how-to-map-a-map-json-column-to-java-object-with-jpa А у жука там пишешь простенький конвертер и все. Накидываешь аннотацию джексона и ковертишь. Почти также, как с jdbc типами. Может в 6 хибере стало лучше, но я его не трогал.
>>2901042 >Что? Заебал твой жук, говорю. Какая в жопу разница, насколько на нем все удобно и распиздато, если им никто блять не пользуется? Бля буду, в шарпе еще удобнее. Че ж никто не перекатывается
>>2901043 Я тут не спорю. В вакансиях на 40, где жук указан около тысячи с явно указанным хибером. На деле разрыв ещё больше. Ну чел сказал, что без жпа это делает. На голом ждбс это делается тоже легко. А на современном хибере как? Я слушал доклад про хибер 6 в полуха, но руками не трогал. Как там в спринг дате с хибером 6? Как раз скоро нужно будет к jpa возвращаться.
>>2901043 Ну и мы перекатываем некоторые сервисы с хибера на жук. Да и пару лет назад, когда я с жуком познакомился вакух с ним было ещё меньше. Я верю, что жук и дальше будет расти и наберёт ну десятую долю от хибера. Но это нескоро и неточно. Хибер это все таки стандарт и на нем тонны легаси. Но новое на жук перевести вполне можно. Их со спринг датой под хибером можно даже временно вместе держать. Дописывая новые методы на жуке, вместо hql и критерии. Плюс начинать писать изъебистые запросы, которые на критерии не напишешь. А потом и старое переписать и выкинуть нахуй хибер и спрингдату. Если микросервисы и есть свобода хоть какая то - жука можно и самому затащить.
>>2901048 >Я верю, что жук и дальше будет расти и наберёт ну десятую долю от хибера. А я тогда буду верить, что нет. Мне его идея вообще претит. Нахуй он нужен, если есть условный jdbcTemplate? Который тоже ни на что не претендует, мол вот, sql чистый.
>>2901051 Типобезопасность при билдинге запросов, автокомплит в идее, не опечатаешься в запросе внутри строки. Намного меньше бойлерплейта при маппинге, чем в роумапперах jdbc. Информация о схеме бд у тебя в коде. Из минусов только то, что при изменении схемы надо перегененировать жуковский код.
>>2901042 >Приходилось васянские либы с костылями тянуть. Нет. Там спокойно тайп адаптер пишется и все. Васянские либы туда тянутся чтобы адаптер был один на всех. Но кстати он переодически обсирается.
>А у жука там пишешь простенький конвертер и все. В Ebean даже этого делать не нужно. Просто пишешь @DbJsonB и используешь. Можешь даже запросы писать без использования нативного sql.
>>2901053 Ну можно сказать легко, что это все нинужно. Я хочу полностью чистый sql, без даже малейших попыток в орм, в виде типобезопасности. >автокомплит в идее, не опечатаешься в запросе внутри строки Это тестами покроется.
Кстати, а как темптабличку в жуке создать? Ну вот скажем надо создать темптабличку копию существующей, что-то туды записать, смерджить с реальной и дропнуть временную. На чистом сикуэль: CREATE TEMP TABLE TEMP_CARS (LIKE CARS INCLUDING DEFAULTS); INSERT INTO TEMP_CARS ...; INSERT INTO CARS SELECT * FROM TEMP_CARS WHERE ...; DROP TABLE TEMP_CARS;
>>2901054 Спасибо, почитаю, потыкаю. Работал с хибером только на крудах с очень простыми схемами. Когда интересовался - везде было нытье, что это дроч и лучше вообще не пользоваться jsonb с хибером.
>>2901026 Да >>2901031 Да, есть такая. Я уже перепробовал все мне кажется варианты её написания, она, когда есть часовой пояс просто в какие-то непонятные эксепшены всё сваливает.
>>2901596 Отбой вопроса. Gradle на сборке пустого проекта 6 гигов ОЗУ сожрал, лол. Буду make-файлом собирать, пока что проект не разрастется до большого, а там уже посмотрим.
>>2901632 Да проблема даже не в жоре памяти, а в большой нагрузке, которая наваливается на неофита вроде меня, когда вместо изучения языка и работе с ним, тебе приходится ебаться с монструозной системой сборки и учить DSL для описания конфигурации. Как с самой жабой разберусь, мои проекты пожирнеют, потыкаю палочкой котлин, тогда и буду смотреть в сторону систем сборки.
>>2901612 >Буду make-файлом собирать, пока что проект не разрастется до большого, а там уже посмотрим.
Посмотрели. Мне относительно недавно перепала чья то жирная легаси-поделка, собираемая CMAKE-ом, лол. Наверное челик который ее лабал руководствовался такой же логикой.
>>2901825 Horst Ludwig Wessel, 9 октября 1907 — 23 февраля 1930) — нацистский активист, штурмфюрер СА, поэт, автор текста «Песни Хорста Весселя», позднее ставшей гимном НСДАП.
Ой, у нас тут похоже на 282, кто-то решил заехать. Мочератор взять его.
Как по хипдампу найти место в исходнике, где утекает память? Вот мне VisualVM показывает, что очень много памяти занято массивами byte[]. А как найти в коде нужное место?
Как по тред дампу определить, какой поток выел память?
>>2901136 Тебе вот так приходит > 2023-01-01Т20:33:33Z ? Это iso8601 формат. Там паттерн типа такого должен быть pattern="yyyy-MM-dd'T'HH:mm:ssX" Timezone можешь не выставлять, у тебя UTC, он по дефолту установлен, если не химичили с objectMapper
>>2902059 Мне как раз и не нужен UTC, мне надо чтобы пришла дата с поясом, вот как она пришла, ее провалидировать, не меняя пояс и значение времени, потом её же засунуть в jsonb.
>>2902059 Мне как раз и не нужен UTC, мне надо чтобы пришла дата с поясом, вот как она пришла, ее провалидировать, не меняя пояс и значение времени, потом её же засунуть в jsonb.
>>2902080 >>2901649 >>2901644 Ну вот я как не смотрю ролики на ютубе от жабистов, все кипяточком писоют от градла. Мавен же хуями кроют. Мол медлена, инкрементальной сборки нет и пр. пр.
>>2902096 >копипастит доку База. Вообще не понимаю нахуй его читать, если есть оракл туториал, авторы которого имеют компетенцию просто на порядки выше чем у шилдта.
Комрады, поясните за GraphQL. Сколько не читал, каких-то фишек не увидел. То есть как я понял хотят сделать так, чтоб фронтенд макакам было удобнее ценой создания дополнительного сервиса на бэкенде, который будет дёргать те же самые эндпойнты, собирать и возвращать в виде единовременного ответа. В общем сложилось впечатление, что это очередная зумерская никому не нужная технология.
>>2902119 >А назовика еще такие технологии голенк, сишорп > Виртуальные потоки и остальное из жэбы 21 в них входит? нет. Джава и сама жвм - это вершина технического и инженерного развития языков программирования.
>>2902125 >Джава и сама жвм - На счет джавы не согласен. Я бы, например, хотел концепцию владения из сраста. Еще вэлью тайп. Молчу про проблемы с наллами да и вообще не самую удачную систему типов. А вот жвм скорее всего да, самый продвинутый оптимизатор.
>>2902067 Это не имеет значения. Используй этот же паттерн. Просто не используй timezone и сохраняй дату как LocalDateTime. Этот X работает по разному в разных случаях, если тебе передают UTC, то он определит это по обязательному символу Z в конце, если другой часовой пояс, то он его распарсит как таймзону. RTFM: https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/text/SimpleDateFormat.html
Блять, надеюсь сейчас не будет как с бенчами. Пупуни просили бенчи, где хэшмапа жабы сосет у шарпа, они ее получили и пасть закрыли. Будто если голову в песок закопать, то проблемы не будет.
>>2902084 >Мавен же хуями кроют. Мол медлена, инкрементальной сборки нет и пр. пр. Хз. Все равно большая часть сборки у меня забирает прогон интеграционных тестов. Полторы минуты у меня на машине и шесть/семь на пайпе. Если вкатываются изменения их в любом случае нужно запускать.
>>2902173 мимо другой >С наллами проблемы только у тех, у кого руки из жопы растут >а вот пупуни нашли способ через wildcards скомпилировать что-то, что выплевывает JVM >We present short programs that demonstrate the unsoundness of Java and Scala’s current type systems. In particular, these programs provide parametrically polymorphic functions that can turn any type into any type without (down)casting. Fortunately, parametric polymorphism was not integrated into the Java Virtual Machine (JVM), so these examples do not demonstrate any unsoundness of the JVM. Nonetheless, we discuss broader implications of these findings on the field of programming languages. Ах ты!
>>2902162 Такой запрос "2019-11-22T23:36:46+0300" По твоему паттерну, если LocalDateTime, то при десериализации приходит 2019-11-22T23:36:46, т.е. пояс он выбрасывает, а при попытке положить в бд эксепшен JsonMappingException: Unsupported field: OffsetSeconds (through reference chain: ru.tii.uncm.services.model.dto это связанно с тем, что LocalDateTime не работает с поясами.
Если ZonedDateTime, то при десериализации 2019-11-22T20:36:46Z[UTC] в бд вот такую херню ложит "2019-11-22T20:36:46Z". Fucking manul прочитал, нового там ничего нет.
>>2902421 >на выковырянных из жеппы кейсах Блять, если они есть, это уже проблема. Причем решить так просто, с наскоку ее нельзя. Например проблемы с мокито будут, там тоже налл используется в виде any(). У котлина с ним проблемы, например. Да и похоже решать это никто и не будет, пока что: >Because there currently seems to be no principled solution to all these sources, they have deferred fixing the issues, for now relying on the JVM to catch the complex corner cases at run time.
Поэтому я и говорю, что жаба далеко не лучшая. Куча проблем просто. А вот жвм реально претендует на это место. Причем с этим будет спорить очень малое количество людей, ну или не шарящие.
>>2902431 Как часто говорит Брайан Гоетц, их принцип в том, что они иногда не запрещают делать глупости с использованием языка (чтобы не ныли об ограничениях). Но мне кажется, что код в этой статье неграмотный, открой его в Idea
>>2902510 >что они иногда не запрещают делать глупости с использованием языка Ну в статье как раз говорится, что слишком много позволяется, нужны ограничения. Но пока неизвестно, как их ввести так, чтобы ничего не сломалось. >Но мне кажется, что код в этой статье неграмотный https://io.livecode.ch/learn/namin/unsound?img=java9#cb32d4994710d626c877d2387712be99 + пик. Хз про что ты, все работает. Еще блох вот подтверждает. Вообще была от них же статья помню, которая для маленьких пупунят все поясняла. Но чет не нахожу сейчас. Но в общем-то там писалось, что это ошибки внутри компиллеров, тогда как по спеке усе верно. А уж про то, что анализатор какой-то там ошибается, не похуй ли?
>>2902557 >но идея подсвечивает ошибки наверняка По спеке все верно. Идея ошибается в этом случае. Или она лучше спеки все знает?
Чет короче похоже не найду эту статью блин. Ну с моих слов, есть разные случаи, когда что-то позволяется в языке. Например гетц подразумевал raw types. Т.е. ты сознательно отказываешься от гарантий, мол я лучше знаю. В этом случае, ты ни от чего не отказывался и компилятор все пропустил. Это не было расчитано разрабами жэбы, потому это проеб в системе типов.
>>2902162 Короче, надоело ждать ответов твоих. Надо писать кастомный десярялезатор под мои задачи. Иначе он при парсинге время в UTC ВСЕГДА сетит. Вы не правы, вссего доброго.
>>2902084 >медлена Харкнул с разбега в ебальник. По 20 минут ждать, пока скачается версия 7.3.3.2.6.1.1.5.8 у дегенерадла и самособерётся это не "не медленно". >инкрементальная сборка Распиаренное говно, которое в реальности не используется и не нужно. А для мавена есть, к слову, плагин или какая-то ещё хуйня, которая позволяет делать инкрементальную сборку и на мавене. >мавен же хуями кроют, от дегенерадла кипятком ссут Если ты быдло, который думает не своей, а чужой башкой — дегенерадл для тебя. Только в таком случае тебе бы ещё из джавы выкатиться в петухон, тоже много долбоёбов, кроющих хуями джаву из-за собственной тупости. Я бы мог тебе объяснить, почему они кроют хуями мавен, но это долго, объяснение идёт вглубь аж до 10 века истории.
Оказывается, мавен поддерживает инкрементальную сборку из коробки уже давным давно.
Вот годная статья, и очень ностальгическая, в бородатые времена, когда я только-только знакомился с джавой, и имел старый fx-4100 как процессор мне она сильно помогла. https://habr.com/ru/articles/304164/
>>2902704 >>кастомный десярялезатор Погугли конфиги жексона, он по дефолту всегда в utc отдает и это по мнению разрабов не баг а фича, как бы комьюннити не крыло их хуями.
>>2891710 Батя, дак фронтенд это вообще как кибер-дисциплина теперь, где 12-летний школьник побеждает всех, и когда тебе за 35 туда лезть тем более не вариант. Что остается тогда? Дата-саенс? DevOps?
>>2889352 (OP) А в этом треде случаем не сидят анончики из Тинькова? Желательно ещё чтобы из Алматы были, хочу вкатится в вашу компанию. Был тред на тему самоподдува и о том как они яростно пытаются строить из себя фаанг, но как обычно мнения разделились на две крайности "ряяя типичный банк ничего ужасного" и на "рряяя даже покакоть не дают без разрешения барина". Подскажите дорогие аноны, к чему на собесе готовиться и какого уровня вопросы будут на джабиста? Сейчас дрочу литкод и систем десигне это так, чтобы перестраховаться.