Это копия, сохраненная 1 ноября в 05:34.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
Как называлось терминалогически когда:
public class SamsungGalaxy6 extends SamsungGalaxy5 {
}
List<SamsungGalaxy5> myList = new ArrayList<>();
myList.add(new SamsungGalaxy6());
он же не апкастится ни к чему
Полиморфизм же? По сути у метода add будет сигнатура void add(SamsungGalaxy5 obj), мы передаем наследника, чем не полиморфизм?
Можно ли внутри finalize вызывать нативные методы?
У нас в финалайзе отправляется емейл саппорту, так узнаем что на проде опять случился конкарренси баг
джава 5 кун
При запуске командой java -jar target/combining-rent-receipts-javafx-1.0-SNAPSHOT.jar
Выдает ошибку: Error: JavaFX runtime components are missing, and are required to run this application
Можно, конечно, в одну папку с jar закинуть javafx jdk и запускать из батника так: java --module-path "target\javafx-sdk-21.0.1\lib" --add-modules javafx.controls,javafx.fxml -jar target/combining-rent-receipts-javafx-1.0-SNAPSHOT.jar. Но я хочу чтобы вся программа была единым jar, который можно на любой оси запустить. Как это реализовать?
Забыл тему добавить.
У javafx вообще говоря собственный сборщик, который идея кое как умеет обрабатывать. https://www.jetbrains.com/help/idea/packaging-javafx-applications.html
Я лично до какого-то момента писал чисто на 8 жабе, по многим причинам, мол так привыкну к тому, с чем столкнусь. Но конечно главное преимущество, что в 8 и только 8 версии jfx был в стд, это дает много преимуществ, о чем отмечается даже в той статье выше. Поэтому ну.. Переходи со своей 21 и страдай))))
Как варик собрать в exe, но это как сам понимаешь не кроссплатформа.
К слову, нахуй тебе вообще jfx, это тооочно нельзя решить свингом и не ебать мозги?
Свинговский проект можно собрать в fat jar? Я просто новичок, перекатившийся с C#, и нихуя не понимаю. JavaFX первое что попалось в поиске десктопного гуи на джаве.
Да, причем вообще никаких проблем не вылезет, там буквально просто написать пакейкинг жар в мавене и усе https://www.baeldung.com/executable-jar-with-maven
Но конечно сам swing устарел, мягко говоря. В общем хз, кмк ты просто не тот яп для десктопа выбрал.
После создания пустого JavaFX проекта, intellij спокойно его запускает без проблем на любой JDK, но вот собрать в fat jar не получается.
>В общем хз, кмк ты просто не тот яп для десктопа выбрал.
Я вообще не для десктопа его выбрал, а для бекэнда. Просто захотелось сделать кроссплатформенный пет проект, чтобы локально с компа запускался, и JavaFX первое что попалось.
Одно дело запуск идеи, которая тебе самостоятельно все зависимости передаст, другое запуск из ос. Далеко не каждый юзер вообще жабу-то хочет на пеку ставить, а уж jfx и подавно.
>для бекэнда
Почему тебе не сделать морду/эндпоинт? Браузер есть у 100% пользователей, в идеале можно захостить и вовсе установка не потребуется. Вот как пример приложух, которые локально так и сделали https://syncthing.net/ https://openwrt.org/ru/docs/guide-user/luci/start
>>29258
А что тебе в нем так не зашло? Вроде хоть на него болтяру оракл положил, все еще лучше jfx, которая просто калька на gtk/qt, с этим псевдоцсс и xml.
>Почему тебе не сделать морду/эндпоинт? Браузер есть у 100% пользователей, в идеале можно захостить и вовсе установка не потребуется.
Попробую, но мне этот вариант показался чрезмерно громоздким. Я раньше приложухи в C# WPF делал, там все по красоте - xaml написал, контроллеры написал и отправил компилиться, а потом запускай готовый ехешник на любой пеке. Вот мне JavaFX приглянулся почти схожим подходом, но вот такая подстава.
>А что тебе в нем так не зашло?
То, что весь гуи на голой жаве пишется, и чтоб видеть результат, каждый раз надо проект собирать, в то время, когда на jfx все на виду. Попробую все же сделать морду/эндпоинт.
В джавафкс какой-то странный баг, из-за которого нужно написать отдельный класс-лаунчер для мейна, который не делает ничего кроме как вызывает твой основной мейн, и его уже прописывать в манифес, тогда заработает.
>не тот яп для декстопа
Всё тот. Дегенеративный баг в джавафкс не мешает джаве быть лучшим языком. Да, неудобно, но это лучше чем гетсеты дрочить.
Ты ищешь слово ковариантность, но здесь ковариантности нет. Здесь работает базовый принцип типов.
всмысле не будет фантом референсов? а почему?
финалайз может заниматся некромантией и оживлять объекты которые идут в мусор и ты потом долго будешь искать где у тебя память течет, а повторно он не выполнится кстати никогда.
и он может вообще не выполнится если программа завершится до сборки мусора, там у гк свои потоки выполнения ты на них не влияешь, кстати исключения он тоже не обрабатывает.
лучше нахуй забыть про него и никогда не вспоминать
Вот есть double[] a = new double[5];
зачем писать double слева и справа, по сути дублирование одного слова, почему создатели языка просто не сделали как в си
double a[5];
явный вызов конструктора, а double a[5 просто сахар, под капотом там такая же хуедрыгала с вызовом.
видели диабет у сисярпа
ЛЮБЛЮ ТЕБЯ АНОНЧЕ!!! ЗАРАБОТАЛО!
Даже JVM 21 запускает спокойно!
Я 3 дня искал ошибку, с maven на gradle прыгал туда-обратно, плагины перебрал разные, ни одна GPT не помогла, а тут такое простое решение!
Я все результаты гугла облазил, ничего не помогло, и GPT был крайним вариантом. Вдруг и он мог что-то знать.
А что там в этом target\javafx-sdk-21.0.1\lib? Нативщина? Джарки?
Если второе, тебе нужно прописать их в свой помник, чтобы шейд плагин их тоже запаковал.
Если первое, надо смотреть как эти сошки подгружаются и думать, как вмешаться в этот механизм, но в теории, сошки тоже можно шейдить и грузить из ресурсов, видел такое с lwjgl.
Сам я конкретно javafx не шейдил, но если вот здесь по ссылкам походить, похоже на солюшен: https://stackoverflow.com/questions/52653836/maven-shade-javafx-runtime-components-are-missing
Плохо читается.
>double a[5]
Разве это не просто декларация указателя на ещё не данную ячейку памяти в 5 double слотов? Вообще не то же самое, что и new double[5], который именно создаёт массив, выделяет память.
>>29037 (OP)
Я чего-то нихуя не понял. Вот есть супер-класс Анон, есть наследующий Двачер. И вот вопрос - содержат ли в себе объекты класса Двачер объекты класса Анон? А если есть класс Сосачер, наследующий Двачер, то в нём объекты и класса Двачер, и через него класса Анон?
ты имеешь ввиду может ли класс сосачер дернуть метод класса анон? да может, потому что все методы анона имеет класс двачер, если он их не переопределил, то есть по суперу все равно будет дергать из ближайшего родителя.
var a = new double[5]
Один раз пишется.
>создатели языка просто не сделали как в си
Потому что такой дизайн. Джава старается не делать неявным создание объектов. Да и тем более в си это не объект вовсе. Там даже нет такой банальной вещи, как ArrayIndexOutOfBoundsException. Создал массив длиной 5, хуйнул на 100 вперед, если ос ничего не пукнула, что-то даже получил.
>>30063
Если ты имеешь ввиду, что существует некий скрытый иннер объект, через который и идет обращение к полям супер класса, то вроде как такого нет, но впрочем это детали реализации и в принципе кейворд super можно считать именно этим.
>>29385
Вот как можно считать язык лучшим в мире и при этом им не пользоваться, а использовать кривой косой его диелакт, под названием жавалобок? Противоречие не находишь? Ты или используй жаву или не говори, что лучший в мире именно этот диалект. Причем у тебя странная дихотомия шарп жава, будто блять других языков и не существует. Так нет, есть много языков и в них нет проблем с геттерами/сеттерами. Буквально кто о чем а вшивый о бане жаван о сеттерах.
>var a = new double[5]
>Один раз пишется.
Только не надо делать вид что это не содрано с котлина и это было изначально.
>это дефолтная фича по выводу типов
>выбирают var а не auto
>record классы это стандартная фича, котлин тут не замешан
>var вообще взяли с паскаль abc
Шарп тоже не в числе этих языков. Блять у вас реально настолько замылено зрение, что существует буквально два языка?
Вот тебе, к примеру вывод return type в функциях https://en.cppreference.com/w/cpp/language/auto
>>30167
Сами вар, если говорить за жвм мир, появились раньше в скале. Не удивлюсь, если рекорды тоже.
вар это скорее для анонимных классов, чтоб когда var x = new Object(){ int хуй } можно было потом получить x.хуй без выноса класса в именованный
Ускорение прямолинейнсти работы компилятора. Когда у тебя всё знание представлено в косвенном виде, гораздо сложнее проводить резолюцию этого всего.
finaliez уже давно депрекатед
А кому боюсь спросить, ты такие лямбды отдаешь? В тех же стримах требование, чтобы они были без состояния.
Видимо ресурс своевременно не закрывается порождающим потоком, у нас примерно та же система
Нет, это чтобы когда тебе генератор каких-нибудь апи стабов нагенерил SomeClass.SomeOtherClass.YetAnotherClass<OfYetAnotherClass> - не писать это по куче раз.
>просто не сделали как в си
>double a[5];
Потому что в Си так и пишут с двух сторон, при аллокации на хипе, как и в джаве.
А double a[5]; - это аллокация на стэке, которой в джаве нет
нет, не В, а НА
"allocation on stack", НА стэке, конкретно в контексте аллокаций, в контексте структуры данных может быть по-другому
Хуя се хуесос тут же бахнул с лобка, хотя о нём даже близко речи не шло. Что, больно, шарпопетушня? Иди гетсеты построчи.
>нет, не В, а НА
>"allocation on stack", НА стэке, конкретно в контексте аллокаций, в контексте структуры данных может быть по-другому
Ты дурак? Ты реально собираешься предлоги калькировать?
Они ещё говорят on the Internet - ты предлагаешь тоже на использовать? На Интернете?
Вообще, on - это интересный предлог. Например, он используется с глаголом congratulate. Congratulations on your promotion! Поздравляю на повышение! Так?
А если говорить не по оригиналу, а по тому, как правильно звучит по русски, то тем более на стеке.
Хотелось бы, да недостаток джавы в отсутствии стандартного апи для метапрограммирования.
Анончики, нахожусь в процессе закатывания в джаву. Была куплена и наполовину прочитана та сама книжка Герберта Шилдта (вторая половина это больше документация). В данный момент прохожу курс по алгоритмам и структурам данным (язык Java), который упоминался в пособии для вкатунов с гитхаба. Есть мысль прикупить книгу, на которую часто ссылаются в курсе (Алгоритмы на Java), но я не уверен что там будет какое-то полноценное введение в Collections Framework и Stream API, а мне хотелось бы узнать больше про них, т.к. по опыту понимаю, что без знания стандартной библиотеки никуда. На том же литкоде большинство решений быстрее, эффективнее и изящнее именно из-за этого. Конкретно книжки по стандартной библиотеке я не нашел, поэтому пока долго и мучительно сверяюсь с документацией на сайте docs.oracle.com. Хотелось бы узнать, как мне эффективнее и побыстрее освоить это.
а какие книжки по кору ты хотел? задача шилдта дать тебе понимание как оно работает если он будет перечислять всю доку там не 1300 страниц будет а 13к.
>Хотелось бы узнать, как мне эффективнее и побыстрее освоить это.
писать код
Значит по кору книжек нет?
Ну самые распространенные кейсы использования - это структуры данных и стримы. Все. В библиотечках частенько встречаются вобщем.
В спринговом коде встретить дженерики маловероятно. Спринговый код - он как гондон: повторно не переиспользуется, поэтому и обобщать дженериками там редко что есть.
Да почему на то? Стек - это область памяти. Ты же не говоришь на памяти? На куче? Почему тогда вдруг на стеке?
Чем это будет отличаться от видоскиов за 2к на юдеми + чатгопота. Ну я понимаю что вы скажите про юпуп за 0₽, но они не совсем актуальны, тут как повезёт.
Моя текущая работа иногда подзаебывает + нужен такой навык с которым я без проблем могу уехать куда угодно, если родина начнет ебать мозги.
>>30809
Мне нужна система и стимул. Я-то в принципе не полный ноль в жаве. Но заставить себя чето писать вообще не могу. Не в последнюю очередь из-за того, что в голове нет четкой технологии написания кода.
Являются ли эти операции обязательными для джуна или они на уровне "Знаешь - молодец, не знаешь - хуй с ним" ?
>Являются ли эти операции обязательными для джуна
Если бы не такая постановка вопроса, мне как интервьюеру бы было похуй. Но сейчас по этой формулировке в тредах отмечаю для себя, чем на собесах новичков надо обязательно дрючить. Так что - да, чел, учи битовую логику.
Ладно, переформулирую вопрос.
Насколько часто побитовые операции встречаются в обиходе создания программ на java?
Нечасто. В крудах врядли ты чето такое встретишь.
Для литкода нужна битовая арифметика. Всякие там штучки дрючки типа как быстро проверить, что число это степень двойки и т.д. Битовые карты, маски, трюки с простановкой флагов в числе.
Если конечно ты будешь решать литкоды на собесе а не харкнешь интервьюеру в ебало
>>30877
>Но заставить себя чето писать вообще не могу. Не в последнюю очередь из-за того, что в голове нет четкой технологии написания кода
Мне помогает TDD, когда не могу из себя выдавить код. Написал один красный тест, позеленил. Написал второй - позеленил. Вроде бы ебаниной занимаешься, но к концу дня смотришь, а написано-то дохуя, еще и тесты есть.
Предварительно надо декомпозировать задачу, превратить хуй пойми что в четкий список.
Для борьбы с прокрастинацией использую технику сеньоров помидоров. 50 минут кодишь, 10 минут щелкаешь еблом. 50 минут кодишь, 10 минут щелкаешь еблом.
но чаще практикую дунасинг
я тебя возможно неправильно сейчас понял.
То есть если я вместо решения литкода забью на него и харкну интервьюеру когда он попросит его решать, битовые операции нужны настолько редко, что лучше временно отложить их изучение/не нужны в принципе?
блять, наебнулся чуть, сейчас перепишу
> я тебя возможно неправильно сейчас понял.
> То есть если я вместо решения литкода забью на него и харкну интервьюеру в ебало когда он попросит его решать, то битовые операции нужны настолько редко, что лучше временно отложить их изучение/не нужны в принципе?
Типа того.
Какая перегрузка операторов? Они не рады, что вообще есть операторы, это же против ооп.
Ты должен писать 5.add(2).multiplyBy(8).
а тож, волож еврей.
>битовые операции нужны настолько редко
они не нужны, но помнить о них надо, когда заставят ковырять копролит ты еще окроешь жаву6
>больше языку ничего не надо
ограниченная перегрузка операторов никак не поможет. Имею ввиду, что ее применение будет разве что в классах числодробилках. если и добавлять, то инфиксное применение методов https://www.baeldung.com/kotlin/infix-functions
это хотя бы в минимальной степени позволит писать дслки.
нахуя нужна интерполяция строк мне вообще непонятно. что вы там интерполируете-то?
именованные параметры вообще с дефолтными должны идти. но вероятнее всего это делать не будут, а сделают with https://github.com/openjdk/amber-docs/blob/master/eg-drafts/reconstruction-records-and-classes.md .
да и вообще в джаве на фундаментальном уровне куча проблем, которые решены никогда не будут, поскольку обратная совместимость. вот есть языки, где решения n летней давности неожиданным образом синергируют и развиваются в нечто большее. а есть джава, где куча говна в методах object, где ебаный нулл срет и тут и там. где есть jmm, но потом ее решили развить, но теорию не подбили и теперь есть ебанный varhandle. есть сообщество уебанов, которым говорили не использовать внутреннее апи, но они же лучше знают и теперь они же ноют, что у них эту возможность забирают. самое смешное, так тут то, что этот язык кто-то серьёзно считает лучшим. интересно в чем
не знаю. серебряной пули нет, поэтому для одних задач мы готовы смирится с одними проблемами, для других с другими. в общем, it depends.
Проблемы на фундаментальном уровне, как я понял, есть у всех языков и жаву учить имеет все же смысл?
Я согласен, джава, как язык в изоляции, давно уже изжил себя и живёт исключительно на огромной экосистеме JVM, которая и является настоящим достоянием, по эффективности дизайна который все еще применяется, и по объему оптимизаций JITа
> но теорию не подбили и теперь есть ебанный varhandle
А как вархэндл противоречит jmm?
Если хочешь зарабатывтаь деньги на программировании - конечно
Главная цель - зарабатывать деньги, можно еще что-нибудь для собственного удобства сделать.
Сам язык не важен, программировать нравится само по себе
>как язык в изоляции, давно уже изжил себя и живёт исключительно на огромной экосистеме JVM
а какой крупный язык себя не изжил? кресты похожи на огромную кучу мусора из-за обратно совместимости где сам труп страуса не разберется уже, сисярп со своим clr брат близнец жабы, что там еще осталось goвно туда завезли женерики и он стал как все, жопаскрипт просто мрак.
всякие нишевые руби я не беру
>Ты дурак? Ты реально собираешься предлоги калькировать?
Я не собираюсь, так уже принято в русскоязычной литературе/сложилось исторически, можешь сам погуглить. Просто узкоспециальный термин, типо того же докУмента, не особо имеет связь с правилами русского языка.
от некоторых языков можно и блевануть
>А как вархэндл противоречит jmm?
Он не противоречит, а расширяет. Там вот приписка, мол скоро они спеку подобьют под эти методы. Но знаешь, почти десять лет прошло, чет не верится.
>вот есть языки, где решения n летней давности неожиданным образом синергируют и развиваются в нечто большее
Джаваскрипт чтоли?
>а есть джава, где куча говна в методах object
Finalize же выпилили. И то, до сих пор периодически какой нибудь залетыш по этому поводу бугуртит.
>где есть jmm, но потом ее решили развить, но теорию не подбили и теперь есть ебанный varhandle
Вот щас бы особо ЧСВшным двачерам диванным демонстрировать свой дохуя ум задним числом, ага. Ничего что до джавы самого понятия JMM не существовало как концепции? Кому кому, а джаве как первопроходцу можно было бы и простить. До вархендлов чего доебался - отдельный вопрос.
>самое смешное, так тут то, что этот язык кто-то серьёзно считает лучшим. интересно в чем
А ты что - настолько наивный дурачек что всерьез считаешь, что мелочевка, которую ты перечислил, перекроет все достоинства огромной экосистемы, которая умудряется двигаться вперед, при этом не обнуляя девелоперский опыт как тот же JS делал всю дорогу до появления реакта? Смешной - до нулей каких то вшивых доебался. Если бы людям было не похуй на бильон-доллар мистейк, если бы людям не похуй было на переусложненность мемори моделей императивных языков вроде джавы, отмерла бы не только джава, но и все императивное семейство языков, а на замену им пришел бы не гоу, и не шарп, и не котлин, а нечто похожее на хаскель, где проблема конкарренси в многопоточке решена на фундаментальном уровне. Но этого не произошло по простой причине: сколь бы тебе ни было неприятно этого признавать, частичка джавы живет в 95% программистов и наследуется из поколения в поколение. Живи с этим.
>мям, смятри, я такой умный, знаю лучше всех и ещё новое слово выучил эта как там его jvm ой jmm
Нахуй ты всерьёз этого клоуна воспринимаешь?
>>3231259
Ничем, шарпоговно просто исходит на говно от опущенности себя и своего тормозного игрушечного язычка и ищет к чему доебаться.
А то забеало, вроде и резюме есть не такое плохое, есть образование профильное (СПО), а на работу не берут.
Как правильно описать задачи, которые ты делал на прошлом месте работы ?
а может не берут не из-за резюме а потому что вью заваливаешь?
Угу
>Ничего что до джавы самого понятия JMM не существовало как концепции?
Ну это очевидно. Или ты имеешь в виду что модели памяти не существовало как концепции?
https://www.youtube.com/watch?v=JeoYA7wABAA
Конечно, ты ведь хочешь узнать чем джава лучше раста?
Spring (Boot, Security, Cloud, MVC)
Maven
Hibernate
PostgreSQL
Docker/Kubernetes
REST/Client Protocol
Junit и TDD
Kafka/Rabbit MQ/Active MQ
Cистемы трекинга
Или кроме них и задрочки забесплатно на гитхабе год на рандом уважаемом проекте работадателям ещё что надо, чтобы взять хуесоса без ВО на 30к?
>из стека обязательных технологий для джунов
Да нет никаких "обязательных технологий", это только у тебя в голове. Всё вышеописанное - это чья-то вкусовщина. Любой инструмент подбирается под конкретную задачу, а не наоборот. Задача не подбирается под инструмент.
>что надо, чтобы взять хуесоса без ВО на 30к?
Тебя нахуй в любом случае, что бы ты не делал. Чтобы попасть на днищеработу за 30к нужно побороть конкуренцию человек 100, которые также хотят просто набить опыт, потому что их также не берут без опыта как и тебя. Чем хуже работа, тем больше на неё претендентов.
Замечательно, теперь напишите свою реализацию LinkedList и расскажите подробнее про вышивание пузырьком и сортировку крестиком
Примерно да, но список может варьироваться в зависимости от охуевшести работодателя.
Ну кстати это не сложно
Если это не была ирония над хрюшами, которые после того как вы слушают, дают задачу на перебор элементов и поиск дубля
это не хрюша спрашивает а рандомный сенька/лид. Меня джуном спрашивали многопоточку, оконные функции sql, устройство jmm, спроектировать сервис сокращения ссылок (на микросервисах, асинхронный), отличия линке и арэй листов и всякую такую рандомную поебень. Сенек спрашивают примерно тоже самое, только чуть глубже.
Приятнее все же называться джуном, чем ебанатом, работающим чуть более чем за копейки
Если ты говоришь, что со знанием всего вышеперечисленного просто не будут смотреть резюме и соответсенно слать нахуй после 300-т пройденных собеседований вместе с остальной тысячей претендентов, то это одно. Если будут рассматривать, то это другое - тогда шанс есть, и если прокнет, мои проблемы с работой должны пройти.
Я бы пошёл на вечерку или даже очку, но тут две проблемы. К 30 лвл хуесосу с ВО больше вопросов, чем к 25 лвл хуесосу без ВО, и за 5 лет срыночек пойдёт в ещё большее говно. За эти 5 лет я могу попробовать куда-то устроиться, получить опыт полдекады и сосать меньше хуёв. Надеюсь. что в связи с дислокацией в ДС должно получиться.
>>32353
>>32359
Задрачиваемо, или и вовсе единственное требование выполнение задачи - постоянная практика.
>>32354
Спасибо за ответ, я тогда пошёл всю эту ебалу учить.
>>32371
Это я прикидываю предстоящую себе работу, но так-то уже две недели учусь (пока что только сам язык). Останавливаться не собираюсь.
В принципе пока не поздно перестаковаться в другую сферу, если отбор у Java работадателей слишком жёсток. Но я всё равно вернусь сюда, потому что по моим оценкам имеено здесь наибольшая стабильность (ну и язык нравится). Мб я ошибаюсь.
Мне даже 300к/нс не надо, благодаря стечению обстоятельств мне 30к хватит на многие годы. Больше денег пойдёт семье на погашение кредитов, комп, и хз ещё куда.
Я же правильно понимаю, что на это похуй? Во всех гайдах систем ин не закрывают
>vscode
Так этот продукт шарпобляди писали, естественно они тебе будут в кашу подсирать, если ты пишешь на яве.
Так java плагин подсвечивает жеж. Его джависты писали наверное. Я реально не понимаю
Серьезно? Даже я как джавист вижу что джава серьезно отличима от котлина
>>33154
>когда зависимость нужно объявить помимо поля ещё в сигнатуре конструктора и в теле конструктора написать её присвоение. Лобка не хватает, иногда нужно добавить собственную логику для какого-то одного поля, и тогда лобковый рекуйред аргс конструктор сливается и приходится все 100 полей ручками прокидывать.
Идея -> Щелк по классу -> Alt + Insert -> Constructor -> Выбираешь какие поля прокинуть -> ОК
Всё
Ну и нахуй ты как шарподаун предлагаешь идеей жиденько сёрнуть в класс? Мне синтаксис нужен.
Почитай, когда программам можно закрывать стандартный ввод, а когда нет.
> Вообще, странно наблюдать про утечки в языке, где есть сборщик мусора как киллерфича
если ты по своей тупости оставляешь стронг ссылки или открытые потоки, то тебе ничего не поможет.
синтаксис на кастомное прокидывание через конструктор избирательно отдельных полей? ну ты совсем уже ебобо?
покажи хоть пример из какого языка ты это взял
Что-то по делу будет? И ни из какого языка я это не брал.
Чё за тупые вопросы? Очевидно как и обычный объект будет работать объект потока, разве что сам поток будет гарантировать жизнь своего объекта пока он сам живёт.
Ты имеешь в виду, где хранится ссылка на объект класса Thread? Там же, где и все остальные ссылки.
Error: JavaFX runtime components are missing, and are required to run this application
Пиздец, я в ахуе. Третий день с этой проблемой ебусь. Ебобаный жавафуфыкс бля. Спасибо.
>Лобка не хватает, иногда нужно добавить собственную логику для какого-то одного поля
Добавлять логику в конструктор - сомнительная затея сама по себе. Что у тебя там такого, с чем не может справится биндефиниция в конфиге или постконстракт?
Ты долбоёб и даже не понял, о чём идёт речь.
...
private final int foo;
...
public Fizz(..., String foo, ...) {
----...
----this.foo = Integer.parseInt(foo);
----...
}
Сам ты долбоеб, по трем пунктам: хамло быдловатое, в конструкторах занимаешься неадекватной хуйней, и в постановку проблемы не способен. Поссал тебе на ебало, пошел нахуй, быдло.
Слив принят.
Caused by: java.lang.NoSuchMethodException: java.lang.Double.<init>()
Подскажите плз что не так.
прошу прощения, я даун не поменял количество инпутов генерируемых на нужное, генерировалось 21, а надо 10.
1) Какую версию JDK нужно устанавливать для обучения и последующей работы ?
Смотрю по вакансиям : Java 8+ частенько мелькает, чаще 11-17, у кого-то OpenJDK 11. На деле этих версий просто ебанешься,
Кароче, как я допер то нужно качать либо СБОРОЧКУ пиздец... OpenJDK 17/21 LTS среди одних из поставщиков либо не ебать мозг и качать с сайта оракла сразу 21?
2) Какую IDE выбрать для учебы? Я думал все на идеа пишут, предвкушал как буду в этой красоте уже работать, а потом узнаю, что якобы она очень автоматизирует и за тебя все делает, девелоперам удобно (не всегда), а вот ньюфаг не может ничего без нее потом, приручает с беспомощности. Захожу на абучан - в шапке гайд, где его тоже говном поливают.
Советуют эклипс - ну выглядит он, как будто из нулевых, ну да ладно. (Я даже видел, что один банк требует опыт в эклипсе)
В шапке VS code - но это же редактор, а не IDE, это же не подходит для обучения, не?
Наткнулся еще на GigaIDE от Грефа, но может это совсем мем.
Или не ебать себе мозг и абузить триал/крякнуть идею?
>не ебать мозг и качать с сайта оракла сразу 21?
this
>а вот ньюфаг не может ничего без нее потом
А где ты собрался без идеи писать код?
>Наткнулся еще на GigaIDE
Вот ее и качай. Лучшая иде на данный момент.
1) Грааль вм 22.
2) Вс код, от баганности идеи ебанёшься. Гигаиде не мем, насколько я понимаю, но вряд ли они занимались чем-то более крупным чем переименованием жидбрейнс в спёрбанк в файлах. По поводу привыкания к функциям идеи, да, есть такое, поэтому собирать, например, лучше через консоль, даже если ты уже спец.
Ну судя по видосам там все достаточно круто.
Чел ты задаёшь такие вопросы которые влияют на +- 1% конечного результата. Ставь всё последнее и не еби мозги. Так спрашиваешь как будто от версии решиться судьба человечества. IDE вообще чисто вкусовщина. Как ты считаешь что тебе заебись, так и ставь. Не надо консилиум двача созывать по этому поводу. Мне лично по бороде как-то. Они отличаются мелкой хуитой типа где-то подсказки побогаче/победнее, где-то дебаг есть/где-то нет, где-то платное/где-то бесплатное. Где-то можно генирировать uml, где-то нельзя. Это всё имеет значение в каких-то высоких материях, типа какого-нибудь блять банковского модуля в 3 миллиона строчек кода. Тогда это будет как-то влиять. Но ты не дорос до такого уровня, тебе будет одинаково что vs code, что intellij idea, что какой-нибудь грефовский gigaide, лишь бы бесплатно было и не ебало мозги.
чтобы иде не автоматизировала - просто отключи эту хуйню в параметрах и никаких проблем
> Какую версию JDK
21. К тому моменту как ты выучишься, её потихоньку в прод будут внедрять.
> Какую IDE выбрать для учебы?
IDEA Community Edition. Учись писать на том на чём потом будешь работать. CE идёт без некоторых фишек под фремворки, но для обучения самое то.
Вечные "какая то фигня is null, поэтому лови отключенную подсветку синтаксиса и отключение автодополнения", вечнцй скан проекта просто потому что.
Мимо
Примерно в 50% случаев добавления зависимостей мне приходится перезапускать идею чтобы она начала автодополнять классы из зависимости. Постоянно пропадают все файлы из файлового дерева, приходится выключать идею, сносить папку .idea и запускать её заново.
Вс код.
>А где ты собрался без идеи писать код?
Ну вон же находил банк, где прям указан Эклипс.
>Вот ее и качай. Лучшая иде на данный момент.
Немного поизучав, выяснил, что это идеа комьюнити эдишон, немного допиленная с фишками грефа. Толку для вкатуна не вижу, может даже запутает, проще идею юзать имхо.
>>34883
>Грааль вм 22.
А че это? Это обычная джава, но быстрее работает? А зачем оно мне?
>Вс код, от баганности идеи ебанёшься
Ну ладно, допустим есть там баги, но помешают ли мне - не понятны. А как мне в VS компилировать код? Плагин какой-то? Больше мне от IDE ничего не надо?
>>34923
Так я не спорю, просто на других ЯП как-то просто и понятно, а тут уже замудренно. Я бы выбрал идею визуально, но услышал, что она очень облегчает работу, что очень плохо на стадии обучения + здесь жалуются на баги. Вот и пытаюсь выбрать между идей, всратеньким эклипсом или мне и Vs code для учебы полностью хватит
Какие в идее баги омг, скачай себе взломку "премиума" 23 года последний стейбл и не еби мозг, упрощения всякие касаются статического анализатора и пр., обучению никак не мешает
А что нужно конкретно отрубить? Я прост даже не знаю что она там такого делает, что окажет медвежью услугу
>>34955
>21. К тому моменту как ты выучишься, её потихоньку в прод будут внедрять.
Не лучше ли 17? Пока на ней остановился. Начинаю сейчас читать Шилдта и там 17, в вакансиях выше 17, понятное дело не видел, а в моем даже не миллионике, вряд ли технологии так прям быстро дойдут, насколько я слышал, весь энтерпрайз вообще на 8 пишут. А я сейчас все шишки набью на 21, читая про 17.
Или там разницы для меня нет и нет смысла 17, сразу 21 можно?
>21.
Большая часть банков в рф на 8 до сих пор сидит и только думает на 11 оформить перекат (сбер, втб и тинёк не в счёт)
У меня на проекте применяется (Java 8, монолит), могу только примерно описать - есть одна абстракция от которой наследуются около 3ёх абстракций, а от них в совокупности 40+ классов и там в паре мест где-то надо убедиться, что класс наследуется от самой верхней, иначе по другому обрабатывать
Вот этого удвою
Постоянно пока прокидываю хуйню в вебфлаксе через Mono.zip(A, B, C).map(t->...) теряет типы и считает что там обжекты. Пока не заставишь принудительно перечитать. А через минуту опять код красный блять.
>>в 50% случаев добавления зависимостей мне приходится перезапускать идею чтобы она начала автодополнять классы из зависимости.
мне помогает
pom.xml -> maven -> reload project
>>услышал, что она очень облегчает работу, что очень плохо на стадии обучения
Ты долбоеб что ли?
Тебя идея буквально носом тыкает в твой говнокод и объясняет почему это говно и как исправить. Что в этом плохого?
Опять же можешь отключить подсказки - учить по ошибкам компилятора тогда.
Лид, походу ради прикола/разминки, вместо использования библиотеки заюзал для написания валидатора ip и маски сети
А вообще очень редко используется, только где надо прям супербыстро ответ отдавать, либо невероятную нагрузку на ноде держать, проблема битового сдвига в том, что железо невероятно сильно скакнуло вперёд
В 21 появился лум, который никто все равно не умеет и пару фишек со свичами. В 17 появились рекорды и доработка свичей. В 11 - var появился.
Это по сути вся разница для тебя между 8 и 21 джавой
> Лид, походу ради прикола/разминки, вместо использования библиотеки заюзал для написания валидатора ip и маски сети
Что? Расшифруй пожалуйста, я тебя вообще не понял
> услышал, что она очень облегчает работу, что очень плохо на стадии обучения
странно, по-моему как раз на стадии обучения и должно быть легко
Если ты пойдешь сразу в мясо ты ничего не поймешь и сразу надоест
тимлид (руководит нами), как я думаю из-за личной потребности в разминке, вместо использования для решения задачи библиотеки апача, эдак лет 6 назад, ручками написал класс и в нём методы, которые проверяют находится Ip адрес и его маску, с которого пришёл запрос, на то находится ли он в списке разрешённых IP адресов
Маску на адрес он накладывает посредством битового сдвига
удваиваю
Я тебя почти понял. То есть вместо новой и удобной библиотеки, он решил ебаться с битовым сдвигом?
>В 11 - var появился.
Помню как какому-то кандидаты отказали, потому что вар не использовал когда мог, может быть ценно
>А че это? Это обычная джава, но быстрее работает? А зачем оно мне?
Блядь, что за тупые вопросы? Зачем выбирать из медленной и быстрой джавы быструю?
>>Вс код, от баганности идеи ебанёшься
>Ну ладно, допустим есть там баги, но помешают ли мне - не понятны. А как мне в VS компилировать код? Плагин какой-то? Больше мне от IDE ничего не надо?
У тебя шизофрения будет из-за этих багов. Помешает это твоему ментальному здоровью. Компилировать через консоль, в любом случае именно всегда так и надо делать.
нууууу "новой", но удобной - да
да и почему сразу ебаться, там кода то строк на 100, плюс разминка и что-то интересное для человека уже 12+ лет пишущем на жабе
Под всех наркоманов не подстроишься. Кому-то может не понравится что он наоборот суёт вары куда не попадя, дескать, часть плюсов типизации теряются. И он будет несколько прав.
в объявлении локальных переменных, вместо типа, компилятор сам тип додумает
>но услышал, что она очень облегчает работу, что очень плохо на стадии обучения + здесь жалуются на баги
Не имеет смысла слушать программистов. Ты 10 людей спросишь и получишь 10 разных мнений. Не знаю блять как она может "облегчать работу", ну типа, за тебя встаёт по утрам и пиздует на работу? Я лично никогда такой хуетой не руководствуюсь. Чем больше у ide всяких наворотов, прибамбасов, плагинов, хуягинов, тем больше она тормозит и жрёт памяти. Все эти ебучие умные подсказки постоянно чё-то блять сканируют, кешируют. Я просто бля хочу ёбанный редактор. Без всяких профайлеров, инспекторов, декомпайлеров, дебаггеров. Я фанат простоты. Чем проще редактор - тем лучше. Но если ты прям фанат космолётов, хочешь шоп каждый пук через кнопочку в редакторе совершался - да и флаг тебе в руки. Я же не навязываю. Если нравится - то пользуйся. Считает что облегчает - окей, нет вопросов, пользуйся.
>но услышал, что
У неё две вещи во время обучения проявляются - автокомплит сгенерированным говном (для всяких геттеров и сеттеров, типичной инициализации переменных), говно потому что частенько обсирается; и то, что вместо запуска всего из сосноли с прописанием зависимостей в файл проекта градла/мавена тебе даются уже запиленные эти файлы и кнопочка "запустить проект", что конечно приятно, но системы проектные и как все запускается надо знать, чтобы не ебануть проект из-за банальной зависимости/спокойно менять опции виртуальной машины, на которой катается код. В остальном вроде иде как иде, жопу подтирает, за меня не учится, в целом больше помогает, чем мешает.
тот анон, что ввязался читать курсы hyperskillа так себе, писали на пару индус и срусич, а с жалкости введения в операционки я аж проиграл на всю хату
Гексагоналку юзаете?
Вопрос какой маппер из двух выбрать?
mapstruct или modelmapper?
Нахуя тащить зависимость в проект если весь маппинг зачастую это перекладывание 10 полей из дто в объект?
ну охуеть
ты что руками предлагаешь править мапперы?
особенно когда ДТО обновляются через контракт openapi
есть сущность. у нее есть поле - список других сущностей.
как вообще удалять из этого списка элементы кроме как через основную сущность?
через реп по вложеной сущности - чет нихуя не работает
Зачем под это заводить отдельный маппер? В дто пишешь метод:
public static Entity of(EntityDTO dto) в котором пишешь свои несчастные 10 строчек сетов,не вижу какой-то проблемы
В чем проблема через основную,у тебя дочерние существуют в списке основной сущности. Логично что чтобы изменить список основной сущности нужно взаимодействовать со списком основной сущности
ну я просто всю жизнь с ждбц работал
и херачил запросы по таблицам
и поведение этого жпа какае то неявное
а если у тебя обновился ДТО по контракту которые делали вообще другие люди?
ты будешь сидеть и добавлять новые поля?
Тебе же все равно придется добавлять поля в класс дтошки раз контракт изменился,там же и маппинг поправляешь,как будто дто меняются не раз в три месяца
Выстави в настройках show sql в тру и смотри что тебе насрет жпа,также сразу советую N+1 проблему изучить, возможно тебе больше понравится работать с ждбс темплейтом и положить хуй на поделки индусов из хибернейта
да бля какой то гений вьебал спринг дату жпа в проект
былаб моя воля я бы на ждбц темплейт переделал этот кал
на вопрос почему - ну типа там есть валидация ну охуеть
>>35471
нуууу агрегатные ДТО по 50 полей ебать
потому там и маппер чтобы портянок не плодить
меня на новый проект перевели и я чет не доконца одобряю все эти жпа и кой какие другие решения
но декларативные мапперы все же нор
просто там такая залупа что в разных портах-адаптерах разные либы для мапперов, вот я и решил уебать один и них и перевести на общую либу
Я терпеть не могу мапстракт потому что когда я с ним последний раз работал он вытворял абсолютную ересь, особенно если в дтошках есть вложенные объекты,плюс чтобы посмотреть что он там нахуевертил нужно лезть в сгенерированный коасс и если ты там нашел ошибку то крути верти анноташки в попвтках подобрать нормальное преобразование,мб сейчас все поменялось
А ещё чтобы он видел анноташки лобка нужно в помнике билд править
мне что целиком новый лист ему передавать если я хочу убрать 1 элемент
Тебя заставляют использовать хибер напрямую? Впервые вижу такое прост лол. И проблема у тебя из-за имьютабл коллекции,замени List.of() на нормальную инициализацию
да ты прав я сам долбаеб засунул туда иммутабл
ну в тесте лучше использовать entityManager все же
обычные репы как-то никак не флушатся
Там есть метод сейвэндфлаш
Ещё 15 дней заработал, молодец.
для локальных переменных часто var удобнее вместо Pair<List<OneYobaSuperBigNamedModel>>, <List<AnotherYobaSuperBigNamedModel>>
>>mapstruct или modelmapper?
mapstruct ебет всех по перфомансу, много возможностей, удобно использовать, удобно дебажить
modelmapper мб чуть удобнее для примитивных крудов, обосрешься с рефлексией на сложных мапперах
>>Гексагоналку юзаете?
им вместе с клином место на параше
Тогда не нужно использовать гексагоналку и всё
/thread
мимо уже наебались на этой сраной гексагоналке
ну хз
если у апки 100500 интеграций то хз как это правильно еще сделать
совать все интеграции в 1 сервис?
в догонку
если МС в максимально порридж-стиля когда везде контракт-фест
и куча генеренных схем идут просто зависимостями
и потреблять тебе их надо полюбому
>если у апки 100500 интеграций то хз как это правильно еще сделать
>совать все интеграции в 1 сервис?
Я помню мы делали что-то подобное и у нас просто бы ли отдельные модули для каждой интеграции, с общим интерфейсом к ядру. Обошлись без безумия мапперов.
>А что не так с гексагоналкой? Ну да есть оверхед
Ну вот это и не так, что на каждый чих пул реквесты утопают в изменениях в мапперах
>но если у тебя интеграций больше двух, всё это отбивается сто раз.
Да не отбивается это нихера, тонны бойлерплейта - это тонны бойлерплейта, как ты не крути
Мапперы тебе при любом раскладе надо писать, тебе за это платят сотыги.
В обычном проекте (контроллер, сервис, репа условно) начинается пиздец: нихрена не понятно что наружу отдавать из сервиса, либо тот же боилпред плюс тонны говнокода из мешанины бизнес и прикладной логики.
А что бы ошибок с мапперами не ловить уже в проде, в мапстракте включаешь error в конфиге, при не смапленном поле и всё ок.
ну да
были интеграционные тесты - неее сложна писать моки и поддерживать.
давайте введем контракт-фест и контрактные тесты.
ну охуеть теперь пишем в 2 раза больше кода зато у манагера зеленая ланпочка что апи интеграций соответствует
и так во всем))))
>>в мапстракте включаешь error в конфиге, при не смапленном поле и всё ок.
пока не начинаешь использовать сгенерированные энтити от жпа или жука с кучей лишних полей
После полного изучения этой книги уже можно будет приступать к фреймворкам или надо еще что-то?
а вот этого не было, да и сладкое в принципе для пидоров
Если ты хочешь вкатиться, то забей, не получится уже. Если просто программировать хочешь то после книги можешь код писать. Но фреймворки потыкать стоит, с целью познакомиться с разными подходами к решению разных задач.
10 маперов, 9 из из с игноре...
Бля, я ведь таким был, я реально думал, что от выбора иде мне будет хуже/лучше. Пиздец.
Ставь последнее, пользуйся чем хочешь, можешь сразу двумя, вообще похуй. Осознай эти вопросы, пойми, что они тебя отвлекают и в следующий раз, если тебе покажется, что для обучения тебе надо выбрать среду разработки, спросить какой язык лучше, какой фреймворк выбрать, как составить себе график изучения и прочее - сразу по рукам себя бей и садись писать код. Это от лукавого.
Вообще, в моём окружении джависты, шарписты, питонисты, плюсисты НИКОГДА не спрашивали у людей, какая иде круче и какую версию хуйни нужно качать. Они начинали свой путь спонтанно, их, как и меня, не ебало на чём писать, да хоть на листке ебта. Когда спросишь у них какая иде лучше, могут часами рассказывать про минусы и плюсы своей ИДЕ, но на этапе вката им было поебать. Я знаю, потому что вкатывался с ними. Я лично вкатывался сначала через пупон и пучарм, тупо скачав по совету первого попавшегося егэ блогера, лабы в вузе писал на нотпад++ и запускал через терминал, на что многие ахуевали и установили мне вскод, и уже на нём я вкатывался в жабу. Коллеги смеются и показывают свои крякнутые идеи от жидбрейнса, но мне по кайфу писать на том, на чём по кайфу и на чём я привык. Буквально из-за этого.
Почему мы при вызове подклассов базового класса мы должны вызвать всегда конструторы? Он говорит ну чтобы все поля были иниицализрованы, я давай мне пример нормальный с логикой, он такой >пук.
Зачем нам это надо? Мы хотим неожиданно вызвать метод базового класса из подкласса? Почему он всегда крутит конструтор в холостую даже когда полей нет?
восстание машин откладывается, чат гпт еше не выучил джаву ;3
Дед доед, это ти?
Всегда
Крутить опыт, либо иди в пхп и 1с, там и то не так просто вкатиться
Контракт externalInterfaceMethod менять нельзя. Остальные можно.
Научись пользоваться pastebin, чтобы не приходилось перепечатывать с картинки. И нормально описывать словами, что надо сделать и что не работает.
https://pastebin.com/zRSuniCV
Надо принять дженерик аргумент с в одном методе и передать его в другой метод с более общим дженериком так, чтобы конпелятор не ебал мозг, ни в момент вызова, ни после. На скрине красным подчеркнуто где проблемы возникают.
Это абстрактный пример, в реальном коде ни числа, ни строки, но суть проблемы та же. Принимающему методу безразлично, какой именно подтип будет в опшионале, поэтому он более общий, и сужать его из-за того, что одна либа мне дает конкретный подтип как-то тупо.
Думал, это можно как-то решить жонглированием самого дженерика.
Наверняка это можно решить через .map(Set::copyOf) можно, либо через каст через Object.
Пока сделал так, но все равно уродско, вызов мап метода только чтобы скастить заведомо совместимые типы.
ПОШЁЛ НАХУЙ С ЯЗЫКА ДОЛБОЕБ
хочешь решать задачки - решай, хоть на 5 разных сайтах одновременно. Хочешь сразу клепать проекты - клепай. Хочешь делать все одновременно - делай. Кто запрещает?
При желании при всем этом можешь еще и на трапов дрочить
>Надо принять дженерик аргумент с в одном методе и передать его в другой метод с более общим дженериком так, чтобы конпелятор не ебал мозг, ни в момент вызова, ни после. На скрине красным подчеркнуто где проблемы возникают.
Проблема у тебя возникает в другом месте. Принять какую-то коллекцию, проблем нет, что второй метод и показывает. Но ты не можешь принять что-то, а потом заменить его на emptyList() потому, что реальный тип может быть другим. Потому надо не ебать мозг пытаясь что-то там заменить на дефолт, а просто использовать ifPresent() https://pastebin.com/yEGnNvJH
Или чтобы вызывающий код передавал дефолт.
Ну и хорошо,тебя ждет долгий путь,но дорогу осилит идущий
Дома ебёшься как хочешь, на работе делаешь по методичке текущего проекта. В общем случае императивщина многословна, но примитивна как тапок и понятна всем, функциональщина лаконична и показывает исключительно сами шаги, но может быть непонятна непривычному глазу. Если нужен индекс, то лучше императивщина, во всяких деревьях переходы через функции. Пишешь код плохо - и там, и там будешь обсираться, но в императиве стэковерфлоу и индексотофбаундс, а в функционале либо не запашет, либо ты наклепаешь стопицот копий зазря и будешь по ним проходить тысячу раз, опять зря. В иператив хорошо ложится точечное изменение переменных по желанию левой пятки, в функционале данные обрабатываются по пайпу, что тоже хорошо. Хз чё тут можно ещё сказать.
>>36591
Тесты находятся в том же package, что и переменная, не?
>>36615
Просто взял и пришёл, без каких-либо говорящих голов курсоблядей.
Нет,код лежит в пакете src/main/java/yourpack/MyClass.java
В нем лежит переменная с дефолтным скоупом и ты можешь обратиться к этой переменной по в тесте
src/test/java/yourpack/MyClassTest.java
Лично я сначала пощупал пыху, потом джаву, на ней пока остановился, вкачусь джавистом
> Дома ебёшься как хочешь, на работе делаешь по методичке текущего проекта. В общем случае императивщина многословна, но примитивна как тапок и понятна всем, функциональщина лаконична и показывает исключительно сами шаги, но может быть непонятна непривычному глазу. Если нужен индекс, то лучше императивщина, во всяких деревьях переходы через функции. Пишешь код плохо - и там, и там будешь обсираться, но в императиве стэковерфлоу и индексотофбаундс, а в функционале либо не запашет, либо ты наклепаешь стопицот копий зазря и будешь по ним проходить тысячу раз, опять зря. В иператив хорошо ложится точечное изменение переменных по желанию левой пятки, в функционале данные обрабатываются по пайпу, что тоже хорошо. Хз чё тут можно ещё сказать.
Пиздец насрал. Императивщина при правильной готовке может в качестве кода и лаконичности уйти гораздо дальше функциональщины.
у меня тоже подобная стори.
Сначала вообще во фронт хотел, освоил верстку и пошел читать книгу с прикрепленного пика, пощупал там пыху и как она, так и ооп мне так понравились, что я теперь тут
Всегда лучше императивный
Все папки, между src/test и src/main - это твой пэкэдж
src/test/java/yourpack/MyClassTest.java
src/main/java/yourpack/MyClass.java
находятся в одном пэкэдже java.yourpack
*между src/test, src/main и твоим классом
так
но вообще тут 2 проблемы:
а) Set != Collection не имеет смысла, потому что Set - это всегда Collection, тебе тогда нужно принимать параметром функции Collection<String> и проверять, Set ли это - тогда сработает.
б) Нет смысла использовать Optional для коллекций, просто передавай пустую коллекцию для обозначения отсутствия знанчения через Collections.empty*() если конечто только у тебя пустая коллекция не значит что-то особенное.
А по поводу сканера что скажешь? Изучаю основы по метаниту и там для ввода используется Scanner
Не знаю, хочешь - используй. Малозначимая деталь.
Отсутствие коллекции и пустая коллекция в этом контексте не равнозначны.
>Set != Collection не имеет смысла
Имеет, фактически это же два интерфейса. Понятно, что один расширяет другой, это пытался использовать в wildcard-варианте, без особого успеха.
>>36626
>ты не можешь принять что-то, а потом заменить его на emptyList() потому, что реальный тип может быть другим
Вот это и вызывает фрустрацию, потому что принимающему коду все равно, какого подтипа будет аргумент в рантайме, и приходится кастовать подтип к родителю, только чтобы компилятор не возбухал >>36458
Сказано же, контракт метода, из которого приходит дженерик, менять нельзя. <? super X> в отдающем методе, конечно, упростил бы жизнь, но это сторонний код.
Показан на скрине и пасте выше.
>>36887
A<B> не всегда логически является подтипом A<B2>, где B — подтип B2. Optional<Integer> можно считать подтипом Optional<Set>, но List<Integer> подтипом List<Number> нет, так как List<Integer> даёт гарантии, что в нём будут лежать только интеджеры, и если где-то в него будет положен дабл, его могут попытаться прочитать как Integer, что вызовет ошибку типов в рантайме, чего в джаве обычно нет.
Компилятор не видит что из себя эти A, B, B2 представляют именно, поэтому для него оно никогда не является подтипом, и Optional<T> рассматривается с той же строгостью, с которой List<T>, а для решения этой проблемы, чтобы дать компилятору понимание о типах, нужно строить довольно мудрёные системы, намного более мудрёные даже чем ковариантность/контравариантность. Поэтому к компилятору здесь никаких вопросов быть не должно.
> нужно строить довольно мудрёные системы
Не, высрал хуйню. Не нужно ничего строить. Нужно просто добавить кейворд upcast который бы применялся к объявлению дженерика и означал бы что этот дженерик можно спокойно апкастить. Его правильное применение возможно было бы в тех случаях когда поля данного дженерик типа являются неизменяемыми, например, и может быть, в других случаях (изменение при инициализации и невозможность изменения далее, или внутренние изменения гарантирующие сохранение типа, выглядят как возможные варианты когда изменяемость поля не будет мешать безопасному апкасту).
Таким образом объявление Optional выглядело бы вот так:
public final class Optional<upcast T> {
---/code/
}
>Вот это и вызывает фрустрацию, потому что принимающему коду все равно, какого подтипа будет аргумент в рантайме, и приходится кастовать подтип к родителю, только чтобы компилятор не возбухал
Ты просто не понимаешь ковариантность и контравариантность. В инторнетах есть много статей на тему, почитай.
>Имеет, фактически это же два интерфейса. Понятно, что один расширяет другой
Поэтому и не имеет, это всегда set это всегда collection
Как думаешь они вообще что то делали, или просто дунасили 10 лет рассказывая на митингах что щас вот вот будет, надо только немного причесать?
Мне кажется, очень близко ко второму. Если так, то тут проёб, как мне кажется, даже не в том, что они хуйнёй страдали, это простительно, люди по своей природе очень непродуктивны, особенно в возрасте, а в том, что они не дали возможности толпам молодых и шутливых за спасибо спроектировать и реализовать для джавы эту вальхаллу. Достаточно открыть масштабную дискуссию с чётко структурированными целями и проблемами, и очень скоро желающие накидают кучу идей и решений. Хотя я, возможно, переоцениваю порриджей, или недооцениваю сложность идеи.
Тебе делать нечего что ли, что о сраных терминах спорить начинаешь? Да, для разраба сет это коллекция. Для жвм это два самостоятельных интерфейса - иди сделай Set.class.squals(Collection.class) или присвой в Optional<Collection> значение с типом Optional<Set>, раз это одно и то же. Без читов с extends.
>>36984
>Ты просто не понимаешь
сути /pr/. Был конкретный вопрос как сделать красиво и без бессмысленных плясок, ответ получен - в этой конкретной ситуации нельзя. Печально, но не смертельно. Но кому-то надо начинать душнить на анонимной имиджборде и сыпать томной литературой почему именно эти бессмысленные пляски нужны, как будто кому-то не похуй.
> Тебе делать нечего что ли, что о сраных терминах спорить начинаешь? Да, для разраба сет это коллекция. Для жвм это два самостоятельных интерфейса - иди сделай Set.class.squals(Collection.class) или присвой в Optional<Collection> значение с типом Optional<Set>, раз это одно и то же. Без читов с extends.
Ты хуйню высрал. Сет это коллекция. Всегда. У тебя нет базы, нет понимания.
Я в альфе тоже хуи пинаю, работаю, от силы, 5 часов в МЕСЯЦ, остальное время играю/деградирую/полирую хуй резюме.
Ни на какие созвоны не хожу, иногда выпердываю что-нибудь на статусе.
Синька за ~450к
Это всегда вина манагеров. Разраб лишь звено в цепочке производства, обычный исполнитель.
>Для жвм это два самостоятельных интерфейса - иди сделай Set.class.squals(Collection.class)
Чел, если ты, как в своем примере, обозначил у своего параметра тип как set, то collection, который не set, там быть просто не может, иначе компилятор выдаст ошибку. Технически ты прав, это два разных интерфейса, но в твоём примере у тебя там в принципе всегда сет, а сет это всегда collection, так что это проверка смысла не имеет, другого варианта там и быть не может.
Чё вышло-то? Они ёрли акцесс уже несколько лет публикуют.
https://gist.github.com/DanielThomas/0b099c5f208d7deed8a83bf5fc03179e
Знаешь, что все мы можем сдохнуть в один момент из-за распада ложного вакуума? Шанс там правда маленький. Здесь он сравнимый, если пользоваться синхронайзедами правильно.
сейм
>Был конкретный вопрос как сделать красиво и без бессмысленных плясок
Конечно же пиздежь. Было какое-то говно - вот вам сигнатура, менять нельзя, хочу ковырять левое ухо првой ногой, как в вашей джаве это реализовать? Естественно ответ здорового человека - не еби мозг, ковыряй левой рукой, но говноед настаивает на ковырянии именно правой ногой.
2 лагеря есть, я лично осуждаю, ибо впадлу курсор наводить на метод из которого данные приходят, но есть и пример, кто постоянно использует
>обозначил у своего параметра тип как set
>три раза было сказано, что сет приходит из либы
>в коде и на скрине методы и аргументы названы externalInterfaceMethod / someExternalVariable
Ебать ты гений, чтец 80лвл просто.
>так что это проверка смысла не имеет, другого варианта там и быть не может
Какая проверка, что ты несешь, поехавший? В приложенном коде ровно ноль проверок, просто два метода, перекладывающие аргументы, и несовместимость дженерика, все.
>>37734
>какое-то говно - вот вам сигнатура, менять нельзя
вся идея интерфейсов: ну да, пошла я нахер
>Естественно ответ здорового человека
Ответ здорового человека уже прозвучал и другой здоровый человек принял его к сведению и сделал как считает нужным, вопрос исчерпан. Ты можешь продолжать исходить говном на пустом месте, и не таких клоунов сеть интернет видела.
Правду говорят, в жабатреде до бамплимита лучше не постить.
А ещё уязвимости могут быть внутри библиотек. От закрытого исходного кода много технических проблем.
Какая мне разница откуда приходит сет? Я говорю конкретно от том как ты написала пример.
>Какая проверка, что ты несешь, поехавший? В приложенном коде ровно ноль проверок
Конечно, потому что это больше похоже на псевдокод, который нихера не делает. Но есть комментарии:
//Set != Collection
//Set extends Collection, OK
Логично предположить что разумный человек так обозначает методы, которые должны выполнять эту проверку
>и несовместимость дженерика
Потому что твой каст смысла не имеет. Ты конечно можешь сделать это вот так:
Optional<Collection<String>> castedVariable = (Optional<Collection<String>>) ((Optional<?>) someExternalvariable);
и это будет компилироваться, либо можешь добавить новый метод для конвертации:
public Optional<Collection<String>> castType(Optional<? extends Collection<String>> someExternalvariable) {
return (Optional<Collection<String>>) someExternalvariable;
}
Optional<Collection<String>> strings = castType(someExternalvariable);
но смысла от этого не прибавится, потому что
а) если тебе нужно работать с сетом как с коллекцией - ты можешь это делать и без каста
б) если тебе нужно куда-то дальше передать этот сет как абстрактную коллекцию - ты изменяешь тип параметра у того метода, куда ты передаёшь дальше этот сет
Ты просил объяснить как делать нормально - вот я тебе и объясняю как делать нормально и почему у тебя ненормально
>Я говорю конкретно от том как ты написала пример
Аноны с решениями выше поняли, а ты не понял, это пример в 10 строк виноват. Понял принял.
>Логично предположить что разумный человек так обозначает методы, которые должны выполнять эту проверку
Нет, не логично, где ты такие шизообозначения методов видел?
>если тебе нужно работать с сетом как с коллекцией - ты можешь это делать и без каста
С кем споришь? Где обратное утверждалось?
>если тебе нужно куда-то дальше передать этот сет как абстрактную коллекцию - ты изменяешь тип параметра у того метода, куда ты передаёшь дальше этот сет
Нет, не изменяешь, потому что ты не умеешь читать. Было сказано, что принимающему методу безразличен конкретный тип коллекции, и только ради одного стороннего интерфейса менять тип аргумента на более конкретный это верх тупости - придется всем вызывающим его методам конвертить свои листы и прочее говно в сет.
>Потому что твой каст смысла не имеет
В изначальном примере нет ни одного каста...
>Ты просил объяснить как делать нормально - вот я тебе и объясняю как делать нормально и почему у тебя ненормально
>(Полотно) кода <? с охуительными <кастами>>
...а в коде с рабочим решением проблемы - 1 каст в 0 лишних строк, и тот делегированный на готовый метод класса. Одним словом, твоя деятельность очень к месту и ко времени, мы вам перезвоним.
>обратное утверждалось
>В твоем оригинальном посте
Где, пиздабол? Напротив, было сказано много раз, что нет разницы с какой именно коллекцией работать.
>Это что на пике
Ты подебил, есть касты после передачи аргументов с несовместимыми дженериками. Иллюстрирующие проблему этой самой несовместимости. Можешь еще опечатки в постах поискать, если к сути вопроса доебаться не можешь.
Угомони свой в-интернете-кто-то-неправ синдром, вопрос давно решен и все работает. Уже 3 года прошло, твоей вины в том инциденте нет, пора идти дальше.
Ну чтобы до собеса дойти, чтобы не решать 10 секций алгосов и чтобы взяли.
Пока сами пишут только из галер с аутстафом.
Сам думал про штат в банки, ритейл, телекомы. Ну кроме тинька с его задроством.
>>37110
Как проходят собесы в альфе? Возьмут доходягу типа меня тысяч на 200-250?
При чём тут наследование?
Еще один
https://habr.com/ru/articles/832568/
Чувствую, виртуальные потоки отправятся на доработку и из превью еще долго не выйдут.
Их и не нужно выкидывать. Нужно просто использовать правильно. Защищать ими только мгновенные мемори операции, для чего они и предназначены были с джавы 1.0.
Удаляй нахуй эту говнину и ставь идею.
Зачем вообще использовать затмение? Там же дизайн из 2010 года, а у интела дизайн 2023!!!
Ещё один умник вкидывает термины значение которых не понимает.
Уж лучше дизайн из 2010 как у Eclipse, чем содранное с VSCode минималистическое убожество в IDEA.
Ты просто дебил, который не умеет ни спрашивать, ни читать ответы.
Это где все еще используют thymeleaf? Я был уверен что это устарело еще 10 лет назад с развитием фронтэнда
Во вкатунских туториалах
Да может и завезут, чё ты сразу так.
А у тебя ДТО обновится в вакууме что-ли? Нет, оно обновится и это скажется на каких-нибудь лежащих в глубине @Entity. Т.е. тебе всё равно править ORM-слой, заодно и маппер поправишь. А чтобы не забыл - должны быть тесты.
Mapstruct. Потому что можно увидеть чё он там нагенерировал.
Помню, как благодаря данному треду, на полном серьёзе в 2022 стал бугаенщиком, когда только учился программированию. Всем рекомендую пройти это для саморазвития.
Помню, как, благодаря данному треду, на полном серьёзе, в 2022 стал бугаенщиком, когда только учился программированию. Всем рекомендую пройти это для саморазвития. Главное в неизлечимую шизофрению не скатываться.
Помню, как, благодаря данному треду, на полном серьёзе, в 2022 стал бугаенщиком, когда только учился программированию. Всем рекомендую пройти это для саморазвития. Главное в неизлечимую шизофрению не скатываться.
Помню, как, благодаря данному треду, на полном серьёзе, в 2022 стал бугаенщиком, когда только учился программированию. Всем рекомендую пройти это для саморазвития. Главное в неизлечимую шизофрению не скатываться.
моды для Майнкрафта писать
@
REQUIRENONNULLELSEGET
@
REQUIRENONNULLELSEGET
@
REQUIRENONNULLELSEGET
@
REQUIRENONNULLELSEGET
@
REQUIRENONNULLELSEGET
@
REQUIRENONNULLELSEGET
@
REQUIRENONNULLELSEGET
@
REQUIRENONNULLELSEGET
@
REQUIRENONNULLELSEGET
@
REQUIRENONNULLELSEGET
@
REQUIRENONNULLELSEGET
@
REQUIRENONNULLELSEGET
@
REQUIRENONNULLELSEGET
@
REQUIRENONNULLELSEGET
@
REQUIRENONNULLELSEGET
@
REQUIRENONNULLELSEGET
@
REQUIRENONNULLELSEGET
@
REQUIRENONNULLELSEGET
@
REQUIRENONNULLELSEGET
@
REQUIRENONNULLELSEGET
@
REQUIRENONNULLELSEGET
@
REQUIRENONNULLELSEGET
@
REQUIRENONNULLELSEGET
@
REQUIRENONNULLELSEGET
@
REQUIRENONNULLELSEGET
@
REQUIRENONNULLELSEGET
@
REQUIRENONNULLELSEGET
@
REQUIRENONNULLELSEGET
Кто тебе сказал, что это изучение обязательно должно быть последовательным? В джаве помимо спринга огромное количество тем, мастерство даже без учёта спринга стоит нескольких лет активной работы.
Ну, в свои задачи, просто умножаю реально затраченное время на какое-нибудь число, чтоб более-менее равномерно было.
0. Метод, имеющий плавающий баг и периодически выбрасывающий ошибку.
1. Строка, в которой есть два вызова этого метода.
2. Стектрейс, в котором сказано, что в строке N какой-то из этих методов блюванул.
Как без разделения строки на несколько других строк сделать так, чтобы в отчёте об ошибке содержалась информация о том, какой именно метод был вызван?
Я знаю, что тут в треде сидит если не сам скуфц, то знакомые с ним, скажите ему что в StackTraceElement нужно добавить поле int methodOrder которое бы указывало какой именно метод из одинаковых из строки был вызван.
Ну самое простое - обернуть метод двумя разными по названию и вызывать их в соответствующей строке
Да. Но тут надо уточнить нюанс - ты реально разбирался в проблеме и делал или вола ебал?
Если первое - то лох опущенный, если второе - то молодец и базовичок.
Чепух у меня кореша шарписты в альфе раьотают.
Жявы там минимум. Какая то легаси хуйея которую уже на петушарп переписывают
Й.
написать в сервисе функцию генерации фиксированных айдишников
Написать сервис, который будет передавать порядок генерации айдишников этому сервису
Забей просто. Я серьёзно, пиши код и не выебывайся.
> Какую IDE выбрать для учебы?
Начинай в любом редакторе текста без подсветки и делай все в консоли. Можешь даже код писать в nano
> Какую версию JDK нужно устанавливать для обучения и последующей работы ?
Ставь все lts от 8, нет такого, что учат какую-то одну версию
Там фич новых то на пять минут чтения в каждой версии
1. Год вката.
2. Есть ли вышка.
3. ЗП.
4. Как вкатились.
У меня диплом смотрели. Кусали. Прикидывали, фальшивка или нет.
Сракито.когда(одинсервис.хуемае()).тогдаОтветь(атомикШлонг.увеличитьИВысрать(); )
База,как же я ненавижу мокито
Оно удобное на мелких экранах вроде ноутбука
у меня тож сонарлинт тормозил, вырубил это говно
>Жявы там минимум
Хуйню сам себе придумал и рад.
Никто нахуй не будет переписывать все эти ебучие сотни микросервисов с жабы на шарп.
Жабы тут полно и с каждым днем больше, мигрируем на сб3, ждк 21 и тд и тп.
да, все проиндексировалось. сонар отключил, все так же.
Проснулись нахуй.
24-я идея, кроме последнего вызова в блядской жидеи № 2 твои проблем у себя не наблюдаю, и то это говно убирается через ctrl-alt-l. Хз чё там у тебя за хуйня.
А в мапах переделают? А то там кринж с int size() и long mappingCount()
Охуеть как норм. У нас по 10 минут тесты гоняются.
Пока писал диплом, прочел Spring по быстрому и Spring в действии.
Книги говна, они какую-то часть информации просто пропускают, а что-то просто уже устарело.
Остаётся только сидеть и плакать
на hУйbr-hУйbr
Закрыл таску. Вышел 41 час плюс 8 часов на другую таску что появилась в ходе её реализации.
Почему мне должен сниться зуб с пульпитом?
Дианон по таск трекеру.
Тяжело собраться и вернуться к обучению
Учил долго джаву через джавараш, потом занимался на курсах с ментором, под его руководством писал приложухи, все хорошо шло, но вдруг что-то пошло не так и я остановился, возможно сильно давил на газ ибо и джаве уделял дохуя времени и инглишу кстати в инглише прокачался прямо таки охуенно и все это 6 дней в неделю, хз короче. Вот уже 4 месяца не делаю НИ ХУ Я и каждый день у меня в голове мысль "долбоеб ебаный". Вероятно мне нужно собраться с силами и просто начать, напишу может быть ментору и попытаюсь вернуться с ним в колею.
Часть моего мозга уже ищет оправданий как-бы не пытаться продолжать. А все почему? А все потому что не хочется начать подаваться и обнаружить насколько сильно тебя не ждут и как это ебанет по моей хрупенькой самооценочке, вот этот страх и сидит в подсознании вот из-за него у меня и качели, хотя я понимаю что нужно просто продолжать, день за днем, чуть по чуть, делай что должен и будь что будет.
Как-то так
>джавараш
Их бы забанить за незаконное использование персонажей футурамы, вообще если ты там продержался дольше первого вводного урока с игрой то ты конченный дегенерат.
>если ты там продержался дольше первого вводного урока с игрой то ты конченный дегенерат
Ебать тряска чепушни, ну трясись еще, спидозная дура.
У меня та же проблема была, только не 4 месяца, а 7 лет. С 18 до текущих 25, много раз пробовал ВО, но не мог себя заставить дойти дальше первого курса. Если кто тут и долбоёб, то это я.
Тебе, может, пиздят, что когда постоянно дела откладываешь на потом, время летит. Пиздёжь, вес времени прекрасно чувствуется, просто чем дальше откладываешь, чем дольше закукливаешься, тем меньше понимаешь, что можно по-другому. Наступает момент, когда кроме сычевания ты ничего больше не видишь, думать о дальнейшей жизни у тебя ни сил, ни желания - вот из этого болота выбраться самостоятельно почти невозможно.
У тебя такого пока нет. Я тебе это гарантирую. Но ты благополучно на пути. Скажу даже, что в какой-то степени такая жизнь того стоит - к примеру, ни психически больным норми РАБ-отничком, ни охуевшей от жадности тварью, ходящей по головами, ни политически активной промыткой, ни ебанутым на всю голову доёбщиком до чужих дел и охуительных мелочей мне уже не быть, рнн стаж не позволяет опуститься до подобного уровня. Но ты а) превращаешься в импотентное говно, которое можешь только жить как амёба, б) ты это прекрасно осознаёшь, и это нахуй убивает покой, удовлетворение и счастье от сычевания, самооценка идёт на дно, с) рано или поздно тебя перестают кормить, и ты встречаешься с ирл, будучи полным ничтожеством, после чего тебя ждёт дно работа, высасывающая жизнь и душу, бутылка, глубокая депрессия, мрак, пиздец, гроб гроб кладбище пидор.
Лучше не надо, короче. Гнать себя и выгорать хуйня идея, но каждый день надо что-то делать, пока у тебя не будет при себе хоть какой-то, но заработок и материальная независимость. Потом ебись как хочешь - без замечательных перспектив долгосрочного рнн.
Только не кидайте сюда скопированный текст из Вики и прочих сайтов.
Пару дней назад нашёл в ВК одно такое видео. Почему-то показалось, что такие видео более душевные(не как сейчас - подуреклама школ программирования)
>>43599
Ебать вы шизики. Вам психиатр нужен, а не курсы.
И как минимум задуматься о поиске более подходящего для себя занятия, если программирование не заходит.
Нет интереса на начальном уровне - не будет его никогда. Если тебя не тянет ежедневно пердолить всё это не замечая времени, просто потому что интересно, можешь махнуть рукой и искать себе что-нибудь другое.
Spring нужен для:
Инверсии управления (IoC): Упрощает создание и управление зависимостями объектов.
Модульности: Разделяет функциональность на модули, позволяя использовать только необходимые компоненты.
Простоты тестирования: Облегчает тестирование приложений благодаря слабой связанности.
Упрощенной конфигурации: Поддерживает разные подходы для настройки (XML, аннотации, Java).
Интеграции: Легко взаимодействует с другими технологиями (JPA, Hibernate и др.).
Управления транзакциями: Обеспечивает простое управление транзакциями.
Аспектно-ориентированного программирования (AOP): Позволяет отделять кросс-кумулятивные аспекты от бизнес-логики.
Широкого сообщества: Обширная документация и поддержка сообществом.
Эти возможности делают Spring отличным инструментом для разработки масштабируемых и легко поддерживаемых приложений.
а хули ты хотел с таким ебанутым вопросом
Затем, чтобы решить проблему раздувания кода до невообразимых масштабов при использовании подхода внедрения зависимостей. Плохое это решение, правда.
У того анона интерес есть, но он трясётся. Я ему просто обозначил, что будет, если он тряске будет продолжаться поддаваться - произойдёт окукливание со всеми вытекающими подливами. Пусть осознаёт.
>не придумали
Разве что не сделали стандартом. Создать хорошую концепцию гораздо легче чем добиться того чтобы эта концепция понравилась заплесневевшим скуфам и полоумным порриджам и привести её не просто к реализации, но и к становлению стандартом. Если копнуть, явно найдётся множество альтернатив спрингу с 20 звёздами на гитхабе.
Часто бывает так что "хорошая" концепция внезапно становится говном при попытке ее обобщить на разные проекты. Или в итоге становится ровном тем же что и так уже есть в спринге.
Да и дело не в скуфах, а скорее в индусах. Скуф может освоить что то новое по гайду, индус из манги - нет.
Упрощать разработку... А ты что ожидал в ответ услышать?
Какой стесняшка
Найми охранников
Вот че эти собеседующие хотят, когда спрашивают про опыт с многопоточкой? Да, в томкате до 200 потоков умею крутить, это уже много?
PECS
У меня тоже самое было. Периоды, когда вообще ничего делать не могу по пол года. Внезапно спас спортзал. Я хуею, что эту годноту от меня скрывали всю жизнь, но спорт реально дает дохуя энергии. Я по три дня в неделю тягаю штангу и потом на месте уседеть не могу, не делая что-то полезное для ума. Да еще тело стало здоровее и сильнее. Советую попробовать, может быть поможет
Иди нахуй со своими говносоветами, тем более когда их не спрашивали.
https://www.youtube.com/watch?v=MWw1jcwPK3Q[РАСКРЫТЬ]
Почему Version Catalogs нет как в андроид студио для проектов gradle в intellij idea? Что я имею в виду, там по умолчанию в андроид студио ругается и подсвечивает жёлтым и предлагает автоисправление на version catalog , а в интеллидже нифига.
https://docs.gradle.org/current/userguide/platforms.html
> 1. Год вката.
2024
> 2. Есть ли вышка.
В процессе получения
> 3. ЗП.
40к
> 4. Как вкатились.
Через препода
не было бы 1с, ты бы без колбасы сидел
Поддвачну вопрос
https://www.youtube.com/watch?v=vSNo_bkOvvE
>Значит что-то есть всё-таки.
Я в основном либы щас старые опенсорсные обновляю из опенсорсной активности, ничего нового и особо красивого там нет.
Devstyle Darkest Dark Theme
Есть такая поговорка, больше всех кричит и плачется после преступления сам преступник, а не жертва. Она уёбищная, поговорка, но тебе в самый раз.
Ну и нахуй тут это?
Почему ты сам видишь. Я же скажу что так и должно быть.
Потому что у тебя ссылка RoundGlyph и он ищет метод draw в первую очередь там
Ты вообще свой совет проверял?
>>44852
Если ты вызываешь виртуальный метод, то всегда будет вызван метод текущего класса this. Если это не нужно вызывай не виртуальный метод, например приватный или final. Единственное исключение это когда ты делаешь вызов super.draw() тогда вызовется метод предка.
Зачем ждать, когда можно пользоваться божественной эклипсой
> Зачем вообще использовать затмение? Там же дизайн из 2010 года, а у интела дизайн 2023!!!
Ты софтом пользуешься, чтобы он был красивым, или чтобы выполнял задачи? Ты тян что ли и к ноготочкам дизайн не подходит? Прекращай, это нелепо.
Эклипс всегда был и остаётся самой ламповой иде
И почему вообще дизайн 10 года это плохо? Хорошо было в 10 году. Да и в нулевых было хорошо. Доллар по 30 рублей, группа тату, всё так свежо, и будущее светлым казалось. Уже не будет такого никогда. А в эклипсе все очень красиво.
>Зачем вообще использовать затмение?
Контора отказалась решать проблему с подпиской на жейтбруйнс айдии и сказала всем перейти на бесплатные среды разработки
Это же тот лс-ный хуесос из тинька, перерассказывающий умные книшки еще более днищистым лс-ам? Потужно, очередно еблан из тинька по типу получленова клоун, проектирующий любую систему за 30 минут, правда почему-то ни одной системы он в жизни не писал, а программисты из петухунька не могут правильно перемножить 3 цифры, из-за чего их ебут клиенты на миллионы баксов на курсовой разницы, ох лол
>>Это же тот лс-ный хуесос из тинька, перерассказывающий умные книшки
Так гости вполне валидные часто бывают и делятся опытом. Его то мнение ясен хуй никому не нужно.
>>клоун, проектирующий любую систему за 30 минут, правда почему-то ни одной системы он в жизни не писал
Так он же рассказывает, чтоб собес на 400к+ пройти. Суй примерно тоже самое пишет.
>>программисты из петухунька не могут правильно перемножить 3 цифры, из-за чего их ебут клиенты на миллионы баксов на курсовой разницы, ох лол
Так это бизнес аналитики делают. Программисту то хуле - как сказали так и сделал. Или ты из тех кто в свое личное время будет что то допиливать мимо жиры лишь бы лидер рынка не обосрался?
Как оплатить подписку жэтбруйнса, ммм?!
а по делу?
>Это же тот лс-ный хуесос из тинька, перерассказывающий умные книшки еще более днищистым лс-ам
Ну, книжных клубов есть много. Например, у Devoxx тоже есть книжный клуб.
Их смысл в обмене опытом на базе книжки. Эффективнее, чем читать одному.
Это неправда. Я без покдолов, что на нём пишут?
>Поясните за яву, что на ней пишут кроме микросервисов, плес.
Приложения под андроид, очевидно же.
Понский пон, посеба
Сейчас бы свои креды передавать левому челу, чтобы тот купил подписку, лол
А потом он этот ключ продаст еще десятку таких же лохов и ты словишь бан в рандомное время, когда жиды это спалят.
Самые тупые и вовсе покупают ключи университетов, которые в открытую в инете выкладывают.
>ключ
Там хуже. Ты передаешь ему креды от учетки, он заходит в нее и оплачивает своей картой подписку
>учётка создаётся на стороне продована
Еще хуже, лол. У тебя по кд синкаются всякие ключи, токены и креды в разные сервисы по типу гитхаба или ключи для доступа к репам в гит репазитариев. Тебя хэкнут в любой момент
Кому нахуй нужны репозитории с каравашками.
так это ты ведь трясешься, у меня бесплатная ультимейт версия, которая не требует оплаты
А если у меня оплачена с августа 23 до августа 24 года, то какую версию я могу скачать, чтобы не обновлять потом? Последнюю 23ю?
И майнкрафт ещё
Не будет. Жейтбруйнсы уже начали блочить учетки даже у тех, кто сидит на фоллбек с 22 года
>Object.clone()
>отдельная библиотека
>фабричный паттерн
Охуенно. Решил свой интерфейс с клонирующим методом запилить и запрашивать его в аргументах конструктора.
Но все мучает вопрос, как что-либо писать ?
Первый проект, я смотрел по видосам из ютуба, и они создавали архитектура проекта.
Но вот я захочу сделать например свой сетевой чат, и с чего начать ?
Как научиться проектировать приложения ?
Прочитав Философию Java 4-изд. все равно остаётся осадок, как будто чего-то не хватает.
И ты понимаешь, что ты не можешь применить все-то что знаешь, по тому что не можешь сформулировать задачу точно.
Или тут просто Алгосы помогут справиться с этой херней ?
Сразу в тимлиды иди
В интернете полно статей и видосов с написанием своих проетиков на спринге. Посмотри 2-3 и сделай свое по аналогии.
На русском самый популярный это sweater у letscode.
>Нет, они рендерят на гпу прямо как игрушки, это буквально иде для геймеров.
Ебать космические технологии нет
Браузеры а значит и Электрон давно используют GPU рендеринг, да и WebGL тоже есть.
Это копия, сохраненная 1 ноября в 05:34.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.