Это копия, сохраненная 11 марта 2023 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
Вики по вкатыванию в джаву: https://github.com/java2ch/java-thread/wiki
Предыдущий: >>2562960 (OP)
Нашёл более-менее разумную для начала схему: https://www.objectsbydesign.com/projects/calc/CompleteModel.gif
К этому еще надо добавить скобки для приоритетности операций, автоматическое переключение разрядности (8-16-... знаков на экран) и откат операций.
Все хуйня нерабочая, моделировать заново?
Это я создатель веб-приложения про каравашки!
Это я создатель веб-приложения про какашки!
кто то еще этим пользуется в 2023?
>задача какого уровня владения паттернами
Нет никаких уровней владения паттернами - ты их либо вообще не знаешь, либо знаешь и разумно пользуешься ими, либо пытаешься вообще в любую залупу пролезть с этими ебучими паттернами. Первое и третье - крайности, которые нужно избегать.
>Нашёл более-менее разумную для начала схему
Выглядит слегка оверкильно, но в целом ничего фатально неправильного в ней не увидел. Многое зависит от того, как ты видишь себе работу пользователя с этим калькулятором.
>>Нет никаких уровней владения паттернами
Я их плохо знаю, но уже вижу, что здесь есть Command, Memento и Observer.
Я пытался самостоятельно смоделировать логику такого калькулятора и там масса нетривиального для меня.
>>как ты видишь себе работу пользователя с этим калькулятором
Пользователю доступны все кнопки из интерфейса виндовского калькулятора, а я отрабатываю каждое действие.
Плюс, в моем варианте на дисплее отображается история операций и можно откатываться по этой истории.
>>Выглядит слегка оверкильно
Я бы сказал, что это еще укрупненно.
Хотя, мне нравится, что вывод промежуточного результата операций тут можно отображать по нажатию любой из кнопок [+, -, и т.д., а не только = ], но на случай ввода скобок [2(2+2)], думаю, не обойтись имеющейся тут схемой precedence - LOWEST-HIGHEST.
В более примитивных вариантах делают токенизацию и обрабатывают строку только после нажатия '='.
Ещё, надо бы валидировать ввод и вывод. Я не уверен, что надо все пердолить в BigDecimal с точки зрения эффективности..
Например,
3,2 + 4,8 = 8
а не 8,0
и
8,9998,8 - вторая запятая не валидна
Ну и повисшие на схеме Percent, Clear и Equals тоже не нравятся.
Equals, по идее, должно повторять предыдущую операцию с теми же операндами, а в Command они все внесены для того, чтобы иметь возможность отката на шаг назад (так ведь?).
Переходим все на Python и Django. Будем интернет-магазин с дилдаками создавать
Передавать URL картинки.
/
<p>Проверяет, допустимый ли ход.</p>
<p>Например, чтобы задать ход e2-e4, напишите isValidMove(5,2,5,4);
Чтобы записать рокировку, укажите, откуда и куда ходит король.
Например, для короткой рокировки чёрных запишите isValidMove(5,8,7,8);</p>
*/
А если я хочу вот так закомментировать код в своей библиотеки ?
//вот так
Или напишите как правильно...
> хочу вот так закомментировать код в своей библиотеки ?
>//вот так
Делай, в чем проблема? Строчные комменты поддерживаются.
Просто учитывай что есть просто комменты (блочные, строчные), которые остаются в коде и никуда за его пределы не идет. И есть джавадок-комменты (блочные комменты с началом блока в слэш две звездочки, располагающиеся исключительно над классами, полями и методами), на основе которых джава умеет джавадок-документацию генерить.
Я б просто парсер на antlr'е вкорячил. Он бы мне и прецеденс учел, и невалидный ввод.
JavaDoc потому что. Ты Шилдта вообще читал?
Как?
Это зеленые комменты, которые приятнее читать чем серые. В теории из них можно генерить джавадоки, но я не знаю тех кто бы их читал в отрыве от кода.
Спасибо! Я посмотрел, но помимо того, что это сторонняя библиотека, есть два аргумента против:
я работаю с числами, а не с символами;
у меня учебный pet и надо разобраться без магии
Срезидент калыч?
Я держу 8, 11 и 17 джавы. Нахуя мне сырые сборки для бета-тестов?
>я работаю с числами, а не с символами;
Это не делает большой разницы. Вводишь то ты все равно текст.
>у меня учебный pet и надо разобраться без магии
В антлре ее практически нет. В нем нет одной аннотации - только язык описания грамматик и кодогенератор парсеров на джаве. Все - натуральное Java SE.
В целом ты прав по своему, и, разумеется, делай как планировал делать. Но антлр ради самообразования изучить ИМХО прикольно. Будешь знать как интерпретаторы пишутся. Иногда пригождается.
Вероятно разрабы-дегенераты захардкодили ограничение на конкретную версию.
Я с таким в дикой природе сталкивался, когда ставил сервер майнкрафта на ядре paper 1.16.5. Там только 16 джаву можно было использовать, не выше, не ниже. Дегенераты. Я тогда знатно из-за этого погеморроил.
Как написание парсера приблизит меня к пониманию Спринга?
Парсеры писал ещё в студенческие годы на С++. На джаве даже ftp-клиент как-то написал. Но вот сейчас застрял на этом тупом Спринге.
Этот додик не написал, что у него не работает.
>>75079 (Del)
sdkman
Там кстати еще есть охуенная штука mvnd, которую почему-то до сих пор никто не прикрутил к идее.
>1. Норма это в мире Ява?
Моветон, за который надо пиздить палками. Спрингокульт, как раковая опухоль на теле джавы, не в счёт.
>2. Как вы на одной машине разные JDK держите?
Просто установил все JDK от 6 до 19 и всё. По мере выхода новых доустанавливаю. А в чём проблема?
Я один раз пишу скрипт-запускатор, в котором указываю путь к нужной JDK, и кладу его рчдом с жарником. Мне не надо устанавливать 50 программ на джаве в день, чтобы это было проблемой.
>>I don't think we have any plans to support non-LTS (Long-Term-Support) versions of the JDK such as Java 18, no.
Все логично, зачем поддерживать всякое хипстерское говно, которое использует полтора анона?
На спринг буте делаю рест хуйню с одним эндпоинтом, когда буду дергать его, спринг будет в цикле создавать n количество объектов (в классе которого ещё будут статические поля).
Норм тема или херню придумал?
https://github.com/neo4j/neo4j/blob/c082e80b792d46ad1b342fbf7f1facb2028344c6/community/kernel/src/main/java/org/neo4j/kernel/info/JvmChecker.java#L33
Ахахах, реально. Пометил себе neo4j как неюзабельное говно.
Потому что жопорукие дятлы.
>То что у тебя не WebSphere.
И как это должно помочь мне? Спрашиваю чтобы разобраться, ни разу не троллинг тупостью
А нахуя? Всмысле - что конкретно добиться то хочешь, создавая эти n обьектов? Ну забьешь в определенный момент хип, джава скажет "память - все", дальше что?
Недостаточно детально идею расписал, звучит как конь в вакууме пока что.
Ну смотри, прочитал я тонны статей на тему того как работает память в JVM, а толку от прочитанного, хочу на практике увидеть это. Есть джметр, буду им держать нагрузку в N времени, потом поковыряюсь в опциях и посмотрю насколько смог поднять производительность
Даю подсказку: если выкинуть спрингопарашу, то производительность вырастет до 133330000%
Ну вообще ИМХО - да, ты планируешь позаниматься хуйней.
Если вкрадце, бенчмаркинг и тюнинг производительности - не хуй собачий. Чтобы делать правильные выводы на основе измерений, нужно сделать правильную постановку эксперимента, а чтобы делать правильную постановку эксперимента, нужно неплохо так знать кишки JVM, угарать по контенту от всяких перформанс инженеров типа Шипилева и уметь дизайнить бенчмарки так, чтобы они были изолированны от влияния сайдэффектов. Либо, имея на руках реальное боевое приложение, уметь собирать с него метрики и делать на их основе правильные выводы. А у тебя ни конкретно постановки эксперимента, ни реального приложения. У тебя просто какой то абстрактный конь в вакууме, "давай я GC нагружу, поковыраю опции и посмотрю что будет". Про что это? Все выводы, которые ты сделаешь для себя, скорее всего будут применимы для этого коня в вакууме, но не факт что для реальной приложухи на спринге.
Возьму на вооружение, star в github, спасибо тебе!
Ну звучит разумно, а как мне тогда попрактиковаться с JVM анон? Или для джава разраба достаточно знать об устройстве JVM только в теории?
>для джава разраба
Бля не корректно выразился, имел ввиду что для джава разраба уровня джун/мидл позиции, который пишет на спринге веб сервисы
Если просто потыкать JVM в абстрактном вакууме, то для начала выучить JMH и научиться на нем ставить эксперименты, мне это так видится. Помочь в этом могут Шипилев и его блог с докладами.
А вообще - я б не сильно окунался в эту тему до тех пор, пока конкретная нужда не встанет. Вот будет у тебя конкретный сервис выбиваться из под SLA - начнешь разбираться и думать как его туда вернуть. Потому что в реале не всегда рут коз тормозов именно в джаве. Возможно у тебя в базу боттлнек. Либо один сервис регрессировал из-за того что второй сервис-зависимость первого перегружен и отвечает медленно (у меня такой случай был).
спасибо анон, тонны чаю тебе!
Сап. Хочу с фронта перекатиться на бек, на котлин. Хочу написать какой-нибудь простецкий апи, чтобы разобраться. Что посоветуете?
Котлин хуетлин 😀😀😀😀😀😀
Он дохлый. Да и какая разница, вопрос по архитектуре скорее, что можно написать как пет проект. У нас в команде микросервис на котлине и питоне
Напиши контрольно-учетную систему залупок
Каков тред - таков и язык.
Почему тогда я прочитал книгу Философия Java и смог разобраться, а по книгам по Спрингу - нет? Очевидно, что книги плохие.
Особенно конфигурация бобов в xml настолько простая и интуитивная, что я долго был в шоке и не мог поверить, что это реальность, а не какой-то розыгрыш. В каком бредовом сознании вообще могла появиться идея заменить операцию new на внешние xml-файлы!?
Типа асп нет такой маленький и бедный на функционал, что в одной книге можно описать и концепции и кишочки и даже примеры использования?
Да именно на хмл она интуитивная. Поэтому с нее до сих пор многие начинают объяснять работу контекста. Хотя она очень давно используется только в легаси.
Так я же сказал уже, необучаемый ты просто, вот и не смог разобраться.
>прочитал философия java
>смог разобраться
Понял всю джаву за одну книгу. Про таких говорят блаженный.
>>75821
За все мои 3 года крудошлопства серсвисов в mvc и webflux мне ни разу не пришлось в xml конфигурить бины. Но не вижу ничего плохого если это будет нормально работать
Если учесть, что половина любой книги по Спрингу - это конфигурация бинов и АОП, то вместо них можно поместить что-нибудь более практичное и полезное.
Так да, XML неинтуитивный, поэтому никто им уже не пользуется. Все давно перешли на Java-конфигурации
Ничего подобного по Спрингу нет. Соответственно, учащийся никогда самостоятельно до такого уровня не дойдёт, потому что это коллективный опыт программистов за последние 30 лет разработки.
>30 лет разработки
>в одну книгу
Ебало шарподебилов, труд всей жизни которых можно уместить в одну книгу имджинировали? Я так понимаю chatGPT первым делом заменит шарпистов
Я так понял, что в джаве учатся через платные менторинговые курсы как у Сергея Немчинского. Самостоятельно вкатиться невозможно. По этой же причине никто не заинтересован выпускать книги, чтобы делится знаниями. Выгоднее постоянно набирать себе учеников. Цены тоже не малые от 100к руб, хотя слышал, что кто-то берёт и по 300к.
Почему я в свое время в джаву вкатился, не заплатив ни копейки?
Ебаные вы нытики блять. Деды вообще в C++ вкатывались во времена, когда не то что курсов: интернет сука диал-ап был, и ниче, вкатились. Сегодня все у вас есть - и ИДЕхи с продвинутым интеллисенсом, и гугл со стековерфлоу, даже чатгпт потихоньку учится на вопросы отвечать корректно, а им все туда же - разжуй и в рот положь.
Тогда брали всех. Можно было придти с корочками универа или даже технаря какого-нибудь и тебя брали даже без знания языка.
Ну значит все, поезд ушел уже, забей, хули. Щас нейросети дообучатся как следует, задерут порог вхождения вкатунам еще выше, а там глядишь и до ебаной технологической сингулярности недалеко. Понастальгируешь еще по спринговым анноташкам.
Представим что у нас есть 2+N сервиса, общий домеин это документы и их проверка.
Первый сервис будет принимать данные которые вводит юзер с фронта и так же отсылать на фронт что приходит пониже.
Второй выступает в роли process layer, фронт в него будет посылать реквесты, а сам он будет командовать сборищем sys сервисов. Они то и будут этим N. Эти N сервисы будут работать с третьими лицами и обратно получать json объекты.
Если я правильно понимаю, то мне нужно копировать DTO классы в 1 фронт сервисе, во 2 процесс сервисе, а так же держать и в соответствующем N сервисе?
Наверно косноязычно выразился, но просто то, что приходится копипастить один и тот же DTO со всеми внутренними классами в 3 разных сервиса как-то пованиет. Может это я неправильно понимаю сути использования
>Может это я неправильно понимаю сути использования
Да
>приходится копипастить один и тот же DTO со всеми внутренними классами в 3 разных сервиса как-то пованиет
Да
типа сидишь отвечаешь на бесконечное кол-во вопросов и если ошибся тебе отвечают что не так и почему и как правильно?
Двачую
Другой не нашёл
Если ты хочешь выучить все, что писали до тебя, как раз затем, чтобы тебе не обязательно было все учить, значит ты просто не умеешь абстрагироваться.
Ниче он не хочет выучить. Он отрыл этот баян времен JavaEE 6 (JBoss, ага) чтобы очередной раз доебаться до джавы.
Иди к людям с конкретными вопросами, и не веди себя как совсем уж беспомощное чмо. И будет тебе инфа. А то удобно устроились блять - то книг им накинь, то курсов, то расскажи че на собесы заучивать. А потом еще выясняется что непонятно нихуя... Все за них разжуй и проглоти.
Из за санкций кучу народа поувольняли, щас они все ломанулись в айти под улюлюканье инфоцыган с мотивашками, что надо откликаться на все подряд.
>>76798
Да, но нахуя? Там 50 слоев абстракций накрутили, чтоб тебе самому это делать не пришлось
>>77363
>>никто не делится инфой по Спрингу
Спринга на самом деле не существует.
Почему мы пишем <? extends Type>, но читать мы можем Type и его предков, хотя логично было бы понимать такую конструкцию как наследников, потому что при определении наследования класса пишется:
class ? extends Type
Соответственно и с <? super Type> всё наоборот получается, что может писать Type и наследников, а не предков. Хотя super очевидно указывает на предков класса.
А может это ты шарподебил и мешаешь нам, джавистам, спокойно общаться?
>Из за санкций кучу народа поувольняли, щас они все ломанулись в айти под улюлюканье инфоцыган с мотивашками, что надо откликаться на все подряд.
Вот инфоцыган тоже надо на фронт отправить
Цыц, сердобольный
Твоя ошибка - в том, что ты пытаешься осмыслить сабж как содержимое какого то контейнера, хотя на самом деле сабж - это просто про проверку типов.
>Почему мы пишем <? extends Type>, но читать мы можем Type и его предков, хотя логично было бы понимать такую конструкцию как наследников
С точки зрения содержимого ты прав - коллекция с <? extends Type> действительно содержит либо сам тип, либо его наследников. Но подумай вот о чем:
Представь - ты держишь референс на List<? extends X> и вызываешь на этой коллекции метод .get(0) (получить первый элемент этого листа), а результат присваиваешь в переменную. Ответь себе на вопрос - какого типа будет эта переменная?
Типа "либо X либо его наследники"? Такого не бывает, переменная должна быть конкретного типа.
Типа "X1 который наследник от X"? Но что если первый элемент этого листа - не наследник а сам X? Или некий подтип X2 который тоже наследует от X но не является X1? Разрешать такое было бы противоречием с точки зрения системы типов.
Вот так и получается что читать из этой коллекции ты можешь только X.
Я вкатывался, просмотрев ровно ноль курсов. Читал книги, делал петы. Взяли на работу на первом же собесе. Мне кажется, ты пиздец слаб, если тебе нужно все в рот положить и за тебя же разжевать.
нужно читать - у тебя продюсер, используешь <? extends X>. Класть туда ниче нельзя. Только null. А прочитать можно X и его родителей
нужно писать - у тебя консюмер, используешь <? super X>. Считать ничего нельзя, только Object. А записать можно X и его потомков.
Нужно и писать и читать пишешь просто <X>.
Запомни это и всё
1) Побилдить на хосте и скопировать артефакт COPY build/lib/my-yoba-1.0.0.jar ./app
2) Использовать multi-stage build, в первом stage поблидлить со всем необходимым окружением, во второй скопировать jar-ник
Хуй знает, по мне так оба стула выглядят ПРИМЕРНО одинаково, возможно лишь в плане пробрасывания град-кеша есть разница, чтобы билды по скорости были одинаковые.
Какие плюсы/минусы вы видите, я чет ЗАЛИП блядь с этой штукой?
И как же ты выбирал по каким технологиям читать мурзилки? С каких начать, какими продолжить? На на одном баелдунге десяток тысяч мурзилок. А есть сотни других сайтов с мурзилками.
>И как же ты выбирал по каким технологиям читать мурзилки
Брал самое популярное с хабра и тому подобного.
>С каких начать, какими продолжить
Смотрел роадмапы.
>На на одном баелдунге десяток тысяч мурзилок. А есть сотни других сайтов с мурзилками.
Читал первые строчки выдачи гугла.
Отклеилось
>Только понахватался инфы из интернета о модных маст хев фреймворках типа спринга и хибернейта. Кстати, достаточно ли знать что-то одно из этого?
Нет, они идут в связке, учить придется оба.
А что значит учить? Помнить все методы наизусть? Или достаточно понимать суть и уметь это использовать, периодически обращаясь к гуглу?
Спасибо за твой пост.
Когда я читаю такие посты мне становится легче.
Чел учил информатику в школе, сдавал по ней егэ, отучился 4+ года, писал какие-то там петы и все равно настолько бесконечно далек от вката. Настолько, что не пониает что спринг и хибер это фреймворки вообще для разных вещей.
А я в 30 лет впервые открыл для себя в чем суть различных систем счисления, а через полтора года уже вкатился на сотыгу.
И еще через 2 поучаю джунов и стажеров, которые смогли вкатиться или сразу после вуза или еще незакончив.
Если уж они мне кажутся тупарями, то боюсь представить как пришлось бы помучаться с тобой, если бы ты прошел собес.
Второе. И знать ответы на классические вопросы с собеседований.
Способ №1 выглядит как способ собрать докер образ для уже сбилженной и зарелиженной ранее джарки.
Способ №2 выглядит как способ сбилдить докер образ с голых сорцов.
Какую конкретно задачу решаешь, такой способ и выбирай.
https://github.com/Raiffeisen-DGTL/cib-interns-test-task
Нужно уметь быстро сделать что-то на уровне этого тестового на спринг+постгрес+хибер.
Не понял к чему ты это высрал. Ты сам пишешь о том, что все люди разные, но именно на мне акцентируешь, что я "пиздец ни на что не способный даун" просто потому что не стал за 3 недели мидлом по яп, с которым ранее не был знаком? Учи своих олимпиадников тогда, которые фреймворки не отличают, лол. Я так понял, язык у тебя с ними налажен. Реально, к чему ты это написал вообще?
Спасибо за инфу. Задача ясна и я похожее уже писал, но на джаве такое сейчас не напишу. Надо подрочить ее все же... Но она объемна что пизда
Ну а зачем ты тут свою биографию расписал? И про свои психологические проблемы про потерю интереса?
Про огромный объем инфы в жабакоре после практики на плюсах.
Ну я завидую просто людям с айтишной корочкой. Тоже хотел в 10 классе поступать, но стало лень учить информатику и в итоге гуманитарное говно закончил.
Поныл? Пошел нахуй.
https://www.entrofi.net/spring-boot-spring-data-jpa-backed-up-with-docker-database/
Какой там объем? Ну вот все есть в статье на пару тыщ символов.
Ты какой-то самовлюбленный дурачок. Завидуешь корочкам, но сам уже устроил свою жопу в тепло. Еще мимокроков буллишь. Ты гнилой чел. Сиди уже и радуйся. Я уверен, есть полно людей, которым ты даже в подметки не годишься, хотя у них могут быть проблемы с самооценкой, которая им всю жизнь портит. Не думай, что ты уникален. Твоя уникальность - это всего лишь сбой матрицы.
Вот вы приходите в джава тред и задаете один и тот же вопрос снова и снова и снова: "как вкатиться", "что спрашивают на собесах", "какие требования предьявляются к джуну". Спрашиваете у каких то рандомных челов, среди которых, судя по статистике, 60% такие же вкатуны, 39% - одебилевшие шарписты, которым на религиозной почве неймется, и 1% - диды, вкатывавшиеся на свою первую джава вакансию лет 5-10 назад, когда вводные были совершенно другие, и сейчас пануют в миддлах-синьорах с отрубленной в ноль эмпатией и пониманием того, какие вообще проблемы и вводные стоят перед вами (ну серьезно - первый вкат вхолодную и последующие вкаты со стажем - два абсолютно разных экспириенса, которые меняются из года в год).
Какой смысл? Разве не проще просто взять и пойти в гугл, взять оттуда рандомный роадмап, из роадмапа взять литературу, и тупо ее штудировать? Спиздить (или даже, прости господи, купить) курс с ютуба? Поднять связи и найти знакомых миддлов-синьоров которые дали бы рекомендацию? Найти типовую задачку в интернете (похуй, даже не пет), попробовать ее решить как умеешь и прийти в тред уже с конкретными вопросами по джаве и архитектуре?
Или вот "что спрашивают на собесах"... разве не проще... ну не знаю... взять и сходить на собес например? Посмотреть что там вас спросят? Гарантированно зафейлить собес но получить инфу напрямую от первоисточника вместо пуда троллинга, приправленного щепоточкой откровенного пиздежа про "рыночек все", высранной троллями с целью вас подемотивировать? Ок, я могу себе представить что до собесов дойти это отдельный челлендж, но в таком случае разве не проще сначала сходить в тред хрюш (вроде ведь есть такой?) и разузнать там как подать себя правильно и оформить резюме?
Какой смысл мусолить эти вопросы в джава треде снова и снова и снова? Что это - торг, как третья стадия принятия? Поиск положительного подкрепления и оправданий?
Если брать отдельно взятую задачу, такую же по сложности, как и эта статья, то да. С таким же успехом можно найти и взять готовый код своей задачи, и решить, что ты освоил джаву. Вот только это нихуя не так. Для меня освоить язык - это хотя бы в 80% стандартных библиотек уметь ориентироваться и знать где что лежит, и для чего оно применяется, когда применяется, и где применяется. А современные подходы к разработке уже обязывают тебя знать кучу другого говна, без которого ты просто не нужен никому.
И как, работает?
Я б наверное в запой бы уже ушел от ублюдочности бытия вкатуном в двощевом джава-треде.
Не знаю, я вкатился давно, сейчас синьор (мидл), сижу пержу и плюю на всех в треде.
Чел. Пытаться объять необъятное это путь к перегоранию и провалу.
Например. Вот есть многопоточка. Есть примитивы - мьютексы, семафоры. Есть synchronized и volatile, есть треды. Есть более высокоуровневые тредпулы, комплитаблфьючи, канкаренси коллекции. Это куча инфы. Там еще нужно понимать модель памяти джавы и всякую разную теорию с локами. Если прям понять это нужно несколько сотен часов.
Джава джун из этого может встретиться разве что с фьючами в асинхронных апишках разных. А скорее всего не встретится ни с чем.
И еще куча всего, что тебе никогда не пригодится.
Ты возьми, скопипасть код той статьи. Запусти, поменяй апишку, покрути. А потом начни читать что значит каждый класс и ключевое слово. Это хоть и примитивно, зато нужно всем.
ASP.NET Core MVC 2 с примерами для профессионалов. 7-е издание [2019] Адам Фримен
https://vk.com/doc44301783_599053387?hash=iVe3u1S6DTDVpJmaKMkKLxHDFnmpZUTnpFPwASnSgzc
Вот шизофрения.
Я считаю, что надо уметь общаться с сообществом по твоим интересам, это гораздо быстрее даст ответ или подтолкнет в нужном направлении поиска.
Роадмапы (по Java) все тухлое говно, которое написал индус в каком-нибудь 2016 и с тех пор другие индусы раз в два года копипастят. Вообще не советую как-либо использовать их в планировании.
Вопрос к самим шарпистам. Я хз.
>>77984
Я тоже считаю что надо уметь общаться с сообществом. Но я также считаю что общение с сообществом начинается с уважения к сообществу. Если человек не приложил никаких усилий для самостоятельного решения своей проблемы, если все плоды этого сообщества (типа роадмапов, книг, курсов и прочих гайдов) человек огульно записывает в "говно" которое "априори непонятно новичку", не приводя даже конкретных ссылок и причин, почему он так считает, сообщество закономерно его отторгает.
Анона, очевидно.
>>Какой смысл? Разве не проще просто взять и пойти в гугл, взять оттуда рандомный роадмап, из роадмапа взять литературу, и тупо ее штудировать?
Ответ был на этот странный тезис.
Наверное, ты не в курсе,
<---- роадмап это пик
Apache Commons, конечно же.
Ебало того, кто следует этому роадмапу представили?
Ща бы учить эклипс блять ору, а с javafx просто пополам трескуюсь.
>hibernate
>essential
>jpa
>optional
Так затролить вкатунов ещё уметь нужно. Я даже сохраню этот пик, буду вкатунам кидать, пусть линукс вместо жабы учат
Ой, да как будто я этот пик не видел.
Помимо пика обычно к роадмапу даются пояснения. И даже если пояснений нет либо они не устраивают - есть гугл, всегда можно нагуглить синие квадратики.
По поводу претензий к тому, что в роадмапе может бить пиздеж, он может быть неактуален и там может быть вода. Вау. А анон спиздеть не может чтоли, так? Да, любой роадмап это субьективщина, а вы что хотели то? Но если в конкретно эту картинку вложен труд и время ее мэйнтейнера, вопросы нубов из разряда "что учить" --- это литералли просьба написать ровно тот же роадмап, но с нуля при нулевых вводных. Задавая такие вопросы, вы че - серьезно верите что аноны не будут отвечать на них на отьебись?
Все, что ты перечислил, нужно знать хотя бы на поверхностном уровне. Знать что это где-то есть, знать для чего это можно использовать. Лезть внутрь жвм, разбирая как все вышеописанное устроено - это скорее даже не мидл... Я например, за ту неделю, что пытаюсь узнать джаву, решил попробовать пройти рандомный тест на знание языка. И я поплыл на том, что не знаю для чего Predicate нужен, и что значит System.out::println. Хотя, я уже к тому моменту ознакомился с базовыми коллекциями, даже узнал, как устроен HashMap и HashSet внутри, и заканчивал знакомство с потоками. И что ты думаешь по этому поводу? Мое ебало примерно каким представляешь?
>System.out::println
Я надеюсь, что тебя смутило именно ::, а не что такое system.out.println? Если последнее, то я твоё ебало не в силах имаджинировать.
>Predicate
Сам хз, круды шлёпать не помогает, бизнес валью тоже не даёт.
мимо
Да, :: смутило. Еще больше смутило, как оно в каком-нибудь forEach работает, без указания аргумента. Какой-то синтаксический сахар хитровыебанный, скорее всего...
А вот такой прикол?
void method() {
System.out.println("dadsasd");
https://dadasdasas
return;
}
Что произойдет, если вызвать метод? спойлер я вообще не предполагал, что в джаве есть аналог goto, поэтому решил, что даже не скомпилится
Даже, если это все на практике нахуй не нужно, какой-нибудь красноглазик на собеседе вероятно захочет подрочить меня подобной хуйней. Поэтому, как готовиться ко всему этому, хз
Орунахуйбляяяя... какой ублюдок додумался такое на собесе спросить)))
>Поэтому, как готовиться ко всему этому, хз
К этому можно подготовиться лишь морально - всегда остается вероятность что тебе на собесе попадется душнила либо маньяк-социопат.
Это какие-то крайне изъебистые тонкости из сертификации по жабе. На собесах тебя такое будет спрашивать только тот, кто хочет тебя завалить. И в любом случае завалит. Это юзлесс. На такое говно время тратить не просто бесполезно, а вредно. Ты этим отнимаешь у себя кучу времени на обучение писать круды.
И :: - ссылка на метод
и Predicate - подвид функционального интерфейса
и forEach() - стрим апи.
Это все из функциональных апи жабы 8.
Знать надо на на уровне прочтения всей джава функциональны за вечер(или за 3, если не знаешь что такое функциональщина).
>как оно работает
Ну дык в интелиже alt + enter зажимаешь и оно тебе обратно переделает в лямбду и покажет что там скрывается функциональный интерефейс. Делов то загуглить что это такое.
>А вот такой прикол?
Лол не знал что такое лейблы, теперь знаю. Ну как по мне, если ты хз тут нужно смекнуть что такое просто так в джаве не сработает и объяснить почему. Потом додумать что раз такое не вызывает ошибку, то наверняка эти // будут комментарием. А вот https: я хз и попросить собеседующего обьяснить. Обучаемость тоже важная черта.
>подрочить меня подобной
Если просто по приколу спросит и потом нормально отнесётся к незнанию и объяснит в чём дело то не вижу проблем. Если начнёт выебываться, то ответить что эта хуйня не принесёт мне бизнес валью и не удивит стейкхолдеров, а я сам такой код отклоню в пулл реквесте и потом потом к лиду жаловаться на его профнепригодность. Пусть показывает реальные дела на текущем проекте, а не дрочит меня.
Хотя понятно что это будет смешно звучат от вкатуна, но я уже не вкатун
В шапке треда ссылка на такой роадмап
https://coggle.it/diagram/WqgTTNMJtPiHph_q/t/java-development-in-2018
Как водиться, шапку не читай, вопросы задавай. А вообще проиграл с этого, самое первое что бросается вкатуну в глаза это вот это. Имаджинировал ебало вкатуна когда он пошел учить груви первым делом
https://t.me/java_fillthegaps
>>78540
Учи английский. Core Java Hortsmann
__new YobaTypedWithString(),
__new YobaTypedWithInteger()
}
возможно? Или аналоги этого?
Проблема решена.
После хорошей книги, думаю, можно валидировать качество курса. У этого инфоцыгана даже структура уроков сонительная. Еще он причмокивает, как Брежнев. Даже у Яндекса все сделано на отъебись, пишется без сценария с путинскими кхеканиями, так что..
Я учусь по LinkedIn Learning, считаю их лучшими, там есть стандарт по методологии, качеству видео.
Чего ты злой такой
Объясняет неплохо. Но я не смог осилить его курс, потому что привык к книгам и видосы мне не заходят.
Я тут скачал курс от Яндекса и вообще ничего не понял, какие-то тренинги какие они крутые, а инфы ноль.
Тогда ОК
Потому что обучением в Яндекс занимаются смуззи-уебки, а инструкторов они набирают по объявлениям.
Лучше почитать книги.
Че бля, не ждал такого поворота событий?!
А как это сделать? Я вот искал, но так и не нашел инфы, везде всё равно имеют пары дто в каждом сервисе. Есть ссылка где глянуть то, о чем ты говоришь?
Неа. Массив то может и из примитивов состоит, но вот сам массив - все еще референсный тип (обьект типа Array)
Юзаю лобок твоей матери, я не пидор.
Если надо - дайте ссыль на норм гайд на кубоёбу
Торг? Или уже депрессия?
PS: 10 лет джавист, никогда не имел опыта с кубером. Полет нормальный.
Нет, разрабу он нахуй не всрался, разраб не девопс. Максимум понадобится Minikube, чтобы запустить несколько микропенисов на одном хосте, хотя это можно сделать и через Docker Compose.
Есть какие-то сравнительно закoнныe способы для получения ultimate?
Ох и мразь же ты
Регать новую почту каждый месяц в мыле ру не судьба?
Не, они скорее придаток к спрингу.
> Кто-нибудь смог разобраться с LINQ? Я вот смотрю на эти крольчатки и ничего не понимаю.
🤡 🤡 🤡
То есть, при повторном нажатии событие срабатывать не будет.
Заведи флажок и трекай его значение. Че нить типа булева поля, которое по умолчанию фолс, при первом клике сеттится в тру. Если этот флажок равен тру - значит клик не первый - пропускаешь логику.
Нет такого класса. Джава может работать только на сервере через сеть, там нет ни мыши, ни графического интерфейса.
Хоспаде, да че ты доебался до новичка? душнила. Ну решил он Swing чекнуть - жалко тебе чтоли? Вот сидит, воняет, вахлак немытый блять
А потом он решит высрать на этом свинге очередную IDE, чтобы ещё сильнее тормозило. Нет уж, гуй на джаве надо пресекать в зародыше.
А тебя ебет, что кто-то чего то там напишет, сердобольный? Решай кошельком, игнорь такие ИДЕ. Хули тебе еще, чму, остается.
Ага, щаз, я же не могу игнорить ебучую идею, ставшую по недоразумению стандартом ИНДУСтрии.
Правильно, не можешь. Потому что мир не крутится вокруг твоего ебаного мнения. И что - умнее чем отыгрываться на новичках ты ничего не придумал? Сука, всегда знал что гнилее анальников - только анальники с активной гражданской позицией.
Гуй на десктопах теперь только на котлин компоуз.
Что такое "коллекции в разработке"?
Кстати как и исключения и функциональные интерфейсы. В правильных руках это пизже всех монструозных говнофреймворков типа сринга.
Адепты чего угодно - петушня, раз бегают по чужим тредам и срут.
Я видал, и даже в реальной жизни. Эти создания по ебанутости могут составить конкуренцию петушарперам.
>Джава может работать только на сервере через сеть
Ебало представили? Через идею небось кодит при этом.
Гуглю можно понять - у нее с ораклем давние судебные терки на предмет того, что можно называть джавой а чыто нельзя.
Смари, есть такая тема, как пикрил таблица ASCII символов, и там разница между маленьким и большим символом англ алфавита(да и любого, как настроишь) как раз и состовляет 32.
>>80138
Ирония ситуации в том, что если ты щас возьмешь идею, и посмотришь имплементацию этого метода, ты обнаружишь что там все в разы сложнее, вложеннее и запутаннее, и оффсетных сдвигов по этим тиабличкам там овердохуя. Тем не менее проблема вообще не в индусах. Просто домен такой.
Алфавит. Время. Деньги. Учитывая вяские региональные стандарты, особенности, костыли, противоречия и прочие корнер кейсы, ты ебанешься имплементить казалось бы простые вещи на них. Поэтому будь снисходительнее, вознеси благодарность тем индусам что учли это все за тебя и дали тебе этот метод, и не залупайся больше на их код.
Уже есть несколько свободных серверов под эту задачу, вопрос в том, как наименее костыльно это все организовать?
Т.е. по сути надо организовать одновременный парсинг на нескольких машинах.
>>80209
>одновременный парсинг на нескольких машинах.
Какбэ деталей больше надо. Из того что ты раскрыл, однозначно можно сказать только что:
>распарсить несколько десятков гигабайт XML в день
Если XMLник огромный - отдаешь предпочтение SAX/StAX парсерам, избегая DOM-парсеры, чтобы не держать огромные деревья в хипе.
>несколько свободных серверов
>одновременный парсинг на нескольких машинах.
Если документы логически никак не связанны друг с другом, ничто не мешает уже их парсинг начать раскидывать по сервакам.
Более того, SAX/Stax парсер выдаст тебе для каждого дока поток эвентов, который ты опять же можешь как хочешь параллелить - хоть через лод балансер хоть через брокеры очередей.
https://maven.apache.org/docs/history.html
Спойлер: НИКАКОГО YAML В MAVEN 4 НЕ БУДЕТ. И это прекрасно.
hibernate? типа не надо?
бля даун ты, всё что там есть спрашивают
да есть бред типа эллипс, не знаю нахуй оно там, но блядь
ХИБЕРНЕТ ТЕБЯ ЧЕМ НЕ УСТРОИЛ?
О, неплохо. Спасибо за наводку.
3 недели подробно изучаю JAVA, ловлю депресс от того, что сталкиваюсь с проблемой чистого листа, как решали данную проблему, кроме как надрачиванием сотни простых задач?
второй: почему я не выбрал питон в самом начале? посмотрел сессию лайвкодинга и там просто и пятилетка разбёрется
Знать язык это самое простое, вершина айсберга. Потом будет не важно какой язык изучать и какой там синтаксис. Потом ты просто утонешь в зоопарке технологий, их настройке и связях. Так что изучай и не ной.
так нет же тимлида, сам себя перекатываю
Так ты сам себе ответь, почему не выбрал питон. 3 недели это немного. Если причины не особо веские, а питон тебе кажется легче и приятнее, то перекатывайся на питон.
У меня есть куча причин почему не питон, но они почти все субъективные.
делал с нуля раньше микросервисы, но только дно делал.
ищу гайд крутой чтоб шаг за шагом показывали объясняли на сложном или средней сложности проекте
шарился по ютубам, пидары делают хуйню одну
плиз, скиньте что-то, подскажите
Небось у тебя и зарплата 600к
Чел, тут нужна точка отсчета.
Опиши в чем заключается текущее дно тех микросервисов, которые ты делал, и мы вместе подумаем, как его пробить еще ниже.
Ручками
в чем твоя проблема? Делаешь как и всё остальное на спринге. Пишешь контроллер, сервис, репозиторий. Вставляешь нужную платежную систему в код, заворачиваешь в транзакции, если надо. Но айти сфера всё, поэтому лучше бы че-нибудь полезное выучил. Это мусорные бесполезные знания
пока никаких пет проектов даже о чём речь, просто задачи
Как с говорением, чужой код понимаю, повторяю и вечно что-то упускаю
Так язык и фреймворк тут не причем. payment system это про знание доменной области. Можно охуенно знать и джаву и спринг, но никогда с финтехом не работать. И хуй ты нормально что-то напишешь с нуля.
Ну ты просто сказал - "проблема чистого листа". Такая проблема обычно бывает когда чето надо сделать, но не можешь тупо начать. Вот я и спрашиваю - а что сделать то пытаешься, что у тебя аж проблема чистого листа?
Если интересно в фулл стек залезть, тогда пиши как пишут фронтендеры - бери реакт и пиши.
Если надо сделать скорчить простенькое веб-ебало на-отъебись, спринг поддерживает thymeleaf и JSP.
А если сделать отдельно REST-сервис с основной логикой и отдельно сервис с шаблонизатором? Типа если потом захочется написать нормальный фронт, то просто заменяем сервис с шаблонизатором.
На голом жс через fetch api забираешь-отдаешь джейсонки, через document.getElementById('main').append(object) накидываешь дерево html-тегов.
Разобраться будет чуть дольше, чем с шаблонизаторами.
Но минус шаблонизаторов, что там не рест с джейсонками, как на 95% прода, а рендер убогой хтмлины в жабе.
Дак тогда надо не только джаву учить, но ещё и джава скрипт, а это как бы разные языки.
Тупо. Обычно сериализация-десериализация джейсонов достаточно мощно пердолятся через конфигурирование Джексона, как на уровне конфига всего предложения, так и на уровне дтошек. Игнор полей, динамическая генерация новых полей, другой формат времени/чисел, наследование дтошек и еще куча всякого говна.
А динамически дристневый жабаскрипт потом это все отрисовывает на страничке.
Ничего подобного у шаблонизаторов нету.
А смысл? Так то ты можешь и в одном сервисе и ресты написать, и MVC-контроллеры для шаблонов. Какой смысл делать +1 раундтрип, если проще девелопить от этого не станет?
Да ладно, прям разные.
Да и тебе не надо прям учить жс, хватит простого повторения по туториалам. Ну че такое промисы и дом-дерево надо будет знать и этого хватит.
Зато то что я предлагаю, потом легко будет переписать на взрослом фронте на реакте/ангуляре.
>Ничего подобного у шаблонизаторов нету.
Им и не надо. О какой сериализации вообще может идти речь, если шаблонизация - сервер-сайд.
Я понимаю, что им не надо. Но пет - это обучение техам, нужным в работе. А классический сервер-сайд на шаблонизаторах никому не нужен в работе. А уметь грузить джейсоны - надо.
Так чел выше же и не собирается не делать классический РЕСТ. Он вроде как и планирует делать И рест, И простенькое ебало на шаблонах (единственное что - непонятно зачем он хотел разнести оные по разным сервисам).
Будет ему и джексон, че.
Даже если только джаваскрипт учить по книге в 1000 страниц, то на это где-то 2 месяца уйдёт.
Обычно надо читать вторую книгу типа JavaScript for Professional, но это ещё 2 месяца. В итоге на фронт уйдёт 4 месяца.
Аноний, пишу сейчас на пыхе, на ларавел. Хочу попробовать настрочить что-то на жаба, простенькую апи например. Но ничего не могу найти по сабжу на ютубе годного. Поделитесь уроками/курсами где делают полноценный проект, но и чтобы не слишком старые
Я каравашки писал по книге Уоллс К. - Spring в действии (шестое издание).
вилка 250-300
>курс от яндекса
Братишка, а откуда скачал? Дай пожалуйста ссылочку, очень интересно, я тоже кушать хочу
Вообще нужен. Какие гайды и лекции тебе тут нужны, лол. Берешь доку и читаешь
Wow, so enterprise, much EJB, very Jakarta
Напрягает только демо-версия джавы.
Смотря для каких кейсов. AOT-компиляция, флаги типа -Xmx, другой gc, через модули java 9 вырезать часть стандартной библиотеки.
У меня есть говно-вдска на 512 мб оперативы и гиг диска. 300 мб занято сайтом на медиавики. Я хочу ещё бота для ВК туда впихнуть на Java SDK.
Сдк весит только 50 мегабайт. Это код, будет загружен в оперативу. JVM хватит 150 мб?
Клади куда угодно, всё равно потом хуй вспомнишь, где он лежит.
Ну я хочу знать, сколько ей не хватит, чтобы не делать лишнюю работу и просто забить, если в полгига не влезет.
C обычным jvm точно не хватит. Даже если порезать хип, то можешь в рантайме получить out of memory или тормоза gc, потому что ему не хватит хипа для очистки.
А насчет native image graalvm - тут сомневаюсь что, состыкуется с сдк вк.
Что значит "SDK весит"? Джарник весом в 50 мб? Это не означает что весь джарник будет в оперативу загружен.
>то не означает что весь джарник будет в оперативу загружен.
Схуёв? Весь код загружается в озу.
>тут сомневаюсь что, состыкуется с сдк вк.
Состыкуется, почему нет. Просто придется поебаться как следует.
Гугли класслодинг, хули.
Грузятся в пермген/метаспейс только те классы, что грузит класслодер. А класслодер грузит только те классы, которые реально нужно исполнять.
На последнем джокере был какой-то лысый черт со сказками про настоящее ооп по Алану Кею. Типа самого Бугаенку пару лет уже не пускают, пускают его последователей.
Соглы, но не только харизма. У Бугаенки его шиза более-менее проработана была.
А у этого и по наполнению слабенько.
Неееее, у Бугаенки фокус не в проработке был)
Бугаенка просто шеймил конкретику. Типа, возьмем и обхаем статические методы, ради кутежа и срача. А хули нет?
А не нес какую то дженериковую околесицу о том, что "каждому тулу - свое предназначение". Как в анекдоте: попугай научился говорить "зависит от контекста" и повысился до системного архитектора. Дженериковой хуйни про ООП, солид, и прочее мэйнтейнабилити и четабельность - ее и так хватает в медиапространстве - она тупо УГ и не работает. А тут - хоть весело, посраться можно.
Да. javafx и swing. Но десктопы на джаве пишут редко. Щас в тред прибежит чмошка, обиженный на тормозную идею и все тебе прояснит)
Ответил тебе за щеку
Kotlin Compose Desktop
Ну я про это и говорю. Критика была конкретная.
Ну и фреймворк свой запилил, книжки написал. Сайт завел, какую-то базу сторонников. То есть он дохуя времени готовился к своим набросам.
А тот чел просто замутил какой-то реферат, как на гуманитарных предметах на первых курсах вуза.
Классическая жидоподмена. Производящие неугодные системе мысли заменяются несущими то же с тем же общим смыслом, но гораздо тупее, вплоть до карикатурной комичности.
Нынче вообще не пишут десктоп.
Сервлеты и сокеты надо учить вообще?
Конечно, как ты без них веб приложение напишешь?
Сап, добавил картинку в html файл:
<center><img src="../../../resources/start_logo.png" width="700" th:src="@{img/start_logo.png}"/></center>
Когда просто открываю html, то она отображается, когда запускаю сервер - нет. В чём может быть проблема?
Использую Tomcat 9, Spring 5.2.1, Maven
В чём проблема? Их за один вечер можно выучить на уровне, достаточном для решения 99.9% задач.
традиционные услуги: классический секс, куннилингус, расслабляющий массаж;
страпон: перемена ролей;
уже ничего не требуется. Чат гпт-4 выкинет всё, что ниже миддла на мороз. Сенькам дадут доработать, как тем дедам, которые когда-то писали на перфокартах, а потом тем, кто писал на коболе. Изучение языка сейчас - это как учить программирование на перфокартах, когда выкатили язык си в семидесятых. Смекаешь?
уже ничего не требуется. Чат гпт-4 выкинет всё, что ниже миддла на мороз. Сенькам дадут доработать, как тем дедам, которые когда-то писали на перфокартах, а потом тем, кто писал на коболе. Изучение языка сейчас - это как учить программирование на перфокартах, когда выкатили язык си в семидесятых. Смекаешь?
Да не трясись ты, никого чатгпт не выкинет.
Но по теории будут гонять. И по базам(круды, джойны, нормализация, асид), по бест-практисам реста, по ооп и гоф-паттернам, по жабе(коллекции, эксепшоны, объектная модель), по спрингу(di, web, boot), по хиберу(жизненный цикл сущности и методы, кеши).
Вот так что бы получилось String str = "name: "patrick""; - будет ошибка.
Гугли "Экранирование символов в Java".
Раньше была нормальная шапка, но потом шарписты всё потёрли и увеличили нумерацию тредов в 2 раза.
Как же хорошо, что РФ под санкциями, и мы не имеем к нему доступа. Западные сойбои страдают, российские кодобояре попивают смузи, неспешно закрывая таски. С переходом с оракла на постгрес и с винды на альт линукс работы хватит надолго. До пенсии, по крайне мере.
Уметь написать круд (REST сервис с базой), понимать в хэшах Hibernate, инициализовать бины, составлять Dockerfile и разворачивать свой микросервис. Это базовое для получения первой работы. Раньше требовалось меньше, "спасибо" жабарашу за поднятие планки.
Да прям страдают. Есть ли вообще во всем мире хоть один лузер, которого заместила сраная нейронка?
Те, кто хоть немного знает плюсы, такие вопросы не задают.
Например: Runtime().getRuntime().exec("netsh interface set interface name=\"Беспроводная сеть\" newname=\"wlan0\"");
Вот так:
Runtime().getRuntime().exec("netsh interface set interface name=\"Беспроводная сеть\" newname=\"wlan0\"");
Жизнь слишком коротка, чтобы тратить ее на всякие бесполезные фреймворки, которые потом устаревают или изменяются до неузнаваемости. Какое в этом удовольствие, копаться в чужом коде, пытаясь заставить его работать как надо и обходить глюки?
Куда интереснее и полезнее для саморазвития поизучать
алгоритмы, написать демку для ZX Spectrum или инди игрушку.
Docker и Kubernetes - это вообще вредительство, за такое расстреливать нужно. При грамотной архитектуре такие инструменты не были бы нужны в принципе. Деды вот писали на сокетах и проблем не знали.
Я хотел написать эмулятор ZX Spectrum на джаве, но она не поддерживает беззнаковые типы.
>При грамотной архитектуре
>Весь код в одном файле на 100500 строк
>Глобальные переменные в глубине кода
>90% переменных глобальные
>Переиспользуемые имена переменных
>Функции на несколько экранов
>Функции меняют значения в глобальных переменных
>Код пишется копипастой из одной части файла в другую
>Функции читают и меняют одни и те же глобальные переменные
>Чтобы избежать конфликтов обновления значений глобальных переменных, функции читают флаги и делают поверки логических условий с сотнями сравнений
>Многоуровневые ифы
>Весть код в ифах, даже обявления функций в ифах
Бля, опять ты выходишь на связь.
Работал я на одном проекте без докера. Нет уж, спасибо. Теперь на подобное минимум за х2.
Не работают разметка и картинки, когда добавляю их в HTML (если открыть сам html файл - всё ок) в Intellij Idea. Как чинить? Ещё использую Tomcat, Spring, Thymeleaf
Ты наверняка где-нибудь проебался с путями или с конфигурацией раздачи статических файлов. Посмотри ещё исходник полученной страницы, вдруг там говнотаймлиф что-то не то высрал.
Спасибо, я тоже сначала думал, что в пути дело, но и idea видит файл (при наведении на строчку пути показывает его), и html его отображает, если открыть без иде. Весь интернет обыскал уже
Идея работает с файлами иначе, чем сервер. Ещё при указании путей в HTML есть нюансы, когда открываешь такие файлы локально, там можно указывать пути как в файловой системе, хоть абсолютные пути, хоть с .. для перехода к родительскому каталогу, хоть без точек и слешей для ссылок на файлы в той же папке. Но для сервера там должны путь пути от корня, в начале должен быть /. типа src="/static/image.png".
Нажми инспект в браузере и посмотри, что путь у картинки нкправилтный будет, раз она не отображается. Вообще мне посоветовали выкинуть нахуй ide ))
Попробуй ещё src="/img/start_logo.png".
Зачем ты обычный спринг без бута юзаешь? Проблемы могут быть не только с путями, но и со всякими web.xml, mvc-dispatcher-servlet.xml, конфигурацией плагинов в помнике, конфигурацией в джава-конфигах, да где угодно. Проще найти на гитхабе примеры приложений со Spring MVC и упаковкой в варники и сделать по аналогии. Ну или погружаться в документацию мавена, томката и классического спринга.
>Зачем ты обычный спринг без бута юзаешь?
Не дошёл ещё до бута, хотел один проект самостоятельно сделать на чистом перед ним
В этом мало смысла, Spring Boot не от хорошей жизни создали, а как раз потому, что все каждый раз ебались с такой вот хуйнёй. Сейчас ты фактически не спринг изучаешь, а конфигурацию контейнеров сервлетов. Такие знания могут изредка пригодиться в поддержке древнего легаси, но его активно закапывают, а новые проекты никогда так не пишут. Проще обучение начать именно с бута, и когда почувствуешь себя более-менее уверенно, можешь окунаться в это старьё с webapp.
>Проще обучение начать именно с бута, и когда почувствуешь себя более-менее уверенно, можешь окунаться в это старьё с webapp.
Спасибо, так и поступлю. Я вообще с си начинал вкатываться, но даже там я 5 часов безрезультатно не сидел никогда.
Ха, сишка для меня была первым языком, гуглить я тогда не умел, вопросы задавать было почти некому, сидел я месяцами. Для меня вообще было откровением узнать, что переменные в ней не как в математике, можно присваивать другое значение, а я всё тупил, как может x быть равным 5, если я две строчки назад указал, что x равен 3. Но зато так прокачал усидчивость, что могу хоть неделю разбираться с непонятной проблемой, на работе очень помогало первое время, когда ничего не понятно было.
это вопрос для мвп треда, там сидят эксперты по всем языкам.
Популярна настолько, что без работы не останешься. Это не вопрос моды, просто на питоне очень сложно написать большой микросервисный проект энтерпрайзного уровня, элпиксир вообще никому не нужен, котлин только на мобилках, го далеко по популярности до джавы.
Pomogite pls s etoy huyney, ya nashel otvety na inglishe no nihuya ne ponyatno
Pochemu kod normalno rabotaet v deskop prilozheniyah (Jeany, NetBeans), no kogda probuyu ego zaranit' v Jdoodle, kogda nazhymayu enter ono ne schitaet otvet? (hotya kogda ya delayu eto v drugom online compilere vse rabotaet)
+ esche i vydaet huynu po tipu
Exception in thread "main" java.util.NoSuchElementException
sex you very much
С чего ты сделал такой вывод?
Очень популярно. Например смотрим вакансии на хх.ру. Вбиваем java spring - 1550 вакух. java spring kubernetes - 520 вакух. Ровно треть.
Если есть кубер, значит есть и микросервисы. Но например бывают микросервисы без кубера и достаточно часто. Так что думаю около половины вакансий - это микросервисы. А если говорить о новых проектах, то сильно больше половины.
>>82383
А где ты видишь какие-то продукты? Джава - это тырпрайз. Это по большей части внутрикорпоративный софт для банков, госухи, крупных компаний реального сектора. Иногда межкорпоративный. Достаточно редко софт для пользователей-физических лиц. Где ты можешь видеть эти продукты?
https://stackoverflow.com/a/54995508/3223300
Хуй его знает че за локаль на этом твоем ждудле по дефолту. Выставь явно.
>насколько сейчас популярна жаба для написания микросервисов
Она доминирует нахуй, в нише для написания микросервисов. Все микросервисы только на джаве и пишут.
Перез изучаением Спринга стоит учить Java EE? Чтобы сформировать так сказать БАЗУ.
Нет там никакой базы, это аналогичный спрингу набор технологий. Древняя Java EE мало отличается от древнего спринга, современная джакарта мало чем отличается от современного спринга, разве что нельзя развернуть во встроенном сервере и получить исполняемый жарник, надо ставить полноценный сервер приложений, хотя можно как-то собрать по кусочкам типа OpenEJB. В спринге от EE главным образом используются только сервлеты.
pasib!
Маленький. сравнимо с одним микросервисом. В "среднем" проекте где-то 100к строк, в "большом" порядка 500к и больше.
Ну спринг же получается под капотом и использует грубо говоря EE?
Короче, я только с той позиции, что чуть больше понимать, как оно там на более низком уровне + знать, как деды в свое время кодили.
Спасибо за ответ.
Еще один супер-тупой вопрос.
Идея оказывается не дает поддержку и EE и Спринга в бесплатной версии. Что с этим делать? Вроде можно самому все зависимости выкачать/сконфигурирвать или есть какое-то общепринятое решение (без покупи ultimate)?
> Ну спринг же получается под капотом и использует грубо говоря EE?
Спринг использует очень малую часть компонентов EE и очень ограничено. Почти все знания, которые ты получишь от изучения EE как такового, будут для тебя абсолютно бесполезными, они ничего тебе не скажут о том, как изнутри работает спринг. Вот есть в спецификации EE описание пары аннотаций, и что с того, если в спринге вся их логика реализована в рамках самого спринга? Всё равно что учить немецкий, чтобы лучше понять, как английский работает на более низком уровне. Знать, как деды кодили, интересно только историкам, и в решении реальных задач это не поможет.
> Идея оказывается не дает поддержку и EE и Спринга в бесплатной версии
Поддержка заключается в дополнительной подсветке синтаксиса и нескольких дополнительных окошках, где показываются список бинов и прочая бесполезная инфа. Код на спринге в бесплатное идее никто не запрещает писать, создаёшь обычный проект с мавеном, указываешь там зависимости и кодишь, хватит для большинства проектов.
Так мы о строках кода говорим или о функционале? Если функционал больше спринга, значит, ты можешь сделать для себя вывод, что авторы спринга злоупотребляли бойлерплейтом, а автор проекта на 8к строк не злоупотреблял.
Я не сужу об истинности этих утверждений, всего лишь продолжаю логику по начальным условиям задачи.
Ученик, превзошедший учителя.
Я не знаю, что это, первый проект пишу. Судя по тому, что нашёл, эндпоинты проверить будет сложнее, чем всё, что я написал на данный момент
>Нет никаких уровней владения паттернами - ты их либо вообще не знаешь
Как узнать паттерны? Есть какие-нибудь человечные книжки (не GoF!), которые расскажут когда и какой паттерн использовать? Уже на 5 собесе валят на паттернах!
Нет
Добро пожаловать к сишарперам.
>Как же я заебался
я тоже ненавижу магию, особенно когда она не работает. Вот именно для этого и заставляют учить кишочки всей этой магии
Почему?
Docker ставится только на системный диск и будет срать мне контейнерами в SSD, пока тот не сдохнет.
Это реально блять в софте 21-го века нет выбора каталога для установки? Как вы живете с этим? Может быть через Chocolatey попробовать или уже после установки выполнять шаги с форума на скрине?
По задачам.
Спасибо анончик, я >>81474.
Хочу сказать, что курс хороший, если у вас, из знаний джава только половина курса джава раша.как у меня
И лекций про "какие-то тренинги какие они крутые", как пишет товарищ >>78745, всего одна.
Жирный минус этой раздачи в том, что видео плохо структурированный, пока не посмотришь видео, непонятно о чём оно.
В общем, если вы кроме синтаксиса и основ ООП нихуя не знаете, курс мастхэв
charArr = (char) (charArr[i - 1] + charArr - '0');
https://www.youtube.com/watch?v=zuogqHUMGZQ
Спикер весь выпуск начинал с птичьего языка, объяснял неясно. А потом - ну это как в джаве короч. И это как в джаве. А тут как в плюсах. При этом постояно приговаривал, что нет дотнет это не просто пародия на джаву от мелких, это немного другое.
Ну а потом началось нинужна. У нас нет альтернативных gc - нинужна. У нас нет альтернативных разработчиков виртуальных машин - нинужна. У нас мало настроек рантайма? Нинужна. Одна настройка рантайма это реально плохо, ведь это не бывает серебрянной пули? Конечно не бывает! Но разработчик рантайма мне по секрету сказал, что там все автоматически и рантайм лучше вас знает.
А уж сама история дотнета и шарпа это просто анекдот. И прибитось к винде и вываливание в "опенсорс" и вся история с версиями, неймингом версий - фреймворки, моны, коры, просто дотнеты.
Собирается эта ваша мультиплатформа для разных платформ с дичайшими костылями. Куча исключений что мультиплатформенно, а что нет. Куча нюансов что обратносовместимо, а что нет.
Но больше всего я охуел от того насколько, несмотря на "опенсорс" вся, вообще ВСЯ экосистема дотнета завязана на майков. И виртуальная машина, и оба основных языка и компилятор и сборщик и иде и веб-вреймворк. Все делают майки. Весь попенсорс в том, что комьюнити может пищать и плакать и типа из-за этого могут что-то из релиз кандидатов откатить.
В экосистеме джавы поучаствовали практически все:
- Сам оракл - язык и основная jvm
- jetbrains - idea, kotlin
- vmvare - spring
- ibm - WebSphere
- red hat - hibernate, jboss, keykloak
- netflix - spring cloud
- google - gwt, guava, android
- amazon - jdk corretto
Еще кто-то был, наверно не смог вспомнить.
Ну и два старых независимых фонда - apache и eclipse. То есть есть десяток крупных игроков, кроме создателя языка, кто влияет на экосистему.
я откуда знаю? А что должен делать этот метод?
Что ты даёшь на вход и что получается? Что "должно" получаться?
Стоит, но не всем, не всю, и не в первую очередь. Имеет смысл чекнуть сервлеты и JPA, если ты по природе любознательный и предпочитаешь знать с чем работаешь. Изредка это знание может рольнуть, если впорешься в какое нить дерьмо и не найдешь гайда или вопроса на stackoverflow.
Потому что на сервлетах по прежнему работает Spring MVC, а JPA - это по прежнему базовая спека для почти всех ORMов в джаве (хибернейт лежащий под капотом Spring Data, как референс имплементация JPA, не исключение)
Хочу с имплементацией транзакций в спринге получше разобраться. jta из java ee c spring transaction manager непосредственно связан или не совсем?
Захостил ресты куда то не туда (хотя по этому методу так сразу и не поймешь - рест эндпойнт это или MVC контроллер). По скрину не скажешь, надо больше инфы. Можно начать с полных сорцов класса и полного лога.
Ну хули, теперь ты будешь лучше понимать людей, ненавидящих аннотации в спринге. Бывает.
Даже если это дельфи. Фанаты дельфи соврать не дадут.
Честно говоря, щас не вспомню. Я знаю что спринг умеет поддерживать JTA, но использует ли он его по умолчанию - не помню.
Жду второй части. Думаю там маневрирований будет больше.
Ну и послушав краткую историю было ясно зачем нужен был шарп образца 2013 года - разработка под винду на чем то джаваподобном.
Но вот с кором за каким-то лешеем началась конкуренция с джавой за тырпрайз, хостящийся на линухах. Зачем? Чтобы что? Это ниша просто 1 в 1.
В конце он сказал, про то что у них на переднем крае разарботки в платформе. Угадываем с трех раз что? Aot. Даже тут за джавой побежали, которая этим aot безуспешно пытается отбиться от голованга. Короче шиза.
Теперь кстати подумав о том какое количество разрабов майки задействуют в написании и поддержании всей платформы дотнета, мне кажется что им реально стоит содержать мощный пиар отдел с вбросами. Оценив масштаб задействованных ресурсов, я почти поверил в шарполахту.
Я не знаю. Пусть шарпобляди поправят, раз в этом треде все равно целыми днями сидят, если глава их ру-комьюнити где-то неправильно спизданул.
Там MVC, ошибку нашёл - в таймлиф action е в htmlе надо было не туда немного отправлять и реквестмаппинг ещё сделать, поебался я с этим знатно, конечно
Да, знатно потратил время впустую на изучение таймлифа.
Интересная конкуренция
Я читал, что в 2022, согласно отчету https://join.talent.io/tech-salary-report-en
"Java — не самый популярный язык для бэкенда, по частоте вакансий с ним соперничают JS (Node.js) и Python (Django). Ещё очень популярен Go, а во Франции в спину дышит PHP (Symphony)."
>>83748
Смотреть бы не стал, но сравнительный обзор джавы с нэтом интересен.
Типичная ошибка новичка.
В хх.ру вакух бекендеров на ноде раз в 5-7 меньше, чем на жабе.
Но если искать просто по node js, то там почти столько же вакух, сколько и на жабе. Просто нода и у фронтовичков для сборки используется. Плюс есть backend for frontend и server side rendering, которые в каком-то смысле бекенд, но занимаются этим фронтовички.
В этом источнике нет данных отдельно по языкам, но в целом можно судить, что планировать надо на дальнюю перспективу. Что ты будешь уметь через 3-6 лет в JS и в Java.
Глядя на зарплаты там (это до вычета налогов за 2021 год) стоит вообще задуматься, нужно ли ориентироваться на Европу.
Потому что у джавы конкретная ниша, а шарп пытается одной жопой сесть на 10 стульев.
Vaadin, GWT, Wicket
Потому что в джаве в подобные игрушки наигрались еще с десяток лет назад (JSP/JSF), поняли, что идея - хуйня из под коня и отдали фронтенд реактивщикам (ибо ну нахуй связываться с фронтом).
>>84284
>Vaadin, GWT, Wicket
А книги по ним есть?
>>84270
>>84286 (Del)
Мне надо по-быстрому фронт накидать. Учить жс/тс, а потом реакт/ангуляр/вуе слишком долго (4-8 месяцев).
Дак надо шарп учить, потом ASP.NET и Blazor
>Книги по ним есть?
>Мне надо по-быстрому
Кого ты дуришь, ебанат? Говоришь - "надо по быстрому", а сам готов в книги время инвестировать, вместо того чтоб взять тот же ваадин или JSP и сделать, копипастя с гитов и stackoverflow, как все нормальные люди делают когда прототип надо наговнякать? Небось еще потом спросишь - "почему книг нет а те что есть - непонятные".
Короче пошел нахуй, пиздабол шарповый.
>вот в дотнете есть а в джаве нету
>Дак надо шарп учить
>Я уже завязал с шарпом
Опять пиздишь? Если ты в завязке, значит уже знаешь шарп.
Скакун значит? Ну и нахуя тебе книги, если ты так несерьезно относишься к разработке?
Когда начинаешь читать книгу, то возникает приятное чувство, что последовательно читая, сможешь всё выучить. Особенно, если там в начале нахваливают технологию, потом пошагово и с картинками объясняют как установить инструменты, потом предлагают написать хеллоуворлд.
Ну купи себе в ларьке порножурнал да подрочи, будет тебе приятное чувство. Никто из авторов технической литературы не будет подстраиваться под фетишы двачеров.
да, у gwt сложность чуть выше чем у делфи. По примерам делаешь своё первое всплывающее окно и погнали. Там ещё есть либы с виджетами, чтобы красивый дизайн был
https://examples.sencha.com/gxt/examples/#ExamplePlace:grid_basicgrid
1 вариант php, который лёгкий для вката(не вебмастер), он мне симпатизирует своей базовостью, как то, что заложит фундамент в проектирование приложений, а также идёт по плану в учебном заведении. Поэтому здесь не только ради фарма очков опыта, жалеть не буду.
2 вариант сразу в java, который мне просто по душе и вообще что может быть лучше.
Мне необходимо разработать план обучения, либо пойти вперёд учебной программы php и после этого продолжить java (прошёл всю базу, нужно spring, бд, docker и тд), либо php сделать основным и параллельно уже работе учить java. Поделитесь мудростью
Оговорюсь, что я не хуеверт и не только ради денег хочу работать, в портфолио не будет калькуляторов, никаких проблем с теорией и алгоритмизацией, проектированием никогда не было. Т.е. суть вопроса в том, насколько доступен ли рынок Java для войтишников и какова конкурентность php в данном случае
> он мне симпатизирует своей базовостью
чо? Когда я это смотрел это был такой паскаль для вебстраничек, специально упрощенный ради вката школьников и макак. Процедурный стиль, проблемы с дизайном, проблемы с совместимостью, забагованность. Зато можно писать echo("hello world"); и оно сразу будет работать
>по плану в учебном заведении
если в вузике - то можешь попробовать договориться с преподом что будешь делать лабы на жабе вместо пхп. Гораздо интереснее.
И пока в вузе - занимайся экспериментами и интересными штуками, а не унылыми попытками вката в энтерпрайз ради перегода джсонов туда сюда
>php сделать основным и параллельно уже работе учить java
This.
Щас времена такие что реюзать опыт проще чем вкатываться.
Ну вот решил я попробовать Vaadin по вашим мурзилкам и ничего не работает. Даже импорты не ищутся по этим дурацким мурзильным примерам. Вообще ничего не работает.
Ещё в каждой статье каждый автор приводит разные примеры, вообще не имеющие ничего общего между собой.
Надо пользоваться только мурзилками с кодом на гитхабе.
Изучал ваадин по первой попавшейся мурзилке, всё работало с полпинка. Но всё равно дропнул, осознав, какое же это говнище хуже реактов.
Тебе не это говорили. Тебе говорили, что ты - жирный тролль-шарпист-пиздабол, и/или ленивая жопа. И чтобы нахуй шел.
Где-то неделя ушла на HTML/CSS/JS и ещё неделя на реакты. Хуй знает, чего там зубрить 8 месяцев.
проблема мануалов что там описываются старые версии либы, а челики пытаются делать на свежих либах
В мануалах обычно ещё и указывают список зависимостей, которые надо скопипастить в помник.
Петушарпер не палится.
Я тут к вам за советом пришёл, может найдутся среди вас реальные инженеры а не макаки типа меня.
Ситуация такова:
Имеется проприетарная софтина написанная на плюсах, часть функционала внутри которой нужно было автоматизировать. Поскольку жаба лучший язык в мире - было решено делать это при помощи JNA. Взяли мы значит JNA, вытащили нужные нам функции user32, что бы работать с интерфейсом софтины, и что-то даже получилось по итогу сделать. Если коротко, всё сводится к получению элементов окна и их изменению/нажатию.
Но если говорить как есть, то это максимально неудобный способ автоматизации. Сама JNA ебёт голову так сильно, что буквально может уйти целый день, что бы сделать имитацию нажатий двух кнопок. Огромные проблемы с получением контента из элементов (названия, текста), огромные проблемы с выпадающими списками и куча всего по-мелочи.
В чём собственно вопрос? Вопрос в том, как бы вы всё это дело автоматизировали, какие инструменты использовали и вот это всё.
Я тут прошёлся по софтине DependencyWalker'ом, и увидел названия и адреса кучи функций, вызвав которые можно в теории добиться нужного поведения софтины. Но реально ли это сделать и как понять какие данные слать в эти функции - большой вопрос.
Шилд - говно. Хорстманн решает.
Эккель тоже топовый, но устарел без жава 8 фич.
Бумажки не нужны, потому что на каждую страницу книги надо лезть ковырять код.
Потому что он написан, как справочник. Как справочник лучше использовать доку.
У него нет готового кода, который можно запустить, поизменять и подебажить. Это самый главный аргумент. Если к книге по кодингу нет архива/репозитория с кодом - то книга говно. Это правило применимо и к туториалу
Спасибо, анонче!
Срочно это можно сделать только в архиваторе.
Никуда. В отличие от мавена, модуль на градле может даже не подразумевать сборку джарника. Не то чтобы это было как что-то плохое - такие модули имеют свои плюсы-подводные. Но я согласен с тобой - жопа от такого горит.
Сорта говна же.
Опций много. Из тех что сходу вспоминаются:
Винраром.
maven-shade-pluginом уберджарку собрать.
Сделать репакадж спринг-боот-мавен-плагином.
Если помимо гуев софтина никаких интерфейсов не дает - сдавайся и смирись со страданием.
У нас тоже есть один легаси сервак-монолит, написанный на плюсах, с пользовательским интерфейсом на свинге, который общается с серваком через общую базу, и особый самописный TCP-based протокол поверх сокета на сервере. Так вот - нам и то повезло больше чем тебе, походу, лол.
По моему ты перепутал Шилдта с Хорстманом. Это как раз Хорстман написал справочник без кода, где просто перечислил какие есть функции в библиотеке без объяснения как ими пользоваться. А вот Шилдт описал каждый момент и сделал к ним примеры.
>Download Code: 12th Edition | 11th Edition | 10th Edition | 9th Edition | 8th Edition | 7th edition
Причина детонации, петушня?
Проекта объектная модель.
Были бы иные варианты кроме гуя, давно бы уже всё сделали по красоте.
>самописный TCP-based протокол поверх сокета
Мда, я бы уж лучше с чем-то подобным повозился.
>>85424
Смотря что называть взаимодействием. То что происходит у нас - скорее взаимодействие не напрямую, а через обращения к виндовой библиотеке user32, которая отвечает за интерфейс. Она уже в свою очередь даёт нам копаться в кишках окон и в теории даже вызывать функции/дёргать события и всё такое прочее, но это слишком тёмная магия для меня.
Мы вам перезвоним.
Молодец, не наебался.
Это копия, сохраненная 11 марта 2023 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.