Прошлый >>1537764 (OP) (OP)Q: Поздно ли вкатываться в айти в 20/30/40/100 лет?А: Нет, не поздно.Q: Cобираюсь учить джаву по 2/5/20 часов в день. За сколько дней я выучу достаточно, чтобы зарабатывать фрилансом?A: Да хуй знает, от тебя зависит насколько ты толковый и умеешь себя продать.Q: Хули все книги на английском?A: Без английского ты не нужен и можешь смело идти нахуй. Ну или в 1С-тред.Q: Что скажете за джавараш?Если вкатываешься с нуля, то можешь написать пару "хеллоу ворлдов" до 10 лвла. Дальше курс рассчитан на ленивых и не умеющих читать книжки людей. Количество говнокода зашкаливает, годных задачек пару штук на весь курс. Если усидчивый, читай книги и делай тестовые задания. В любом случае решать тебе.https://github.com/qqqlll/Java-Thread/wiki
Анон, подскажи, почему при выполнении компиляции кодаSystem.out.println("Счет:" + addTea);Вместо значения переменной addTea у меня выходит Счет: order.drink.Tea@27973e9b
Кто-нибудь тестовые фреймворки (селениум или что-нибудь такое) пишет со спрингом? Может знаете годные открытые репы с годными проектами.
>>1567242 (OP)Анонанасы, покидайте пожалуйста идей для каких-нибудь проектов, которые потом будет не стыдно залить на гитхаб. Пытаюсь вкатиться в джуна
>>1567344Перекатываете тред до 1000 постов. Впрочем, судя по активности треда в последнее полмесяца, всем похуй. Ну и ладно.> Java #15 thread /java/ /java/ /java//java/ не нужно копипастить, это добавляется автоматически при добавлении тега. Это я в прошлый раз проебался и скопипастил> >>1537764 (OP) (OP) (OP)Ну и с этим всё понятно, (OP) добавляется автоматически, поэтому хватит только циферок.В общем, продолжаем исследовать макабу.
>>1567637Проблема только сверстать вот эти всплывающие посты при наведении. Хотя в некоторых старых этого эффекта нет, можно первое время без этого.
>>1567640Делать много чего придётся. Прикрутить markdown, просмотр картинок, подписку на треды и т.д.
>>1567674В смысле блядь модно?А вместо метанита читать высер «Хед фёрст жаба»?Кто эту моду задаёт? Моча?
>>1567694Для тех, кто не любит читать книги, есть соседний тред, его название по чистой случайности тоже начинается на "Java".
Есть веб-приложение, в нем веб-сервис jax-ws, работает на Томкате. Простой CRUD сервис, принимает xml-ки и по xml-кам генерятся записи в базе MySQL вручную sql запросами. Писал просто руками в NetBeans много лет назад.Хочу перепилить на Spring Boot (шоб модно, современно), причём так, чтобы вынести модель с логикой внутри в отдельный веб-сервис, так как логика, которая написана в классах модели мне понадобилась для ещё одной поделки. И типа из одного веб-сервиса буду обращаться в другой.Как вам вообще идея?Как правильно пишутся такие приложения?Если бы это не было веб-, я бы наверное сделал либу .jar, куда запихал бы классы модели с логикой внутри и подключал бы этот jar и в сервисе и в другой поделке. Но тут веб и я не особо понимаю как вся эта херовина явовская работает.И второй вопрос к Ява господам. Если я работаю с чужой базой, где не пахнет нормализацией, внешними ключами и прочим, на сколько безопасно с такой базой пользоваться какими-то ORM-ками? Мало ли что там эти ORM-ки по-умолчанию наделают, я как-то очкую.
>>1567725Норм идея. Попробуй.ORM пользоваться вообще небезопасно, в них дохуя подводных. Если и будешь юзать, тестируй каждый случай.
>>1567725>я бы наверное сделал либу .jar, куда запихал бы классы модели с логикой внутри и подключал бы этот jar и в сервисе и в другой поделкеВот так, скорее всего, лучше и сделать. Веб это не запрещает. А дробить на отдельные сервисы, просто потому что можешь, это так себе идея. Только когда будешь сам хорошо понимать, зачем тебе это нужно и чего это будет стоить.>Если я работаю с чужой базой, где не пахнет нормализацией, внешними ключами и прочим, на сколько безопасно с такой базой пользоваться какими-то ORM-ками? Не важно чья база. В любом случае с ORM надо работать так, чтобы никакой непонятной магии без твоего ведома к БД не применялось. ORM позволяет не писать запросы руками, но при этом ты должен все равно сам понимать, какие запросы в какой момент выполняются. Если пока не понимаешь, лучше сначала изучи инструмент получше, чья бы там ни была БД.
Можно ли как-то сжать изображение до конкретной ширины/высоты в пикселях? Мне нужно нейронке скормить изображение с камеры смартфона, а она принимает только массив чисел 28х28.пишу свой https://developers.google.com/android/reference/com/google/android/gms/vision/Detectorа если точнее метод detect(Frame frame), где фрейм - https://developers.google.com/android/reference/com/google/android/gms/vision/Frame.html
>>1567242 (OP)Что делать, если каждая вакансия для моего стека это настраивание маппингов в хибернейте (буэээ), ковыряние ебанутых багов энтепрайзных фреймворков (вуэээ) и клепание фабрик одиноких весенних бобов СервисЫМПЛ экстендс Сервис?Платят за разгребание этих помоев - хуй да нихуя. На собеседованиях ебут задачками с литкод, а после заставляют пахать по 14 часов в день.
С чего лучше начинать новичку: Spring или Spring Boot? Кто-то говорит, что лучше со Спринга, а потом Бут, дабы понимать, что Бут скрывает от разраба. Но также я читал, что документация Бута все подробно разжевывает и ссылается на документацию Спринга. Ваше мнение?
>>1568167Ты просто вакансии не умеешь искать. На жабе тоже много чего интересного поделать можно. Конкретно смотри в сторону хайлоада (например). Хадуп вот это все
Ну что ж, надеюсь, что не дропну. Предложили знакомые на джуна вкатиться и поднатаскать на собеседования.Полистал сегодня книжки. Какой же кайф читать. Особенно когда понимаешь мелочи.Ни каких тебе опечаток или перепутанных глав.Есть вообще советы по хорошему методу чтения книг по языку? кроме как писать больше кода
Аноны, постепенно скатывался в Java Core, научился основам (Stream API, Java Collections Framework, немного по потокам) и вот встал вопрос, куда идти дальше. В Java, как я понял, 2 дороги - Enterprise и Android (с последующим перекатом в котлин). Мне интересно и то и другое. Поэтому хотелось бы узнать от вас плюсы и минусы данных направлений. Знающие ребята, оцените Enterprise и Android по 3 критериям (от 1 до 10):1. Насколько легко вкатиться джуном.2. Перспективы (Не сдохнет ли кто-то из них и не выльется ли работа со стеком в пердолинье с легаси говном лет. Наверное на Enterpise мужики еще под 4 или 5 джаву пишут чтобы поддерживать старые проекты.)3. Интересность (лично для вас). Расскажите какие проекты у вас были, чем именно занимались и т.д.Допустим вы могли бы написать самому себе в начале обучения языку куда идти и что делать. Что бы вы написали? Помимо "купи биткойн, не иди в джаву" и т.п.Пожалуйста, прошу отнестись к этому максимально серьезно, ведь я не просто так позволяю анонимам с оранжевого сайта решать свою судьбу. Скажите что андройд заебись, пойду туда, нет, так буду на спринге приложеньки писать. Добра.
>>1568546я думаю, что стоит хотя бы год поработать там или там. Так или иначе опыт наберешь в реальном программировании, если ты до этого не работал.
>>1568548Мысль дельная, но не хотелось бы убить кучу времени в обучение Spring + Hibernate чтобы джуном вкатиться, а потом понять что это не моё. Как мне кажется в Android порог всё же ниже (так как там меньше всяких фреймворков да и старые версии тупо не поддерживаются), наверное стоит начать с андройда, если не понравится, то идти в энтерпрайз. Хотя, возможно, я заблуждаюсь.
>>1568555>>возможно я заблуждаюсьУ тебя трипл, жопой смотришь? Не знаешь древних законов двача?трипл не пиздит
>>1568543Недавно создавал почти такой же тред. Аноны убедили, что андроид дев все же лучше, и я уже был готов вкатываться, но потом передумал из-за формошлепства и привязанности к ос, да и вообще программирование мышкой не по душе пришлось. В итоге, вкатываюсь в java ee.По твоему вопросу:1. В ад порог намного ниже;2. Никто не сдохнет, в ee легаси много, но в этом ничего страшного нет;3. Лично я думал, что ад будет для меня интереснее, но оказалось наоборот. Серьезных проектов пока не имею.Ну а вообще, что то, что это - сорта говна.
>>1568543Тоже интересен этот вопрос. Так же стартую в java, и думаю в андроид вкатиться, поэтому очень интересно ваши мнения.
>>1568543Вкатился в кровавый прошлым летом. До этого был опыт преимущественно в байтоёбстве 7 мес. + 6 лет учёбы. Как результат, на момент ухода из байтоёбства з/п была 37к, сейчас 90к. Не утверждаю, что в дроид дев такое невозможно, просто факт. Сорта-не сорта, но денег тут хватает. Работа в целом интересная и пока не надоела. Многое, конечно, зависит и от проекта, и от коллектива в целом, и от технологий на проекте. Верно сказали, что пока не попробуешь - не узнаешь. Я и в гей-деве был пару месяцев, и байты ксорил на железе, и на питоне скриптики писал. Java + Spring пока самое интересное, что со мною случалось. Не бойся "проебать" год на другие фреймворки, бд, языки. В ИТ любые знания важны, чем шире кругозор - тем больше ты ценен как специалист. Мне недавно на работе сказали - "О, ты ещё и верстать умеешь?!?" ... как-будто это что-то капец сложное и невероятное для джавера нашего времени.По поводу "насколько легко вкатиться" - просто не сцы. Я залетел со схожестью стека ~1% (Git) и ничего, потянул. Всё равно твои первые задачи будут а-ля "иди подотри говно за тем мидлом, а то у него чёт сломалось" или "напиши эту монотонную повторяющуюся херню, которая сбилдит всю нужную конфигу, т.к. всем остальным лень". И так будет ровно до того момента, пока ты сам не скажешь "Так, блять, я вообще-то программировать сюда пришёл. Дайте норм задачу, желательно сложную." Главное не делай этого на самом старте, т.к. говно энивей кто-то должен поубирать. С этого момента тебя начнут уважать, если справишься конечно. Далее можно уже просить надбавки/повышения и прочее-прочее.В общем как-то так, немножко своего жизненного опыта тебе для размышлений.
Анон, можешь немного прояснить по поводу хэндлинга исключений в рест сервисах. В книжке предлагается вместо простой установки статус-кода ответу кидать исключения, и потом костылить методы-обработчики, контроллер-адвайсы и т.д. Есть ли в этом какой-то смысл? Почему не ограничиться установкой статус-кода и возвратом ответа напрямую из контроллера?Может, мне просто так хотят ненавязчиво показать эти механизмы обработки, чтобы я просто знал, что такие есть?
>>1568347>Ты просто вакансии не умеешь искать.99% всех вакансий на HH - это помойный энтерпрайз или андроид разработка. Остальной 1% - это конторы с зубодробительными собеседованиями по типу Дойче, Яндекс и прочих ГридГейн. Туда берут исключительно олимпиадников и прочих умненьких школотронов.
>>1568501Ещё есть метод читать несколько разных книг на одну и ту же тему. Если из прочитанной книги в голове остаётся только малая часть, то каждая следующая дополняет твои знания.
>>1568977Ну хуй знает. Я осенью подавался в пяток хороших продуктовых контор, не "компаний мечты", но интересных и с плюшками. Интервью были вполне человеческие, почти без кодинга на бумажке и олимпиадных задач уровня хард.
>>1568993>Интервью были вполне человеческие, почти без кодинга на бумажке и олимпиадных задач уровня хард.Звучит как фантастика. Что хоть за компании были?
>>1569011Ищите да обрящете. Все как одна "западные" компании, созданные выходцами из России, где и сидит вся разработка. Используя Glassdoor, Хоху и интуицию, можно за вечер подобрать с десяток хороших мест в моём городе (ДС2), без тырпрайза, бинарных опционов и ИП Ерохин И.А.
>>1569040>Все как одна "западные" компании, созданные выходцами из РоссииНу так сюда как и попадают ДжетБрейнс (Чехия), Яндекс (Нидерланды), ГридГейн (США). Видимо я просто не правильно ищу. Ладно, проехали...
Может кто подкинуть эталонное веб-приложение на сервлетах с jsp (ну чтоб авторизация, кабинет и какие нибудь действия от юзера)(желательно с sql)? Или тутор как его спроектировать? Или чтоб в книге по шагам было расписано. Или хотя бы диаграммы? Я вроде уже вкурил что тут происходит, но вроде у меня гавнокод получится, не могу до конца в архитектуру, и в уловки. То что я находил вызывает у меня подозрения что это гавнокод.
>>1569129А если JSP с кастом тегами? Классика энтерпрайза, говорят. Я другой анон, но двачую реквест. Для спринга, к примеру, есть эталонный проект Pet Clinic.
>>1569150Так оно вам нафига, именно на голых сервлетах и jsp? Но если очень надо, берете какой-то спринговый пример и переделывайте в лоб контроллеры на сервлеты. jsp используйте тоже как в спринге - только для отображения данных, которые уже в подготовлены в сервлете.
>>1569158Без jstl и подобного говнища неизбежно придётся в подготавливаемые данные включать разметку. Без этого таблицы/списки тупо не вывести.
Аноны, а графические приложения на Java еще пишет кто-то? Стоит вообще такой хуетой заниматься или лучше в другую сторону смотреть?
>>1569158Хочется не бездумно бобы гонять по инструкции, а, как ты, понимать суть происходящих внутри процессов. Тот же спринг лично для меня всё ещё похож на какую-то магию: "дети, это невозможно понять, это нужно запомнить". Что такое DI и IoC вроде в общих чертах понятно, но на простых примерах всё это выглядит избыточным.
Как нахуй распространяются простые java-приложения? Например аналог cowsay, которая простая консольная команда.
>>1569311Точно так же, как и все остальные - ставятся через менеджер пакетов твоего лялеха. Другой вопрос, что таких приложений в принципе мало.
>>1569334Я не только про линукс. Как будет выглядеть то, что будет ставиться через менеджер пакетов, и как это собрать?
>>1569076По архитектуре советую почитать Patterns of Enterprise Application Architecture Фаулера. Там он поясняет про типовые архитектурные решения, что такое эти контроллеры, сервисы и прочие репозитории, и зачем они нужны.Абу, похоже, не разрешает прикладывать pdf, так что вот тебе ссылка на яндекс:https://yadi.sk/i/2FaPbYC6Sdx-rQ
>>1569336Ставиться будут, скорее всего, жарники. Почти наверняка с ними будет идти какой-нибудь запускатор на баше/cmd со строчкой типа "java -jar /path/to/awesome-package.jar". На линуксе этот запускатор ляжет куда-нибудь в /usr/bin.Ну или, если source-based дистр, докачается jdk, а вместо жарников будет архив с сорцами, который тупо соберётся в жарники, а дальше предыдущий пункт.В этом всём нет ничего удивительного, многие утилиты вот на питоне пишут, и они тоже ставятся почти аналогично.
>>1569308Все прекрасно, но при чем тут конкретно сервлеты и jsp? Если хочется разобраться со спрингом, нужно использовать спринг. Хочешь сделать веб-приложение на джаве, но без избыточного спринга? Возьми, например, javalin.
>>1569347Пардон, не тот файл выложил. У меня их несколько на диске лежит. Вот правильная книга:https://yadi.sk/i/Ql3vmDweZY9KQg
Аноны, как обстоят дела с удалённой работой на Java? Слышал где-то, что если с андроид разработкой всё ок, то энтерпрайз хуй найдёшь. Так ли это?
Есть способ суммировать true в Жаве?Ну там, есть сколько то чисел. Если хоть одно из них такое-то - верните true.И вместо того, чтобы ставить бесконечное || просто суммировать, мол "true - это единица, а значит её можно приплюсовать".Ну и в варианте, если нужно вернуть количество подходящих чисел, чтобы лишним не ебаться.
Вообще есть какие-нибудь книги по проектированию веб-сервисов?именно API. Желательно чтоб был жирный раздел про REST Хотелось бы почитать про какие-нибудь стратегии, а то всё-таки когда начинаешь с нуля проектировать сервис слишком много думаю о том как лучше сделать.
Почему *Utils классы и классы, содержащие только набор констант объявляют как обычные классы с конструктором, выбрасывающим исключение, а не как абстрактные классы? Тогда ведь защита от инстанциации будет на уровне языка.
>>1569606>хотя мне похуйИ правильно. Нет большого смысла в этой защите от инстанциации. Но вообще абстрактный класс позволит создать экземпляр производного класса.
>>1569659Я с 25-ти. Сейчас 29. Уже смог подняться с уровня "о, погромирование! че-то далекое, но можно попробовать. а что такое ООП?", до "пожалуй, вэбом больше заниматься не хочу".
>>1569758Возможно я не так выразился: у меня нет дизайнерской жилки, чтобы заниматься html/css/js, И Я КЛЯНУСЬ БОГОМ ЧТО УБЬЮ СЛЕДУЮЩЕГО ЧЕЛОВЕКА КОТОРЫЙ МНЕ СКАЖЕТ, ЧТО ВСЕ ДОЛЖНО ВЫГЛЯДЕТЬ "ВКУСНО"!
>>1569763В теории - да. На практике, нужно мириться с цыганским вкусом незнакомых людей, которым желтым по зеленому - ебать, какая цветастая красота.Короче, мне это просто не понравилось. Пусть другие люди на этом зашибают по 300к в наносек.Сейчас на работе ковыряю автотесты на Питоне, но хочу попробовать вкатиться в погромирование по-настоящему.
>>1569771Странно, ведь в энтерпрайзе жабник не должен париться над вкусной версткой, максимум - сверстать пару дефолтных кнопочек. Или я чего-то не знаю? Мне так-то тоже верстка не по душе.
>>1569787Ну я работал в конторе, где вставлял на сайты скрипты и ковырял пользовательские сайты за мелкий прайс.Там нужно было со всем этим говном ебаться, ну и да, JS же ДОМ должен править.>>1569783Мда. А я тогда гуманитарное образование получал...
>>1569128По идее, обычно возвращаться должен JSON и код 200, а при ошибке - код ошибки и её причина в теле ответа.
>>1569898Охуеть критерий, давайте тогда писать всё на жопаскрипте, там вообще ничего перекомпилировать не надо, блеать.
СапДелаю пет проект на Spring Boot - Web. Хочу сделать REST api, и к нему клиент на React. Имею вот такую структуру проекта - пикрил. Тоесть файлы фронтэнда лежат в ./main/src/webapp/ . При попытке собрать проект мавен добавляет все файлы из webapp/ в target/classes. Я же хочу, чтобы в target пошел только бандл, собранный вебпаком, а не исходные файлы вместе с npm модулями. Из за всех этих файлов время билда просто огромное.Пик 2 - что получается при компиляцииПодскажите, плиз, как исключить из target все не нужное?
Пиздос какой-то. Я думал это пост за 2009 год>ОРМ нет, билдера запросов нет, запросы через обычный стринг, возможно даже с помощью конкатенацииhttps://govnokod.ru/26204
>>1570147Можно через maven-frontend-plugin собрать в какой-нибудь произвольной папке, из которой мавен сам ничего не копирует, а затем через maven-resources-plugin скопировать содержимое build в target/classes/public.
>>1570159КАКОЙ БАГОР)))>ORMНе нужно.> билдера запросов нетБилдить-то и нечего. Тупо выбираются все записи из таблицы. Ни опциональных блокировок, ни десятка меняющихся фильтров, ни подзапросов, ничего нет.> возможно даже с помощью конкатенацииПиздец. Даже в низкоуровневом JDBC есть тривиальный PreparedStatement, но кто-то и его не осилил.
>>1570185>Билдить-то и нечего. Тупо выбираются все записи из таблицы. Ни опциональных блокировок, ни десятка меняющихся фильтров, ни подзапросов, ничего нет.Ну это только в данном куске кода. Это же не вся картина>Билдера нет. На сколько мне известно, в Java есть несколько специальных методов в java.sql.Statement для этой задачи (экранирование). Только вот какие - не знаю.
>>1570186Хз, одни какие-то озлобленные уебаны, судя по комментариям. Всегда неприятное чувство после посещения остается, как будто в обосранный толчок пришлось сходить.
>>1570203У нас несколько тредов назад также было. Даже забанили кого-то, потому что посты пропали резко.
>>1570160Расскажешь подробнее, пожалуйста? Тоесть фронтенд будет лежать в папке с остальным проектом, на том же уровне, что и pom.xml, в какой то папке, к примеру /frontend/, затем frontend-maven-plugin собирает его, используя вебпак, а maven-resources-plugin включает нужній мне бандл в билд, так?
>>1569827>именно поэтому сам перекатился из джавы в iosАнон, расскажи, пожалуйста, как оно? Что больше нравится?Сам сейчас стою на пути выбора: либо энтерпрайз жаба в зеленом банке, либо идти в iOS разработку (благо друг крепкий мидл, сможет держать по нужному курсу).
>>1570336вкат довольно тяжелый, как мне показалось, но благо были задачи, которые мне предложили сделать (допилить приложуху для бизнеса, до этого пилил на джаве как раз серверную часть)как по мне, джунам вкатиться реально сложно,но, если у тебя есть знакомый, то однозначно рекомендовал бытусуюсь во въетнамах, таях, бали и мне доставляет намного большев джаве получал 130, сейчас около 200-250 - сколько задач успею сделать
>>1570343Благодарю за ответы!Ну а конкретно о самих задачах хотел узнать:Понимаю, что я, наверное, могу бредовый вопрос задать, но даже тут часто вижу споры о том, что якобы есть программирование серьезное (типа того же бэка на яве для бизнеса), а есть формашлепство на фронте (те же мобилки, как я понимаю, это тоже фронт по большей части, в эпоху веб-сервисов). Мне, на самом деле, важна не только предполагаемая возможная ЗП, но интерес к самой предметной области задачи, отсюда и вопрос. Так вот, не ощущаешь ли ты какого-то даунгрейда в интересе к самим задачам, а также их значимости? Я вот, например, уже эплоёб со стажем, хорошо знаю и имею интерес к самим системам iOS/macOS, хорошие решения в UI/UX уже как-то осознаю на интуитивном уровне, применительно к этим ОСям. Но в то же время понимаю, что, наверное, весь самый "сок" и весь "бизнес" идет в бэке, где проектируют и пилят сами веб-сервисы, их логику. Да и общий тренд на услуги как it-сервисы сейчас актуален во всём мире. Вроде пока с изучением программирования сложностей не имею, но всегда так же был интересен и сам бизнес, а не только сухая тех часть хотя это тоже достаточно интересно всё. Почему то для себя думаю, что в бэке ты к нему как-то поближе, что ли. Поэтому хотелось бы услышать твоё мнение, как уже опытного прогера.
>>1570510В общих чертах, именно мои задачи действительно сводятся к тому, чтобы пользователь видел удобный интерфейс. Но как раз у меня получается полный цикл от сбора требований у пользователей, до написания с последующей визуализацией. Интерес не пропал, потому что мне доставляет то, что пользователи (коих больше 8 тысяч в компании, ключевых-около тысячи) пользуются приложухой повседневно для решения проблем. Поэтому, как понимаешь, у меня работа и аналитика и разработчика и поддержки и всего сразу.Вообще, не могу назвать себя ОПЫТНЫМ, просто мне дохуя повезло, что есть богатый заказчик и знакомая рп, которая как раз тащит заказчика, предложила мне перейти в ios, поучить дома пару месяцев азы и начать допиливать приложуху
>>1570520> WORAКоторый можно отнести не только к жабе, но и к питону/пхп/руби/etc.> в век докераРаньше приходилось везде тащить виртуальную машину, теперь приходится тащить докер. Кроме того, что на десктопе докер неприменим, а на винде ещё и работает через жопу, мало что изменилось.
>>1570632> Кроме того, что на десктопе докер неприменим, а на винде ещё и работает через жопуУ меня есть рабочий комп, не важно на какой системе.На рабочем компе стоит виртуалка Linux.В эту виртуалку проброшена (замонтирована) shared папка, где у меня лежат исходникиНа виртуалке работает докер, где я запускаю всё что мне надоА на рабочем компе у меня открыта IDE через которую я редактирую кодЯ отредактировал код и тут же посмотрел как он работает, выполнив команды на виртуалкеПри этом мне:1) Без разницы какая система у меня на рабочем компе2) Без разницы какой дистр и софт на виртуалке, от неё мне нужен только докер и проброс папкиЧто скажешь?
>>1570709Скажу, что пытался у себя сделать то же самое, но столкнулся на семёрке со следующим:- нужно качать легаси-версию, современная есть только для десяточки.- проброс портов приходится делать вручную через настройки виртуалбокса, флажок -p сам ничего не делает вопреки тому, что сказано в мануалах;- тома отваливаются, и ничего с этим не сделать. На хосте кидаешь файл, на виртуалке он не появляется. Или иногда появляется. Или передача файлов может работать в одну сторону. В общем, нестабильно. Когда гуглил, видел на гитхабе задизлайканый пост от разрабов, которые отказались это чинить.Может, на десятке всё работает. Но нахуй мне это всё тогда нужно, если JVM работает и без этого даже на XP?Может, винда вообще не нужна, потому что нужно использовать лялех. Но тогда не надо гнать на "WORA в эпоху докера".
быдло долбился в стену и изобретает очередные костыли (докер) вместо исправления dependency hell в лялихе
>>1570856Давно уже исправлен, когда придумали снап. Следующим шагом будет тащить по докер-контейнеру на каждое приложение.
>>1570859а нельзя просто в папочку копировать приложение и запускать, как во всех нормальных системах?
Потихоньку вспоминаю\доучиваю хортсмана. Дошел до стримов. Не совем понимаю, когда мне нужно юзать методы фильтрации\сортировки и т.п. стримов и это даст офигеть какую выгоду, а когда достаточно методов коллекций. Я как-то раньше без задней мысли только коллекциями и пользовался.
>>1569541>>1569827А этому есть какое-то объяснение? Я просто помню как-то видел несколько штук вакансий именно классический стек а-ля java + spring + postgres УДАЛЁННО! И видел так же на го и пайтонах удалённые вакансии на бэк. Но при этом часто слышал мнение, что удалёнку на жаву бэк хуй найдёшь, а вот когда разговор идёт о го\пайтоне\любом_другом_яп - эт пожалуйста. Бля и чё теперь го начать активнее изучать?! Хочу удалёнку + бэк!
>>1571366+ хх.сру показывает след. статистику6 396 вакансий «java»1 374 вакансии «go»—315 вакансий «java» удалённо293 вакансии «go» удалённо
>>1571369>6 396 вакансий «java»>1 374 вакансии «go»>—>315 вакансий «java» удалённо>293 вакансии «go» удалённоТы пропорцию не можешь составить? Раздели кол-во удаленки на все ваки, проценты найдешь.
Сап джавач В общем суть. Может кто сможет подсказать. Есть два файла. Один в zip архиве, другой просто лежит рядом. Надо сравнить одинаковые они или нет. В данный момент я читаю файлы побайтово и сравниваю полученные строки. Получается очень долго. Если файл весит пару мегабайт, может получится несколько минут. Я вижу два варианта. 1. Пробовать читать буфером. Но я не могу найти как читать ZipEntry в буффере. Во всех примерах дают чтение по битам. 2. Как-то быстро сгенерировать хэш. Но я так понимаю для этого всеравно необходимо сначала прочитать весь файл. Есть идеи?
>>1571531ZipInputStresm в Buffered InputStream заверни. И сравнивай сразу блоками по несколько байт, Arrays.compare или вроде того.> хешДа, всё равно нужно считать, но тут ты сразу читаешь блоками, ибо так удобнее и при этом сравниваешь только хеш-сумму в конце. Возьми sha256. Тот crc, что уже есть в zip, плохо подходит для сравнения файлов.
>>1571539Ты имеешь ввиду ZipOutputStream в BufferedInputStream наверное? Главное чтобы можно было взять конкретное entry. Файлов может быть несколько. Попробую. Спасибо.
>>1571409Осталось ещё найти способ магически влиять на часть от которой процент берется, а пока тебе придется смотреть на конечные цифры, а не абстрактную пропорцию.
>>1571366Просто идет укрупнение рыночка и стопицот велосипедных крудов востребованы всё меньше и меньше, поскольку всё меньше и меньше клиентов с нестандартными бизнес-задачами, которых бы не покрываел условный 1C.Кто успел вкатился во первой половине десятых в сап нетвивер и хану и завел трактор.
>>1570742>Ремоут дебаг и пробрасываешь порт через докер и через виртуалкуУ меня такой конфиг, да. Очень удобно было до тех пор, пока ресурсов хватало на запуск нашего проекта на локальной машине, а потом он неприлично разжирел.
>>1571806salesforce как вендор хорошесть еще и sap облачныйтолько тут привязка к специфике бизнеса и языкам, которые только в этих платформах (за исключением всяких груви, джав и жсов в сап)да и не так уж дохуя же вакансий по этой crm, не?
>>1567242 (OP)Господа, 2 года работаю Го девом полет нормальный, но я понял что жаба, например перспективнее го.Ну вот например:1/ жаба сложнее2/ на жабу больше вакансийЕсть у кого кейсы смены стека в таком виде ?Или придется с самого начала подниматься ?
>>1572137Троллишь? На го с руками отрывают и кучу денег дают. Разве что ты считаешь джаву более "серьёзным" языком и переживаешь по этому поводу (см. комплекс фронтендера). Готовься ощутимо понизить себе зарплату на ближайшие пару лет.
Аноны, нуб в треде. Хочу написать простое веб-приложение (форму регистрации). То есть два поля на сайте пароль и почта, нажимаешь зарегистрироваться и они улетают в SQL базу. Я правильно понимаю, что мне для этого достаточно JDBC и сервлетов? Сейчас ищу гайд в интренетах, если вы мне что-то платиновое кините буду благодарен.
Посоветуйте годную книгу по SE medium-advanced уровня с ёмким изложением, не более 500 страниц. Освежить в памяти, так сказать.
Тоже вопрос по книге, но нубский. Везде советуют для новичков книгу head first java, она вообще нормальная? 2012 год это не слишком старая? Или есть что-то лучше? У меня совершенно случайно оказалась бумажная Философия Java, но полистав её я понял, что она точно не для новичков.
>>1573483hyperskill.org попробуй. интерактивный туториал от jetbrains. я щитаю, что если совсем нулячий, то книги читать - это такое. но, если очень хочется читать, то хорсмана core java первый тома потом второй
>>1573483>она вообще нормальная?От head first не может быть ничего нормального.мимо не читал их высер про жаву
Подскажите оптимальный вариант, чтобы отрендерить html страницу в приложении и запустить сервер с этой единственной страницей и 2 файла css и js. Любой микрофреймворк мне кажется диким оверхедом для этой задачи, запись в сокет кажется слишком низкоуровневым ковырянием. Короче я в тупике.
>>1573483Head First была моей первой книгой по Java в частности и по программированию в целом. Не советую. Тоже порекомендую hyperskill.org.
>>1573500Точно, совсем забыл о ней, читал книгу по Скале из этой серии. Спасибо.>>1573476>java puzzlersБегло посмотрел - выглядит весьма интересно, благодарю.>>1573483>head first javaИщи то, что подойдет именно тебе, чтобы не забить на неё после прочтения первых нескольких страниц. Полистай разные варианты, чтобы примерно прикинуть стиль изложения материала. Но не трать слишком уж много времени на поиск, идеальную книгу не найдешь - просто обращай внимание на достоинства и недостатки.>2012 год это не слишком старая?Нет, не слишком, особенно при отсутствии базовых знаний.
Почему джава не проверяет в compile time, что массиву передали отрицательную длину new int[-1], но зато проверяет, чтобы не больше, чем Integer.MAX_VALUE, даже еще чуть меньше. Это так сложно проверить на < 0 ?
>>1573577В ней нет многих элементарных вещей. Например, нет перегруженного Random метода, который бы возвращал рандомное число из диапазона, вместо этого приходится писать random.nextInt(max - min) + min.
>>1573673Слышал про этот класс, но не знал про метод. Ну все равно как-то странно, чтобы выполнить такое же по смыслу действие, надо обращаться к совершенно другому классу.
>>1573684>явно лучше плюсовНу это сильное заявление. Если ты умненький, любишь копание в кишочках и погромирование, то плюсы - идеальный инструмент.
Если бы в Java действительно работала сборка мусора, большинство программ бы удаляли сами себя при первом же запуске.
>>1573790Последний раз я видел эту шутейку во времена джавы 5. Эх, вот бы джава была написана на джаве
>>1573847> Любой микрофреймворк мне кажется диким оверхедом для этой задачиВ джаве о таком не задумываются, расслабься и возьми спринг бут. Или возьми другой язык, к примеру, Python+Bottle.
>>1573543Если именно фреймворк не нужен, есть вариант взять лёгкий сервер типа jetty или undertow и использовать напрямую его api
Хотя, думаю, мне не удастся найти что-то лаконичнее, чем https://github.com/undertow-io/undertow/blob/master/examples/src/main/java/io/undertow/examples/helloworld/HelloWorldServer.java Видимо на нем и остановлюсь, у jetty апи выглядит менее симпатично.
Никак не могу въехать в формулировку "в жабе все передается по значению". Но если я сделаюnew Object obj;Object hui;hui = obj;obj.setHuita(12);То ведь будет существовать только 1 объект и 2 ссылки на него. В каком месте это передача "по значению"?
А что с этим не так?list.forEach(x -> x instanceof HalfOfCivic ? дейстие 1 : действие 2);В итоге на все после ? срет "ожидается выражение" list - ArrayList содержащий объекты родителя и наследника.
>>1574470Слыхал, в этом и смысл провреки, не? Я не один и тот же метод зову в случае условия, метод наследника не имеет переопределяемого метода в классе-родителя.>>1574472Это же не стрим, а коллекция.
>>1574475В довесок, что именно я пытаюсь привести к лямбдеfor(Civic civic : list){ if(civic instanceof HalfOfCivic){ ((HalfOfCivic) civic).casting(); } else { civic.getWheels(); } }
>>1574475ну так сделай шоб без проверки ёпта. ебани в супер метод типаdoStuff(){действие 1}переопредели его в подклассеи ебашь list.forEach(item -> item.doStuff())
>>1574479Дальше - больше!public class QuarterOfCivic extends HalfOfCivic{ public void kukareku(){ super.kukareku(); }}>>1574480Как сделать с полиморфизмом мне более чем ясно, а без него никак?>>1574481Не совсем понял, но я же не смогу вызывать у Civic.casting(), .т.к. метод есть только у наследника? Как без условия?
>>1574491щас бы юзать наследование и не юзать полиморфизм, а проверять на принадлежность к классу и кастовать. этоПИЗДЕЦИЗДЕЦ
>>1574494Чел, я не пытаюсь выставить это как бест практис, я пытаюсь понять как в конкретном приведенном примере это сделать. С пиздецом - пройдись к Хорстману на 220 страницу.
>>1574497хуй с ним, если это дядя конечеловек просит. list.forEach(item -> {if(condition) {....} else {.....}})
>>1574477В варианте с лямбой и тернарником у тебя проебался каст. А вообще ты какую-то хуйню делаешь.
>>1574499> -> {Ах ты ж сука, не додумался блок открыть, спасибо.>>1574501Не сомневаюсь, что с точки зрения ирл приложения оно так и есть. Я пытаюсь всеми способами извратиться, чтобы закрепить. Но просто для примера, пусть у тебя будет родитель Х и наследник Y, у Y есть свой уникальный метод, при этом есть коллекция обоих классов. Как тогда ты предлагаешь вызывать уникальный метод Y при обходе коллекции?
>>1574505>Как тогдану смотри. половинку цивика ты льёшь, а к целой цепляешь колеса. всё это отлично абстрагируется в build().
>>1574510Ты предлагаешь сделать переопределнный билд метод для обоих классов? Да это я понимаю и могу, вопрос был как сделать в описанных условиях. Я так-то говнокожу эпизодически с пару лет, но вот дошли руки засесть за учебник и пробую всякое. Так-то я в жизни бы сам не дошел к вышеописанному решению, но не уверен, что это потому что я такой охуенный, а не вопреки незнанию что можно делать иначе чем полиморфизмом.
>>1574509Это часть языка, и не важно, устарела она или нет. На джаве придётся не только писать новый код с нуля, но и поддерживать старый, с instanceof, Checked Exceptions, StringBuffer, Vector, Enumeration, List из обжектов и EJB.
Ситуация. Достался в поддержку проект, связи с прошлым разрабом нет. В проекте есть множество контроллеров с API. И если на все /read логично сделаны get-запросы, а на все /create - POST, то на /update и /delete тут тот же POST, вместо PUT и DELETE, соответственно. Есть ли у кого мысли, почему так сделано? Разраб вроде толковый был и не похоже на обычный проеб
>>1575147Ну скажем так, подходы к многопоточности и масштабированию со времен актуальности RMI успели уже больше 10 раз поменяться. Уже и EJB успели и похудеть и сдохнуть, вместе с самим EE стандартом, уступив место весенней велосипедной хуитке про то же самое, успели сдохнуть и вебсервисы, и JMS, и даже сами сервера приложений. Успело попасть в относительно не модный мейнстрим и REST API, сейчас там уже GraphQL в моде.
>>1575156На жабке не только новые проекты пишут. У нас вместе со спрингом используются и ежб, и вебсервисы, и жмс.
>>1575221главное не с помощю какого метода реализованы апдейт и делит, а как они реализованы. за идемпотентность погромист отвечает сам.
>>1575086Смотря когда был написан проект и кем. Я видел такое, когда API писалось людьми, которые оч давно в джаве, еще до повального рестоебства. Логика простая - нужно тело - post, не нужно - get.Если ты задумал переписать, упаси тебя Гослинг, перекраивать существующий API. Пиши рядом новый.>>1575147У нас юзается, потому что когда-то под это был написан удобный и простой фреймворк. Хотя при этом проекты современные и хайп-поебени там достаточно. Просто это настолько просто конфигурится с этим фреймворком, что никому особо в голову не приходит от этого отказываться
>>1567242 (OP)Допустим у меня есть сет объектов у каждого из которых есть поле name и метод getName(). Как мне эффективнее всего создать сет имён всех этих объектов?
>>1575247>эффективнее всегопройтись итератором по сету и добавлять результат вызова getName() в новый сет
>>1569862Если у тебя чисто отдельный сервис и дальше никуда этот респонс никуда не проксируется, и не обрабатывается, то тебе в принципе можно положить болт и просто слать json со статус кодом. Типа, зачем пилить ради того, чтобы пилить. А вот если это прокси, то тогда нужно. Потому как у тебя и метрики будет проще получать каким-то micrometer да и гибкость обработки ошибок увеличится в целом.
Не могу понять реализация. nptr это элемент после которого вставляем новый? А зачем ptr тогда?public void insertAtPos(int val , int pos) { Node nptr = new Node(val, null, null); if (pos == 1) { insertAtStart(val); return; } Node ptr = start; for (int i = 2; i <= size; i++) { if (i == pos) { Node tmp = ptr.getLinkNext(); ptr.setLinkNext(nptr); nptr.setLinkPrev(ptr); nptr.setLinkNext(tmp); tmp.setLinkPrev(nptr); } ptr = ptr.getLinkNext(); } size++ ; }
>>1575683бля, ебани ты ноду приватным нестед классом с свой лист и не еби голову вот этой хуйнейNode tmp = ptr.getLinkNext();ptr.setLinkNext(nptr);nptr.setLinkPrev(ptr);nptr.setLinkNext(tmp);tmp.setLinkPrev(nptr);
>>1575387>>1575529Скорее соглашусь с вами, чем не соглашусь.Стоит ли тратиться на бумагу ради последнего издания Хорстманна?
>>1575626Судя по тому, что я половину слов в принципе не понял - буду пока>просто слать json со статус кодомСпасибо!
>>1576224Просто у тебя не джава-стайл код, нужно так:import java.math.BigDecimal;...System.out.println(new BigDecimal(Integer.MIN_VALUE).abs());
>>1576385@Autowiredprivate BigDecimalService bigDecimalService = ServiceFactory.resolve(BigDecimalService.class);
Что значит разомкнутый неупорядоченный список? У него не должно быть максимальной заданной величины, а операции по добавлению и удалению элементов выполняются не с помощью позиций/ключей?
Анон, можешь прояснить немного по поводу понятия текущей сессии в Хибернейте. Правильно ли я думаю, что при создании сессии фабрика её прогоняет через CurrentSessionContext, и при вызове getCurrentSession фабрика тоже обращается к нему? И при закрытии тоже... По-моему, я не совсем понимаю, как это происходит.
Есть два файла на 500к+ строк. Аргументы строк разделены запятыми, но сами аргументы могут быть в разных форматах, например value + prefix или в обратном порядке, но все ещё ограничны запятыми с 2 сторон. Нужно сматчить.Как я думал сделать:1. читаю файл №1 в стрим, перебираю построчно сплитю по запятой и дальше уже привожу к единой форме, чтобы порядок полей был всегда префикс + значение и пишу в лист тот же. Затем делаю аналогичную операцию для файла №2 и затем перепопределенным компаратором сравниваю вхождения элемента одного аррея в другой(или делаю ремув алл чтобы найти остаток). Где проебался?
>>1576610Или эффективнее будет сначала оба файла привести к единому виду и сравнивать чисто линиями? Листы же в памяти будут.
>>1576616555155, Хуйловская область, Куколдский район, с. Белое Озеро, ул. Озерская, д. 1666У 2 файла например может не быть ни индекса ни области, вместо "д. 1666" может быть просто "1666", вместо "ул. Озерская", "Озерская ул.". + бывают разные префиксы кроме ул. всякие там пер. прзд. но они хотя бы между двумя файлами совпадают, но могу быть как и в примере выше\до после.
Че вы тут вообще пишите на жаве? Кровавый энтерпрайз и всякий веб?Каких-то риал лайф примеров подкиньте, пожалуйста.
>>1576666Что пишем? Например, систему какого-нибудь учёта банковских ценностей. Тётенька вводит в программке, что такой-то хуй принёс столько-то налички и жмакает "сохранить", а на сервере выполняются какие-нибудь проверки, что-то сохраняется, что-то отправляется в другие системы, что-то логгируется и т.д.
>>1576691Там что угодно может быть. Отдельный экзешник, написанный на чём угодно, хоть на либах, умерших 20 лет назад. Ужас в духе Web 1.0, с минимумом стилей и JS, но почему-то работающий только в IE. Современное красивенькое веб-приложение на реакте. Чего только не бывает.
>>1576778потому что с 9 жабы ты можешь ручками собрать нужный рантайм энвайромент и не тянуть лишнее говно для прилаги, которая всё это говно не юзает.
В Жабе мне всё нравится.Потихоньку вкатываюсь. Уже нарисовал себе картину как в опенспейсе на кровавом энтерпрайзе удивляю всех эклипсом выключенным клиртайпом в интеллиж, но вот никак не додумаю: знающие аноны, чем ещё можно заняться с жабой, если не ёблей с энтерпрайзом? Геймдев не в счёт.
>>1576834Ыыы, больше фреймваркав, позволяющих писать вообще всё в одно длинное выражение, чтобы максимально приблизиться к макакаскриптному callback hell.
>>1576952вот кста тоже нипанятна, хуле это все одобряют/смиряются, это жи хуета какая-то, и в плане логическом, и в плане возможной оптимизациимимо вкатывальщик
>>1576898>обычный бекендИнтересно, в чем, по-твоему, разница между энтерпрайзом и обычным бэкэндом на джаве
>>1577210Если большинство что-то называет энтерпрайзом, то это, видимо, энтерпрайз. Я ни разу не слышал, чтобы тупой сайт-визитку на пхп называли энтерпрайзом, и вряд ли он таковым станет, если будет написан на жабе. Но бекендом это назвать вполне можно.
Я сдаюсь, как грамотно сделать сервлете один сервлет-контроллер откликается на /* ну допустим я принимаю команды из атрибутов, а если пользователь пошел напрямую на разрешенную ему jsp? Мне парсить все запросы в контроллере, или где то в фильтрах проверять можно ли ему туда ходить? Как сделать что не выглядело как говно? хуле нигде нет нормального примера как делать?
Intellij Idea можно с торрента спиратить? Нормально будет работать? Нужна именно с поддержкой java EE
Привет.Подскажите, Аноныгде скачать/спиратить книгу "Java для начинающих. Объектно ориентированный подход" авторы: Барт Бэзинс, Эйми Бэкил, Зеппе ванден Бруке
>>1577214Энтерпрайз это софтина, которая автоматизирует работу какой-то большой компании. А не всякие социальные сети.
>>15773101. Если компания не очень большая, это уже не энтерпрайз?2. Если это не софтина для автоматизации труда тёти Клавы, а, к примеру, сервис вроде яндекс-денег, это не энтерпрайз?
>>1577392Предлагаю напилить простенький REST-Api с помощью plumber.Ну или поебаться с http://www.rforge.net/JRI/
>>1577251ну это и сделал, но тут понимаешь,контроллер получается должен парсить каждый адрес из запроса, иначе он не узнает на какую страницу перенаправить, и еще он должен действия обрабатывать, а это уже 2 функциональности разные, я вот думал форвардить в фильтрах (тогда они в сессию будут лазить, форвардить и ток часть запросов пропускать), крч я могу ток говно сделать
Как это написать правильно, если поля next и previous private, а не public?"current.previous.next = current.next"current.getNext().getPrev() = newItemList; же нельзя.
>>1577574Понятно что сеттеры, но вот так же неправильно, никак не пойму что тут надоcurrent.setNext(setPrev(newItemList));
>>1577406Хочу запилить небольшую библиотеку, а тут надо отдельно ставить R, как я понял, это не то.>>1577413Какой-то стремный синтакс у него. Я пробовал Renjin, он подключается как джавовский ScriptEngine, что гораздо удобнее. Но тянет за собой многовато зависимостей, плюс для него не все R-овские пакеты доступны.
>>1567242 (OP)Двощ, подскажи, как поставить intellij idea без мокрых писек? Нигде не могу найти ключи, только этот сомнительный crack суют. Как активировать "идею"?
Есть библиотека с коллекциями, индексируемыми long индексами, чтобы можно было иметь более чем 2^31 элементов? Особенно интересуют ArrayList и BitSet с long индексами.
>>1578573Ну BitSet на 10^10 элементов должен занимать ~1 гигабайт всего и 10^10 уже не помещается в int.
>>1578584А он правда столько занимает? Наверняка там не всё так просто, и имеется какой-нибудь оверхед. А с листом - так подавно.
>>1578573Так сервера с терабайтами оперативы это как раз про джаву, у сишкоразработки таких денег нет, чтобы такие сервера покупать где массивы больше 32 гигов
>>1578587Я проверял. Массив из 10 BitSet-ов на 10^9 элементов занимает 1.2 гигабайта. Там внутри массив long-ов, в каждом long-е хранится по 64 битовых элемента. Значения устанавливаются и читаются через побитовые операции. Так что оверхеда нет.
>>1578618В long 64 бита. Если рассматривать каждый бит как булевское значение, то long это компактный аналог массива boolean[64].Если ты захочешь установить значение 5-ому биту long-а, то сделать ты это сможешь только через побитовые операции с маской.boolean[64] arr;long word;...long mask = 1 << 5; word = word | mask; // аналог arr[5] = falseword = word & ~mask; // аналог arr[5] = trueЭто идет с уровня процессора. У процессора обычно нет команды "установить i-ый бит", он умеет работать только с ячейками памяти 1 байт или больше. Установить 5-ый бит можно только через побитовые операции с маской.
>>1578692Ну допустим представлять сет натуральных чисел от 0 до 10^9. Если в таком сете много элементов, то BitSet будет занимать меньше места, чем HashSet<Integer> и операции объеденения, перечечения, добавления, удаления элементов будут работать гораздо быстрее.
>>1578853А у гослинга в книжке первое же задание написать свой собственный LinkedList в 1.0.2 jdk. Потому что jcf появился в 1.2мимо
>>1578906И Dictionary был, и Properties.Но вектор вроде бы не двусвязный список, его аналог ArrayList.
>>1579132Сам язык может и на плюсах, но стандартная библиотека почти целиком на джаве, кроме нативных методов.> асмеЯ не шарю во всех этих JIT'ах, с этим пусть плюсовики ебутся, но как я понял по исходникам, они напрямую генерят машинный код и сразу же его исполняют.
>>1579252Да просто ради интереса имиджборд на них написать попробовать, интересно же. Вдруг есть желающие?
>>1579263Хочу написать борду как пет-проект, но уж точно не на сервлетах. Но я еще плохо умею во фронтенд, поэтому еще не готов.
Читаю руководство Шилдта, насколько глубоко надо задрачивать теорию? Достаточно прочитать пару раз тему, понять ее и написать пару кодов? Или надо на зубок знать все понятия и термины?
>>1579703Достаточно один раз прочитать. На практике что-то используется часто, и придётся не раз перечитывать, что-то не используется вообще. Термины пытайся запомнить, это в дальнейшем поможет гуглить, но не задрачивай.
>>1579716Представляй, что ты на собеседовании и рассказывай вслух самому себе то, о чем узнал.Например почему String str = "foo"; (str == "foo") //true
>>1579783Потому что начиная с какой-то там версии java уже не надо писать эти даунские equals()А так же заработал switch по строкам, не прошло и 10 лет
>>1579792Нет, надо. Через равно сравниваются ссылки на объекты, посимвольное сравнение строк по-прежнему через equals.А true там по другой причине. Строковой литерал "foo" сохраняется один раз, и везде, где в коде встречается "foo", будет ссылка на один и тот же объект. Поэтому и true. А вот здесь это уже не сработает, потому что объекты разные:String s1 = new String("foo");String s2 = new String("foo");s1 == s2 // false
Здравствуйте, учу джаву , решил прочесать вакансии на hh и там в требованиях везде высшее образование или студент последних курсов, действительно ли в джаву без вышки не вкатиться?
>>15801511. Легко == отсутствие выбора.2. Возможности == способы реализции.3. Сложность == смысл жизни.
Сам, двачане. Юному дажава-подавану требуется помощь.Почему в приведенном на пике коде Scanner не обновляет переменную String word после выполнения блока if();т.е я ввожу с клавиатуры слово "слово" -> такой ключ уже имеется -> выполняется рекурсия -> ввожу "другое_слово" -> прохожу проверку -> метод возвращает "cлово"ЧЯДНТвторой месяц вкота
>>1580868Даже найти место, где будешь писать java-игры под кнопочные мобилки, найти легче. При чём это про 2014 год, сейчас, ваще не вариант, делфи поперспективнее будет.
Просматривал исходники LinkedList и задался вопросом, почему многие поля transient ?Ну допустим поля size и first будут сериализованы, почему это плохо?
>>1581042А еще не пойму почему надо было делать вложенный класс Node статическим,почему нельзя было сделать обычный inner class?
>>1581038О, я это смотрел. Только вот большой ли процент компаний сидят сейчас хотя бы на жыдке 11 ?https://www.jetbrains.com/lp/devecosystem-2019/java/
Сап.Пишу пет проект, на беке Spring (Boot), на фронте React. Хочу сделать авторизацию пользователей. В доку Spring Security смотрел, но там очень много вариантов - Oauth, OAuth2, с JWT токенами, с кукисами.Что хочу - мой сервер хранит данные о пользователях у себя в БД, соответственно и валидирует юзеров сам. Вопрос - какой способ авторизации /аутентификации будет самым простым в имплементации? Гайдов всяких в инете много, но вот выбрать нужный мне способ - сложновато.
>>1581038Ничего интересного. Да и вообще со времён 1.4 ничего интересного в джаве не появилось. А некоторые фичи так и вовсе можно считать деградацией.
>>1581194>какой способ авторизации /аутентификации будет самым простым в имплементации?Классический вариант с сессией и куки
Забись, блять.Решил вкатиться в 30 лет, а тут оказывается надо английский. Вкат переносится на 10 лет еще.
Так, серьёзный вопрос. Есть *Manager класс, в котором внутри и валидация, и бизнес-логика, и запросы в базу. Как это правильно разбить? Ведь при валидации могут потребоваться запросы в базу, и какие-то дополнительные данные из базы могут потребоваться в бизнес-логике
>>1581622Сделать класс который будет отвечать за запросы в базу с соответствующими методами. Что мешает бизнес логике и валидации обращаться к его методам?
>>1581632Блять, я Шилдта ебучего полгода читаю, дохожу до главы с методами и пиздец. Хотя переписываю каждый пример по 5 раз.И все равно как пытаешься написать метод - все красным подчеркивает. Уже раз 10 с начала начинал.
Сап, /pr/, есть огромный файл на сотни гигов, там в каждой строчке лежат какие-то данные, которые надо обработать и положить в БД. Как это можно сделать, какие оптимизации?
>>1581752ну там если кажем psql и csv файл то можно прям средствами psql наебенить. Если тебе еще какая то промежуточная логика нужна и это не на один раз, то можешь попробовать юзнуть FileUtils.lineIterator из апач, более помочь не могу, мб кто из более опытных анонов поможет.Успехов, дружище
>>1581758Да, я про LineIterator как раз думал, но наверняка есть что-то лучше этого. Мб распараллелить как-то можно, но я читал, что это диск сильно нагружает, хз
Аноны, а можете пояснить понятным языком за mutex и metaphore? Перечитал английских статей, но суть как-то не уловил
>>1581767Читаешь последовательно, тебе этого хватит, но строчки запихиваешь в очередь (с ограниченным размером), N потоков из нее читают и пишут в БД.
Джавач, я построил в экселе график динамики количества постов в день за последние 5 тредов. Охуенная программа, всем советую.
Есть вот такой кодpackage com.company.teach;public class Stack { char q[]; private int pushloc, poploc; Stack(int size) { q = new char[size + 1]; pushloc = 0; } void push(char ch) { if (pushloc == q.length - 1) { System.out.println(" - Очередь заполнена"); poploc = pushloc + 1; return; } pushloc++; q[pushloc] = ch; System.out.print(ch + " "); } char pop() { if (poploc != 0) { poploc--; return q[poploc]; } else return 0; }}package com.company.teach;public class StackDemo { public static void main(String[] args) { Stack ob = new Stack(10); for (int i = 0; i < ob.q.length; i++) { ob.push((char) ('A' + i)); } for (int i = ob.q.length; i >= 0; i--) { if (ob.pop() != 0) { System.out.print(ob.pop() + " "); } else System.out.print(" - Очередь пуста"); } }}Метод поп выводит в консоль через букву и откуда-то берется 12 итераций. Хотя через дебагер вроде все норм получаться должно.
>>1581042https://stackoverflow.com/questions/5317876/how-to-serialize-a-linked-list-implemented-in-java
Решил тут наконец попробовать модули. Думал ну уж сколько лет прошло, сейчас то наверное большинство библиотек должно было перейти. Ну и как оказалось нихуя никто ничего не делал. В лучшем случае добавили в манифест строчку с названием автомодуля и все, да и то таких единицы. Большинство да же этого не сделало, не смогли одну сранную строчку добавить за 3 года. А уж библиотек с module-info.class вообще можно по пальцам одной руки пересчитать.
>>1582282Нинужно. Модули ваши хуйдули, это всё бесовская чепуха. Господь дал нам швятой OSGi, вот и делай как все, а не выёбуйся. Иш чего надумал блять... Модули-хуёдули у него
>>1580087>действительно ли в джаву без вышки не вкатиться?Сейчас как и всегда для вката нужны знания. Если их у тебя не много то вышка как бы говорит что ты в состоянии выучить разную хуиту.Если у тебя есть знания то всем похуй!Даже в наше время после профильного вузика не все идут в пограмисты ибо сложно (нужно самостоятельно гуглить / учить технологии а привыкли дрочить по учебникам)
Может кто-нибудь объяснить задание? В ячейке стека создать массив? Или представить сам стек как индексный массив, лол? И какие записи имеются в виду? Строки?
>>1582920>icon of javaНо ведь у жабы есть одна икона и это Mr. Venkat Subramaniam, а не рандомный индус.
>>1582943Для чнения ввода, например, можно использовать сырой InputStream и читать побайтово.Прочитать то, что уже было выведено - вообще нетривиальная задача, и нужно это бывает ну очень редко.
>>1582963res не инициализирована. А так же бесконечная рекурсия на f('A') и бессмысленый конструктор.
>>1582965Нихуя не понял.Семерка>>1582968В методе же char res. И у меня char ch приравнен к 'Z' в main.
>>1582982Ты чет вообще не понимаешь, что происходит. Ты решил научиться программировать просто читая код и дописывая свой? Интересный метод, но попробуй хотя бы посмотреть видео Mr. Nagoor Babu, если не хочешь книги читать.
Считается ли васянством, вместо шаблонизаторов, периодически обновлять статичный хтмл, составляя его прям из кода? По идее, это должно быть более производительно, чем jsp, правильно думаю?
>>1583187Ты предлагаешь вместо генерации на лету хранить тысячи однотипных страниц, постоянно отслеживая изменения на них?
>>1583058>>индийского не понимаюкак ты собрался учить джаву не зная языка всех гуру? вот заодно и перфектли вель иглиш прокачаешь
>>1583201Нет, предлагаю хранить один хтмл, перезаписывая при изменениях либо с определённым интервалом. Только там, где это удобно. Всякие поиски с фильтрами, понятно, проще делать на лету.
>>1583215Получается, имеет смысл только как оптимизация, если тебе это реально надо для производителтности
>>1583243Ну и никто не мешает при этом использовать нормальный шаблонизатор для построения html, потом уже кэшировать результат
>>1583312Ты вызываешь ob.fac() и игнорируешь результат. И в следующей строке почему-то пытаешься вывести ссылку ob, а не число. Перепиши, например, так:int r = ob.fac(5);System.out.println(r);
>>1583323А пробел в конце зачем выводить? И вообще, зачем начинать изучать ЯП с рекурсий, если не знаешь основ...
>>1583326я дошел по книжке шилдта до рекурсий, правда пока шел - все остальное забыл.А если в методе с помощью рекурсии должен выводиться например алфавит, то метод должен быть void, а в теле метода систем аут принт?
>>1583350Если ты хочешь написать программу, которая переполняет стек и падает, убери char из этой строки.
>>1583566"абвгдеёжзийклмнопрстуфхцчшщъыьэюя".chars().mapToObj(i -> (char) i).forEach(System.out::println);
>>1583614>>1583612>>1583604>>1583485>>1583350>>1583312>>1583058>>1582963Блять, это местный блаженный что ли? Сначала было смешно, но теперь уже нет.
>>1583971void мул(int и) {if (и < 0) return;System.out.println(кью[и]);мул(и - 1);}...мул(кью.length - 1);
есть ли отличия между простой java и для андроида? начать изучать язык с первого или можно сразу браться за второй?
Backward compatibility, говорили они...Пример из книжки не работает. Не компилируется на строчке (5,7).Хотя по идее должен отработать третий метод с примитивами. А теперь он видите ли не может выбрать между обжектом и интом.Книжка на 7 ждк, а у меня 11 amazon corretto.не путайте мой скрин со 100500 скринами итт, я другой анон
>>1584011После "обычной" андроид пойдёт легче. Синтаксис одинаковый, большая часть стандартной библиотеки тоже. Но на андроиде ты в первую очередь работаешь с Android API, который нужно изучать отдельно.
>>1584018Ниверю. В java 7 тоже бы не скомпилировалось. Пример слово в слово как в книге? Либо в книге ошибка, либо ты неправильно переписал, либо ты сам придумал пример и почему-то решил, что должен отработать метод с примитивами.
>>1584047Рили, как в книге, или опечатка, или авторы обосрались, но тогда объясни плиз, анон, почему тут неопределенность между Object и int?
>>1584051Вроде overloading resolution происходит примерно так: 1. Сначала ищется метод точно подходящий по сигнатуре2. Если не нашли, то метод подходящий по сигнатуре, если разрешить расширение типов3. Иначе разрешаем расширение типов и автобоксинг/автоанбоксинг4. Иначе разрешаем и расширение типов, и автобоксинг/автоанбоксинг, и варарги.Если на каком-то этапе нашли несколько подходящих методов - то ошибка компиляции. У тебя на 1-3 этапе не подходит ни один метод, на 4 этапе подходят 2 метода.
>>1584099В том числе про это. Плюс, если это ссылочный тип, то приведение к родительскому классу или интерфейсу. Например Integer -> Number, Integer -> Object, Integer -> Constable, Integer -> Comparable<Integer>
>>1584018Гугли java overloading ambiguity. Авторы книги, похоже даже не компилировали свой код и вывод брали из головы.
Анон, у меня сейчас дилема: надо выбрать на какой стул сесть - на жс и ноду или на жабу. Если коротко, то просто попрошу объективно расписать где сейчас джава юзается и для каких целей. Повторю, МАКСИМАЛЬНО ОБЪЕКТИВНО И БЕЗ ВЫЕБОНОВ, а то я вас знаю, набегут ща 300кк/нс и будут пиздеть что жс/жаба НИНУЖНА и как им заебись на ГОЕШЧКЕ!Короче вы поняли, заранее спасибо.
>>1584222> объективноСмешно.Джава - энтерпрайз, нода - бекенд, сфера ноды примерно как у пхп. Если интересуют зарплаты, полистай хедхантер и не слушай тех, кто заливает, что там всё завышено.Плюс джавы в том, что на ней ещё долго будет несложно найти работу.
А кто-то сдавал сертификацию оракл? У меня уже 3й подход будет, уже книга для 11 жавы вышла, а я никак не решусь подготовиться и сдать. Предыдущий был летом, прочтал книгу по подготовке к 8 джаве, проходил бесплатные тесты, хотел уже купить платные, прогнать и записаться на экзамен, но наступила осень и я чёт забил, куча дел и проблем повилось. Вот думаю теперь 11 джаву читать готовиться.
>>1584005ты б рекурсию не упирался, у жвм глубина стека ограничена, про хвостовую она вообще не знаетмимо жую кложу посижу пока тут
JVM-помидоры есть? Как правильно затюнить GC, чтобы при нагрузке не было просадки перфоманса время от времени? Нужен ровный RPS вообще всегда. Более медленной производительностью в общем готов пожертвовать.
>>1584192Создаю гиги за шаги через воображаемые рабоплантации. Что ты несешь, лол?>>1584461Просто разобраться хотел.
Подскажите нубу, где искать нормально написанный код, чтобы перенимать практики и учиться в нем разбираться?
Господа, подскажите пожалуйста, в чем дело. Решаю я себе задачки на гиперскиллс, никого не трогаю, чиллю так сказать. Попадается очередная легкая задачка, где надо сделать калькулятор по типу ввода оператора и двух чисел, чтобы все это было как аргументы в мейн. Все легко и спокойно пишется сначала во встроенном редакторе, а потом я думаю, дай-ка еще локально запущу. Пикрелейтед. Причем такая хуита только для чара "*". Гиперскилл предлагает мне свою версию кода, где по сути тоже самое, только результат вынесен в кейс и аргументы парсятся там, запощу след. постом, я пробую его, и локально он мне вообще выдает в итоге "Unknown operator". Гуглить-гуглил, нихуя не нашел.ЧЯДНТ?
>>1584460вот тоже хочу. Но единственный свободный час перед сном уходит на английский. Хз когда эту книгу читать и тесты проходить
есть большое количество однотипных операций, которые надо выполнить.Как это сделать? Взять тред пул, в цикле насоздавать runnable и засунуть в этот тред-пул, он выдаст Future.Разве этот процесс создания множества Future не будет расходовать память?
Есть замечательная книга "CLR via C#". Имеется ли подобный материал для языка Java? Хочется вкатится начиная с уровня пониже, без "циклы это то-то то-то..".
Сап. Есть у кого-нибудь тестовое задание для junior java ? И еще подскажите, какое приложение написать можно, чтобы было что залить на гитхаб? Читал книги по се и по сервлетам Мурач, а что дальше делать не очень понимаю, просто чтение остоебло, надо что-то написать, а что я не понимаю...
>>1585066Возьми какого-нибудь хорстмана и скипни первые несколько глав. Этого хватит для всего. Ты не проаустишь никаких сакральных знаний, как если бы это были кресты.
Читаю советы по составлению резюме. Если вы начинающий девелопер без опыта блаблабла ... блаблабла укажите весь свой опыт в качестве девелопера.
>>1585069Забей на сервлеты, учи спринг по туториалам. Затем напиши какой-нибудь простой интернет-магазин с REST API и несколькими крудами.
>>1585069из епама Построить веб-систему, поддерживающую заданную функциональность:1. На основе сущностей предметной области создать классы ихописывающие.2. Классы и методы должны иметь отражающую их функциональностьназвания и должны быть грамотно структурированы по пакетам.3. Оформление кода должно соответствовать Java Code Convention.4. Проект должен работать на сервере приложений – tomcat, база данных –MySQL.5. Проект должен передаваться на оценку, поставкой.6. Поставка представляет собой архив. Название – ваше Ф.И.О (пример:ИвановИИ.rar)7. Поставка содержит следующие директорииo src – исходный код проектаo sql – скрипты создания и наполнения БДo doc – документация8. Папка doc поставки должна содержать документ со следующимсодержимым:o Постановку задачиo Руководство по установкеo Руководство пользователяo Описание БД. Какие таблицы и как они связаны, а также описание вкаком поле что лежит. Формат описания не особо важен, но лучше чтобысхема таблиц была наглядной.9. Поставка должна содержать скрипт сборки и установки(ant или maven).После прописывания настроек и запуска bat файл. Проект должен бытьсобран из исходников и задеплоен на AS, а также развернута БД.ВНИМАНИЕ: Данный пункт не является обязательным, но даетдополнительный бонус при написании скрипта.10. Приложение должно поддерживать работу с кириллицей, в том числе ипри хранении информации в БД.11. Архитектура приложения должна соответствовать шаблону Model-View-Controller.12. При реализации алгоритмов бизнес-логики использовать шаблоны GoF:Factory Method, Command, Builder, Strategy, State, Observer etc.13. Используя сервлеты и JSP, реализовать функциональности,предложенные в постановке конкретной задачи.14. В страницах JSP применять библиотеку JSTL и разработать собственныетеги.15. При разработке бизнес логики использовать сессии и фильтры.16. Выполнить журналирование событий, то есть информацию овозникающих исключениях и событиях в системе обрабатывать спомощью Log4j.17. Код должен содержать комментарии.18. Все пункты задания являются обязательными. За каждый пунктвыставляются отдельные оценки.В-4 Система Библиотека. Читатель имеет возможность осуществлять поиск изаказ Книг в Каталоге. Библиотекарь выдает Читателю Книгу на абонемент илив читальный зал. Книга может присутствовать в Библиотеке в одном илинескольких экземплярах.
>>1585094Ну справедливости ради такое задание для человека, которые уже раньше делал ни раз такие CRUD-ы, не такой уж сложное. Если человек никогда такого не делал, понятно что для него оно выглядит как ужас-ужас.
>>1585130жейсон это текстовый формат для обмена между фронтом и беком, читаем людьми, имеет ограничения
>>1584717Ну во первых ocp без oca ты не сдашь (вернее сдашь как я понял но сертификат не получишь). А во вторых работодателям и ocp то особо не вперлась - вче хотят опыт в джаве от 40 лет
Аноны, глупый вопрос, но все же:Прочитал в книге, что для явы, как я понимаю, нужно подключить стандартные библиотеки, которые лежат в архиве директории "/home". Так вот, там есть пункт "Создайте каталог javasrc в своем начальном каталоге". Что имеют в виду под "начальным каталогом"? Начальный каталог самого JDK? И где он начинается, фактически? Где мне нужно создать эту директорию "javasrc", чтобы из неё подтянулись стандартные библиотеки?
>>1585176А ничего что внутри сервлетов сокеты? Так давайте в 2к20 вебню на голых сокетах писать, блеать.
>>1567242 (OP)Андроид тред в каталоге не нашёлся, спрошу тут. Анонсы, как блядь подключить интернет в приложении? Пермишены в манифесте прописал, а оно всё равно не подключено к сети.
Анон, какие ресурсы, книги можешь посоветовать для быстрого но более менее детального ознакомления с языком (Один только синтаксис не интересует)? Опыт программирования на других языках, и общее тех. понимание имеется. Хочу быстро пробежаться по языку. Делаю бота для майнкрафта, потребуется изучать сдекомпиленные .class'ы, и на жабе писать самого бота.
>>1585493> паттерн матчингу.да даже в той же банде четырех говорится используй паттерн когда он нужен, а не пихай его везде
Везде пишут, что spring сверх популярен и крут, может ли знающий анон отписать тут про хотя-бы пару крутых и широко известных проектов, бэк которых был написан с использованием spring. Про Java EE, тоже интересно. Не поймите неправильно, я без наезда, просто сам пытался гуглить, но ничего не нашел, что очень странно
>>1585647Популярен он в первую очередь в энтерпрайзе, для внутреннего применения. Логично предположить, что бек какого-нибудь Сбербанка Онлайн написан на нём.
>>1585647Ты совершенно точно регулярно пользуешься сервисами, написанными на спринге. Просто это не "известные проекты", а скучные штуки типа банков или почты.
>>1585647>может ли знающий анон отписать тут про хотя-бы пару крутых и широко известных проектов, бэк которых был написан с использованием spring.Linux.org.ru
>>1585889Практикуюсь же.>>1585890Ой, страшная штука какая-то. Но я постараюсь.>>1585894Ну а я свое посадил, разве не классно!
Возможно вопрос платиновый но всё-жеКак шарписту вкатится в Джаву? Точнее какую(ие) книги и с какой главы читать(чтобы пропустить базовые вещи).Ну или дайте видос/курс толковый (а то обычно везде 3/4 - базовые фичи обсасывают, которые почти везде одинаковые)
Хэллоу, май фрэндс. В общем есть два класса, наездник и бык. Класс наездник содержит имя, возраст и массив 10 объектов Бык[] быки = new Бычара[10]. Я переопределил методы equals() и hashCode() в двух классах, но когда я пытаюсь сравнить два объекта класса Наездник с одинаковыми(идентичными) данными, то мне выдает false. Я сразу подумал на массив объектов. Потому что, когда я оставляю просто объект класса Бык и сравниваю наездников, то получается true. Переопределяю equals() у наездника так:@Overridepublic boolean equals(Object obj) { if(this == obj) return true; if(this.getClass != obj.getClass) return false; Наездник бобби = (Наездник)obj; return (this.имя.equals(бобби.имя)) && (this.возраст == бобби.возраст) && (this.быки.equals(бобби.быки));}Может быть в этом переопределении я не правильно сравниваю массивы объектов?Я пробовал ещё так сравнить Arrays.equals(this.быки, бобби.быки); но компилятор принудительно сразу ругается.
>>1586063Ну, заменю ант на мавен, а jsp на шаблоны. Мне для себя надо, я в мухосранский епам не собираюсь.
>>1586066это я понимаю. и вот у меня вопрос. как сделать так, чтобы массивы объектов сравнивались поэлементно. Arrays.sort() он либо для примитивов, либо для Object[] юзается.
Анонасик, смотри. Правильно ли я понял, что здесь речь о том, что я могу таким образом указать собственное имя для столбца, в котором будет сохраняться это поле? А если я не укажу имя, то столбец будет называться так же, как поле?
>>1586082Вообще, меня терзают определённые сомнения, что дело в чём-то другом, судя по наличию слова constraints. Но больше у меня пока версий нет, потому что я без понятия, что такое constraint в данном контексте, а в книжке это не объяснено.
>The UNIQUE constraint ensures that all values in a column are different.Вот в чём дело. И что тогда значат параметры в аннотации uniqueConstraint? Что она сама вообще делает? Зачем мне её вообще давать и при этом не объяснять ничего...
>>1586079>Arrays.sort() он либо для примитивов, либо для Object[] юзается. Если хочешь сортировать быков, то тебе нужен вот етот sort. Короче, план такой:1) читаешь, что такое компаратор2) реализуешь компаратор для быков3) сортируешь4) юзаешь Arrays.equals
>>1567242 (OP)Двач помоги с архитектурой MVC для приложения про преобразованию изображений.Не могу понять в каком пакете хранить логику приложения, т.к в всех примерах spring MVC архитектура используется с БД и соответствующими пакетами entity, domain, repo etc и сервисным, как связующим звеном с контроллерами.Но что если я не использую БД? Правильно ли то, что я назвал пакет сервисом и логику по обработке изображения храню там?
Почему в идее тип и имя переменной по дефолту подсвечиваются одним цветом? Столкнулся сегодня с тем, что при разбиении метода на несколько методов поменьше, тело основного метода превращается в нечитаемую кашу. В каких темах тип и имя переменных подсвечиваются по-разному?
>>1585661>>1585696В сбере (в их СберТехах) во всю используют спринг, и даже сразу же ведут лекции по нему в своей явашколе.
>>1586426Ну так сбер - энтерпрайз. У нас бывший сбертех (сейчас взяли в сам сбер), есть и спринг, и джава ее.
>>1586471Ну покажи, как у тебя это выглядит. Это стандартная тема Darkula, на двух машинах выглядит одинаково.
Поясните простыми словами, что такое консалтинговая компания? Читаю в инете, какую-то хуйню, Консалтинговая компания занимается прогнозированием и исследованием рынка, оценкой объектов, оценкой эффективности бизнес-проектов, поиском выходов из кризиса, преобразовывает и создает организационные структуры, создает маркетинговые программы и другими вопросами, которые возникают в процессе деятельности предприятий, организаций, фирм.Ведь этим всем может заняться какой- нибудь бизнес-тренер, зачем компании создавать, а главное зачем им кодеры?
>>1587145анализ рынка, консультации и тд.вот есть у тебя палатка шаурмы, заработал ты мал мала денех и хочешь расширится продавая пирожки с капустой, так вот хочешь ты узнать ситуацию на рынке будет ли спрос на них, а если будет продвинуть, нанимать на постоянку аналитика и маркетолога тебе не упало, ты отдаешь этот вопрос на аутсорс им, они все за тебя делают.зачем кодеры, ну не вручную же они собирают и обрабатывают всю статистику, рекламу и тд.
>>1587145Скорее всего имеется в виду IT-консалтинг. Примерно то же самое, что системные интеграторы, обычные "галеры".
>>1587186А развернутее? Что такое системный интегратор? Что такое обычные галеры, чем отличаются от необычных?
Вызываю public метод из другого класса, оба в одной пакете, но пишет, что метод не определен для класса, в котором вызывают. В чём вообще может быть ошибка?
У меня есть список объектов. И мне нужно удалить оттуда элемент по какому-то признаку, но при этом я должен обязательно знать, был ли такой элемент вообще. Какой способ с точки зрения производительности будет лучше:Чекнуть размер спискаremoveifсравнить с новой длинойвывести сообщениеилиifcontainsвывести сообщениеremove
Решил расширить познания, ковыряю дроида. Начал я делать эти ваши задачки по яве.Это просто жесть, столько ошибок я в жизни не видел.Нихуя не конвертируется, не мутируется, не сравнивается, ебучие блядь типыска кресты проще, одну букву нельзя просто сравнить с куском строки.Один вопрос: нахуя!? Реально серьезный вопрос. Писать долго, примитивные вещи которые делаешь на жс за 1 наносекнду пишешь по 5 минут на хуяве.Зачем она вообще нужна сейчас? Че она может чего не могут остальные языки? Посидев на яве я понял что очень сильно скучаю по динамической типизации.
>>1587264Пфф наоборот. То что прописивается на хуяве за 5-10 минут английскими словами на крестах пишется за минуту краткой сокращенной символикой.
>>1587268А, любитель const std::unordered_map<std::type_index, std::pair<std::string, int>> &priorities
Главнейший аргумент почему ява используется на дроиде - большинство разрабов уже знает яву.Пиздец. То есть из-за кучки сраных олдфаготов из 80ых нужно теперь зубрить это говно потому что они так сказали?
>>1587286Я хочу знать лучше платформу, для которой делаю приложения(через пердолинг конечно же). Без пердолинга вроде как подразумевается больше возможностей и понимания будет. Но меня расстраивает этот выбор. То, что придется учить херню которую нигде иначе никак использовать не сможешь.
>>1587317символы они и идут как символы а не как кодировкаа насчет остального поиграй с кодировкой може распознает
>>1587259У опшинала есть такие прекрасные методы, как мап, фильтр, а обжектс возвращает голый объект.
Где лучше джавистам живется? В компаниях, которые пилят свои проекты веками или в аутсорсе? Какие плюсы/минусы обоих сортов?
>>1588112Да вот хуй знает, от конкретных случаев всё зависит. Даже в одной компании ситуация варьируется от подразделения к подразделению.
>>1588120в галере количество веслающих прямо зависит от заказов, нет заказов часть на мороз уходит, в продуктовых как то эти качели поменьше.а внутренний климат это чистый рандом
>>1588019И до них всех дело не дойдет, если передать в Optional.of null. Короче это хуйня все, of должен вести себя как ofNullable, а второй метод нахуй не нужен.
объесните, пожалуйста, про градлвот у меня есть проект-java-приложение и я хочу, чтобы оно выводило результаты своей работы в фаелкак это грамотно сделать? в какую директорию писать фаел? надо что-то указывать в build.gradle?просто вот с ресурсами всё понятно: ты просто засовываешь ресурсные фаелы в src/main/resources и потом можешь их достать через Main.class.getResource("file_name")а есть ли что-то похожее с аутпутными фаелами?
>>1588355Впрочем, похоже, вариант есть именно через ресурсы::https://stackoverflow.com/questions/13000937/read-and-write-to-java-file-via-resource
>>1588362Хз, какая-нибудь мелкая аппликуха, где не хочется подрубать СУБД, но ебаться с путями файлов тоже не хочется.
Как в ебучий проект Eclipse добавить файл? У меня есть файлик, который нужно закинуть в проект. Если через проводник добавить его в нужную папку, то иде его не видит. Приходится создавать через сам Eclipse. Но это же блять пиздец тупо. Как мне сделать что бы проект заметил файл? Почему все сука так тупо, в гугле ничего нет.
>>1588891Что поделать, акулы бизнеса. В том сегменте не бывает корпораций добра. Как например были эпплы в самом начале в противовес ibm.
Доброго, уважаемые знатоки. Учусь джаве. Встала задача заполнить ArrayList с клавиатуры. Помучился сам, погуглил. нгуглил на на StackOverFlow решение с пика Я его изначально пытался использовать, но оно же не работает. Цикл прервется только если ввести НЕ цифры. В какую сторону гуглить, котоны.
>>1589185Собственно сама задача на пике. Если бы можно было ввести слово для сигнализации о том что список для ArrayList закончен... Я пытался создавать список String и для выхода из цикла ловить "\n", но результат тот же.
>>1589198>>1589198Тебе в System.in приходят две строки. Нужно и сканировать всю строку сразу, чтобы точно знать когда закончилась первая и началась вторая.public static void main( String[] args ) { Scanner sc = new Scanner(System.in); String numbersString = sc.nextLine(); int num = sc.nextInt(); String[] numbersStringArr = numbersString.split(" "); List<Integer> numbers = new ArrayList<>(numbersStringArr.length); for(String numStr : numbersStringArr) { numbers.add(Integer.valueOf(numStr)); } }
>>1589741Да ладно тебе, не надо из-за шрифта расстраиваться. Побереги нервы для завтрашнего легаси. га-га-га!
>>1589984Сначала лучше пройти боевое крещение, создавая нубский проект по getting started на сайте спринга. А уже потом углубленно изучать по книжкам.
>>1590166Спс, чекну. Я для знакомства со спрингом смотрю курс от alishev'а на ютубе. Потом собираюсь читать Spring in action 5th edition, тоже alishev советовал.
Можно ли реюзать один и тот же JsonWriter в стандартном Json API? Есть ли такая возможность, или нужно каждый раз его открывать заново?
сап, /зк/Посоветуйте какой-нибудь курс/литаратуру по gradle и что-нибудь по spring, а то я на них пишу уже пару месяцев и тщательно скрываю ото всех что не понимаю толком нихуя.
Нет, буферный writer не получится. Сам же JsonWriter райтером не является, так что к нему ничего толком не подцепишь...
А, не, туплю. В общем, надо открыть JsonWriter на другой BufferedWriter, и каждый раз при записи делать backingBufferedWriter.flush().
>>1590518У меня в школе учился Алышев, тупой азербайджанец. Он помню подошел к кабинету английского, а он замкнут был, и он от злости ебнул кулаком по двери, там вмятина осталась. Наверное до сих пор там. Дверь наверное бумажная дешевая.
>>1590656там ворох проблем может быть, мусорщик будет тупить, система может ограничивать количество открытых потоков, хуета с дескрипторами, лучше закрывать
>>1590672Ну, я не планирую слишком много потоков кэшировать. Но разве так не делают обычно, когда есть вероятность частых обращений к одному файлу?
>>1591104Вакансий чисто на Котлине не так много, разве что Андроид.А так подразумевается что ты и Яву знаешь.
>>1591104C# по массовости все таки проигрывает жабе. Kotlin как приложение к джаве - гуд - сахарок облегчает жизнь, чистый котлин как тебе выше сказали мало где нужен. Typescript - хорошо, но как приложение к js (потому что откроешь ты сорцы, а там js, а node это вообще фреймворк, ты ж не спрашиваешь учить ли тебе спринг). Короче, учи жабу/котлин + джс/тс. Скоро со скрамоебством, чистые бэкендщики и фронтендеры станут наследием прошлого, да и в любом случае в тырпрайзе время от времени приходится чинить фронт.
Допустим, у интерфейса есть public String getSomeShit() Я хочу дать возможность классам, реализующим его использовать вместо метода getSomeShit аннотацию @SomeShit над полем Stringкак это сделать поэлегантнее? делать default метод, в котором через рефлекшн пробегать по массиву полей в классе?
Посоветуйте ресурсов откуда задачки можно взять порешать. Прочитал Шилда, сейчас читаю Блоха, но практики совсем никакой нет, только перепечатываю код из учебников.
>>1592764Только все не решай. Эта книга юзается как учебник в каком-то бульбовузе и количество заданий в конце главы рассчитано на группу студентов. Шоб каждому свой вариант выдать, ну ты понял. Решай по 1-2 и норм. Иначе ебанешься головой. Ну и тесты нужно все проходить.
Джавач, посоветуй библиотеку для работы с джейсонами. Джейсоны у меня будут сложные и многоуровневые, нужно будет искать в них значения. Пока мне больше всего зашла работа с json в php - там они парсятся в массив ключ-значение, но там и типизация динамическая.
>>1592858>сложные и многоуровневые>зашла работа с json в phpВозьми groovy. Это такой способ насыпать себе в джаву немного динамики, туда где она уместна.
>>1592907> парсить всё в мапумне так и нужно, лол, конкретно в данном случае не нужно десериализовывать в какой-то конкретный класс
Кто-то принимает в локализации ? Я выкачал проект, хочу подправить под себя некоторые вещи. Так вот, там есть 3 файла : msg properties, msg propertsEng и такой же руснявый. В первых двух полное повторение и там все в виде переменная - значение на англ.А в русском файле - переменные и им соответствует какие-то биты байты юникоды вида \u0243 и пошло поехалоОно само как-то автоматом билдится в этом файле ?Я хочу исправить значения там, а как это делать, если все в этих юникодах, все тупо тереть и руками переписывать?После правки первых 2 файлов в 3 ничего не меняется в апе установлены енг и ру локаль, но какого-то кода для автоматического такого билда русского файла я не нашел, как оно и откуда появляется ?
>>15931151) Попробовал заменить в ру файле тот юникод на славянськи слова - страница в вебе потом отображает вопросы в кружках, вместо того что надо2) пробовал удалять ру и енг файл и оставить общий - файлы сами заново не появились, удалял с них значения и оставлял только в корневом - тоже ничего .Как эти ебашифры появились в славянском файле
Сап, анон. Через месяц попадаю на обучение по ява беку(на курсе будут основы ооп, работа с файловой системой, куча спринга и реста/тестирования). 2 месяца обучения с возможностью остаться там работать. Так вот, не хотелось бы проябывать такой шанс и прошу совета, что можно поделать, чтобы подготовить себя к работе и успешному проекту в конце курса. Из скиллов у меня не так много, разве что куча олимпиад и задротство компутер сайнс задач на питоне. Ну и джанго немного + всякая хуйня, типа сис админских навыков. С явой знаком только в плане синтаксисе и немного андроид приложения пилил.
String fileName = "out.txt"; if (fileName.matches("\\.txt")) { System.out.println("Найдено"); } else { System.out.println("Не найдено"); }Бля, а почему не найдено то все время? я на regex101 провери, там находит.. чет я не вдупляю
А, понял.. я даун, спасибо, буду знать теперь как проверять регексы джавы, а не как долбич для пхп.. Но как найти .txt я все равно не понял..
>>1593658А как быть с линуксом, где можно любой файл пометить как текстовый, если не ошибаюсь, первыми несколькими байтами?
>>1593772>>1593637Здесь была задача найти все файлы, с расширением .txt. То, что описал ты, нахуй не нужно, хотя легко реализуется.
>>1592462Это https://code.sololearn.com/cVRUy2BwauK8#java>>1592704Где ты тут n увидел? Тут только k - количество ответов.
>>1593778в аргумент функции передается имя файла, и нужно определить, .txt файл или нет, если нет, то хз.. Ошибку наверно выдать, а если *.txt, то заебумба, продолжаем дальше.
Спринг здесь? Почему у меня в post параметры откуда-то залетает content-disposition? Тестирую через postman
>>1593911А где ты тут >>1589383 nlog(n) увидел? Там только m - количество сравнений.В худшем случае n = k. И k - это лишь ограничение снизу, ты можешь в процессе работы программы иметь results размером n-1 элемент при k = 1.
Даже не знаю, где и спросить. Про тестирование ничего не нашел. В общем, шарит кто в Jmeter? Есть две транзакции, нужно выполнять их в процентном соотношении 60/40. Как этого добиться?
Аноны, надо ставить пробел между строкой объявления класса и тем что ниже идёт? Всегда считал что нужно, а тут какой-то помидор не ставит Допустим Интерфейс аМетод а()Или класс аЛоггер
>>1594232Лучше ставить, чем не ставить, но не принципиально. Соглашений на это мало, так что если думаешь, что читаться будет легче, ставь.Пробежался грепом по нашему проекту, большинство ставит.
>>1594589Если приложение простое, то используют Express / Fastify. Я бы не назвал это фреймворками, скорее библиотеки для роутинга. Для более сложных используют фреймворки Nest или Adonis. Первый кстати очень на Spring похож.
Мб знает кто, в чем беда?mysql 8.0.18драйвер той же версии, без этого говна ничего не работает:Class.forName("com.mysql.jdbc.Driver");
>>1594714Почему?The DriverManager methods getConnection and getDrivers have been enhanced to support the Java Standard Edition Service Provider mechanism. JDBC 4.0 Drivers must include the file META-INF/services/java.sql.Driver. This file contains the name of the JDBC drivers implementation of java.sql.Driver. For example, to load the my.sql.Driver class, the META-INF/services/java.sql.Driver file would contain the entry: my.sql.Driver Applications no longer need to explicitly load JDBC drivers using Class.forName(). https://docs.oracle.com/javase/8/docs/api/java/sql/DriverManager.html
>>1594720ну блять у довна с курсов и у тренера работает без проблем больше инфы мол работает/не работает у меня нет
Как мне сделать так, чтобы все классы, некоторым образом помеченные(аннотацией или еще как-то), компилировались в другие классы? Например, вместо одного класса скомпилировать два разных.
>>1594716Много раз везде читал, что должно заработать само, но у меня никогда это само не работало. Гугл ничего конкретного не сказал. Поэтому просто всегда это пишу.
>>1594718SQLite работает без этого, на счёт других бд не в курсе, я с другими только через спринг дату общался
>>1594052Если во входном массиве все элементы разные, то добавление последнего элемента будет nlog(n) (там ещё есть добавление предыдущих, но оно не меняет сложность). И памяти там O(n).
А рекурсия часто используется на практике? или только на ебнутых тасках, где надо покрутить членом, написать с нулям алгоритм сортировки, не используя библиотек и т.д ..
Как из этого сделать сортировку по убыванию? Вроде по логике, просто заменить в проверке, чтбы, если больше либо равно, то закидывает большее, а не меньшее и все должно работать.. а вот нет.. При такой сортировки по возрастанию все ок, а как только меняешь проверку, то вылетает ArrayIndexOutOfBoundsException: Index 1 out of bounds for length 1
В общем.. не знаю в чем было дело, только что настругал куча сиаутов, чтобы отследить где же индекс аут ов баундс... Изменил опять так же, как изменял все это время, условие проверки и все заработало.... Ебаная магия, 3 часа сидел ковырялся... Психанул, написал на двач, пошел опять поменял тоже самое, что и менял = все заработало...... ЧУДО! Держу в курсе.
>>1594950>добавление последнего элемента будет nlog(n)Нет, добавление будет log(n). Первый алгоритм вообще неправильный.Но это не важно, разговор был что анон доебался до O(nlog(n)) а сам написал O(n) по памяти, когда очевиден алгоритм за O(1) по памяти.
>>1595019>только на ебнутых тасках, где надо покрутить членом, написать с нулям алгоритм сортировки, не используя библиотек и т.д ..This.
Получил таск. В нем пункт:-Решение принимается в виде исходного кода проекта. Я чет туплю, шоб не обосраться.. Это значит им переслать архив с проектом? или на гит залить и ссылку на гит?
>>1595418Да я спросил их вчера, эти дауны молчат, а срок до 12 сделать)) 10/10. Наверн очисла 13 ответят и в догонку. ОЙ ЧЕТ ПОЗДНО УЖЕ, СОРЯН)
>>1595426Да хуй знает. Вдруг это для них важно. Лан, сделаю и так и так и отправлю им архив, а в догонку ссылку на гит. Пусть открывают че хотят
Решил отказаться всё-таки от кэширования ридеров и райтеров. Мало ли, что с файлами сделается при внештатном завершении приложения.Но вообще, серьёзно, как тогда поступить, чтобы меньше нагружать файловую систему? Запросы-то могут приходить очень часто. Или этим обычно не заморачиваются и ставят кулдаун у клиента на запросы и ССД на сервер?
Мб кто знает как в сервлетах добавить фильтр перед отправкой ответа? просто Filter срабатывает при получении запроса, а я хочу после выполнения всех действий вообще я хочу синхронизировать работу с куками тип, на входящий фильтр сохраняем все значения в сессии, а на исходящем фильтре сохраняем все значения в куки мне кажется что это оверинжиниринг
>>1595800doFilter(req, resp) {filterChain().doFilter(req, resp);//здесь хоть цирк с конями устраивай}
>>1595800И вообще, ты ёбу дал? Томкэт автоматом выдаст клиенту печеньку с JSESSONID. Не нужно ничего ручками в куки писать.
>>1595836проблема:1.получаю параметр от пользователя,2.заношу его в куки3.цепляю к ответу4.не имею доступа к этому параметру из других частей приложения, только при следующем запросе имею доступ к куками мне не нравиться их парсить в разных местах приложениявидел способ сделать прокси ответа со списком куков, это вменяемое решение? Есть какие то бест практисы,
>>1595096>Нет, добавление будет log(n). Первый алгоритм вообще неправильный.Ок, добавление последнего log(n), но добавление всех n элементов - nlog(n) иначе мы тут изобрели сортировку быстрее nlog(n)>>1595096>а сам написал O(n) по памяти, когда очевиден алгоритм за O(1) по памяти.Нет там o(n), протри глаза, там o(k) где k количество найденных элементов. А теперь умник, расскажи как ты вернешь k элементов используя o(1) памяти?
Нужно ли в проектах для портфолио накручивать абстракции на ровном месте? Ну тип чтоб видели, что я умею этими фичами пользоваться. Вот у меня есть pojo, который всегда конструируется со входными данными в конструктор. Сеттеры там для большинства полей не нужны. Надо ли мне этот pojo добавлять в Spring контейнер, при конструировании делать getBean и потом ставить значения через сеттеры? Или лучше делать по-человечески и демонстрировать в первую очередь архитектурные решения?
Тред, походу, совсем утонул, но попытаю счастья. Аноны, подскажите. Я тут прохожу один видеокурс и там для работы с XML используется JAXB. Как я понимаю, его удалили из стандартной SE, поэтому в настройках проекта в идее во вкладке modules я подгрузил джарник с jaxb-api. Все импорты прописались, но ничего не работает, вылезает куча ошибок. Ок, добавил module-info, часть пакетов подкрасилась красным. Добавил require'ы, вроде идея ни на что не жалуется. Запускаю на компиляцию, чтобы проверить как программа отработает тестовые данные и получаю такое сообщение: "Error occurred during initialization of boot layerjava.lang.module.FindException: Module java.activation not found, required by java.xml.bind". По идее программка должна создать один файл, он не создан. Не подскажите, как решить данную проблему?