Глянул тут видосы про яндекс.практикум на ютубе и почитал комментарии к ним. Там блогер говорит что он проучился и там была жесть, ад и вьетнам, и что из 100 человек дошли до конца учебы только 10. Говорит что практикум это круче чем любой другой курс, потому что те курсы дают тебе поверхностные знания уровня стажера недоджуна, а практикум на яндексе в некоторых компаниях выпускник будет тянуть даже на миддла. Потому что он прошел жесть, дедлайны и обучение по 8 часов в день. В комментариях пишут люди которые заходили на яндекс практикум уже с плотной базой по языкам типа питона или джавы и даже им было там тяжко. Кто-то говорит что тяжело там изза плохого подхода к обучению потому что нихрена ничего не объясняют и не помогают разбирать задания. А кто-то говорит что это всё пиздеж и там уровень не выше чем у всяких скилбоксов разве что с понтом дедлайнов и ограниченного количество попыток и с отчислениями с курса.
>>3404511 ИЗУЧИЛ ВСЕ КУРСЫ ПО 700К @ ТАК И НЕ БЕРУТ НА РАБОТУ И НЕ МОЖЕШЬ НАПИСАТЬ НИЧЕГО КРОМЕ ХЕЛОВОРЛД @ КАКОЙ-ТО ИНДИЕЦ СРУЩИЙ НА ЖЕЛЕЗНОЙ ДОРОГЕ УСТРАИВАЕТ ТЕБЯ НА РАБОТУ В ФААНГ
>>3404499 >тяжело там изза плохого подхода к обучению потому что нихрена ничего не объясняют и не помогают разбирать задания Это. Дают кучу огромных задач, и сиди ебись как хочешь. Из-за этого люди тратят целый рабочий день, чтобы просто разобраться, что от них хотят. Потом ещё может не работать что-то с их стороны. Они просто засунули программу, которые нормальные студенты в вузе дрочат 1-2 семестра, уже имея предварительную базу, в пару месяцев. Конечно большинство с этим не справится...
>>3404499 >А кто-то говорит что это всё пиздеж и там уровень не выше чем у всяких скилбоксов то что они не забирают лучших выпускников себе на работу какбы полностью исчерпывает тему, разве нет?
лично у меня сгорела жопа нахер после выполнения нескольких упражнений, потому что система не принимает код если есть лишний пробел или аргументы не в том порядке что на результат не влияет разумеется
но на самом деле есть школы где можно получить хорошую базу, и даже вкатиться, при условии ебашить ежедневно примерно год, даже бесплатно
1. RS Sсhool работают бесплатно, фронтенд, раньше из них можно было с 0 за год заскочить в ЕПАМ джуном, сейчас сами понимаете 2. Рабство на 2 года в Acтoн'е, под угрозой штрафа 700К, два подводных - при поступлении надо уже всё знать и старше 38 идут нахер
3. Джава Ментр были хорошие, но, вроде, закрылись 4. Хекслет были хорошие, пока не получили инвестиции и не скурвились, сейчас токаяже выжималка деняк как и всякие скиллбрейны. Но всё бесплатное у них очень хорошее. Коде-бэсикс-ком например отличны чтобы научиться базовому синтаксису любого языка, номремер
>>3404622 >система не принимает код если есть лишний пробел или аргументы не в том порядке И при этом тот же яндекс является обладателем яндекс контеста. Мда, какая же поебень.
>>3404622 >2. Рабство на 2 года в Acтoн'е, под угрозой штрафа 700К, два подводных - при поступлении надо уже всё знать и старше 38 идут нахер А существует что-то подобное, кроме Астона? мимо раздумываю туда пойти, вката НЕТ иначе
>>3404622 >есть школы где можно получить хорошую базу, и даже вкатиться >рабство на 2 года >под угрозой штрафа 700К, >при поступлении надо уже всё знать
Нихуя себе мазохизм... Вложить все кровные в финансовую пирамиду курсов уже не модно - надо чтоб за это тебе еще и выкрутили яйца?
Новый день — новые приколы от говновкатунья. Битвы стенка на стенку уже кажутся приукрашиванием реальности на фоне линукса в пфе и дума на типах тайпскрипта и вот подобных этому >>3404767 дауну.
>>3404410 → >пряники Пережирнил. Уёбывай со своими унылыми потугами в потроллить "щас как нагоню ещё больше вкатунов своими сказками вот умора будет)))".
>>3404622 > потому что система не принимает код если <...> аргументы не в том порядке что на результат не влияет разумеется
Ну вообще-то влияет. Если тебе дали задание написать класс/метод/функцию и ее будут автоматически проверять, то она выдаст хуйню, если аргументы будут не в том порядке если, конечно, язык без именованных аргументов типа пестона
Вот тебе сигнатура: int f1(x, y, z)
Ты ее вызываешь f1(45, 67, 32). Если аргументы будут не в том порядке, а функция делает что-то сложнее их простого сложения -- будет хуйня.
>>3404879 >не в том порядке, а функция делает что-то я же написал - результат правильный детали не помню уже
>>3404639 >яндекс является обладателем яндекс контеста. от яндекса там только название, сами курсы делает сторонняя говноконтора, насколько знаю
>>3404803 >надо чтоб за это тебе еще и выкрутили яйца? они если тебя приняли деняк не просят, начинают платить сначала стипендию, потом зарплату, и постепенно поднимают. Деньги ты вкладываешь недополучая 70% зарплаты
>>3405073 >обьясните мне почему вот этот код лучше кода джавы с фьючами?
Ну это аналог запуска трех тредов в джаве, которых ты потом дожидаешься через Thread.join() CompletableFuture в джаве используются для того, чтобы удобно оборачивать всю асинхронщину и строить цепочки действий, это немного другое.
из прошлого треда, вопрос на собесе что такое тред пул. Попробую ответить
Тред пул это такой набор, или пул, предварительно созданных потоков. Некий код берёт созданный поток из этого пула, делает вычисления, и в конце возвращает поток обратно в пул. Для чего это нужно? Например для сглаживания нагрузки. Например у нас есть некий пик нагрузки, разом к нашему ресурсу обратилось 1000 человек. Если на 1000 человек выделить 1000 потоков, то упрёмся в ограничение по количеству потоков, либо в память, либо в процессор. Все запросы начали обрабатывать одновременно, но система зависла. Как исправить? Создаем тред пул фиксированного размера, входящие запросы обрабатываем через тред пул, которым не хватило потока - те ждут. Так система не зависнет.
Также создание треда это дорогостоящее действие, тред пул позволяет экономить время на создании и ликвидации потоков
>>3405125 Какой-то каловый вопрос если честно и ответ такой же хуевый. Я думаю лучше про кишки тредпулэкзекьютора рассказать и блокинг кью внутри него, а иначе твой ответ сейчас выглядит так, как будто ты вкатун и с тредпулами не сталкивался никогда.
>>3405204 и часто тебе приходится ковырять кишки тредпулэкзекютора? Я вот ниразу не ковырял.
Окей. Тред пул нужен когда надо выполнить многопоточную работу, и при этом не положить систему перерасходом ресурсов. Плюс экономия на создании и уничтожении тредов
>>3405125 Из прошлого треда тот самый анон, заебанный хайрингом
Нормальный ответ, есть от чего плясать дальше. Что еще есть у тред пулов, помимо тредов? Что случится с входящей задачей если треды в тредпуле закончились?
Вопросы со звездочкой:
- Поролеплеим: я - кабан, ты - синьор-помидор. Я даю тебе заказ на написание обработчика моих абстрактных кабаньих задач в вакууме. Какие вопросы ты мне задашь, чтобы выбрать размер тред пула под обработку этих задач?
Альтернативный вопрос - как ты думаешь: нахуя в спринге по дефолту тред пул для рестов аж в 200 тредов, а размер common пула для параллельных стримов обычно небольшой и коррелирует с количеством доступных хардварных потоков (здесь я сознательно не углубляюсь в нюансы с тем, что там еще есть уровни parallelizmа, они здесь несущественны)?
- Слыхал когда нибудь о таком приколе, как cached тред пул? В чем его особенность?
>>3405204 >Я думаю лучше про кишки тредпулэкзекьютора рассказать
Ну епта, если кандидат уверенно заходит прям с таких козырей, вопросиков к нему после такого вообще не остается, хули.
Пока не было такого.
Одно время пробовал спрашивать так напрямую. Довольно быстро бросил эту затею.
ПЫСЫ: но вообще, мне наконец то удалось соскочить с найма, так что ни мне больше не придется страдать от саморефлексии, ни соискателям иметь дело с душнилой-мной. Вин-вин.
>>3405316 > Что еще есть у тред пулов, помимо тредов? очередь выполнения? > Что случится с входящей задачей если треды в тредпуле закончились? будет ждать когда освободится свободный поток. Если очередь ожидания достигла предела - будет ошибка
> Я даю тебе заказ на написание обработчика моих абстрактных кабаньих задач в вакууме. Какие вопросы ты мне задашь, чтобы выбрать размер тред пула под обработку этих задач? Сколько задач одновременно надо будет обрабатывать, будет ли постоянная нагрузка, сколько можно тратить ресурсов. Если прям совсем абстрактная - взять резиновый тредпул, ограничить по максимальному размеру максимально большой размер, забить настройку размера в настройку
>нахуя в спринге по дефолту тред пул для рестов аж в 200 тредов чтоб обработать 200 одновременных запросов реста, ибо по дефолту во втором буте стоит томкат, и он расходует по потоку на входящий запрос. В третьем буте перешли на netty и оно вроде бы использует виртуальные потоки, но это не точно
>а размер common пула для параллельных стримов обычно небольшой и коррелирует с количеством доступных хардварных потоков в стримах обрабатываются данные, и их быстрее обрабатывать последовательно без попыток параллелизма, и их сложно делить. Скорее всего будет быстрее посчитать все данные в одном потоке, чем создавать 100 потоков и мерджить полученные данные
>- Слыхал когда нибудь о таком приколе, как cached тред пул? В чем его особенность? 'это резиновый? Когда нет нагрузки он сокращает свой размер, когда есть нагрузка он увеличивает свой размер
>>3405341 >в стримах обрабатываются данные, и их быстрее обрабатывать последовательно без попыток параллелизма
В этом месте я б скорее всего спросил - "если это так, нахуя в стримах вообще тогда есть parallel, и нахуя вообще нужны стримы, если всю дорогу был няшный последовательный искаропки for".
>>3405361 99% все используют stream(), а не parallelStream(). Нахуя он нужен? Чтобы был. И возможно есть задачи где это выгодно делить по потокам, но это обязательно надо тестировать метриками перед использованием parallelStream
>если всю дорогу был няшный последовательный искаропки for чтобы был свой LINQ, красивая обработка данных в модном функциональном стиле
>>3405125 Насколько я помню, еще один аргумент в пользу этих пулов в том, что ахуительные алгоритмы шедулеров учитывают то, насколько тот или иной тред полезен. Типа если какой-то тред существует достаточно давно и в полной мере реализует процессорное время, то ему дается больший приоиртет при прочих равных. >Если на 1000 человек выделить 1000 потоков, то упрёмся в ограничение по количеству потоков И при наличии виртуальных потоков это неактуально. Создавай хоть миллионы - похуй.
>>3405379 >99% все используют stream(), а не parallelStream().
Есть такое. Выше был просто вопрос-намек: что суждение "данные быстрее обрабатывать последовательно без попыток параллелизма" мягко говоря не звучит как правда.
>чтобы был свой LINQ
Так линк это другоэ, не? Я не шарпей, но ихний линк вроде больше про то, чтобы с коллекциями работать в стиле SQL, селекты по ним делать. А у нас скорее - map-reduce.
Я еще задавался вопросом - интересно, шарпы для этого линка прям экзекушен планы под такие селекты строят как СУБД? Или как?
>>3405316 >по дефолту тред пул для рестов аж в 200 тредов
После .net с его стройной асинхронной моделью это дико звучит.
Будут постоянно контексты переключаться, производительность ниже. А виртуальные потоки это вообще костыль чтоб как-то вписать нерешенную задачу блокирующих операций.
Насколько понимаю jvm все равно постоянно переключается на эти потоки, иначе как она узнает что блокирующая операция завершилась?
Понятно что это не переключение контекста потока в операционной системе и сами виртуальные потоки намного более легковесны, но все равно работа выполняется. Это костыль.
Когда имеем некое устройство, к примеру сеть или диск где пишутся и читаются данные, то после отправки запроса логичнее было бы запускать код когда устройство произведет операцию.
В простом приближении мы отдаем операционной системе callback, который надо вызвать по прерыванию от устройства, когда оно сообщит что операция выполнена. .net добавила сладкий async await с автоматически генерируемой машиной состояний, так что асинхронный код пишется будто синхронный, но при этом не имеет блокирующей природы.
>>3405553 >Ну, в чем проблема? Создать коллбэк который вызовет вот это
Это тот же костыль. В ОС, в винде или юниксовых есть non blocking I/O API.
Так вот когда Microsoft с .net пошла по пути интеграции поддержки такой модели исполнения в язык и получился стройный async await.
Java пошла по пути костыля "виртуальных потоков" в которые надо оборачивать блокирующие операции.
Зачем это было городить, когда сами ОС предоставляют модель асинхронных операций и органичнее следовать этой модели, интегрировав в язык. Но дизайнеры подумали, что для легаси кода дешевле будет просто обернуть вызовы блокирующих IO методов в "виртуальные потоки".
>>3405554 >Так вот когда Microsoft с .net пошла по пути интеграции поддержки такой модели исполнения в язык и получился стройный async await.
В недрах async await сидит конечный автомат, который строит компилятор. В деталях не знаю, просто слышал, что это так. И я не совсем понимаю, как это связано с nonblocking I/O API. В линуксе например есть epoll, есть io_uring, есть старые api вроде poll+select. А еще мертвый и толком неработающий AIO есть для асихнронной работы с файлами.
Не знаю как в джаве, но в Го для работы с внешним асихнронным api (как раз где epoll под капотом) есть netpoller, который как раз ждет событий от ОС и как только ОС скажет, что можно читать из сокета, то нетполлер просто нужную горутину "пинганет" и та продолжит свою работу. Тут чуть более детально можно почитать https://morsmachine.dk/netpoller
А чем это лучше/хуже async await подходов я не знаю, в этом смысле в Го сделано все проще, есть шедулер под капотом с магией, но никаких конечных автоматов под капотом не генерится. Плюс код не раскрашивается на синхронные/асинхронные функции между которыми нужен мост в виде await.
В го такой раскраски хоть и нет, но там такая функция будет возвращать не значение, а канал (по сути блокирующую очередь), из которого можно будет прочитать значение когда-нибудь потом. Обычный producer-consumer подход по сути.
В джаве пошли по пути go а не сишарпа, видимо на то были свои соображения.
>>3405556 В дотнете так же. Есть управляющий поток, который проверяет статус операций (через тот же uring например). Если операция завершена ядром, управляющий поток находит релейтед таску и ставит ее в очередь, дальше пул потоков запускает таску с точки await. Конечный автомат - это просто один из вариантов реализации, можно было сделать и по-другому как в гошке. В го все блокирующие операции тупо захардкодили в компилятор, поэтому там нет await. Когда компилятор го встречает тот же read(fd), он знает, что это блокирующий вызов, и генерирует нужный код. В дотнете await сделали универсальным и ты четко по коду видишь, где в коде будет вызов к IO. В го хуй догадаешься.
>>3405552 >логичнее было бы запускать код когда устройство произведет операцию
И вообще, вы все такие дохуя умные. Только блять почему то всегда задним числом. Разработка тащемто прошла довольно длинный путь с асинхронкой, и такой удобной она стала относительно недавно, когда новые языки или языки не сильно парящиеся об обратной совместимости начали пиздить фишки и идеи, которые всю дорогу были у функциональных. По итогу оказывается все это было сделано лишь для того, чтобы сегодня какая то прыщеблять в интернете говорила за логичность, в то время как большинству тупо похуй.
>>3405554 >ниправильна ибёте!! ни па вжжжилигии надо вжжжжж калом обмазывать функции Проигрываю с того, как шарподауна корчит с того что ему до конца его жизни придётся мазать функции асинк-калом, терпеть тормоза петушарпа и бесконечно безрезультатно переносить нет фреймворковое легаси на асинки делая ту же самую работу заново, и всё это наблюдая как за забором белые люди без единой правки в код сделали летающее решение той же проблемы. Конечно приходится корчится и коупить какими-то своими перефорсными мантрами про костыли.
О каких виртуальный потоках в java тут периодически бывает речь? Я знаю только те потоки, что создаются с использованием класса Thread и интерфейсов Runnable и Callable.
>>3406127 Ты спецом байтишь что ли? Ну вообще говоря, шарпей прав, но немного в другом. До тех пор пока в жабе не появится https://openjdk.org/jeps/499 в плане юзабилити она все еще будет хуже шарпа, котлина, го и прочих.
>>3406137 > хуже шарпа, котлина, го и прочих. > скидывает джеп содержимого которого даже во влажных фантазиях у шарподаунов не было Пиздец его потрясывает.
>>3406576 >есть уже как кучу ебаных лет Где ты сказал это? Ты просто прокривлялся выдавив какой-то несвязный набор слов. На что и получил струю мочи в рыло.
>>3406784 Реактивность это чисто фпшная тема как по мне. И попытка впихнуть невпихуемое в жебу. Тут же фактически простая группировка задач. А еще в одном жепе https://openjdk.org/jeps/487 и возможность передачи значения между ними.
>>3406847 Попытки впихивать в императивные языки ФПшные фишки - буквально все "развитие" языков последних лет. Исключение разве что раст со своим борроу чеекром, но один хер на любителя.
>>3406862 Мне не нравится, то как они реализованы. Какое-то разделение на три этапа (source, transform, terminate), очень кривое и косое написание кастомных функций из-за этого. Да и то что сама жаба не ленивая, а это чудо ленивое очень запутывает.. Ну блин, если использовать для чего-то простого, то да, в принципе пойдет, но любая трудность и проще ебануть фор, чем ебать мозги. >>3406894 >раст со своим борроу чеекром Это вроде как единственное, что он уникального сделал. Остальное понапиздил из фп и си.
Не то, чтобы я против был, но как по мне, когда ты внедряешь какую-то фичу, без полного контекста, ты только ухудшаешь репутацию этой фичи. Типа у пограмистов появляется опыт, что это какая-то куцая и косая хуйня и мол наверное так везде. Обидно feature lives matter..
>>3405564 >Когда компилятор го встречает тот же read(fd), он знает, что это блокирующий вызов, и генерирует нужный код
Неа, именно кодогенерации как в сишорпе или котлине в Го нет при работе с асинхронщиной. В Го ты просто каналы используешь чтобы данные туда-сюда гонять, вот и все. Дополнительный код генерить не нужно. Все I/O вызовы заранее обернуты, там дополнительный код не нужен.
>>3407156 > Хочу выучить этот фреймворк и работать на удаленке, желательно вообще на валютной.
Это сразу забудь. Во-первых, в Жабе не так распространены удаленки; во-вторых, чтобы работать на удаленке и тем более валютной, нужно уже быть помидором. Ну т.е. ты строишь планы минимум лет на пять во времена, когда нихуя не понятно, что будет через месяц. Может Жабу окончательно пожрет долГОносик лол.
Работал на java + spring 2 с половиной года, затем появилось интересное предложение по иб, съебнул, но через год понял, что наебался. Сейчас планирую вернуться обратно в джависты. Как обстановка на рынке труда? В целом у меня неплохие знания spring и spring boot, mongo и postgre, spring data, security и прочее, написание тестов по столько по скольку, кафку трогал, кролика не трогал, никогда не работал с облаками. Думаю в апреле в отпуске пойти побегать по собесам. Какие шансы за что то ухватиться? Еще вижу в вакансиях большое количество девопсовских тулзов типа ансибла, дженкинса, докера, я с ними умею работать на уровне тестирования сборки и развертывания своей писанины, но насколько глубоко обычно требуют от разраба их знаний?
>>3408116 > по статистике жаваны пишут её крайне хуево (типа не знаю, лобок юзанули и похую).. Охуительная статистика прямо из жопы одебилевшего недокатуна. Алсо держу в курсе, лобок хорошо хеширует.
>>3408301 Я откуда знаю что ты там понимаешь под корректным хешем? Наверняка какие-то обрывки информации у чат гопоты нахватал и теперь будешь ещё пару месяцев в треде рассказывать всем как ты у мамы знаешь про хеширование, пока тебя не опустят по гланды, как было с многопотоком, да как в принципе ты постоянно позоришься в треде.
Чего можно почитать, чтобы разобраться в DDD? Увидел в книге Spring in Action пикрил и нихуя не понял. Зачем нужен Ref? Почему повсюду UML диаграммы с разными стрелочками, где-то отношения рисуют там например стрелочкой с пунктиром, это я так понимаю агрегация обычно, а где-то по-другому. Или вообще об этом не париться?
>>3409491 В книге, если что, пояснений тоже не особо много.
In our application, a Taco can’t exist outside of the context of a Taco_Order. Thus, Taco_Order and Taco are considered members of an aggregate where Taco_Order is the aggregate root. Ingredient objects, on the other hand, are sole members of their own aggregate and are referenced by Taco by way of Ingredient_Ref. The next listing shows the SQL that creates the tables.
>>3409491 >Зачем нужен Ref? Вроде как это просто физическое воплощение many-to-many связи. И звездочки на это намекают. Впрочем я по коду полазил, так и не понял задумки этого гения, а еще там sql уебищный без нормальных ограничений. Плюс местами вместо того, чтобы ебануть ошибку, мол не найдено, он просто null возвращает. Ахуенно. >стрелочкой с пунктиром, это я так понимаю агрегация обычно Агрегация рисуется ромбиком, причем если он fill то это композиция.
>>3409496 Понял, благодарю. Ну я подозревал, что книга странная. А где можно найти всё вот это, про uml условности, про many-to-many и подобные типы отношений, не подскажешь случайно? Просто по статьям рыться?
>>3410339 Не гоните ссаными тряпками за тупые вопросы, я в вопросе кубера 0 и вообще нюфаня.
Например у меня сейчас есть 3 VPSки. Есть докер компоуз, в котором крутятся мои сервисы.
Допустим я раскорячусь, но как-то с гуглом\чатом жпт разверну на этих 3 серверах свои сервисы в кластере кубера. Вопрос: а как быть, когда у меня на каком либо из сервисов пойдёт нагрузка, и я захочу развернуть ещё одну реплику данного сервиса, для балансировки нагрузки?
Вопрос, скорее всего, поставлен некорректно и нет полноты данных. Прошу отнестись с пониманием.
>>3404287 (OP) Как лучше всего освоить в домашних условиях кубер, микросервисы и кафку? Посоветуйте годные ресурсы для изучения и как это все лучше развернуть на домашней пекарне
+ Стрим газонюхи теперь стабильное API - Ансейф выпилили - JNI де-факто выпилили - Секурити менеджер выпилили - 32 битную версию jvm (и не только под шинду) выпилили
И ещё всякая хуйня по мелочи, никому не интересные переносы на новые версии превью и ДЕВЯТЫЙ инкубатор вектор апи, это уже мем какой-то. И ни одной новости о вальхалле, оправдывая название этого проекта.
Зато шарподебилы больше не будут хвастаться своим batch() в linq, лол. Какие же дегенераты блядь современную джаву разрабатывают, прости, Гослинг, они всё проебали.
>>3411262 >ЕБАТЬ ВОТ ЭТО АНИМАЦИЯ ВОТ ПРЯМ НУ ВАЛЬХАЛЛА ВООЩЩЕ >3 месяца назад, как это к java 24 относится не понятно >Содержание: потерпите, ещё немного, и вообще это очень важно Охуеть, ну теперь-то заживём!
>>3411248 Снова версия, которая нихуя не добавляет и кучу всего вырезает.
Как я и говорил, расчитываю, что в 25 таки вернут стринг темплейты. А на вальгаллу ближе к 30 (или какой там лтс после 25?) стоит рассчитывать. Не раньше.
>>3411277 Когда предыдущая версия релизится, следующая версия уже находится на полпути к завершению активной работы над ней. На стринг темплейты в джаве 25 нет ни намёка.
>>3411248 Ебанный тупой дебил не упомянул, что лум наконец можно нормально успользовать, потому что убрали пининг (это и есть главное изменение) зато прикопался ко всему остальному. Эталонный долбаеб
>>3411606 Нихуя они не выпилили, не слушай дебила. JNI, как и FFM выдает ворниг в консоль. А в дальнейшем будет требовать ключ запуска. Сама JNI останется, да и странно выпиливать JNI, но при этом добавлять FFM который делает вызов нативных библиотек ещё проще.
>>3411904 >ой славк у меня чё-то твоя программа не запускается >какой ещё флох запука? ничё не понимаю, переделывай >ну тогда нам придётся разорвать контракт, а вам выплатить неустойку
Почему на мидл джава вакансию требования как на системного архитектора? И зп предлагают, как у точика доставки. Как бы чего хочет этот работадатель? И стоит ли на что-то подобное откликаться, с 3 г опыта?
>>3412193 бОльшая(почти вся) часть работы с java никогда не была связана с архитектурами и финтами работы jvm. Однако почти везде меня про это спрашивали. И, как показывает опыт, если тебя об этом спрашивают, то дадут весьма странную работу, которая особо никак не будет связана с архитектурой и её изменением. В декабре довелось поработать в фирме, где перед наймом компостировали мозги архитектурой и паттернами ооп, а по итогу мне пришлось просто переписать с C# на java штуку для отправки запросов к БД(фирма перешла на axiom jdk). Не знаю, как сейчас у них там(я ушел буквально после праздников), но судя по тому, что мне звонили в марте и предлагали по-новой пройти у них собеседование с послаблениями, дела у них не очень.
>>3412338 Раз на раз не приходится. Никогда не знаешь когда столкнешься с кишками в проде. По кишкам я б душить не стал потому что и сам их не то чтобы хорошо знаю, кек, но гипотетически себе представить, почему это может быть важно нанимателю, могу. Ему важно чтобы челик не в осадок выпадал когда сталкивался с какой то хренью на проде, а имел хотя бы малейшее представление куда гуглить и промптить, чтобы вырулить. Если о подноготной чел вообще не имеет никакого представления и даже не интересуется, он начинает обычно мифологизировать разработку, и принимать совсем уж неадекватные решения.
>>3412669 Что сказать-то хотел? Что технически можно запустить? Так я с этим и не спорил. Суть в том что упрятывание под ключ доставляет огромное количество проблем.
холиварный вопрос, но всё же, go или java в качестве первого языка? не кидайтесь палками, хочу понять примерно как реально обстоят дела. А то с одной колокольни говорят, что в Go нельзя попасть никак из-за сложности архитектур хайлоада и тд, а другие утверждают, что неважно какой язык учить, нужно везде крутить опыт, с чем я согласен. Но скажите, пожалуйста, что более реалистично крутить в Go или Java, как первый язык? +есть небольшой опыт php + ооп
>>3412747 >go или java в качестве первого языка >есть небольшой опыт php + ооп Это не первый язык значит. Вообще, выбирай, что тебе лучше подходит и все. Мне вот на концептуальном уровне го неприятен. Мол абстракции это зло и лучше сделать пару копипастов, чем повязнуть в фабриках фабрик фабрик.. Если ты хорошо разбираешься в инструменте, работу ты так или иначе найдешь.
>>3412744 Не всегда есть полноценный доступ к скрипту запуска редко, но бывает. Долбоёбы видят что фичу нужно включать флагом и начинают орать "ДЕПРИКАТЕД!!!!!!! УДОЛИЛ". И т.д. А добивается это циклом обратной связи, когда даже небольшая доля долбоёбов что не смогут поставить флаг запретят всем пользоваться им, из-за чего до сих пор почти половина сидят на джаве 8.
Здравствуйте, многоуважаемые жабаноны. Вопрос, заданный уже наверное миллиард раз - возможно ли перекатиться с другого языка на java? Уже 4.5 года пхп-разраб в недогалере. Изначально хотел вкатываться в джаву, но взяли только на пхп, в моей мухосрани ничего другого не было. Вроде бы и опыт есть (не совсем релевантный, но какая блядь разница через хибер или доктрину в базу нырять), спринг знаю (и в прод писал, когда позволяли), уже даже котлин подтянул. Но хрюши сами пишут, а после упоминания пхп нос воротят. Если не упоминать пхп - просто по английски растворяются. От пхп уже тошнит, мочи нет. Есть перспективы уйти в го, но это такое вно, что ажтрисет. Так как же переметнуться к боярам, пиздеть в CV, что всегда был джавистом? Есть примеры успеха от анонов?
>>3412753 >небольшой опыт php джава это пыха в мире энтерпрайза, не смотря на то что джаве пророчат скорую смерть, "ну вот и всё, джаве конец, вот и вышел убийца джавы, через 5 лет все энтерпрайз системы будут на {языкнейм}" благополучно живёт и ничего с ней не делается
гоуланг, условно, для джавы тоже самое что руби-он-рэйлс для пэхэпэ, десять лет нахзад писали что пыхе всё, вот и вышел убийца пыхи, через 5 лет пхп пропадет а все сайты перейдут на рельсы
>>3413098 У го и жабы совершенно разные принципы. Вот чем они жаванов привлекают? Больше на мем какой-то похоже, чем правду. Да и переписывать буквально все с нуля (без фрейморков и тд) тоже кажется хуитой для условного кабанчика. Шарп в этом плане хотя бы понятен.
>>3413340 Да шарпеям просто не повезло. Случилось СВО. Джаву форкнули в Axiom. А про шарпы забыли. Вот вакух и нет. Можно было бы им посочувствовать, если б не вели себя как гондоны...
>игродельство
Вроде бы юнити гейдев давным давно уже скатился во всякое васянство типа чилла-артс. Нормальный игродев - анриал, а там шарпов если правильно помню и не было никогда.
>>3413329 >синтаксис второстепенен Синтаксис тут блять причем? Там совершенно разные подходы к проектированию, а не буковки разные. >го-миддлы легко залетают на 400-500К Ну т.е. опять же, в жаве гораздо больше экспертов, готовых работать за меньшую зп. Напомни, а нахуя кабанчику вот этих говноедов прикармливать? Какие у него преимущества? Типа, да мы мы все переписывать будем кучу лет, а еще зп требуем в два раза больше, НО зато перфоманс на 10% лучше. Так и представляю как все побежали переходить на го. >>3413346 >если б не вели себя как гондоны Ну шарпеи няши по сравнению с жаванами. Последние крайне неприятные личности, которые никогда тебе не помогут, а только говном польют.
>>3412726 >Суть в том что упрятывание под ключ доставляет огромное количество проблем. Кому? Дебилам вроде тебя? Возможно.
На серверсайде итак уже передается 100500 ключей с указанием памяти, ГЦ, неба, аллаха. Десктоп тоже давно использует или враперы которые генерируют .exe или шел скрипты, там тоже проблем нет.
Максимум, не получится запускать .jar по двойному щелчку, но в 2к25 так никто не делает уже давно. Ну или если ты хочешь писать шел скрипты на джаве и использовать JNI. Но тогда ты больной ублюдок, которого надо принудительно лечить.
>>3413436 > новички не умеют задавать вопросы На то они и новички. Люди с правильно поставленными вопросами обычно в состоянии сами найти на них ответ. Иногда им просто лень.
>>3413346 >шарпеям просто не повезло как будто до СВО шарпоебам много где можно работать было? на русском рынке шарпы нахуй не нужны ни до ни после сво >>3413377 > в жаве гораздо больше экспертов, готовых работать за меньшую зп в джаве зепки реальные, формируются от баланса спроса и предложения на разрабов, так как объем рынка джава-разраблотки огромный
гоу перегрет, крупные кабаны решили писать на гоу, кадров нет, метут всех кто может минимально мяу-мяу написать >>3413377 >все побежали переходить на го. лично мое мнение - кабаны собрались устроить загончик из которого сложно выбраться, захотел сменить работу, а нанимают 3 компании и у всех соглашение о непереманивании
>>3413394 > Кому? Дебилам вроде тебя? Возможно. Я тебе объяснил первым постом. Дебил здесь только ты который в школе читать не научился.
> Максимум, не получится запускать .jar по двойному щелчку, но в 2к25 так никто не делает уже давно. Ну или если ты хочешь писать шел скрипты на джаве и использовать JNI. Но тогда ты больной ублюдок, которого надо принудительно лечить. Нипраааавильна джавой пользуетесь! Можно только так, так и так!! А вот так нельзя, потому шо господь скуфц запрещает! Я тебя понял, говно.
>>3413475 >Я тебе объяснил первым постом. тем временем первый пост >JNI де-факто выпилили Ну не дебил ли?
>Нипраааавильна джавой пользуетесь! Можно только так, так и так!! А вот так нельзя, потому шо господь скуфц запрещает! >Я тебя понял, говно. Мудило, нихуя ты не поняло! У 99,9% пользователей JNI продолжит работать как раньше. И только 0,1% додиков типа тебя будут страдать, воя на все интернеты что >JNI ВСЬО!
Я хочу собеситься на джава мидл, но никогда не сталкивался с брокерами и кафкой. Надо ли придумывать какой-то хуй пойми пет проект, чтобы научиться и попробовать разобраться? Или отвечать что не знаю что это такое?
>>3413461 >как будто до СВО шарпоебам много где можно работать было?
Хз. Наверное, иначе я не могу себе обьяснить сей феномен. Раньше как будто бы шарпеи не особо отсвечивали на фоне прочих маргиналов (скалистов, котлинистов). Щас каждый шарпей ведет себя как поехавшая скотина на комплексах, нечто среднее между либерахой-фанатиком и инцелом.
>>3414159 >выглядит вот так >>3412754 Выгладит как говно, ты который пост усираешься, но не привел ни одного реального примера.
>Повтори это ещё 1000 раз без новых аргументов, и тогда JNI обязательно заработает. Может ты покажешь, какие проэкты жалуются на нововведение? А то пока ты один ноешь.
>>3414738 Они плавающие. Хуй зарепортишь. Вот постоянно приходится удалять .idea потому что блядь просто тупо пропадают все файлы из встроенного файлового дерева. И ещё миллион проблем с этими конфигами, слетают и т.д.
>>3414739 >потому что блядь просто тупо пропадают все файлы >приходится удалять .idea Ну наверное логично предположить, что тут виновата какая-то настройка, которая вступает в силу. Почему бы тебе не удалить файл идеи, а потом фиксировать каждое изменение, которое ты делаешь в локальных настройках? Или хотя бы логи глянуть, что там случилось. Тут ситуация как бы не плавающая, она уже случилась и решится только твоим удалением idea, зарепорти это и что ты там сделал вместе с логами. >миллион проблем с этими конфигами, слетают и т.д. Т.е. ты настроил что-то, нажал apply, и потом спустя какое-то время заглядываешь, а там все вернулось как было? И ты уверен, что это не ты менял или твое по?
>>3415110 > Ну наверное логично предположить, что тут виновата какая-то настройка, которая вступает в силу. А я ебу какая настройка?
> Почему бы тебе не удалить файл идеи, а потом фиксировать каждое изменение, которое ты делаешь в локальных настройках? Я в бесплатные бета тестеры проприетарного продукта не записывался. Если легко зарепортить зарепорчу, но время, причём немаленькое, точно тратить не буду.
> Т.е. ты настроил что-то, нажал apply, и потом спустя какое-то время заглядываешь, а там все вернулось как было? И ты уверен, что это не ты менял или твое по? Понятия не имею. Просто слетает, ломаются модули, ломается подсветка, ломается подключение к мавену, и т.д.....
И ещё доверху ёбаная неотключаемая реклама ии ассистента который нахуй мне не всрался, что постоянно сука добавляется в окно при открытии нового проекта (или при стирании .idea, что приходится делать регулярно). И ещё уведомления дегенеративные. Тьфу блядь
>>3415116 >проприетарного продукта не записывался Он же опенсорс https://github.com/JetBrains/intellij-community там под лицензией только функции связанные фреймворками. Так что давай, активнее попой двигай. Тем более, что в твоих же интересах. Меньше проблем со средой, лучше работа. >Просто слетает У тебя с диском или фс нет проблем? >доверху ёбаная неотключаемая реклама Пик пробовал?
Вопрос: если я вызываю Obj o = xxx.createList().get(i), где createList это какой-то метод который создает новый список объектов, оказывается ли доступен этот лист для сборки мусора после исполнения этого стейтмента? на List не остается никаких ссылок, но остается ссылка на его i-й элемент (хранящаяся в o). Вообще там конечно под капотом обычный массив, который хранит ссылки, так что по идее и список, и все его элементы, кроме i-го, имеют ноль ссылок после отработки этого места, но я не уверен. Кто что знает?
>>3415742 >Какая мне разница что Ты сам начал пальцы гнуть, что рря, это не попенсорц. Это неправда. >Мне пользоваться нужно ультимейтом Почему нужно? Каких тебе конкретно функций не хватает в коммунити? Если ты не можешь даже на неё перейти, то о каком вскод вообще может идти речь?
Ну и типа я просто не понимаю, ты жалуешься, что бедний, страдаешь, но при этом не принимаешь никаких шагов к решению, а тупо терпишь. >пердолить пердольфиги, если можно просто поставить вс код Ну поставь, вернешься на следующий же день, еблан. Сука проститутка жабья, пиздит, что рррря рикламу пихают, ни атключить. Потом в морду тыкаешь ключик для отключения и начинается цирк, А МНЕ ЧИГО, НАСТРАИВАТЬ НАДО!? Да прекинь еблуш. Если ты хочешь что-то сделать под себя, тебе придется лезть в конфиги и в настройки. Ты вот думаешь в вскод тебе искаропки все будет? Еблан, просто еблан, боже. Нахуй я вообще тратил на тебя время. Пошел нахуй.
>>3415793 > Ты сам начал пальцы гнуть, что рря, это не попенсорц. Это неправда. Так не попенсорц же.
> Почему нужно? Каких тебе конкретно функций не хватает в коммунити? Если ты не можешь даже на неё перейти, то о каком вскод вообще может идти речь? Я не хочу пользоваться огрызком что даже LSP не поддерживает из которого в любой момент могут любую нужную фичу вытянуть и впилить в ультимейт чтоб гойский скот не радовался слишком. К тому же эти петухи доверх ещё и загрузки в принципе ограничили.
> а тупо терпишь. Что за перефорс, конфиговыпиливающая свинья?
> Да прекинь еблуш. Если ты хочешь что-то сделать под себя, тебе придется лезть в конфиги и в настройки. Есть разница, настраивать под себя и выпиливать рекламу. Реклама никому не нужна. Поэтому идут нахуй.
> Еблан, просто еблан, боже. Нахуй я вообще тратил на тебя время. Пошел нахуй. Слив, шлюха жидбрейнсов.
>>3415799 >даже LSP не поддерживает Даа блять, ведь для джавы так много lsp существует, которые лучше чем от идеи. У тебя пичет, что ты не можешь сделать даунгрейд? >могут любую нужную фичу вытянуть и впилить в ультимейт Пример такого будет? Или ты просто придумываешь сейчас, что могло бы быть потенциально? >К тому же эти петухи доверх ещё и загрузки в принципе ограничили. Вот эта >>3414392 ссылка доступна из рфии вот уже на протяжении кучи лет. Что у тебя там ограничили? >Реклама никому не нужна. Поэтому тебе впадлу сделать пару нажатий и ты продолжишь её лицезреть и дальше? Крутой. >Что за перефорс Ну я вижу проблему - решаю её. Ты видишь проблему и ноешь, ноешь ноешь, а потом как.. ноешь ноешь.... Причем грозишься перейти, уйти... Но это не делаешь. Иди блять на вскод, оцени его. Я лично пробовал на нем писать.. Пробовал даже nvim настраивать. Все это хуйня и просто бесплатная работа создателем и настройщиком ide за бесплатно. Это куда более изнурительная работа, чем зарепортить багу и пару галочек в конфиге исправить. > шлюха жидбрейнсов. Лучше быть шлюхой, чем проституткой. Я хотя бы этим наслаждаюсь.
>>3415817 Да, на ультимейт, последнюю версию. >там потом ключ какой-то нужен? Естественно, это же с оф сайта. Но технически можно триалку вечную сделать - типа стирать все данные раз в тридцать дней и все.
>>3415809 > Даа блять, ведь для джавы так много lsp существует, которые лучше чем от идеи. > У тебя пичет, что ты не можешь сделать даунгрейд? Нинужна!!! Нинужна!!!!!!! НИИИИИИИИИНУУУУУУУУУУУУУЖЖЖЖЖЖЖНАААААА!!!! Ясн.
> Пример такого будет? Или ты просто придумываешь сейчас, что могло бы быть потенциально? > могут Нет ничего удивительного в том что одебилевший от жидеи свин не смог в чтение слов.
> Вот эта >>3414392 ссылка доступна из рфии вот уже на протяжении кучи лет. Что у тебя там ограничили? И что? Почему я должен искать какие-то копроссылки?
> Поэтому тебе впадлу сделать пару нажатий и ты продолжишь её лицезреть и дальше? Крутой. И нахуй мне пердолить пердольфиги, если можно просто поставить вс код?
> Ну я вижу проблему - решаю её. Проблема — жидея. Ты только копротивляешься за проблему.
> Лучше быть шлюхой, чем проституткой. Я хотя бы этим наслаждаюсь. Нет тыыы нет тыыы нет тыыыы! Держу в курсе, это одно и то же. Хотя что взять с такого долбоёба как ты.
>>3415823 >Почему я должен искать какие-то копроссылки Не знаю даже. Наверное что-то случилось... Года три так назад. >Ясн. Ну объясни нахуя тебе лсп именно для жабы. >если можно просто поставить вс код Ну так ставь. Но чет ты не особо торопишься смотрю. > это одно и то же Пик. Ты получаешь деньги и терпишь, мне просто нравится то, чем я занимаюсь. >Ещё что-то пукнешь Скучал. да? >>3415827 Я этот скрипт запускал https://ru.stackoverflow.com/a/1235906 В линупсе работал, на счет винды хз.
>>3415834 > Не знаю даже. Наверное что-то случилось... Года три так назад. Что сказать-то хотел?
> Ну объясни нахуя тебе лсп именно для жабы. Нииннннуууууууужнаааа!!!!!!!! С первого раза не получилось, со второго точно поверит что нинужнааааа!!!! Ясн.
> Ну так ставь. Но чет ты не особо торопишься смотрю. Во-первых я уже поставил давно. Во-вторых я так понимаю ты опять пытаешься уйти от ответа по существу, причём тут вообще я?
> Пик. Ты получаешь деньги и терпишь, мне просто нравится то, чем я занимаюсь. Что за проекции, жидбрейнсовый проститут?
> Скучал. да? Давай, продолжай терпеть, чтобы потом громко затерпеть и уйти плакать ещё на пару недель.
>>3415851 >Во-первых я уже поставил давно. Покаж settings.json. >и уйти плакать ещё на пару недель Ну и фантазии, хехе. Воот, а говорят не злые, при этом до слёз доводят. Ужос.
>>3413329 >зепки в 2 раза выше, го-миддлы легко залетают на 400-500К Это не так. Меня в этом месяце увольняли из бигтеха (получил плохую оценку на перфревью), сейчас пришлось искать работу заново. С огромным трудом нашел помойную позицию мидла за 190 тысяч на руки на гоуленге. У меня 3 года опыта, если что. Я определенно не сеньор, но и не совсем уж зеленый джун.
400-500к зп это руководители направлений в бигтехах. Чтобы такую зп получать, ты должен руководить 10-30 людьми, а не просто код писать и фичи делать.
>>3416012 Ты просто не читаешь то что тебе неприятно. >На серверсайде итак уже передается 100500 ключей с указанием памяти, ГЦ, неба, аллаха. Десктоп тоже давно использует или враперы которые генерируют .exe или шел скрипты, там тоже проблем нет.
>>3416036 >Так тебе на этот высер было отвечено. Мудило, пук-среньк это не ответ. Ты пока не привел ни одного реального примера пробем с JNI, что и где должно отвалиться. Только доебываешься к словам: нет ты.
>>3416548 Овердохуя инфраструктурной ебалы написано на Яве. Эластик, кафка, дженкинс - это первое что приходит на ум. В некоторых конторах пишут свои плагины и патчи к этой хуйне.
>>3416863 Там всего-то тягались opengl'ные функции для рисования через lwgjl. Формально как-то игра вроде бы на java, но почти все делается нативным кодом, а java как посредник.
>>3416909 >все дергают С++ ядро. Кто все, что ты несешь? Асемблер не равно блять кресты. Хули вы или ты лично их везде приплетаешь? У тебя хуй на них стоит, течешь от их упоминания?
>>3416936 то самый основной язык на котором пишутся все лоулвл проекты сейчас все коммерческие движки и их высокопроизводительные ядра на нём, с вероятностью практически 100% любое высокопроизводительное ядро будет на плюсах, т.е. язык знакомый, высокопроизводительный и программистов много а ты чего, умным хотел показаться, про раст какой-нибудь вспомнить что ли или что?
>>3417259 Там суть проекта в том, что система (1 монолит, и куча микросервисов вокруг него) мониторит сотни разных устройств типа маршрутизаторов итд по snmp, собирает с них статистику, отображает в древовидной структуре собственно все данные с этих устройств, ловит аварии по snmp trapам итд
Короче что то типа заббикса, только на максималках
>>3417407 У меня дохуя проблем. Вот буквально сейчас я потратил ёбаный час из-за того, что я не мог использовать record в проекте. При том что в мавене стоит 21 java, в project structure -> project стоит 21 java. В settings -> java compiler стоит 21 java. Везде блять. В итоге я докопался до того, что какого-то ебучего хуя в project structure -> modules стоит 8. Какого хуя? Откуда блять? Почему 8? Я вообще не ебу.
>>3417415 И эта ебучая тварь всё равно не собирает мне проект. СУКА БЛЯТЬ. Уже не выдаёт ошибки, даёт создать record, но при компиляции всё равно срёт мне про 8 версию, КОТОРОЙ УЖЕ НЕТ НИГДЕ ДАВНО. Я уже всё сделал, я уже переиндексацию сделал - НИХУЯ НЕ ПОМОГАЕТ. Ебись оно в рот, хотел пару часов покодить, в итоге сижу в бешенстве.
>>3417457 >>3417415 Проблемы с компиляцией, серьезно? Ты вкатунишка что ли? Ты в run/debug configuration поменял? И вообще по идее, раз уж у тебя мавен, то настрой всю сборку через него.
>>3417465 Правильная версия в мавене стояла. Оказалось, что ещё в отдельных модулях в настройках компилятора тоже насрало 8 версией. Это просто пиздос, откуда она её высрала - не понимаю. Первый раз такое.
>>3417474 >Правильная версия в мавене стояла. Причем тут это.. Я говорю использовать модули мавена для компиляции. Пик. Идея в этом случае тебе никак не поднасрет.
Господа, коллеги, товарищи, добрый вечер. Возник небольшой вопрос: есть некий проект, который написан при помощи GWT и на него написан тестовый класс, который наследуется от GWTTestCase класса. GwtMockito и прочие штуки не используются. Каждый тест начинается со слова "test", так как иначе он не запускается, что логично. Если поставить над тестом аннотацию @Test, то он будет падать с какой-то ошибкой "java.lang.Exception: No runnable methods". Соответственно, все тесты без данной аннотации и руками вполне себе запускаются. Но, если запускать тесты через pipeline от github, то они либо не запустятся, либо будут падать с ошибками. Но если поставить над ними аннотацию @Test, то они вполне себе в пайпе запустятся и пройдут. Так вот вопрос - с чем связано такое поведение? Может есть какой-то более лучший способ написания тестов для GWT компонентов? Буду рад любому совету.
>>3417687 Сработает. Там просто для того чтобы получить триалку нужно иметь аккаунт, но проверка на использованность триалки до сих пор через локальные файлы которые можно удалить.
>>3417667 Таким образом запускаются GWT тесты, как говорит документация. Для поиска тестовых методов используется рефлексия и ищется подходящее название метода.
>>3417694 Странно, я пробовал когда-то, не сработало. Может рукожоп просто. Сейчас есть скрипты, которые сервер проверки подменяют в конфигах, чтобы они всегда ОК отдавали. Они работают, но пердолинга чуть больше.
>>3404287 (OP) Как быть, если у меня на ноуте онли 16 гб памяти? На старте системы уже улетает 1.5-2 гб, браузер еще 6-8гб. Открываешь идею и начинаешь код писать и вот-вот упрется в полку.. Как же тяжело быть нищим..
>>3420419 Если тут сидит школота, моё послание к вам, не смейте слушать этого шизофреника... Единственное что у него есть дельного это композиция, но конкретно к нему композиция относится крайне опосредовано, а всё остальное что он несёт вредно.
>>3420519 > Зачем делать то, что могут сделать за меня? Затем что за тебя могут хуйню сделать?
> Тем более, что я прошу свой опыт показать в большей степени (мол с высоты своего опыта, этот видос хуйня, а этот норм), а не смекалОчку. Сам-то хоть понял что высрал?
>>3420520 >Затем что за тебя могут хуйню сделать? Ну это их проблемы. Больше не буду просить, пусть за честь воспринимают епта. >Сам-то хоть понял что высрал? Думать своей головой не пробовал?
>>3420521 > Ну это их проблемы. Больше не буду просить, пусть за честь воспринимают епта. Это твоя проблема, потому что тебе с этой хуйнёй потом носится.
> Думать своей головой не пробовал? Всё, слился, омеган-проститут? А так копротивлялся за своего хозяина.
>>3420522 >потому что тебе с этой хуйнёй потом носится Нет. Вернуть или этому челу, или кому-то другому и пусть доделывают. В этом и суть, делегируй, а не делай сам. С мышлением "хочешь сделать хорошо, сделай это сам", далеко не уедешь, банально потому, что ты никогда не получишь экспертность по всем вопросам.
Слился в чем? Я просто список видосов попросил. Ты тут каким боком вообще? Не хочу отвечать и все. Терпи.
>>3420525 > Нет. Вернуть или этому челу, или кому-то другому и пусть доделывают. В этом и суть, делегируй, а не делай сам. С мышлением "хочешь сделать хорошо, сделай это сам", далеко не уедешь, банально потому, что ты никогда не получишь экспертность по всем вопросам. Чего блядь? Как ты вернёшь хуйню которой тебе в голову насрали обратно серуну? Ты совсем даун?
> Слился в чем? Я просто список видосов попросил. Ты тут каким боком вообще? Не хочу отвечать и все. Терпи. В том, что не смог защитить свой высер и ответил кривлянием.
>>3420419 Есть два типа идиотов: 1. Егор - мощный, убедительный, умеющий отстаивать свою шизофреническую точку зрения. Он на изичах убедит тебя так, что только через 2 дня ты сможешь придумать контр аргумент. 2. JNI шиз, жидко серит под себя аргументами - пук-среньки, не всегда есть доступ. На вопросы отвечает - я вам ничего не должен и объяснять не буду. Очень переживает, чтобы его пост был последним.
>>3420419 А зачем слушать егорку в 2к25? Челик околонулевой и его "опыт" просто смехотворен. Достаточно посмотреть его полуторачасовое нытье на митапе в НН, где он сокрушался как его попустили на алгосекции в Амазон. Он думал, что его все знают как охуенного программиста и автора книг и прямо сходу предложат позицию архитектора, а по итогу ему дали задачку с литкода про лифты и тот жидко дал в рейтузы не решив даже одну задачу. Уже спустя годы он каким-то образом убедил китайцев из Уауэй запилить собственный язык программирования, компилятор и даже плагин для IDE. Собственно все это время он типа исследовательской деятельностью занимается, лол
>>3420648 >он типа исследовательской деятельностью занимается Блять, это же ахуенно, чел не работает на дядю, не копается в древнем легаси, не учит 100500 фреймворков, а занимается тем, что ему интересно, причем ему еще за это и платят. Каждому бы так жить
>>3420663 Там в комментах ссылку на интересную игру скинули https://play.elevatorsaga.com/#challenge=18 Типа вроде +- понятно с одним лифтом, мол вот есть фаза подъема (индикатор еще надо поставить в лифте такой), когда мы поднимаемся до максимально возможного человека, нажавшего вниз. И попутно на этом пути берем людишек, что рвутся наверх. Причем, если попутчик нажал этаж выше того, что был максимумом, то идем туда. Как только достигли максимума, теперь фаза спуска и все наоборот: берем людишек, что идут вниз, и опускаемся до min(min(люди_нажавшие_вверх), min(люди_нажавшие_кнопки_в_лифте)). Опустимся на минимальный этаж и опять меняем фазу. Эксплицитно, если простой в одной фазе составляет больше N секунд, меняем её на противоположную. Это чтобы не возникло случаев, когда люди все рвутся наверх, а мы в фазе подъема. Тут не учтено макс кол-во людишек в лифте.
И как только лифтов становится больше одного, ситуация становится интереснее, поскольку нам надо синхронизировать фазы, чтобы два лифта вместе не рвались к однин этаж. Вот это я пока не знаю как сделать, интересно будет подумать..
>>3420635 Он в каком-то старом видосе говорил, что геттеры и сеттеры - это не ООП, потому что не сохраняет инкапсуляцию. Где он неправ в этом утверждении?
>>3420750 Он вроде не судит категориями "хорошо - плохо", а говорит, что это не ООП, а что-то другое, например, структурное погромирование, когда класс используется аналогично struct в С.
>>3420809 Чего? Ты вообще смотрел что он пишет-то? Да и это одно и то же по сути. Если как-то делать правильно, то не так делать неправильно. А неправильно это плохо.
>>3421195 >мям ну я это мям Терпи, дегенератище рвущееся с хуйни уже сколько, недели две? Ну слился и слился, что трястись-то так долго, все бывают неправы, даже я.
>>3421144 Просто читать/слушать заумные лекции и говорить "полиформизм" для многих выглядит круто. Вот и все. И лишь единицы понимают, что весь ооп это не более, чем попытка спрятать алгоритмы на миллион строк за методом/функцией.
>>3404287 (OP) Посоветуйте плез хорошие ресурсы по спрингу и спринг буту. Как разобраться в этих контекстах и прочих аннотациях, когда нужно что-то сложнее чем СобакаСпрингБутАппликэйшн? Начинаешь делать какие-то изменения и подстраивать под свои нужды и буквально днями можешь перезапускать приложение и ловить ебалом биннотфаундэксепшн и прочий треш. Столько подводных камней и "тонкостей" ака "говнокода и костылей", что тупо начинаешь уже заучивать эту хуйню как стихотворение по памяти..
>>3421144 >что с тим ООП носятся как с писаной торбой? Не знаю. У меня всё время этот же вопрос был, ещё с универа, когда ООП пытались научить, но обосрались, я не увидел абсолютно никаких преимуществ по сравнению со структурным подходом. А наследование - это вообще пиздец, от которого все лет 20 уже отказываются, хотя сначала почитали как великую вещь.
>>3420518 Смешно. Ожидал, что ты как порядочный спрингокультист предложишь какого нибудь Борисова там. А ты в демагогию слился. Критикуешь - предлагай, мань. Обычно думающие своей головой и шли как раз к Егорке то в поисках альтернативной точки зрения. Ссаный культ то ее им точно предложить не способен.
>>3420809 >Просто говорит, что это не ООП, а что-то другое.
Егорка - тот еще популист, именно поэтому несмотря на то, что практического смысла его спичи имеют мало, на его доклады (в те времена пока его не прибанили) всегда приходило дохуя людей.
Неправильное ООП он зовет процедурным, подразумевая что "нихуя этот ваш ООП не прогресс - вы все кодите литералли как коболисты". От этого у культа подгорает - культ сразу встает в штыки и оскорбляется. Потешное зрелище.
>>3422001 Безмозглый долбоеб то как раз ты, иначе не обтекал бы, а твердо и четко пояснил за свою позицию. Хотя хули еще можно ожидать от промытки, уходящей в отрицалово элементарного принципа ведения дискуссии. Все с тобой ясно.
>>3421292 >я не увидел абсолютно никаких преимуществ жопопэ преимущество ООП в менеджменте больших проектов, преимуществ с точки зрения программирования там если и есть то не принципиальные
другими словами ООП позволяет решить проблему 9ти беременных женщин команд разработки, которые вместе вынашивают ребенка за месяц. Составили список объектов, определили контракты взаимодействий - всё. Можно нанимать 100 команд и раздать части приложения для независимой разработки
Доминирование ООП связано с удобством управления командами и ни с чем больше. И нет никого ктобы доказал обратное.
В такую глупость могут верить только манагеры, которые к коду ни разу в жизни не прикасались. И ведь верят по факту, сука, особенно в ту часть суждения, где девять разработчиков фичу в девять раз быстрее родили блять.
>>3422533 Как-то не сходится. Егорка говорит, что часто делают сильно связанные друг с другом классы, поэтому нельзя их независимо друг от друга писать. И геттеры/сеттеры повсюду лепят, отчего непонятно, как данные класса будут использованы другими классами, и этот класс уже нельзя свободно модифицировать. Если бы люди действительно делали чорные коробки, которые по контрактам взаимодействовали друг с другом, то было бы хорошо. Но в реальности ведь так не делают? Или делают, а я просто не видел такого?
>>3422693 >Или делают, а я просто не видел такого?
Делают. В функциональной парадигме.
Так то Егоровы многоэтажные композиции имутабельных обьектов и есть - шажок в сторону от ООП к ФП. Проблема только в том, что 256й не сильно то парился чтобы довести свои обьекты до ума. Ему всю дорогу интереснее было сделать вброс, а дальше сами разьебывайтесь и ищите смыслы. А айтишный народ тупой пошел, смыслов сам не любит искать. Им готовое подавай.
>>3422693 >Как-то не сходится. Егорка говорит, что часто делают сильно связанные друг с другом классы, поэтому нельзя их независимо друг от друга писать. Егорка большой теоретик. Так-то охуенно рассуждать, что делайте слабую связанность и т.л. А на практике как ты отвяжешь бизнеслогику от сущностей?
>И геттеры/сеттеры повсюду лепят, отчего непонятно, как данные класса будут использованы другими классами, и этот класс уже нельзя свободно модифицировать. У него, на одной из конференций, был охуительный пример что класс Date не должен возвращать миллисекунды, а должен сам реализовывать логику format, сериализацию для БД и прочее что может понадобиться. Оно в теории выгляди охуенно, но как на практике в стандартной библиотеке реализовать такой класс? А если это класс в проекте, то если посмотреть на первую претензию, получается что мы его затачиваем на наше конкретное приложение - сохрани туда, отформатируй так и т.д.
В общем тут Егорка умело манипулирует, инкапсуляция это не то что мы никому не раскрываем внутреннюю реализацию. А то, что мы прячем её за контрактом. Нет проблем в getMillis() - главное соблюдать контакт, просто отдаешь миллисекунды с начала эпохи и все. Так же и с setMillis() - соблюдать контракт. А внутри храни что хочешь.
>>3422693 >чорные коробки, которые по контрактам взаимодействовали друг с другом скажу только одно слово - микросервисы
>>3422766 >сам реализовывать логику format, сериализацию для БД и прочее что будет нарушением принципа единственной ответственности и полным пиздецом для поддержки
>>3422766 >У него, на одной из конференций, был охуительный пример что класс Date не должен возвращать миллисекунды, а должен сам реализовывать логику format, сериализацию для БД и прочее что может понадобиться. И в джейсон, и в xml, и в бинарное представление, и ещё в сто форматов на всякий случай. Я давненько такой ахинеи не слышал.
> Оно в теории выгляди охуенно, Оно даже в теории выглядит как говно. Если ты любишь фп и иммутабельность, то надо делать анемик дизайн с pojo без какой-либо логики. Соответственно и сериализаторы должны быть отдельные, а значит объект должен предоставлять конвертацию в какой-то формат, который все знают как сереализовать, и обратную конвертацию. Ну тут получается немного логики, но без этого уже никак, если хочется инкапсуляцию сохранить.
>В общем тут Егорка умело манипулирует, инкапсуляция это не то что мы никому не раскрываем внутреннюю реализацию. А никто и не раскрывает внутреннюю реализацию. Никто не мешает дату вообще в виде строки хранить, высчитывая миллисекунды по вызову.
>А внутри храни что хочешь. Вот именно, ты же сам написал, что реализация может быть какая угодно, так что тут инкапсуляция не нарушается совсем.
>>3422766 >Нет проблем в getMillis() - главное соблюдать контакт, просто отдаешь миллисекунды с начала эпохи и все Егорка вроде так и говорит - если у тебя есть геттер, то он должен что-то делать со своими полями (то есть датой), а не просто отдавать её как есть. То есть ты хранишь дату в любом формате внутри класса, хоть строками. А миллисекунды отдаёшь через преобразования. И называешь этот метод не getMillis(), а просто millis().
>>3422900 >И называешь этот метод не getMillis(), а просто millis() это совсем дрочь на странное
гет\сет просто соглашение, в джава поскольку есть разные уровни доступа в геттерах и сеттерах делают логику, в джаваскрипте насколько помню распространена практика, когда в сеттере ты чекаешь валидность значения которое пытаешься присвоить полю а в геттере может быть преобразование в нужную размерность или вообще рассчет производного параметра на основе нескольких внутренних полей обьекта
в джаве нагружать геттеры и сеттеры логикой считается плохой практикой, что правильно имхо не надо мешать всё в кучу - нужна логика - сделай объект который прокрутит вычисления а не суй сотни кода внутрь поджо
>>3422776 >что будет нарушением принципа единственной ответственности и полным пиздецом для поддержки Как раз по его мнению это как раз ответственность объекта отвечать за сериализацию или запись в базу. https://www.youtube.com/watch?v=ckjAWXJWZEY
>>3422823 >Вот именно, ты же сам написал, что реализация может быть какая угодно, так что тут инкапсуляция не нарушается совсем. Если ты не заметил, я писал про позицию Егорка, это не значит что я её поддерживаю.
>>3422900 >Егорка вроде так и говорит - если у тебя есть геттер, то он должен что-то делать со своими полями (то есть датой), а не просто отдавать её как есть. А какое его собачье дело, отдаю я это как есть или что-то высчитываю? Смысл в том, что мы можем менять реализацию, без изменения контракта, а не в том что мы стараемся спрятать реализацию. Вот сейчас у нас Date возвращает millis который он сам хранит. Завтра решим что нужен отдельный Calendar доя работы с датой - удалим long и будем вызывать calendar.getEpochMillis().
Я такой тупой. 3 месяца учу программирование делаю задания. А кажется что все знания что я приобрёл за это время они уместились бы в неделю обучения, а может и в меньший срок. И главное хрен поймёшь до какой глубины изучать что-то. И постепенно всё забывается, особенно не очевидные мелочи, не смотря на то что вроде делаю практические упражнения. Ппц😥
Глупость сказал, хули. С таких разговоров и начинаются карго-культы.
Деля софт на модули-компоненты, ты можешь как порешать проблему каплинга, так и наоборот усугубить ее (если делишь кохезив-компонент). Но оттого что границу между модулями ты проводишь жирным карандашом, оттого что у тебя микропенисы вместо модулей, декомпозиция более правильной не станет. Миллионы пососных микропенисных фейлов, а также полумерные огрызки, т.н. распределенные монолиты, соврать не дадут.
>>3423089 >А какое его собачье дело, отдаю я это как есть или что-то высчитываю
Забавно. Рвонькнул так, будто это для тебя - личное.
>Смысл в том, что мы можем менять реализацию, без изменения контракта, а не в том что мы стараемся спрятать реализацию.
Блять, вот где где, а на геттерах заниматься такой залупой - конченое дело блять. Никогда ничем хорошим это не оканчивается. Лучше уж пусть будет честная структура данных, кортеж, а не структура-пиздабол, которая выглядит и пахнет как структура, а под капотом сайд-эффекты творит как сука...
Обьявил честный контракт с честным методом (необязательно при этот метод геттером называть), и делай в его имплементации че задекларировал. А структуры пусть структурами и остаются.
>>3422766 >У него, на одной из конференций, был охуительный пример что класс Date не должен возвращать миллисекунды, а должен сам реализовывать логику format, сериализацию для БД и прочее что может понадобиться. Оно в теории выгляди охуенно, но как на практике в стандартной библиотеке реализовать такой класс? А если это класс в проекте, то если посмотреть на первую претензию, получается что мы его затачиваем на наше конкретное приложение - сохрани туда, отформатируй так и т.д.
Ошибка Бугаенки ИМХО в том, что рассказывая о таких фортелях на конфе он все очень сильно обобщает. Пишем, дети, класс Date так, и никак иначе. А на деле тут как с bounded contextми в DDD. Правильный выбор дизайна будет очень сильно зависеть от того от того, что ты хочешь от дат в приложении. Там где ты хочешь, не знаю, замерять время, будет не Date, а Nanosecs с методом int diff(Nanosec a, Nanosec b). Там где ты хочешь время рендерить, будет не Date, а какой нибудь сабтайп от строки с названием CurrentTime.
>>3422533 Чего блядь ты такое несёшь, сука? Если бы решение этой "проблемы" было, это было бы преимуществом как раз в области программирования, причём огромным. Только сука это не проблема вообще, а иллюстрация того что выполнение некоторых задач ускорить увеличением количества разработчиков невозможно. И бугаенковская шиза к этому вообще блядь никак не относится. Ты таблетки с утра принять забыл, мамкин умник?
>>3423326 >Это не так сложно как кажется. И ты даже можешь показать пример приложения где так сделали? Или так и будешь рассказывать сказки как в ФП все круто?
>>3423317 >Забавно. Рвонькнул так, будто это для тебя - личное. Психолух мамкин, иди коклетки покушой.
>Блять, вот где где, а на геттерах заниматься такой залупой - конченое дело блять. Никогда ничем хорошим это не оканчивается. Лучше уж пусть будет честная структура данных, кортеж, а не структура-пиздабол, которая выглядит и пахнет как структура, а под капотом сайд-эффекты творит как сука... Ты реально как Бугаенко не видишь дальше своих стереотипов. Что такого особенного в метода которые называются get/set? А если их назвать millis() и millis(long) это все поменяет? В стандартной библиотеке полно таких. ByteBuffer.getFloat() не читает какое-то поле, а читает float из буфера и передвигает указатель
Да уж, читаешь этот срач и понимаешь что программистское комьюнити самое уебищное среди всех сфер, один пытается залезть на голову другому и утвердиться
А ты тупо горишь как дебил с нихуя - услышал "геттер", а в сути наброса не разобрался. Бугаенко всю дорогу хуесосил именно геттеры как часть подхода JavaBeans - залупу которая не делает нихуя кроме как доступ к аттрибутам этого Java бина наружу вываливает. Все блять! При чем тут ByteBuffer.getFloat()? Нахуя ты его сюда приплел?
Сука, вот каким бы ни был Бугаеныч в-попу-листом, его хейтеры просто поголовно все мудаки и долбоебы блять, подмечено неоднократно.
>>3423713 Не преувеличивай. Это здесь каждый анон мнит себя Львым Толстым, ибо знает что ничего ему за это не будет. В реале обычно четверо из пяти сидят ниже травы под гнетом синдрома самозванца.
>>3423762 >Сука, вот каким бы ни был Бугаеныч в-попу-листом, его хейтеры просто поголовно все мудаки и долбоебы блять, подмечено неоднократно. Это ты сейчас рвонькнул? А из-за чего?
>>3423762 >А ты тупо горишь как дебил с нихуя - услышал "геттер", а в сути наброса не разобрался. Мудачок, я сечас с бугаенкой не пытаюсь спорить. Я в твоих высерыах пытаюсь разобраться
>>Смысл в том, что мы можем менять реализацию, без изменения контракта, а не в том что мы стараемся спрятать реализацию. >Блять, вот где где, а на геттерах заниматься такой залупой - конченое дело блять. Никогда ничем хорошим это не оканчивается. Лучше уж пусть будет честная структура данных, кортеж, а не структура-пиздабол, которая выглядит и пахнет как структура, а под капотом сайд-эффекты творит как сука... Это же твой высер? Это же ты топишь за рассовую чистоту геттеров?
так гайз на неделе иду собеситься в гейдев контору на бекенд жабоеба. нюанс в том что до этого у меня два года чистейшего брейнрота на ноде. хочу стек сменить в общем. в жабе не полный ноль, смогу объяснить разницу между @Bean & @Component. короче покидайте собесов реальных на синьора жависта, надо опыта быстренько-быстренько нахвататься. с меня много юшек.
>>3424109 @Bean для методов и фабрик, а @Component для классов.. Тут интереснее разница например между @Component @Controller и @Repository. Имеет ли смысл ставить именно их, а не чисто @компонент, влияет ли это хоть на что-то, кроме названия...
По поводу остального, мне кажется, если будет желание, тебя легко вычислят по какому-нибудь банальному вопросу, типа, что такое тредпул. Если такого желания не будет, то ну повезло
>>3424208 Да, в том числе и это. Надо каждый раз проверять, меняет ли что-то метод под капотом. А это потенциальный источник ошибок. Но даже итт пишут "вас это ебать не должно". Хотя на самом деле должно.
>>3424004 Стейт он конечно же не меняет. Просто для того, чтобы преобразовать миллисекунды в числом, месяц, год и т.д. используется Calendar и его сделали 1 на инстанс SimpleDateFormat, хотя StringBuffer нахер им вообще синхронизированный StringBuffer если все равно эта байда не потокобезопасна? они при этом не переиспользуют, а создают новый. Но никакого стейта Calendar не содержит, это просто вспомогательная переменная, как и StringBuffer.
Тут или Тагир не понимает о чем он говорит или тот кто с ним разговаривал переврал его слова.
>>3425850 Ты ответь на другой вопрос. А зачем тебе вообще нужны типы в рантайме? В чем ключевое отличие статически типизированных яызков, от динамически? Первые проверяют типы во время компайл тайма. И теперь важный шаг вперед, можем ли мы доверять своему компилятору настолько, что полностью уберем все проверки во время рантайма? По сути идея в чем: зачем нам делать то, что уже сделал компилятор? В жабе и прочих языках мы оставляем типы во время рантайма для instanceof и прочей рефлексивной грязи. Но, если наша система типов и синтаксис достаточно мощны, то мы можем просто убрать все это из языка. >This “not caring” is what the “parametric” in parametric polymorphism means. All Haskell functions must be parametric in their type parameters; the functions must not care or make decisions based on the choices for these parameters. A function can't do one thing when a is Int and a different thing when a is Bool. Haskell simply provides no facility for writing such an operation. This property of a langauge is called parametricity. >There are many deep and profound consequences of parametricity. One consequence is something called type erasure. Because a running Haskell program can never make decisions based on type information, all the type information can be dropped during compilation. Despite how important types are when writing Haskell code, they are completely irrelevant when running Haskell code. This property gives Haskell a huge speed boost when compared to other languages, such as Python, that need to keep types around at runtime. (Type erasure is not the only thing that makes Haskell faster, but Haskell is sometimes clocked at 20x faster than Python.)
Кокнретно в жвм мире, стирание типов позволило существовать скале и другим жвм базед языкам, с гораздо более мощной системой типов. Шарп, например, себе такого не может позволить.
>>3425873 >нинууууужня ррррррряяяя Я так понимаю ты ни разу реальные проекты не трогал что ретранслируешь школомантры про грязность instanceof. Долбоёбище, твой instanceof даже сама джава эксплиситли легализовала в виде паттерн матчинга.
>>3425936 Если человек использует слово ЭКСПЛИСИТЛИ в речи, вместо слова ЯВНО, которое является точным переводом и состоит всего из 4 букв, то у него в голове такое говно, что нормальным людям с ним о чем-либо спорить не престало.
>>3425940 Ну так бы сразу и сказал когда я спросил что сказать хотел. Немного разные же значения у "явно" и "explicitly"? Первое ближе к "очевидно", второе к "прямо выражено".
>>3425908 >джава эксплиситли легализовала в виде паттерн матчинга Ну то, что джаве для реализации паттерн матчинга требуется рефлексия как бы ну.. Проблемы джавы. И что самое потешное, имея многократно больше информации в рантайме, он все еще хуже того, что есть в условном хаскеле. Какое-то тольковыйграле максимального уровня: хуже по перфомансу и без плюшек.
>>3425908 Че порвался то? Тебе анон все предусловия расписал: "если наша система типов и синтаксис достаточно мощны". Если для тебя система типов джавы - образец хорошей системы типов, то ты тупо неуч.
>>3425873 Ты тоже хорош. Ты когда о стирании гришь - уточняй чтоли, откуда оно все стирается, а то всех культистов треда щас на уши подымешь. "Из языка", спизданул тоже... Те же дженерики в байткоде есть в тех же обьемах, что и в сорцах. Если бы компилятор тер их еще и из байткода, хуй бы ты хоть с одной либой комфортно работать смог, каждая либа давала бы тебе девелопмент экспириенс уровня Java 5 нахуй, где мемберы всех коллекций - Java.lang.Object.
Про хаскель, либы которого в hackage вообще сорцами лежат, вообще молчу.
>>3426075 >данные о том, что за набор данных тебе пришёл >Это и есть информация о типах Нет, это не информация о типах. Вот скажем на пике паттен матчинг хаскельный. Он его осуществляет оставляя тег конструктора данных в рантайме. Но это констркутор как видно вообще не отражается в системе типов. Это чем-то похоже на расширенный enum. >>3426079 Ну да, в рантайме о дженериках нам доступно ровно столько же инфы, сколько знает компилятор.
Это в джаве это по другому не реализовать, потому что система типов такая, что компилятор всех гарантий на этапе компиляции тебе не даст и всех бранчей за тебя не проверит, из-за чего тебе приходится читать инфу о типах в рантайме, чтобы этих гарантий самому добрать. А компилятор таких гарантий не даст, потому что со старта в джаву вместо ADT завезли дырявое ссылочное nullable-решето с кастами и инстансофами, а косплей на ADT добавили много позднее и сбоку припеком. Но если старичкам их ошибки молодости еще простительны - в конце концов во времена первых джав все так кодили - над двачерами-максималистами в 2025м можно и покекать, кекеке.
>>3426201 Твои аргументы - тупо уровень дискуссии "я скозал, ряяяяяя". Тебе в контрпример уже хаскель неоднократно привели, система типов которого позволяет тебе без всякого инстансофа и прочей рефлексии в рантайме деконструировать типы и ризонить по ним. Но так как хаскель скорее всего ты знаешь нихуя да маленько, конструктивного из себя ты врядли чето выдавишь: уйдешь щас в отрицалово, или начнешь натягивать сову на глобус.
>>3426201 >Просто поднята информация о типах на уровень выше.
Да, поднята. На уровень компилятора поднята. Умоляю - скажи что ты не настолько долбоеб чтобы подводить этим утверждением к тезису, что это - та же рефлексия, что и в джавке?
>>3426201 >о типах на уровень выше Мне кажется ты просто не понимаешь на принципиальном уровне, что такое типы и что такое значения. Или на языке жабы, чем тип отличается от класса и его экземпляра.
Примерной аналогией того, что там на хаскеле я написал было бы это, если бы enum в жабе, позволял создавать собственные значения. Впрочем это уже был бы не enum, но по крайней мере в этом примере, никакая информация о типах не нужна.
>>3426215 >Или на языке жабы, чем тип отличается от класса и его экземпляра.
Справедливости ради, ирония в том, что в джаве типы буквально приколочены к классам и интерфейсам. Хошь новый тип - изволь создать класс или интерфейс. Хошь подтип - изволь отнаследоваться или сымплементировать интерфейс.
Так что если они и отличаются в джавке, то мало чем, кек.
>>3426228 Насколько я понимаю, List<Integer> и List<String> это два разных типа. Также к этому еще можно добавить wildcard.. И таким образом, 1:1 типы на классы не ложатся, после жавы 5. В любом случае разница между типом и экземпляром класса должна пониматься хоть как-то.
>>3426233 >Насколько я понимаю, List<Integer> и List<String> это два разных типа
Есть такое. Но это лишь одно исключение.
>В любом случае разница между типом и экземпляром класса должна пониматься хоть как-то.
Забей. Чего ты хошь от поехавшего культиста, ничего в своей жизни кроме спринговых анноташек не видевшего? Он вон уже вовсю в отрицалово уходит, как я и предсказывал.
Использовали для разных версий java? Есть какие сайд эффекты или всё норм? Я всё время жил с батниками которые меняли JAVA_HOME и т.д. но тут решил на убунту по нормальному. Смотрел update-alternatives update-java-alternatives тоже хз.
Второй вопрос я потом собираюсь всё это c jenkins поженить и собирать на разных версиях, но мне кажется нужно сразу копать в сторону докура и собирать уже сразу на образах. Верно понимаю всё это?
>>3426616 В мавене при сборке можно указать путь до jdk, который хочешь использовать при сборке. Также и в идее все это можно настроить. Менять значения PATH для этого не нужно. Просто поставь себе нужную версию жабы, потом whereis java8 и этот путь указывать в при сборке. >всё это c jenkins поженить и собирать на разных версиях В нем вроде тоже можно указать javaPath >нужно сразу копать в сторону докура Если ты имеешь ввиду контейнеризацию, то мавен в ней крайне медленно работает.
>>3426616 Регулярно использую, полет нормальный. Из подводных - под виндой разве что пользоваться ей крайне геморно, но мне винда не особо нужна.
>Второй вопрос я потом собираюсь всё это c jenkins поженить и собирать на разных версиях, но мне кажется нужно сразу копать в сторону докура и собирать уже сразу на образах. Верно понимаю всё это?
Скорее да, чем нет. На CI с SdkMan'ом я бы не потащился, с докером чище и надежнее.
>>3426695 У нас был root pom на всю компанию. Когда нашли Log4Shell одно изменение в root pom + запуск билда для всех сервисов и всё, уязвимость пофикшена. Нашего дежурного даже не будили.
>>3427025 Долбоёб опять демонстрирует критически низкий уровень своего интеллекта. Претензия здесь к форме, что говорит о том что просто была взят мем про шарподаунов и развёрнут без минимальных модификаций. Потому и "наглый".
>>3427026 Так ты на вопрос ответь, в джаве есть гетсеты или нет? Или вы их как-то по другому теперь называете, ты скажи, поправлю. Может несправедливо наговариваю и вы давно перестали писать убогое процедурное говно
>>3427037 Угу угу. Напомню, ты сказал, что гетсетов в джаве нет. Но потом ты смотришь на POJO и видишь, то чего нет.. Отрицать свое главное достижение, которое как грязь везде распространилось.. Странно это же ВАША инновация, ВАШ новодел, аналоговнет так сказать. Что ж ты так стесняешься-то и отрицаешь? ГОРДИСЬ и говори шарподаунам, что воот, какую крутотень-то у вас сперли. Каждому в ебло сеттером а потом геттером в добивочку
>>3427602 Да это вообще смерть нахуй. А если ещё дтошки эти генерятся через опенапи, то вообще вешайся. Простая таска неиронично целый день занимает. >>3427682 Я вот в новую команду пришёл, и тут свидетели швитых стримов. Вместо простого и лаконичного фора, они будут городить по 2-3 вложенных стрима с флатмап и редюсами всякими, что эта копропростыня смотрится модно-молодёжно, но нихуя не читается. Про перформанс я вообще молчу.
>>3427680 Довольно часто. Обычно это или итерации с сайд-эффектами, где порядок важен, а effective-final замыкания только мешают, либо работа с какими то сложными структурами данных, где через стримы пришлось бы протаскивать какие нибудь ублюдские куски кортежей.
>>3427683 Ну опенапи генераторы на самом деле делают немного менее болезненной эту проблему. Все таки сгенерированные дтошки апдейтить за тебя будет генератор, а не ты руками.
>>3427683 Да и пускай делают. Всех долбоёбов в мире не выучишь.
Стримы это (фактически) уровень абстракции над форами. Уровни абстракции городить можно бесконечно, поэтому использовать их стоит только тогда когда они непосредственно нужны, т.е. например что-то объединяется с их помощью или как-то по другому сокращается количество кода. В контексте стримов первичный пример когда они нужны это parallelStream(). Превентивно городить абстракцию совершенно бессмысленно, забивание гвоздей микроскопом. Так им и скажи.
>>3427688 Это проще, пока ты тихо сам с собою живешь себе на бэкенде. А вот если твою проблему экстраполировать на всю архитектуру распределенной такой системы, то прибавь сюда еще то что надо будет дтошки на клиенте редачить.
>>3427687 Да мне в целом похуй, я выёбываться не хочу, всё таки только пришёл, поэтому буду придерживаться код-стайла. Там ребята скилловые, но они хотят чтобы код выглядел типа более современно, и на перформанс похуй пока от заказчика не будет жалоб. А я так пришёл побугуртить на сосаче. Такие дела.
>>3427684 >где порядок важен Все таки поражаюсь убогости стримов. Казалось бы такая простая хуйня как порядок (Фактически ну смерджь ты один бесконечный стрим (1,2..) с твоим и все, готово нахуй), но в джаве это приобретает какую-то маразматическую природу, когда приходится городить атомики и прочее говнище. >пришлось бы протаскивать какие нибудь ублюдские куски кортежей. Или вот эта хуйня, когда ты не можешь размерджить стримы, поскольку они неделимы в своей природе и приходится ебать мозгу.
>>3404287 (OP) Посоветуйте хорошую книгу по спрингу. Начинаешь отходить чуть в сторону и пытаться сделать что-то за границей крудовых гайдов с офф сайта и все рушится. Куча незакрытых ишьюсов на гитхабе, куча мертвых саб проектов уровня спринг-сессион и т.д. Ну и тормоза, конечно же. Ждать несколько минут пока спринг пропердится и через рефлекшен соберет весь граф объектов..
>>3427724 >Казалось бы такая простая хуйня как порядок (Фактически ну смерджь ты один бесконечный стрим (1,2..) с твоим и все, готово
Ты такой деловой. Смерджить два бесконечных стрима... А итерироваться по ним в каком порядке? Сначала первый потом второй? А когда очередь до второго дойдет если первый - бесконечный? А если стрим слеплен на базе сета - о каком порядке речь?
Просто стрим - не то же самое что цикл, это я хотел сказать. Хотя бы потому, что цикл по коллекциям бежит итератором, а стрим поток сплитерирует. Пынимать надо.
>Или вот эта хуйня, когда ты не можешь размерджить стримы...
Так то я про другое говорил. Мап-редьюс - веселая парадигма обработки потоков, но иногда возникают ситуации, когда надо одновременно с результатом мапа протащить то, что тебе на вход перепало, потому что оно потребуется дальше по стриму. Проблема пустяковая для фора, где у тебя на руках весь скоуп локальных переменных, или для каких нибудь монад хаскелевых с do-нотацией, где ты можешь через биндинги протащить небо с аллахом, но в стримах это вырождается в Stream<Tuple2<Tuple3<Xui,Zalupa, Govno>, Integer> и вот таких стримов я рот ебал. Как то один такой стрим мне интеллисенс в идее уронил нахуй, настолько адская хуйня.
>>3427745 >А итерироваться по ним в каком порядке? Сначала первый потом второй? А когда очередь до второго дойдет если первый - бесконечный? А если стрим слеплен на базе сета - о каком порядке речь? Т.е. ты не знаешь, что такое zip? Оукэй, скуфидла.. Причем здесь сеты и порядок, скуфидон? Ты не понимаешь что такое стрим?
>>3427745 Ну я действительно имел ввиду zip, все тобою перечисленные проблемы не являются проблемой. >а стрим поток сплитерирует Вроде любой стрим позволяет тебе превратить себя в итератор. До тех пор пока они не паралельны, похуй+похуй. > на базе сета - о каком порядке речь Чисто в теории, ты же можешь любой сет сделать List, потом этот из этого листа сделать стрим иии.. Он же будет упорядочен, не так ли? Тут суть с моей точки зрения та же, мы насильно упорядочиваем элементы, просто по тому, как нам их передают в next.
В общем-то zip проблем не возникает, например в рамках газонюхов изи заимплементить. А вот unzip это вообще нереализуемо в рамках апи стримов, там прям ну дохуя проблем с control flow, вылезает короче мех. >один такой стрим мне интеллисенс в идее уронил нахуй Дефолт кстати, идея не то чтобы умная в таких краевых случаях, благо хотя бы не зависает в вечной рекурсии или чем-то подобном. >Проблема пустяковая для Ну в этом и проблема, идея и намерение благое, но реализация.. Может скуфц это в будущем исправит...
>>3427802 >Дефолт кстати, идея не то чтобы умная в таких краевых случаях, благо хотя бы не зависает в вечной рекурсии или чем-то подобном.
Всяко бывает. Иногда случалось, что начинала индекс строить вечно. Вообще, по моим наблюдениям, самый верный способ поруинить любую идешку (причем пофиг какую) - начать упарываться по особо люто вложенным дженерикам.
Хотя с того проекта я свялил в 2021м, может щас стало получше.
Как вы используете брокеры сообщений? Ррэббиты и кафки? Я работал только с копролитом на 7 яве и не могу понять куда это всё можно прикрутить. Какеи сценарии у вас?
>>3404287 (OP) Посоветуйте хорошую книгу по спрингу, плиз. Дока говно. Начинаешь чуть глубже копать и остается только обосранные исходники ковырять в надежде понять как этот понос работает. Bootstrapwith, Springbootconfiguration. TestConfiguration, Configuration, AutoConfiguration и еще несколько десятков аннотаций и каких-то листенеров интерфейсов. Пытаешься собрать что-то рабочее, так это говно минуту что-то тупит .а потом падает в рантайме с эксепшеном который хуй проссышь. Пиздец, чуть сложнее круда и все - приплыли.. Смотрел борисова но очень быстро рвота к горлу подступила и я выключил этого тарапуньку тараторящего, фу блядь.. Ну и все доклады старые и там уже две трети задепрекетили или выпилили..
>>3428347 >быстро рвота к горлу подступила и я выключил этого тарапуньку тараторящего, фу блядь
Базовичок. Меня тоже его манера подачи частенько бесит.
>Начинаешь чуть глубже копать и остается только обосранные исходники ковырять в надежде понять как этот понос работает
Дружище - посмотри на это с другой стороны. Когда официальная дока невывозит, когда материалы старше года депрекейтятся, когда на евангелистах - клоуны: где вообще искать правду, как не в коде? Код - первоисточник, братан, код не наебет...
Работаю сейчас на удаленке, удаленка только по РФ, но давно хочу удаленку по всему миру, чтобы можно было уезжать на зиму в какой-нибудь тай. Есть ли в РФ компании с удаленкой по всему миру? В hh к сожалению фильтра на удаленку по всему миру нет.
>>3430606 Как раз сегодня в @jvmjobs была вакансия >Компания: Gehtsoft USA >Вакансия: Senior Software Engineer (Java) >Вилка зп: $ 4000 – 6000 gross >Формат работы: full time, total remote не из РФ
HH смотреть нет смысла, там слишком дорого постить вакансии, плюс компании надо еще суметь оплатить вакансию что для компании из США может быть не тривиально.
>>3430781 Линкедин умер. Там одни нейросети отзываются на каждую вакансию, другие нейросети занимаются отбором. Одни и те же вакансии репостятся месяцами и каждая набирает over 100 applicants. При этом ноль предложений от рекрутеров в личке.
Если надо чтобы микросервисы в докере запускались в определенной последовательности, т.е. например сначала эврика и конфиг, потом все остальное. как этого добиваются? просто depends on в докер-композ и таймауты? или как?
>>3431509 Очень раздробленная компания, и как следствие, очень легко попасть в хуёвую команду, в которой или нихуя делать не будешь, или наоборот, будешь ебашить за троих, потому что пм долбоёб.
>>3431558 >а что плохого в том чтобы нихуя не делать? Во-первых, надо попасть в такую команду. Во-вторых, если хочешь после сбера куда-то ещё пойти, то можешь скил растерять, нихуя не делая. Это ещё при том, что на людей из сбера и так косо смотрят часто.
Кто вкатывался после нового года на раб отку, поделитесь своими историями. Как щас рынок себя чувствует? Слышу слишком дохуя негатива, мол вкат ебанически сложен, хрюши не пишут, конверсии ноль с 4+ годами опыта. А собесы абсурдные какие-то, собеседующие противные, спрашивают полный бред лишь бы рассекретить волчар
>>3431840 смотри вот тут >>3431721 пишут, что всё плохо, и остается только сбер. чел слышит слишком дохуя негатива, и вкат ебанически сложен, хрюши не пишут, конверсии ноль, спрашивают полный бред. хотя почему вкат с 4+ опыта
Ты выбираешь неправильный инструмент, если тебе нужно чтобы сервисы запускались последовательно, да ещё и с таймаутом.
Если не хочешь ставить ни каких инструментов, запускай их через bash скрипт, который выполняется после загрузки операционной системы, либо из командной строки вручную.
>>3431810 Накрутчиков опыта опасаются будто бы конторы. Если 2 или 1 год назад можно было залететь чисто на базовых знаниях технических вопросов из методичек, то щас конкретно ебут по прошлому опыту работы, чтобы подковырнуть и выяснить накручивал ты или нет
>>3432340 Дебилы, блять. Нейросеть существует и это объективный факт. Пока луддиты страдают хуйней, адекватные просто меняют критерии отбора. В итоге первые со своими ебанутыми собесами тупо наберут самых матерых волчар и студентов, доказано яндексом.
>>3432340 >Если 2 или 1 год назад можно было залететь чисто на базовых знаниях технических вопросов из методичек Бля, я точно такую же фразу здесь же вижу каждый год. Всегда "а вот джва года назад было още легко вкатиться, сейчас невозможно", потом то же самое через два года пишут, хотя до этого писали, что невозможно.
>>3432358 Сам дебил. Нейронка - прорыв уровня первых поисковиков в сети. Навык гугления был всю дорогу важен, но додики, которые кроме гуглежки нихуя в своей жизни не умели, котировались на уровне эникейщиков, пока окончательно не вымерли. Промптеры без базовых знаний и сскиллов по сути своей - те же эникейщики.
Я сегодня при помощи cursor ai нашёл и пофиксил баг за ~3 часа. Всё, дальше можно пинать сидеть. Это незнакомая код база, поэтому в ручном режиме я бы теребил дебаггер дня два.
Вы понимаете, что мы живём в уникальное время, когда ещё можно морозиться перед кабаном, и говорить что не юзаешь АИ? Примерно через пару лет будут требовать ебейший перформанс и знание нейронок от девов.
>>3433040 >Я сегодня при помощи cursor ai нашёл и пофиксил баг за ~3 часа.
Я без помощи AI своей головой так делаю. Да, на незнакомом коде. И че?
>Примерно через пару лет будут требовать ебейший перформанс и знание нейронок от девов.
Не дадут нейронки ебейший перформанс сверх того, что уже дают гугл и стековерфлоу. Разрабы просто станут еще более тупее и более анальнистей, в сумме перформанс останется таким же.
>>3433040 >пофиксил баг А с чего ты это взял? Кто тебе дает гарантию, что ты во первых его пофиксил во всех краевых случаях, а во вторых не создал своим решением еще больше багов? Будешь потом оправдываться, ну пук среньк нейронка скоазала?
>>3404287 (OP) Как же меня тошнит от спринга, пиздец просто... Все эти километровые стектрейсы, тормоза по полторы минуты перед тем как свалиться в ошибку, дерьмовая документация, тараторящий Борисов.. Чуть отступаешь в сторону или пытаешься юзать что-то кроме бута и корки - получаешь 100500 багов и полузаброшенные проекты, которые типа "используются в продакшене у уважаемых людей", а по факту поддерживаются двумя землекопами из Латвии и Польши.. Просто омерзительное говно. Все эти 100500 аннотаций, которые нужно выдрачивать годами, чтобы в нужный момент в определенном порядке их выставить и тогда случится МАГИЯ! Уебки, блядь..
>>3433333 Максимум понимания. Попробуй для сравнения Laravel, это противополжность спринга - фрейм задумывался с самого начала чтобы максимально быстро выпустить проект в прод и чтобы разрабу было приятно писать (в джаве всем похуй на страдания гребца исторически). Все равно на джаве работу найти можно только если ты студент, а пых прокормит всегда.
>>3433360 >Все равно на джаве работу найти можно только если ты студент Это че за новая риторика пошла? Вроде все писали, что рррря рынок перегрет, все вкатится анриал, а тут вот оно как. Оказывается студенту найти работу можно. Что же такое произошло?
>>3433333 Двачую, анонче. Спринг - это ебаный рак. Ты буквально чувствуешь, что деградируешь как специалист. Вместо собственно программирования хуяришь аннотации на каждый метод как ебаный имбецил. Говно, блядь. А самое хуевое, что коллеги только радостно улюлюкают, лепят ебучий говнокод на похуях.
Устроился на проект и мне дали легаси сервисы, которые внимание даже не на спринге, документации нет, код запутанный, ничего непонятно, я опечален. На прошлом проекте была джава 17 и спринг бут 3, а я погнался за перспективами и поверил сказке на собесе, что теперь делать хз. Рынок полуживой, да и трудувовую 1 месяцем работы портить как-то не хочется, но и год я тут проработать не думаю что смогу, это ппц чтож так невезет, даже уснуть не могу теперь
>>3428348 Простыми словами тебе нужно чтобы сообщение где-то хранилось на время передачи, чтобы его можно было перепослать при ошибке или обработать не одним получателем а несколькими или каким придётся или чтобы отдельять разные технологии/языки друг от друга. Если ничего этого не нужно - можно просто обычными ХТТП запросами обойтись, но обычно пытаются впихнуть очереди везде, потому что так завещали пророки.
>>3433643 Хореография нахуй не нужна, это игрушка диавола в руках паджитов. С ней охуеешь чинить инциденты. Без хореографии очередь нужна или собирать инфу со 100500 датчиков в одну ручку, или как входной буфер, чтобы пережить скачки нагрузки без пятисотых.
>>3432375 Нет. Это просто эффект 2020. Он говорил про какой-нибудь 2018-2019 год, подсознательно думая что сейчас какой-нибудь 2020. Ну или 2020-2021 думая что 2023.
>>3433899 >>3433903 А блядь, затупил, не сразу понял что имелось в виду. Есть же документации, стаковерфлоу просто пережёвывал их (и то в самом начале, под конец он только прысканьем желчи занимался).
>>3433861 Пирожок, такие "графики" строят каждый год, и каждый год в предшествующем году оказывается другое количество вакансий, которые показывали до этого.
А знаешь что еще более ублюдочное, чем спринг? Культ спринга. Секта крикливых и тупых шизов-гейткиперов, с которой попросту не возможно говорить языком рациональности и здравого смысла.
>>3433624 >Рынок полуживой, Что не так с рынком? Всели в нас ужас. Я итт вижу, только, кто-то кому-то сказал, что все, конец. Получается только в легаси, теперь?
> фрейм задумывался с самого начала чтобы максимально быстро выпустить проект в прод и чтобы разрабу было приятно писать По моему как раз спринг таким задумывался. Таким вообще-то все фреймворки задумывались. Это буквально "за всё хорошее" от мира программирования (хотя на самом деле "за всё хорошее" только похоже в программировании и остаётся, ИРЛ долбоёбы уже на полном серьёзе ратуют за неприкрытое зло), разница между ними в реализации.
>>3433624 Зря ты так, братан. Посмотри на это с другой стороны. Перед тобой - вызов твоим скиллам и амбициям. Ебошить анноташки на спринге попивая смузи умеет любой дурак, а в скором времени научится и нейронка. А тебе предоставился шанс за счет работодателя разобраться в ебучих кишках и пройти через адище. Если ты это переживешь, ты станешь гигачадом, трушным синьором, тебя уже ничего не будет пугать. А если еще и сделаешь хорошо, продашь кабанычу идею рефакторинга и отрефачишь по совести в срок, то история "я голодный миддловкатун, который нихуя не может трудоустроиться в 2025м" никогда больше не будет про тебя. О тебе начнут ходить слухи, ты станешь легендой. Тебя будут звать по связям в обход всех ссаных гейткипов.
>>3433955 Клоунада - это то, что я описал. Когда каждый год пишут "а вот раньше было легче вкотиться, не то что сейчас". А потом через год пишут ровно то же самое, но уже про новый год. Хотя год назад утверждали обратное, что мол "оче сложна вкотицца". И ещё через год - опять повторяют, но уже про следующий год. И так по спирали. Если бы это было правдой, то уже в 2015 никто бы вкатиться не смог. Но как мы видим, люди и вкатывались тогда, и до сих пор вкатываются, и меняют РАБоты на 300кк, и всё остальное. Так же как и раньше.
Все смузи-фреймворки существуют, чтобы сделать нас - разработчиков - слабже и глупее, и как результат - менее ценными и востребованными. Они существуют не в интересах работяг. Сильнее разработчика делает только лютая говнина на коде, которую нужно разгрести и привести в порядок. Цени говнокод - именно он, а не уютный спринг, сделает из тебя востребованного и ценного профессионала. Спринг завтра сменит версию, депрекейтнет несколько штук, как он последнее время любит делать - и все! И ты сидишь, маленький, клювом щелкаешь как подбитый аист и сделать нихуя не можешь, потому что половина гайдов с баелдунга и стаковерфлоу теперь невалидна, а нейронка пиздит как дышит, потому что по ним училась. А если ты вырос на говнокоде, те будут ваще по хую такие мелочи. Ты че хошь по битам размотаешь, хоть доморощенный говнокрод, хоть говнокод спринга (а спринг - тот еще кусок кала внутри).