>>3289164 Мне сейчас не до етого, надо как-то заставить жабку доверять сертификату летсэенкрипта. В прошлый раз какой-то мем вышел, что она доверяла самоподписаному, но плевалось от нормального... Ну и настроить обвязку всякую разную(
Так что придется отложить эксперименты с женериками, эхх.
>>3290142 Ахахх, бля представил, как я им свою хуйню отправил.. >Это "идеальное тестовое задание": оно поможет определить тех специалистов, которые готовы не просто писать код, а делать его максимально чистым, эффективным и читаемым для других. По сути дефолт олимпиадка, просто критериев еще добавили.
>>3290306 Подводные в виде ебанутого порога входа во все это. Сейчас ораклы и прочие соучастники вроде поупрощали немного вкат во все это, и раньше было еще хуже, но все равно кодить под AOT среднестатистический развешиватель анноташек на спринге скорее всего не сможет и не будет. Хорошо если твой фреймворк дает тебе поддержку из коробки, но во первых помимо фреймворка есть еще транзитивные зависимости твоего говнокода, требующие особого ублажения (если под капотом рефлексия и Unsafe, придется поебаться с копанием кишочек этой зависимости и написанием конфига под нее. А если там еще и JNI... лично JNI меня добил). А во вторых, из таких фреймворков есть разве что кваркус и микронафт. У того же спринга aot из коробки начинает появляться вот только-только с недавнего времени (в то время как Graal существует примерно со времен джавы-девятки).
>ВЫИГРАЙ В КОНКУРСЕ >ЧТОБЫ ПОПАСТЬ НА РАБ ОТУ АХАХХАХАХАХАХАХАХХАХАХАХХАХАААХАХХАХАХАХАХАХАХХАХАХАХХАХАААХАХХАХАХАХАХАХАХХАХАХАХХАХАААХАХХАХАХАХАХАХАХХАХАХАХХАХАААХАХХАХАХАХАХАХАХХАХАХАХХАХАААХАХХАХАХАХАХАХАХХАХАХАХХАХАААХАХХАХАХАХАХАХАХХАХАХАХХАХАААХАХХАХАХАХАХАХАХХАХАХАХХАХАААХАХХАХАХАХАХАХАХХАХАХАХХАХАААХАХХАХАХАХАХАХАХХАХАХАХХАХАААХАХХАХАХАХАХАХАХХАХАХАХХАХАААХАХХАХАХАХАХАХАХХАХАХАХХАХАААХАХХАХАХАХАХАХАХХАХАХАХХАХАААХАХХАХАХАХАХАХАХХАХАХАХХАХАААХАХХАХАХАХАХАХАХХАХАХАХХАХАААХАХХАХАХАХАХАХАХХАХАХАХХАХАААХАХХАХАХАХАХАХАХХАХАХАХХАХАААХАХХАХАХАХАХАХАХХАХАХАХХАХАААХАХХАХАХАХАХАХАХХАХАХАХХАХАААХАХХАХАХАХАХАХАХХАХАХАХХАХАААХАХХАХАХАХАХАХАХХАХАХАХХАХАААХАХХАХАХАХАХАХАХХАХАХАХХАХАААХАХХАХАХАХАХАХАХХАХАХАХХАХАААХАХХАХАХАХАХАХАХХАХАХАХХАХАААХАХХАХАХАХАХАХАХХАХАХАХХАХАААХАХХАХАХАХАХАХАХХАХАХАХХАХАААХАХХАХАХАХАХАХАХХАХАХАХХАХАААХАХХАХАХАХАХАХАХХАХАХАХХАХАААХАХХАХАХАХАХАХАХХАХАХАХХАХАААХАХХАХАХАХАХАХАХХАХАХАХХАХАААХАХХАХАХАХАХАХАХХАХАХАХХАХАААХАХХАХАХАХАХАХАХХАХАХАХХАХАААХАХХАХАХАХАХАХАХХАХАХАХХАХАААХАХХАХАХАХАХАХАХХАХАХАХХАХАААХАХХАХАХАХАХАХАХХАХАХАХХАХАААХАХХАХАХАХАХАХАХХАХАХАХХАХАААХАХХАХАХАХАХАХАХХАХАХАХХАХАААХАХХАХАХАХАХАХАХХАХАХАХХАХАААХАХХАХАХАХАХАХАХХАХАХАХХАХАААХАХХАХАХАХАХАХАХХАХАХАХХАХАААХАХХАХАХАХАХАХАХХАХАХАХХАХАААХАХХАХАХАХАХАХАХХАХАХАХХАХАААХАХХАХАХАХАХАХАХХАХАХАХХАХАААХАХХАХАХАХАХАХАХХАХАХАХХАХАААХАХХАХАХАХАХАХАХХАХАХАХХАХАА
Я тут подумал, а если nginx дает возможность прописать proxy_pass с использованием https, а зачем тогда вообще настройки в спринг секьюрити по поводу ssl нужны? Почему просто не оборачивать локальную http сеть глобальным nginx? Номинально все ssl будет обмазано. В чем подводные такого подхода?
>>3290880 Ну так иногда и делают. Ты фактически переизобрел паттерн service gateway.
Подводные - если гейтвей вскроют, вскроют и всю стайку микросервисов за ним. Ну и часто бизнес-логика завязана тем или иным образом на принципал, поэтому мутить какие нибудть сессии так и так приходится.
Анон, спрашивает студент Что с точки зрения ООП будет верно 1. делать класс треугольник и от него расширять класс равносторонний треугольник или 2. На основе переданных параметров задать объекту свойство, например равносторонний треугольник?
>>3291113 Ну я в основном думал таким образом упростить еблю с ssl. Если жаба снова будет бугуртить на тему доверия к сертификатом, просто прокину все через http.. >фактически переизобрел паттерн service gateway Ну в прошлый раз это был cqrs.. Все думал почитать книги по архитектуре, чтобы такого не было, но чет мне никто их так и не посоветовал в итоге, лул
>>3290852 В чём мрази-то? В том, что говорим прямо что ты просрёшь лучшие годы на хуйню, советуя не пыжиться? Пиздец конечно мерзость, не люди, а скот. Или тебе просто уже неприятно, что просрал 3 года на попытки, и теперь просто плюёшься желчью в бессильной злобе на тех, кто помочь пытается?
>>3291156 А лучшие годы это когда? Вот для меня это когда я починю большую часть проблем с телом и появится стабильный заработок. А не вот во время школки или вуза. По твоей логике и школа с вузом нахуй не нужна, ведь ЛуЧшИе годы тратим на бесполезнейшую хуйню.
>>3291167 Лучшие годы это когда ты можешь залипать в майнкрафт, строить фабрики с индастриал крафтом, можешь дерьмака сри дикая дристота проходить и зелья дрочить, можешь на сосаче говнотреды создавать, спина не болит, когда ты высыпаешься, и высыпаешься со всех сторон, ни обстоятельства не заставляют подпрыгивать в 6 утра, ни физиология 50-летнего мелатонинодефицитного деда не не даёт выспаться. А ты эти годы просираешь за задротство алгоритмов и кувыркание в цирке красивого кода на потеху Грефу, да ещё и желчью прыскаешь на тех, кто говорит тебе об этом.
>>3291167 > По твоей логике и школа с вузом нахуй не нужна Вуз точно не нужен. Школу реформировать сильно и ограничить 9 классами. Не устраивал бы Греф цирк вкатунов, не построил бы он институт образования институт аннигиляции свободного времени пердежей.
>>3291147 Чел, этих книг - жопой жуй. Как банда четырех задала много лет назад моду оформлять срыги своих каргорелигий в бумагу, так в индустрии и повелось. Паттерны-шматтерны, тысяча их.
По микросервисным: тупо пройдись по microservices.io, и для первого раза этого будет достаточно.
>>3291167 Правильно тебе мужики ржанные сберовские говорят, нехуй напрягаться пока молодой. Поиграй в компутер, потрогай девочку за писю, работай на дно работе где не надо напрягать мозг. Потом в 30 лет с горящей жопой приходи в тред вкатываться, как сделало большинство нынешних джавшутов.
>>3291180 >задротство алгоритмов Они няшные. Лично у меня чуть ли не член встает на красивые концепции, потому придумывать их самому это мило дело. Очень сожалею, что я родился в какой-то мухосрани и не смог изначально пойти в какой-нибудь лицей с таким уклоном, а тратил время на очееень мне нужную поботу уровня рузького обществознания и пр. И еще не имел возможности заебать какого-нибудь учителя по поводу и без, тупа потому что они это не знали блятб. Сука в вузе ситуация та же. Какая же чушь >цирке красивого кода Ну тут соглы.
В общем это максимально субъективно, не все хотят гулять с друзьяшками и задродить в игрушечки для дебилов. > желчью прыскаешь на тех А вот не надо обесценивать чужой труд и не будут на вас желчью кидаться. >>3291187 Вуз и подобные конкурсы - это хотя бы возможность вкатиться. Иные способы и того хуже.
>>3291193 > А вот не надо обесценивать чужой труд и не будут на вас желчью кидаться. Говно, тебе ещё раз повторить? Твой труд обесценивает Греф. Ты же, как эталонный терпильный копропидоран, не можешь даже подумать о том, чтобы быть недовольным барином, и на себе подобных изливаешь ненависть.
> Вуз и подобные конкурсы - это хотя бы возможность вкатиться. Иные способы и того хуже. Главное верить!
>>3291188 Тем не менее, мне ни одной не посоветовали. Мол многие из них неприменимы к магии спринга. >microservices.io Хм, пасиба. А есть по архитектуре внутри сервиса? Помню DDD читал, там больше рассуждений было на тему, какооого же цвета заметочку повесить.
Решил изучать Джаву, купил подписку на Джавараш, обмазался книжками. К книгам претензий нет, а Джавараш не понравилась (нет единого структурного подхода к подаче материала, решенные задачи не проходят валидацию и т.п.).
Порекомендуй, анончик, стоящие онлайн-курсы в дополнение к книгам. Важно решать задачки с проверкой и пояснениями.
вкатывался на жабу лет пять назад, потом из-за отсутствия вакансий за пределами всяких банков и больших корп, где требуют вышку и прочую хуету, перекатился в ноде.жс. все еще пускаю слюни на бекенд разработку на котлине. вот думаю через полгодика попробовать перекатиться, хотел вот узнать у местных жабок где и что пишут на этой вашей джаве. понятно всякие тиньковы сбербанки, а за пределами этого всего? стартапчики? другие интересные продукты?
>>3291510 Можешь начать с алишева на ютубе,он объясняет не слишком углубленно,но зато понятно даже для ребенка. Также метанит хороший портал. Забудь о платных подписках,курсах и тд,знания бесплатны и доступны в интернете каждому желающему
Цирк это. Тот самый, в котором волчары не выступают. Ауф.
Айтишка просто ебнулась наглухо. Раньше галеры молодняк скальпили с вузовской скамьи на стажировки, разбирали на стажировки и интернатуры за "горящие глаза" и учили, продавая оных как синьоров, наебывая европейских гоев. А щас все галеры уплыли, еврогои ссучились, учить маслят некому, негде и не на что, а проекты делать как то надо.
>>3291818 Да, именно об этом и подумал прям в первый день, как мне дали на этом говноязыке написать лабы. Во второй ахуел с ихней орм и просто сказал себе, нахуй этот язык и нахуй все, что на нем написано. Каждый кто говорил, что асп хоть в чем-то сравним с спрингом пиздабол чистейшей воды или он просто не пробовал хоть что-то на нем делать. Я неиронично не понимаю людей, которые жабе предпочитают шарп осознано. Нахуя, в чем профиты?
> жава многословное говно, где десятилетиями внедряются фичи сначала "это не нужно никому", а потом все равно внедряются. Из-за этого в жаве даже родился проект ломбок - настолько там все медленно развивается. А в жаве гетсет наверное не сделают никогда, хотя это ж элементарнейшая фича. Что это значит?
Пользуюсь месяц IntellijIdea. Т.к. в основном хэллоувордил, то не вникал и не использовал мавены и прочее. Поставил интереса ради VSCode и... не заметил особой разницы. И там и там автодополнение, синтаксический сахар, psvm sout, переход к описанию методов класса по ctrl и т.п. Что ж выходит, жыдбрейнс наебывает эксклюзивностью своей IDE?
>>3291891 Вот эта хуйня например. Наверное предполагается, что надо откуда-то еще скачать отдельно фреймворк для DI.
Ебля с прокидыванием ошибок наверх в контроллере. Еще мне ручками надо сериализаторы для стандартных сука типов писать. Ну ебал я это все в рот. Чес слово, мне проще на серверлетах логику писать, там хотя бы все что заявлено, не работает через жопу и кое как.
Орм это отдельная песня. Там есть такая фича, что каждый репозиторий в сущности отдельный бакет, и вот что будет если в оба бакета попадет одна и та же ентитя? Правильно, нахуй ошибка.НАХУЯ БЛЯТЬ?? Еще нет нормального обработчика транзакций, я еще не понимаю, до куда бакеты живут и пр. пр.
И сука, еще курсовик на этом дерьме писать. Вот помню они гордятся linq, но для меня это кривая и косая монада листа.
>>3291906 Сделай так, чтобы тебе вскод подобные подсказки делала. А еще ренейм, чтобы работал везде. Хоть для классов, хоть для пакетов, хоть для чего угодно. Короче идея ебет количеством инспекций на каждую разную залупу в коде, а также качеством рефакторинга.
Это тупейшая по своей сути фича. И по совести ее не добавлять в джаву надо, а из шарпов выпиливать, а затем просто забыть нахуй концепцию геттеров-сеттеров и не вспоминать о ней.
Единственный смысл существования этого идиотизма - хибернейт, которому нужно прокси лабать. Все. Нахуя идея оборачивать обращения к свойствам в методы просочилась в другие языки и там прижилась настолько плотно, что обрасла сахарком - вопрос, на который не смогли мне ответить даже шарписты, которые так нелепо кичатся своими гет-сетами.
>>3292862 >Это тупейшая по своей сути фича. И по совести ее не добавлять в джаву надо, а из шарпов выпиливать, а затем просто забыть нахуй концепцию геттеров-сеттеров и не вспоминать о ней. А как сделать ридонли свойство? А как провалидировать значение перед установкой?
Как по мне оч красиво, ну с точки зрения типов. >>3292889 >А как сделать ридонли свойство? final. >А как провалидировать значение перед установкой? Сделать final и заставить все ставить через конструктор.
>>3291854 честно - не знаю мне в го треде объяснили что многословность - это очень хорошо, а то что фич нет - так это язык очень простой, легко учиться, легко передаётся по рукам проект А что разве не так?
>>3292868 А ну кстати. Я подумал немного, вспомнил пиздеж гетца, про то, нахуя они методы в рекорды добавили. В общеееем. В интерфейсах же низя делать поля, тк у него нет состояния. И вот для этого вполне нужны геттеры.
>>3293237 Конченный дебил, запомни раз и навсегда, есть переменные изменяемые, есть не изменяемые. Попытка добавить промежуточные представления по типу "мутабельная, но менять не буду, жопу ставлю" приводит только к одному - рано или поздно твоё грязное гемморойное очко переходит в зрительный зал
>>3293384 >Нигде не гарантируется, что length в List за O(1). Это зависит от имплементации. Мерять размер связного списка перебором, ебать ты архитектор!
>Те же канкарент коллекции просто хуй к носу прикидывают и говорят примерно. Канкарент коллекции могут отдавать не точное значение, только если есть канкарент модификации потому что сайз меняется не атомарно с размером коллекции. А без этого они возвращают точное значение.
>>3293312 Свойство и переменная это разные вещи, но тебе дебилу, этого не понять.
>>3293509 >Мерять размер связного списка перебором Тут суть в другом. Вот тот же связный список, хорошо что ты речь про него завел. Вот расскажи какой размер списка вот того, что на пике. Да, в жабе LinkedList такого делать не позволяет, но это его проблемы в общем-то и ограничения мутабельности и боязнь за отдачу права владения нодами. Ноо, если сделать такое, то ты никак не сможешь сделать O(1) одновременно по памяти и асимптотике. Чем-то ты точно пожертвуешь.
Не знаю, пишут подобное: >Beware that, unlike in most collections, the size method is NOT a constant-time operation. Because of the asynchronous nature of these queues, determining the current number of elements requires a traversal of the elements, and so may report inaccurate results if this collection is modified during traversal. Что мол они просто пересчитывают размеры каждый раз, а не хранят в полях его.
>>3293237 >Ридонли не значит имьютабл. Например у списка есть свойство длинна, которое ридонли и меняется. Ну конкретно в этом случае можно сделать подобие геттера. Суть в том, что таких случае мало
>>3292889 >>3293237 >А как сделать ридонли свойство? >Например у списка есть свойство длинна, которое ридонли и меняется
А почему это должно быть именно свойство, а не метод? Что - неужели настолько западло две скобочки написать, что надо придумывать синтаксический сахар лишь для того, чтобы вместо честного вызова метода клиенский код выглядел как обращение к полю, которое на самом деле не поле, а поле-пиздабол?
>А как провалидировать значение перед установкой? А ты дохуя валидацию в сеттерах пишешь? Прям в тушке сеттера?
>>3293909 Он аналогию провел, чтоб тебе понятней понимать было. Но нихуяшеньки линзы не развитие геттеров-сеттеров. Это совершенно независимая история.
>>3293899 >А почему это должно быть именно свойство, а не метод? Что - неужели настолько западло две скобочки написать, что надо придумывать синтаксический сахар лишь для того, чтобы вместо честного вызова метода клиенский код выглядел как обращение к полю, которое на самом деле не поле, а поле-пиздабол? А почему бы и нет? Можно вообще сделать контракт: если просто возврашает значение, то свойство, если выполняет некую работу или сколько нибудь значительные вычисления то метод.
Понятно что можно обойтись и без этого. Но постоянно орать НИНУЖНО, это другая крайность.
>>3294791 Навыки, скилы, подходы исходят из опыта же. Без этого контекста - это просто бессмысленный набор слов. Советы же общего характера эффекта не возымеют. Советы завязанные на характере да, но ты же спрашиваешь наверняка не для этого, а чтобы себе что-то подчеркнуть, так что и это не то.
В общем-то скажу прямо, просто будь настойчивым. Потратив тыщ так десять часов, ты наверняка чего-то да добьешься.
Ну это конечно ахуенно аргументированная мотивация, че тут сказать. Штоб все разрабы языков такой руководствовались в принятии решений. И за это бьются шарпеи в своих крестовых походах?
>Но постоянно орать НИНУЖНО, это другая крайность.
Не мы начали этот холивар - хуле нам то затыкаться? Это не мне нужны эти парашные гетсеты, мне даже на ломбок похуй (есть - ну и ладно, нету - похуй). Как предьявы строчить за отсутствие бесполезных языковых фич, так дети набигают с хуями наголо и криками "уря". А стоило лишь спросить за их предьявы, так начались виляния жопой - "ЫЫЫЫ, че ты какой КРААААЙНИЙ, вдруг кому то оно НАААДО".
>>3294527 Но ведь есть и груви и котлин со свойствами, и интероп простейший с джавой. Проблема в том, что это настолько нахуй никому не нужно, что 99% разрабов лень даже смешанный проект сделать было, но то что там какие-то JEPы создавать и джаву менять.
>>3295006 Как язык шарп приятнее. В джаве новые фичи вводятся ооочень медленно. Для работы однозначно джава. Сишарп все проебал и занял место у фулстек параши, где индусы срут.
А что скажете насчет Node JS? Я хочу найти работу - и стоит выбор: либо стать фуллстеком с бэкендом на NodeJS, либо пытаться вкатиться в энтерпрайз на Java Spring. У меня сомнения что меня, 34-летнего сыча без образования, возьмут в энтерпрайз. Почему-то кажется что фуллстек - более вероятное развитие событий.
>>3295030 А мне нахуй эти новые фичи? Вот через какое-то время все таки уйдут массово в прод новые фичи из жавы 21. И будет куча брейкин ченджес в библиотеках и фреймворках и появится с этим куча новых фич/апи в библиотеках и багов в геометрической прогрессии. И на все это говно тратить кучу времени. Какой плюс в этом для меня, как для крудошлепа?
>>3295106 Не лезь, оно тебя сожрет. В фулстеке будешь конкурировать за миску соплей с хохлами и паджитами, а потом стартап лопнет через полгода и снова придется искать работу.
>>3295269 Гомогенная параллелизация > гетерогенная, но микросервисы обычно как раз гетерогенные. Для иных задач (отличных от повышения производительности за счёт использования нескольких машин) микросервисы не нужны.
>>3295282 Коротко и ясно. Благодарю за ответ. В общем не стоит при первом удобном случае всё на микросервисы спешить разбивать, когда нет явной нужды в этом.
>>3295293 >В общем не стоит при первом удобном случае всё на микросервисы спешить разбивать, когда нет явной нужды в этом.
Это обычно история про данные приложения. В монолите данные делить не принято, они все - часть общей реляционной модели, с транзакциями и прочим ACIDом. И до некоторых обьемов эта схема отлично работает, и нужды бить бизнес логику по отдельным процессам нет.
Проблемы начинаются, когда обьемы начинают исчисляться бигдатой, либо когда одной машинки уже не хватает. Тогда реляционка уже не вывозит, и начинаются компромиссы с консистентностью. Единая моделька бьется на несколько независимых, на стыках строгая консистентность заменяется консистентностью "в конечном итоге", где то реляционка вообще заменяется какой нибудь альтернативной моделью, и вот тогда уже имеет смысл в микросервисы.
>>3295252 Все, кто с ними работал. Микросервисы актуальны для потешных стартапов, где надо быстро-быстро из говна и палок нахуячить подобие системы и отчитаться перед инвесторами. Как это говно будет работать на проде через год никого не волнует, стартап столько не проживет.
>>3295347 Тебе никто не мешает в монолите вместо одной бд использовать двадцать. Будет как в микропенисах, но без дрочева с миллионом логов. Алсо, функциональное разделение - это путь в жопу. Падает один сервис и пиздос, вся система встала раком, и полетели пятисотые, и все едут в офис в три утра. Можно было бы сделать шардирование, где один сервер обслуживает Новосиб, другой Кениг, но это не прикольно, прикольно когда один гигасервис кряхтит пердит ворочает терабайты. Можно с пафосом говорить У НАС БИГДАТА
>>3295481 >Падает один сервис и пиздос, вся система встала раком, и полетели пятисотые
Все так и есть. Термин-антипаттерн "распределенный монолит" не с пустого места придуман. И главный урок, который должен извлечь для себя из этой истории каждый масленок, это то что микросервисы - нихуяшеньки не подарок и не панацея, и из коробки без прикладывания ментальных усилий ничего хорошего по умолчанию не дает. Лишь задирает порог вката и усугубляет косяки разрабов. Микросервисы - это авантюра, ебля и риски. Где в монолите у тебя вызов метода, в микросервисе у тебя - ебущий ненадежный лагучий сетевой вызов с кучей рисков и головняка. Если масленок не умеет мейнтейнить монолит, с микросервисами его косяки будут стрелять еще больнее.
>>3295269 Огромный оверхэд на IO и де/сериализацию, беспричинно заставляющий увеличивать мощности там, где это не нужно Повышенная сложность разбитой кодовой базы и инфраструктуры, там где в этом нет необходимости
Местный долбоеб заразил меня своим интересом ко всяким штукам на генериках, нахуячил подобие либы для линз (которые просто обертка нат гет сетом епта), а такая оказывается уже есть. https://github.com/chriskiehl/Deoplice Как жить, если все мои идеи вторичны?
>>3295549 Я знаю более печальный случай: один увлекся обобщениями, а потом по итогу сделал альтернативу String и Character Ещё скляпал рациональные числа, для которых квадратный корень сутки считает.
>>3294888 >Ну это конечно ахуенно аргументированная мотивация, че тут сказать. Штоб все разрабы языков такой руководствовались в принятии решений. Свойства дают свободу менять в определённых пределах реализацию. Вначале делаешь просто поле, а потом по мере необходимости конвертируешь его в свойство. И весь код прекрасно компилируется. Имена короче. Нет такой херни как: isVisible(), setVisible(), show(), isShown(), hide() isHidden() проебали и это всё одно свойство.
>Не мы начали этот холивар - хуле нам то затыкаться? Это не мне нужны эти парашные гетсеты, мне даже на ломбок похуй (есть - ну и ладно, нету - похуй). Как предьявы строчить за отсутствие бесполезных языковых фич, так дети набигают с хуями наголо и криками "уря". А стоило лишь спросить за их предьявы, так начались виляния жопой - "ЫЫЫЫ, че ты какой КРААААЙНИЙ, вдруг кому то оно НАААДО". Таблеточки успокоительные выпей, болезный.
>>3294899 Дело не в лени, а в том что многие компании просто не дают писать на котлине/груви из-за желания иметь единый стек во всех сервисах. Ну и при наличии котлина в проекте, смысл джавы непонятен.
>>3295703 При чем тут имена? Речь не о том, чтобы писать или не писать геттеры/сеттеры явно. Суть спора в том, чтобы писать или не писать геттеры/сеттеры впринципе.
Нахуя вам всем эти геттеры/сеттеры/гетсеты, если в их телах обычно никто не пишет нихрена кроме непосредственно обращения к свойству? Давно уже пора забить хуй на JavaBeans, а не сахарком обмазывать какашку. Даже в джавовых рекордах на эту парашную традицию хуй забили, и методы доступа к свойствам именуют просто по имени свойства, но нет, о как же как же сильно не хватает джаве ритуального гет-сета из шарпов.
Они как будто целенаправленно обрывают все мосты на пути к безопасному запуску third-party кода на неизолированной виртуальной машине. Сначала удалили Thread#stop, потом добавили виртуальные потоки что нельзя грохнуть вообще никак, даже хаками, потом вот это. Мрази.
>рррррррррррррррррря кантейниры В том то и дело, что внешние контейнеры не покрывают все нужды. Вызов метода из иной виртуальной машины очень дорог, и эту проблему в производительности никак не решить без безопасного размещения антрастед кода внутри основной машины.
>>3295917 ты заебал уже. сколько еще раз тебе повторить, что тред стоп не грохал треды? Этого безопасного запуска никогда не было, ты просто хуйней страдаешь и ничегошеньки ни сделал за это время. ну кроме нытья
>>3295490 >Если масленок не умеет мейнтейнить монолит, с микросервисами его косяки будут стрелять еще больнее. Успокойся, дядя. Мы на похуях залетаем в контору, лутаем баблосы в первый год-полтора, а потом ливаем на +30% пока вы старые пердуны там что-то пытаетесь улучшить))
>>3295915 >https://openjdk.org/jeps/486 > >Джава всё больше и больше скатывается в дерьмо... Хотя в принципе уже скатилась и лежит. ВЫПИЛИВАЮТ ЛЕГАСИ ГОВНО @ РЯ-Я-Я-Я, ДЖАВА КАТИТСЯ В ГОВНО
ОСТОРОЖНО! Сценка "Джава-господин и убоGOе ничтожество" J — На вас очередной раз помочилась жабка, "пись-пись-пись")) Помочился на лицо — Будешь ещё свою хуйню писать GOвноед?! G — Не-ет, не буду, клянусь. О, великий джавист, отпусти убогого. J Начал снова мочиться на лицо — Что-что?) Я тебя не слышу-у) Закончил мочиться — Уходи! И скажи своим, чтобы со своим говнолангом не смели даже подходить к Электронной вычислительной машине! Устройство, подвергшееся твоему убожеству будет уничтожено! G — Дя-а, господин, я все передам GOвноед удалился, а джавист остался властвовать на троне
>>3295929 Сколько раз ты это высрал, столько раз тебе было отвечено на все твои претензии, после чего ты пускался в рёв. Хочешь ещё раз? Пожалуйста, я не устану копировать.
>>3296143 Ты хочешь наличия в жабе вот этого метода. НО. Он никогда не работал блять. Что ты конкретно потерял, если метода который тебе нужен никогда сука не существовало? >столько раз тебе было отвечено на все твои претензии Че ты там ответил? Фантазиями? Вот я сделаю то, а вот се. Но рррря ебаные ораклы поднасрали, поетому пук среньк, делать я ничево не буду.
Ебаный нытик, нахуй пошел. Если бы тебе реально надо было, давно бы подключил дебаг режим. Но нееет, я буду ныть ныть ныть и нихуя не делать. Типичный жаван.
Недавно осознал, что у такого распространенного и активно развивающегося языка как джава нет возможности сделать так List.of(new int[]{1,2,3}]; Почему блять нет простого способа из целочисленного массива сделать список ??!
>>3296445 var list = Arrays.stream(new int[]{1, 2, 3}).boxed().toList(); >>3296332 Ясен хер. Это примерно как история с гетерогенным листом в фп мире. То что в императивном просто работает, там превращается в какие-то изъебства.
>>3296448 >var list = Arrays.stream(new int[]{1, 2, 3}).boxed().toList(); >var list = List.of(new int[]{1,2,3}); Ты понимаешь сколько действий ты сделал и сколько бойлерплейт кода высрал для того чтобы сделать простое создание списка из массива? Как называется эта странаэтот язык?
>>3288636 (OP) Считаю что jdk слишком раздут. Нужно выпустить новую мажорную версию и убрать легаси хуйню: 1) Все имплементации Коллекций кроме HashSet и ArrayList (очереди и хипы - это просто интерфейсы). 2) Стрим АПИ (кто пользуется?) 3) хуйню для валидации сертификатов (я лучше знаю какому сертификату доверять) 4) хттп клиент (??) 5) JDBC (пчелы есть хибернейт...)
>>3288636 (OP) >>3296760 >Нужно выпустить новую мажорную версию и убрать легаси хуйню Естественно это подразумевает breaking changes. Весь предыдущий код работать не будет. Впрочем и не должен.
>>3296760 >1,2 Это очень хуевая идея. Если не стандартные коллекции, то что вообще должна в себя включать ждк? Там из бесполезных разве что LinkedList, да все synchronized оболочки коллекции и очеень старая хуйня по типу Stack. >3 Вот тут согласен. Я вообще не понимаю нахуя жава взяла на себя эту роль. >4,5 Думаю можно было бы это все перенести в JEE
Тред стоп не убивает треды. Это троллишь, тебе сколько раз это надо вдолбить в голову, чтобы ты понял?
Единственное, что этот недометод делал, так это вызывал исключение внутри треда. Тот же suspend и то больше может. > сейчас не существует Хуйлуш. Ты всегда можешь взять jdi там есть этот метод. Тебе об этом было сказано еще пол года назад.
>>3297130 >>3297459 А нет, это какой-то тред референс вместо треда. Нахуй мне твой тред референс, ебанат? Давай, высри ещё что нибудь аналогично тупоголовое, тебе видимо нравится получать урину на еблет.
>>3297119 > Тебе об этом было сказано еще пол года назад. Полгода назад я обоссал твою свиную рожу и насрал в рот твоей мамаше, когда ты рьяно защищал оракловского господина, но не справился с задачей и пустил подливы по штанине, после чего ты убежал плакать.
>>3296760 Вот и выросло поколение дегенератов, сначала орущих о преждевременной оптимизации, а потом с грязными штанами удаляющими основополагающие классы когда что-то в производительности не так становится.
>>3297459 Ты читать не умеешь? >>3297462 ? А ты когда рефлексией пользуешься, также на Class реагируешь? >>3297463 Ну кроме демонстрации твоей тупости пока это ни о чем не говорит. Ни в чем за полгода не разобрался, зато пиздишь.
Привет, аноны. В одном из интервью слышал, что в джаве, планируются какие-то новые фичи для реализации ассинхронности, но не async\await, а какие-то новые треды (зеленые или какие-то другие). Погуглил зеленые треды, это вообще старая херня из джавы 1.0 Есть инфа или это бред сумасшедшего?
Зеленые потоки это вообще не-джавовый термин. Зеленая многопоточность это параллелизм средствами среды исполнения, в противовес обычной многопоточности, которая выполнена средствами ОС. К зеленой многопоточке относят и всякие ко(го)рутины в том числе.
>Погуглил зеленые треды, это вообще старая херня из джавы 1.0
И да, в самых ранних версиях джавы действительно был такой рудимент, нужен он был для запуска джавки в системах, где многопоточки не было. Но в джаве 1.2 на фичу забили и выпилили.
подскажите пожалуйста, можно ли в драйвере jdbc постгреса поменять datestyle, с которым он подключается к базе? в исходниках драйвера вроде бы там константа iso, ymd
>>3297912 > Но в джаве 1.2 на фичу забили и выпилили. А жаль. Интересная задумка была, да и джава тогда в принципе гораздо больше отвечала идее врайт уанс. А сейчас поддерживаются 1,5 платформы, буквально, линукс и наполовину шинда.
> Java and Green Threads > > Когда появилась Java, она принесла с собой другой тип многопоточности, который называется green threads. Green threads — это, по сути, имитация потоков. Виртуальная машина Java берёт на себя заботу о переключении между разными green threads, а сама машина работает как один поток ОС. Это даёт несколько преимуществ. Потоки ОС относительно дороги в большинстве POSIX-систем. Кроме того, переключение между native threads гораздо медленнее, чем между green threads. > > Это всё означает, что в некоторых ситуациях green threads гораздо выгоднее, чем native threads. Система может поддерживать гораздо большее количество green threads, чем потоков OС. Например, гораздо практичнее запускать новый green thread для нового HTTP-соединения к веб-серверу, вместо создания нового native thread. > > Однако есть и недостатки. Самый большой заключается в том, что вы не можете исполнять два потока одновременно. Поскольку существует только один native thread, только он и вызывается планировщиком ОС. Даже если у вас несколько процессоров и несколько green threads, только один процессор может вызывать green thread. И всё потому, что с точки зрения планировщика заданий ОС всё это выглядит одним потоком. > > Начиная с версии 1.2 Java поддерживает native threads, и с тех пор они используются по умолчанию. Всё новое — это хорошо забытое старое...
>>3297503 >Погуглил зеленые треды, это вообще старая херня из джавы 1.0 VirtualThreads в жабе 20 вышли из превью, можно пользоваться, есть свои нюансы.
>>3298282 Ну и хорошо, главное чтобы "это было раньше!" не было причиной переосмысливать решения. Тогда в этом не было смысла, сейчас поднялся хайп на пустом месте - вот сделали. >>3298558 потому что он и есть >>3298280 Мак поддерживается, чего нет? Всё поддерживается. Мы гоняем тесты на Солярисе и AIX как минимум
Идея идеей, но в те времена абстракт над нативными стримами давал мало что (тогда еще не существовало глобальных сервисов с требованиями в миллионы rps), а оверхеду наваливал знатно. Кроме того, несмотря на сложившийся в конечном итоге статус кво, в спецификации джавовые треды никогда не были приколочены к нативным, поэтому с write once run anywhere все более менее неплохо всю дорогу было.
>>3298939 Потому, что есть целых три слова, которые подходят под это название. Flow, stream, thread. Flow больше всех, кста. >>3298908 Интересная оговорка, конечно.
>>3297912 >Но в джаве 1.2 на фичу забили и выпилили. Потому, что реализация использовала 1 нативный поток. И на 2х, 4х и более ядерных системах сливала.
>>3299335 Были многопроцессорные системы от самого Сан >The UltraSPARC II processor microarchitecture is designed to provide up to 4-way glueless multiprocessing support and supports up to 64-way systems. https://www.ebay.com/itm/362591354011 Это конечно не мейнстрим был на тот момент, но вполне работающее решение.
>>3299899 >Они же тоже плохие Плохие? В сигнатуре указывают не потому, что исключение плохое, а потому, что разработчик апи посчитал, что его пользователю жуть как важно обработать и знать, что такое исключение существует. А так те же Error, вроде как тоже не обязательны в сигнатуре, но они гораздо плохее чем любое другое исключение.
Стандартную библиотеку надо раздуть ещё раз в 10. Чтобы general-purpose библиотеки были не нужны, сама суть general purpose библиотек в добавлении того, чему место в стандартной библиотеке, но что туда недоложили.
>>3300393 Рипит норм метод для замены конкатенаций одинаковых символов в цикле,плюс в стандартной библиотеке нет константы под пустую строку,в целом там много полезных методов
>>3300396 >Рипит норм метод для замены конкатенаций одинаковых символов в цикле String#repeat или StringBuilder >плюс в стандартной библиотеке нет константы под пустую строку "" >в целом там много полезных методов В целом ты чушка библиотечная, сорока ебучая.
Есть восстанавливаемые (recoverable) или не подлежащие восстановлению исключительные ситуации.
В первом случае ты обязан обработать возникновение исключительной ситуации перехватом эксепшена, дабы выйти из исключительной ситуации и продолжить работу приложения, и эксепшон делают checked. Во втором - твоему приложению суждено сдохнуть и требовать чекать эксепшен нет смысла.
Это в теории. На практике - вся эта муть с чекед-анчекед эксепшенами тот еще бардак.
>>3301004 Просто для сравнения. А в чем проблема-то? Ну типа почему ты не можешь константе сделать алиас на какую-то особую языковую семантику? Это запрещено кем-то?
>>3301017 Тебе не гуглить надо, а курс по английскому пройти, раз ты конфузинг не понимаешь. Проблема в том, что когда я хочу получить пустую строку, с точки зрения сухости кода правильнее обратиться к константе пустой строки, а не создавать её заново, даже если создание пустой строки по символам проще обращения к константе. Семантически же "" это ни что иное как создание пустой строки программистом на этапе программирования, как создание, например, той же константы в енуме.
>>3301018 >Семантически же "" это ни что иное как создание Семантически создание - это когда написано ключевое слово new. Ты его где-то видишь тут? Я нет.
>>3301021 Ебланоид, представь себе абстрактную сущность строки. Когда ты создаёшь информацию об этой строке, а когда ей пользуешься? Создаёшь информацию через "", а пользуешься через константы и переменные.
>>3301023 >создаёшь информацию об этой строке Хорошо. А информация обязательно должна быть выражена на каком-то языке? Почему эту информацию нельзя передать через символ? Скажем такой ⌀. Или это уже какая-то информация не такая? Ну вот в жабе символ пустой строки - это "". Оно уже несет в себе информацию о пустоте.
>>3301034 Хорошо, для олигофрена сделаю поправку, раз обезьяньего мозга не хватает осознать в таком виде: это составная конструкция, состоящая из символа создания строки в принципе, внутри которого (символа) не было ничего заключено. Теперь сравни это с семантикой константы: символ получения пустой строки сразу.
>>3301035 >состоящая из символа создания строки в принципе, внутри которого (символа) не было ничего заключено Это символ строкового литерала, т.е. константы.
>>3301040 https://docs.oracle.com/javase/specs/jls/se8/html/jls-3.html#jls-3.10.5 >A string literal is a reference to an instance of class String (§4.3.1, §4.3.3). >Moreover, a string literal always refers to the same instance of class String. This is because string literals - or, more generally, strings that are the values of constant expressions (§15.28) - are "interned" so as to share unique instances, using the method String.intern
>>3301032 >>3301035 >символа создания строки в принципе Это не символ создания строки. Ты это сам себе придумал. Еще раз, создание это тогда и только тогда, когда есть new. Остальное не создание.
>>3301060 И в этом string intern находятся всевозможные комбинации строк, что вообще могут быть в джаве? А я-то думал, почему новые ждк весят по 300 мб...
И мне кажется можно отделить два случая, когда ты пишешь что-то в строке "...", то у тебя есть много способов как-либо задать ту или иную информацию. "" же в свою очередь один. У тебя нет иного способа задать пустую строку. Т.е. в первом случае есть какое-то множество из значений и это множество можно как-то обозначить. Но во втором значение единственное. Множества нет, оно уже есть константа.
>>3301065 Если конструкция/семантика языка однозначно определяет какую-либо информацию, то не требуется переводить это на английский.
О, кстати хороший пример, возможно. В базах данных не существование объекта можно определить двумя способами. Через null и просто не написав эту информацию и исходя из CWA все будет норм. Так и тут, как я понимаю, ты хочешь явно везде написать null, мол вот, его не существует, я это написал. Но зачем это делать, если это можно выразить изящнее через реляционная семантику?
Вот любят программистишки из простого сделать сложное, а потом жаловаться что confusing. Вы все пиздите сами себе. Вам не создание строки нужно, на самом деле. Вам тупо нужна пустая строка, вот и все. Какая нахуй разница, создана ли пустая строка или получена из констант, если строки в джаве (равно как и списки в хачкелле) иммутабельны? Я б еще понял если б речь шла о каких нибудь строках в плюсах, но в джаве, bruh...
Ебучий стрим апи без поддержки проверяемых исключений отбивает всё желание программировать. Ну почему нелья было ПРОСТО добавить в лямбду дженерик исключения и ПРОСТО добавить объединения типов? Обе задачи тривиальные, первая вообще нихуя не стоит, т.к. дженерики уже хорошо с исключениями работают, а вторая просто довольно простая. Явно ЛУМ и ВАЛЬХАЛЛА посложнее объединения типов.
создаёшь информацию об этой строкеХорошо. А информация обязательно должна быть выражена на каком-то языке? Почему эту информацию нельзя передать через символ? Скажем такой ⌀. Или это уже какая-то информация не такая? Ну вот в жабе символ пустой строки - это "". Оно уже несет в себе информацию о пуст
>>3301969 Сумма типов уже есть и называется sealed. То почему не хотят сделать Either довольно очевидно - это будет очень криво и многословно. flatMap/map в Optional тому пример.
>>3301986 >2. Экстеншен методы Полная хуета, хорошая только в теории. В реальности из того же котлина видно что народ туда пишет кучу логики и начинает происходить магия
Привет, ребята. Я студент. Предложили работу на заводе. Писать какие-то плагины для их программы на Джаве. Мне кажется что это какая-то хрень даже для первой работы потому что я хоть и получу опыт работы, но он будет не релевантен для нормальной компании условный Яндекс или Сбер. Какое ваше мнение? Есть смысл туда устраиваться?
>>3302863 ну если есть вариант вместо этого получить опыт в чем-то около-энтерпрайзном, то лучше туда, конечно. а если нет, то любой коммерческий опыт полезен будет.
>>3302251 Какая ещё магия? Ты вообще понимаешь, что значит экстеншен метод? Это статический утилитарный метод, принимающий первым аргументом инстанц расширяемого класса, который пишется как инстанц-метод, т.е. через точку справа. Чисто визуальная хуйня, которая, тем не менее, очень помогает в написании читаемого кода.
>>3302982 Неудобно обёртки каждый раз создавать. А в случае работы с исключениями создание обёрток вообще будет занимать больше места, чем обычный код. Буквально на 3 строки кода 15 строк ловли исключений, декларации обёрток и перевыброса в обёртке.
>>3302984 Ну это уже дело синтаксиса в сущности, можно это скрыть за сахаром или подобием лобка. А то, что без сахара выйдет многословное говно я сразу сказал, потому оракл и не делает. Ну типа это не просто ввести один символ объединения типов, там дохуя всего по идее нужно, чтобы это выглядело адекватно.
>>3302988 >писать 15 бойлерплейт строк на 3 строки кода >ррррря дела синтаксиса Дегенерат, ты правда думаешь что если ты высрал последний пост, то ты подебил?
>>3302992 >вот есть проблема, на джаве никак это кроме бойлерплейтного и медленного способа не сделать >слыш, пердикс, у меня тут решение есть: а напиши-ка бойлерплейтным и медленным способом! Слив засчитан, решение есть! Пиздеееец.....
>>3303011 > Кстати хули в стримах не сделать . exceptionally() как в комплитабл фьюче Выше смотри ссылку на пастебин, из-за того что стримы содержат кучу действий а не как комплитабл фьюча одно жизненно нужно объединение типов разных исключений, иначе будет очень много бойлерплейта.
>>3303004 Не обязательно каждый раз руками оборачивать исключения в обертки. Один раз написал универсальную функцию и усе. Ну и опять же, ты похоже не очень понимаешь концепцию того же map и flatmap. В остальном останется логика обработки исключений после stream, ну это лишних строк 5. Написать у меня сейчас код нет возможности, да и желания. Ибо выйдет недоаналог vavr.
Плюс настроение в пизду убито из-за ннкоторых событий. Можешь считать, что я слит, вот.
>>3303019 Конечно же писать ты не будешь нихуя, потому что ты высрал хуйню даже не обдумывая, очевидно ты это написать не сможешь. Дегенерат, обёртка должна быть уникальной для каждого, блядь каждого набора исключений, сука! Это значит, что каждый вызов стрима приводит к написанию своей собственной обёртки. Блядь, какой же унтерменш.
>>3303022 Ну вообще неиронично похоже это так. Я судя по всему та еще мразь, эх. >>3303021 Можно сделать универсальную. Это не сложно. Можешь подумать сам как или взглянуть сюды https://docs.vavr.io/#_lifting
>>3303024 > Можно сделать универсальную. Это не сложно. Можешь подумать сам как или взглянуть сюды https://docs.vavr.io/#_lifting Ну так сделай, а не кукарерай, обрыган.
>>3303025 Я не понимаю за что к мне направлена столь сильная персональная ненависть. Я в основном отвечаю на вопросы заданные в треде и предлагаю те или иные решения работающие в рамках жабы. То, что им что-то не нравится - это уже их проблема и проблема формулировки проблемы.
Также у меня нет понисания, в чем проблема с бойлерплейтом, просто для понимания, когда я только только начинал пограмировать, посчитал, что для реализации моих намерений понадобится написание порядка 10к ифов. По крайней мере в этом плане я последователен.
>>3303041 Тогда в чем смысл твоего поста? Просто поныть на очередную тему? Почему ты считаешь мои попытки глубже разобраться в системе типов щитпостом, а вот свое нытье нет?
>>3303043 Смысл поста в том, что я заявляю, блядь, это, а ты с этим начинаешь спорить, но при этом как аргумент приводишь то, что буквально доказывает мои слова, а потом ещё и усираешься блядь, придумывая хуйню. Функция у него блядь в компайл тайме создаст обёртку с сохранением типов, блядь. Эта функция называется тайп юнион, еблан.
>>3301799 >Ещё раз блядь, то, что написано в JLS про то, как оно работает под капотом никоим образом на семантику не влияет, сука. Ты реально тупой мудак, ты бы хотя бы открыл JLS прежде чем пердеть. >A string literal is a reference to an instance of class String (§4.3.1, §4.3.3). >Moreover, a string literal always refers to the same instance of class String. This is because string literals - or, more generally, strings that are the values of constant expressions (§15.28) - are "interned" so as to share unique instances, using the method String.intern (§12.5).
Это отвечает на все твои тупые высеры, про создание строки, про константу пустой строки и так далее.
>>3302863 Привет, ребята. Я зумер. Жируха с прицепом предложила встречаться. У неё какой-то пиздюк от прошлого брака. Мне кажется что это какая-то хрень даже для первой девушки потому что я хоть и получу опыт знакомств, но он будет не релевантен для нормальных девушек условных Дашуль и Марин. Какое ваше мнение? Есть смысл её ебать?
>>3303021 Вот, универсальная функция для обертки функций с исключениями. Фулкод выкладывать не буду - оно того не стоит. Еще я не особо понял, что ты вообще пытался сделать в этих стримах. По дэбильному написано.
>>3303741 Классы называются как в стандартной библиотеке из-за чего их можно случайно заимпортить. В целом побуждает писать более сложный чем нужно код.
Его проблема в том, что он апдейтиться почти перестал. Его проблема в том что он апдейтится хуево, и из альфы как будто бы не вылезает. Между последней 0.10.5, которая вышла неделю назад, и предпоследней 0.10.4 прошло 3 ебаных года без единого апдейта. Я уж успел похоронить его, а он воскрес внезапно.
Ну и еще бесит то, что у вавра мутабельный Iterator вместе с персистентными (иммутабельными) коллекциями имплементируют одни и те же интерфейсы - Sequence, Traversable, и.т.д, из-за чего можно словить тяжелых галюнов при итерировании во всяких циклах и стримазх по этим самым Sequence и Traversable. Это прям подстава, самая натуральная.
Товарищи, нужен совет. Мне надо кэшировать значения себестоимости товаров в redis. Товаров могут быть тысячи, каждому id товара должна соответствовать его себестоимость. Как это реализовать при помощи redis? Какие средства есть в редис для хранения тысяч пар id-товара:себестоимость?
>>3303818 Добавлю, что мне непонятно, что такое индексы в редисе.
У нас есть такой код, работающий с jedis:
try (Jedis jedis = new Jedis(host, port)) { jedis.select(index.getValue());
Что такое индекс в этом контексте? База данных внутри редис? Мне нужно создать отдельную базу данных (индекс) в редисе и туда кидать товары с себестоимостью?
>>3303647 Какой же дегенерат, блядь... Мало того, что тут уже бойлерплейта мама не горюй, так тут ещё и только один тип исключений, сука. Теперь иди напиши это для двух исключений, хотя бы, дегенерат.
>>3303259 Ты хоть немного-то думал, прежде чем постить? Мне кажется нет, потому что на твой пост ответом является ровно то же, что тебе уже было сказано.
> Ещё раз блядь, то, что написано в JLS про то, как оно работает под капотом никоим образом на семантику не влияет, сука.
Поясните за ГигаIDE, я скачал и это intelli + pycharm в одном. Ну в принципе эти ide это open source. То есть сбер взял эти ide которые open source, объеденил в одно и добавил своё расширение гигакод, и сказал это ГООООЛ? Так что ли?
>>3303935 >тут уже бойлерплейта мама не горюй Тут столько же строчек как у тебя в 3 варианте. Причем ведь у тебя реально по уебански код написан. Ты хоть понимаешь, что если ты ловишь исключение в стриме, то поймав одно, ты обратно не вернешься? Просто бессмысленная хуета написана же. >Теперь иди напиши это для двух исключений Да хоть для ста, лол.
>>3303647 Зачем ты мечешь бисер перед свиньями, чел? В жабе не принято писать в функциональном стиле и РОП. Там в порядке вещей кидать исключений и срать километровыми стектрейсами в лог
>>3303973 >.get().get().get().get().get() >Either<Either<Either<Either Ясн... А теперь выполни все те же действия, что были в оригинале, и подсчитай количество строк.
>>3303968 Оподливился с этих васянских цветных папок слева. Как будто какой-то школьник скачал репозиторий жидеи и начал красить всё чтоб было по другому, литералли болджен иде.
>>3304020 > да и от количества get количество строк не меняется. Вот так русская смекалочка! Пойду-ка я вообще все лайн брейки поудаляю, будет джава номер 1 языком по лаконичности!
>>3304333 По сути это имело бы смысл если они начали на опенаурсе все платные ide интегрировать за бесплатно, тогда даже пендосы начали бы качать эту программу
Осваиваю реактор. Есть запросы, которые можно запараллелить. Взял пример параллельного выполнения из мануала - при каждом запуске выдает разное количество строк. Отключаю параллельность - всё норм, 10 записей. Подключаю логирование - вообще всё пропадает. ЧТО ПРОИСХОДИТ?
>>3304776 Погоди, щас щас литкоды порешает, побольше свой тупой ник как бы невзначай пооставляет и точно его позовут на работу. Всего лишь два года прошло, надо просто продолжать пытаться!
>>3304779 Да пошел ты, я на всех листингах стараюсь его стереть. Не был бы вынужден сидеть на винде таких проблем не було бы. И 2 года не прошло. Ты меня с кем-то путаешь. >>3304776 Тебе какая разница?
Если метод может кинуть исключение, то нужно использовать слово throws. Если использовать этот метод, то постоянно приходится оборачивать всё в такую конструкцию: try{...}catch(...){...} Вопрос: можно ли как-нибудь обойтись без этой конструкции?
>>3304989 >нужно использовать слово throws Только если исключение проверяемое (checked). >можно ли как-нибудь обойтись без этой конструкции? @SneakyThrows
>>3305017 Вообще, настоящая конкуренция среди крупных компаний это почти всегда хорошо. Жаль это исключение, а не правило, как в головах срынкодебилов, и обычно конкуренция это про гоев и 1000 откликов на вакансию на 25к.
>>3305017 Какой-то кал от ноунеймов. Если там будет действительно что-то стоящее, то оно будет скопировано джетбруйнсами за неделю и включено в саму идейку
Почему программы на java весят так мало? Любая рандомная программа на любом другом языке может весить десятки гигабайт, а джава-программы обычно весят максимум мегабайт 100. Даже сервер майнкрафта весит мегабайт 40.
>>3305096 Смотря что с чем сравнивать? Если бинарь слинкован статически, сравнивать его уместнее с убер-джаркой, а не джаркой, чьи зависимости вынесены в класспаф.
Уберджарки с транзитивными зависимостями внутри могут тоже гигабайты весить.
>>3305689 Могу ошибаться, но похоже они вынесли из object методы монитора. Типа wait/notify. В жаве до сих пор там куча разных нахуй не нужных методов.
Всем привет, я студент, вписался на учебный проект по Java по бэку, хотел узнать, мб тут есть кто-нибудь кому нехуй делать и у кого я мог бы иногда консультироваться (без заебов), самому очень интересно, но без наставника трудно
Че за долбоебизм,почему я не могу писать код после того как сделал пустой ретюрн из кетч блока в воид методе. Ретюрн сделается только если было исключение,долбоебина на создателе,дай мне код написать блядь
>>3306426 >>Жабистам так мало платят, что они клянчат деньги у вкатунов? Если набрать толпу вкатунов - то неплохо выходит. По 5к с тела за час. Как у шлюхи, только удаленно.
>>3303959 >Ты хоть немного-то думал, прежде чем постить? Мне кажется нет, потому что на твой пост ответом является ровно то же, что тебе уже было сказано. > >> Ещё раз блядь, то, что написано в JLS про то, как оно работает под капотом никоим образом на семантику не влияет, сука. Мудило! Зачем ты используешь слова значение которых не знаешь?
>In programming language theory, semantics is the rigorous mathematical study of the meaning of programming languages. Semantics assigns computational meaning to valid strings in a programming language syntax. Что будет если написать String s = ""; это как раз и есть та самая семантика.
Как избежать фуллстак говноедства? У нас сейчас даже как-будто ничего с этим, а на западе почти одни фуллстаки . И главное эти хуесосы ещё и одобряют это, типа, ведь так можно ЕЩЁ БОЛЬШЕ УЧИТЬСЯ ЕЕЕЕЕЕЕ, ещё больше знаний. Ёбнутые анальники сука. Им дай волю они ещё и девопсить будут и дизайнить и толчки драить в офисе.
>>3306446 Дружище - за то время которое ты пытаешься мне борщ продать, ты бы уже тридцать раз спросил про джаву все что тебя интересует в треде. И получил бы вдобавок к бесплатным ответам от местных гуру джавы целую панамку бесплатных хуев.
>>3306593 >У нас сейчас даже как-будто ничего с этим, а на западе почти одни фуллстаки
Сиди дома, хули тут еще посоветуешь.
Так то как будто бы наши уже тоже доросли до фуллстакерства, а с нейрошизой ситуация во времени будет лишь усугубляться. Можно свичнуться в какое нибудь легаси дремучее, там девопса точно не будет.
>>3306702 Я спросил про ide, но мне даже панамку не дали, зачем мне ваш протухший тред? Сидят 1,5 анона и лобызают друг друга из-за отсутствия личной жизни. Да, борщ остыл.
>>3306709 >>Можно свичнуться в какое нибудь легаси дремучее, там девопса точно не будет. Там же будет еще больше ебли с деплоем. Надо срочно хотфикс залить, поэтому давай руками все пересобирай, каждый модуль перекомпилировай и акуратно по папочкам расскладывай. Еще там есть 14 скриптов на баше, который были написаны 10 лет назад Васей, который уволился. Надо их запускать в правильном порядке, с параметрами в зависимости от фазы луны, рассчитанными в специальной приложухе которую надо установить (работает только на винде). Скрипт может не сработать с первого раза - поэтому смотри в консоль все 2 часа, чтоб упавший перезапустить. Если что то сделаешь не так - надо начинать сначала.
>>3306709 >>будто бы наши уже тоже доросли до фуллстакерства Любят поднимать тему что настоящий мущина сеньор должен все уметь и язык не важен, должен все за полчаса освоить если потребуется. Хотя тут же рядом говорят что щас хватаются за все, а экспертиза хуевая и глубины знаний нет.
Хуево спросил, значит. Привыкай и учись - так устроены все публичные площадки. Если ты не получаешь ответа на свой вопрос - проблема в 90% случаев всегда в том, как ты этот вопрос формулируешь. На stackoverflow тебе бы еще бан вдогонку ебанули бы.
>>3307124 Что в этом вопросе непонятно? Боюсь что тут настолько все зеленные что не знают или не понимают что такое "прокся". Я же не виноват что в /пр остались малолетние дарования и что надо было написать впн? Я уже сам проверил.
>>3308193 >>3308250 Система сборки правда монструозная, вместо настройки ты тупо копируешь ее из проекта в проект. Плагины для новичков чистая магия. В нормальном языке ты пишешь что-то типа
dotnet new console; cargo init; go mod init <name> dotnet run; cargo run; go run
а тут чтобы подключить таску run надо еще какой-то плагин application подключить. Чтобы нормально в джарник собрать надо пляс с fatjar сделать, а потом оказывает это не работает и надо shadowJar - а это вообще тайные знания Хогвартса старшей школы, которые даже уже не гуглятся. И все это не интуитивно и не очевидно. Можно спрятаться в манямирок, но я часто видел как неглупые перевкатуны плевались от этого. Мне даже думается, что это второй по важности пункт, который препятствовал вкату в котлин, когда у него еще был пик популярности.
>>3308272 >dotnet new console; cargo init; go mod init <name> >dotnet run; cargo run; go run А на сиплюсплюс как?) Уж если кому и обсирать систему сборки, то точно не им.
Допустим, что есть некоторое статичное поле типа Integer v. Если сделать v=new Integer(30);, а потом v=null;, то будет ли удален созданный объект при сборке мусора?
>>3308478 Кэши скомпилированного кода, похоже. Хотя конечно кратная разница странная. >>3308494 При условии, что эта ссылка больше нигде не существует, то да.
>>3308272 >Чтобы нормально в джарник собрать надо пляс с fatjar сделать, а потом оказывает это не работает и надо shadowJar - а это вообще тайные знания Хогвартса старшей школы, которые даже уже не гуглятся.
Шта?
>В нормальном языке
В нормальном языке НИКОГДА ты не ограничиваешься такой малой кровью. Все quick startы хороши, пока ты масленок без коммерческого опыта и пилишь хеллоуворлд. Неопытность легко детектится вот по таким вот претензиям. Кто хлебнул жизни, не хает систему сборки, какой бы всратой она ни была.
>>3308272 >>dotnet new console; cargo init; go mod init <name> >>dotnet run; cargo run; go run ну и джаве тогда пиши spring-boot:start или зеленый треугольник нажимай
>>3308604 Все куда проще, авторы под юным максимализмом пытались сделать универсальную сборку под все языки, в итоге получился откровенный костыль с магией плагинов и долбежку в доки, потому что даже не прочитать сорцы эти плагинов.
Никакой великой идеи там нет, просто обосрались, а <name> run и релизные команды хватает даже в промышленном софте. ты реально настолько некомпетентен, что думаешь, это некий quick start, нет это базовый тулинг в современных языках
>>3308715 >думаешь, это некий quick start, нет это базовый тулинг в современных языках
Нихуя. Просто я отдаю себе отчет что в промышленном софте почти в 100% случаях одним сраным runом ты не отделаешься, и постепенно все неизбежно обрастет трешаком. Девопсов не с пустого места придумали.
И вот дальше отношение людей к тулингу и палит компетентность людей. Масленок будет с радостью вступать в эти срачи: ему продать quick start очень просто, он дальше quick startа в своей жизни и не видел ничего. Бывалому тертому калачу тупо похуй - он не видит в тех же мавеновских плагинах или том же cmake какой то когнитивной нагрузки для себя, если до этого поебался с ними в других проектах. На самом деле бывалый мавеновод легко сделает себе переиспользуемый run себе сам через архетипы или профили, и ему будет норм. А масленок так и продолжит усираться.
>>3308921 >Нихуя. Просто я отдаю себе отчет что в промышленном софте почти в 100% случаях одним сраным runом ты не отделаешься, и постепенно все неизбежно обрастет трешаком
Эти маня фантазии. Я тебя понял сказочник. девопс на то и девопс что он решает другие задачи и у него свой набор, мы же говорим про разработку.
>>3308272 Хуя себе жирный наброс. Мавену нет ровни. ИЧСХ, квик старт в мавене тоже есть, но им никто не пользуется потому что никому не нужен. А то, что ты назвал "квик стартом" в петушарпе на 500 команд, это просто позорище, как у тебя вообще что-то больше двух команд язык повернулся назвать квик стартом?
>дайте мне пожалуйста самую говённую систему сборки в джаве, прям чтоб воняло и не отмывалось! >тебе подойдёт градл >сап двач, почему все системы сборки в джаве такое говнище?
Я за всю свою жизнь не имел ни одной проблемы с мавеном. Разве что когда только только начинал программировать и не понимал, как работают методы, тогда мавен казался страшным. Во всё остальное время он работал как часы. Я даже не вспоминаю о нём, пока не приходиться трогать градлопарашу. Это не просто абсолютная база в мире систем сборок, это абсолютная база абсолютно везде. Просто представьте себе утилиту, что просто выполняет свою работу и о ней никогда не думаешь. Вот это мавен.
У мавена так то есть свой айсберг. К примеру, нужно определенным образом изъебнуться, если хочется переиспользовать определенный сет профилей между несколькими независимыми проектами. Маловато скоупов опять же. То есть мавен по-умному так то есть за что покритиковать.
Но как же заебали маслята на эмоциях со своими детскими предьявами. Это пиздец.
Так вышло, что от меня требуется реализовать с помощью генериков b-дерево.
Можно ли в генериках потребовать, чтобы параметризуемый тип имплементировал интерфейс? Это надо, чтобы компилятор не ругался, что используется метод cmp для работы сравнения ключей на больше/меньше/равно
>>3288636 (OP) >Опыт коммерческой разработки с одним из контейнеризаторов: Kubernetes, Docker или OpenShift. >Опыт коммерческой разработки с одним из брокеров: Kafka, RabbitMQ или ActiveMQ. >Опыт коммерческой разработки с PostgreSQL, MySQL или Oracle будет плюсом.
>>3309975 Это ещё цветочки, а вот как контрить то что в Windows в intellij-gradle после jdk 17 при русских символах отображает ��� вот это как контрить без wsl?
первокур-заочник, хочу после универа работу связанную с машинным обучением, но до этого надо где-то подрабатывать, какое направление лучше выбрать и какие языки?
>>3311832 Ты хоть представляешь, что такое промышленная Java-разработка? Тут тебе не «немного подзаработать». Тут enterprise, серьёзные системы, битарды на Spring Boot крутят, API городят, распределённые системы делают, чтобы потом финансовые конгломераты и прочие корпорации деньги на этом поднимали. Это тебе не говнокод на питоне строчить. Тут учиться, дебажить и ещё раз учиться — потому что экосистема огромная, и надо понимать, как всё это хозяйство работает.
Хочешь в машинное обучение? Тогда тебе в питонотред, там свои jupyter notebook'и и нейронки-игрушки. Тут Java — серьёзный инструмент для тех, кто хочет делать мощные, надёжные системы, а не баловаться.
>>3312571 Ты в курсе, что Spring им билдят? Я сам не пользовался никогда, но сейчас, после ковыряния всяких инфраструктурных штук, чет думаю, что yaml удобнее/лаконичнее, чем xml.
>>3312803 >Ты в курсе, что Spring им билдят? Аааа, ну тогда конечно, тогда градл хороший. А то, что они нахуй переписали кусок мавена в виде градл плагина, потому что нужной функциональности в градл нет, это хуйня.
>>3312862 Я не говорю, что грейдл хороший, только похвалил синтаксис. Да, там Groovy, а не yaml - я ошибся. Конфигурировать мейвен сложнее из-за xml бойлерплейта.
В очередной раз я попробовал поработать с сервлетами и в очередной раз ничего не получилось: всегда выдавало 404, даже когда артефакт начал успешно деплоиться.
И что, сука, характерно, в единственной на всю Россию вакансии для джунов как раз и требуют servlet'ы и JPA, а не Spring.
Но в одном я уверен: тот, кто смог хотя бы запустить helloServlet.java, тот уже достоин работы.
>>3312939 Энивейтхенс, ты? Рано тебе ещё джуном. Пойди 6 лет вышку получай, с красным дипломом, потом литкод порешай, футболку литкодовскую выбей, а потом стажёром возьмут, обязательно-обязательно.
>>3312939 >в единственной на всю Россию вакансии для джунов Потому что никому нахуй не нужны ни джуны ни стажёры. Если у тебя кран сломается, ты же не позовёшь "начинающего сантехника" потренироваться на твоём кране? Когда я слышу фразу "джуниор", я сразу чувствую подвох. Либо 1) работодатель жадный 2) это кликбейт чтобы собрать побольше откликов 3) в договоре анальные ограничения 4) это скрытая реклама курсов. Нормальному работодателю нет смысла нанимать джуниоров по объявлению.
>>3312941 Не, это другой чел. Я-то серверлеты запускал, хз че там сложного, наклепал хуйни, вебхмл прописал, в помнике прописал war шоб делало и задеплоил. Просто это крайне неудобная технология, ну тип даже банальный маппинг адресов идет через жопу. По ошибке того чела, как раз в маппинге вероятно и проблема, он там прописал в вебхмл юрл паттерн один, а идет вообще по корню. Ну или веб инф не сделал. Дааа. Кстати тред сдох чет, скучно.
>>3312963 Да нет никаких миддлов, окстись. Есть просто "java программист". Не важно, 3 месяца ты в профессии или 30 лет и 2 месяца. Ты всё равно "java программист". Эти титулы заебали. "Java чемпион", "java ниндзя", "java эксперт", и т.д. Так сложно просто сказать что ты пишешь на языке java. Обязательно нужно уточнять кто ты по масти. А то без этого ничё работать не будет.
>>3312970 >>Java чемпион Это тот кто коммитит в джэва кор. Таких в мире не то чтобы дохуя.
Но иногда чемпионами называют тех кто вроде эксперта в конкретной фирме - его обязанность не код писать, а учить других. Такой инициативный чел экономит миллионы кабану, за это можно ему и значок дать.
>>3313006 Но это сути не меняет. Можно так и сказать "core java maintainer". Прикол в том, что твоя работа говорит сама за себя. Тот кто сделал крутой проект, ему не надо как-то обозначать себя. Это всё равно что Воррен Баффет наденет кепку "I'm rich" и золотую цепь. Тоже самое, со всякими миддлами, он может сказать я разработчик, сделал 5-10 проектов, такой проект, сякой проект. И всё и так будет понятно.
>>3313016 >>Это всё равно что Воррен Баффет наденет кепку "I'm rich" и золотую цепь. Нет, это все равно что Воррен Баффет своим лучшим СЕО банков раздаст кепки с позолочеными цепями вместо премий в несколько лярдов. Но с манагерами такое не прокатит - а анальники готовы за лычку усираться и работать за пятерых.
>>3312945 >Нормальному работодателю нет смысла нанимать джуниоров
Нормальному работодателю нет смысла сегодня быть впринципе нахуй, с такими вводными.
А с джунами все просто. Че тебе как работодателю впринципе еще остается если образование разьебано, ВУЗы готовят хуй пойми кого, курсы не готовят впринципе никого, а будущий вкатун уже в 18 лет лютый циник по жизни. Откуда у тебя синьки то заспаунятся?
В нулевые-десятые хотя бы было модно входить в айтишку с "горящими глазами" - галеры на похуях таких еще студентами расхватывали. Затем интернатура, стажировка и вот уже человек-специалист. И галере вин, и ВУЗу, и вкатуну. А щас "горящие глаза" стало не модно. Галеры сьебали нахуй. Где ты щас кадры ковать будешь? Все и приспособились, кроме кабанов - те как скальпировали пустой рынок труда на синек, так и продолжают это делать - еще и удивляются, ачо случилось.
Вот пишу все это, а тем временем хрюша собесить техлида зовет. И пиздецки это тупое нынче занятие - собесить кого то. До этого собесил обычных разрабов на миддла, так из года в год идут все никчемнее и никчемнее. Из десяти человек девять элементарно не знают, что такое тредпул блять. У всех по 10+ лет коммерческого попыта. Какие нахуй лиды.
Сидим как то с генеральным. Он такой "мы последнее время хлебнули (по фактам), теперь будем хайрить только скилловых".
Я ему - какие скилловые, о чем ты? Мы за последние две недели отсобесили без малого два десятка кандидатов, по итогу оффер готовы были дать лишь двум, наняли одного (!), и за это время двое по сьебам дали. Охуенно в выигрыше остались.
И теперь прилетает вот - го грит лида собесить. Ну-ну.
Закинул удочку на предмет апнуть кого нибудь из своей команды в лиды (благо что есть достойные кандидаты), а на освободившееся место уже хайрить перца попроще. Хз выгорит ли.
>>3313179 Гляньте на этого дебила, уже второй раз пытается так остроумно пошутить, в первый раз не получилось, так может во второй раз получится? Дай угадаю, не пропускал ни одной вписки, но всегда там в сторонке стоял?