https://github.com/qqqlll/Java-Thread/wikiПрошлый тонет тут >>1012692 (OP)
Джава умирает и превращается в кобол. Даже уже нормально не могут зарелизить 9 версию. Все кормят завтраками. Ораклу джава и не нужна шибко была , ее купили вместе с базой MySQL.Ваши оправдания, почему еще не переходите на развивающийся язык С#?
>>1034474Яствами оставшихся с похорон короля свита еще долго питаться сможет.
>>1034474
Есть HashMap.И есть вагон всяких объектов, которые составляют уникальные пары.Вопрос: Как красиво и наименее костыльно впихнуть эти пары, как ключи?Стандартными средствами.
>>1034468 (OP)Привет)Я жс сениор, хочу вкатиться в жаву. Наверное, знаете что в жс подключить пакеджи простое дело, пишешь в консоли npm i package_name и готово) Как в жаве это происходит?
>>1034541Никак.
>>1034541если я правильно понял, что такое пакеджи в жсе, то в жаве лучше всего юзать maven наверн
>>1034541Нахуй тебе жава?
Сап, как вкатится на Джуниора, зная только Джава кор и имея опыт с libGDX?
>>1034568С таким бэкграундом никак.
>>1034564а сам как думаешь?)>>1034553походу оно, придется обмазываться мавином
>>1034578А что нужно ,чтобы до минималки доскребсти?
>>1034607В 2017 году уже ничего.
>>1034662>>1034662Фраер, ты бы хоть немного поподробней писал,а не загадками этими
>>1034679> ФраерСлышь, хуила обоссанная, ты тут никто и звать тебя даже не войтивайти, чтобы ты тут спич воровача продвигал. Вникай в существующие послания к тебе или оставайся кем ты есть сейчас.
>>1034568этого хватит. почитай еще про сети, математику и смело иди на собеседование
Sup ананасы, есть вот какой вопрос: в жава эф ихс делаю кликер, а т.к. каждый нормальный кликер дрлжен добывать очки с течением времени нужно это как-то организовать. Пробовал с Timeline но что-то не выходит совсем, вернее выходит, но другие методы не работают. Как мне осуществить беспрерывную работу метода по добавлению очков в секунду(чтобы еще эта переменная могла менятся при "покупке завода") и одновременной работе прочих методов, вроде, собственно, клика. Чем пользоваться? И, если можно, немножко описалова, чтобы проще вникнуть можно было, а не просто ссылку на метод. Заранее благодарю
Поясните какие в популярных книгах темы и технологии уже не актуальные или очень редко используются, и соответственно лучше не учить?Например JavaFX вместо старого Swing который во многих книгах.
>>1034578>>1034692Почему так толсто?
>>1034468 (OP)Начинаю учить cs в этом году, в вузе будет много джавы. стоит ли в будущем её брать как основной стек технологий? или все же присматривать себе что-то другое ?
>>1034690>Слышь, хуила обоссанная, ты тут никто и звать тебя даже не войтивайти, чтобы ты тут спич воровача продвигал. Вникай в существующие послания к тебе или оставайся кем ты есть сейчас. Не хера себе , ты пердуни из ладошки надышался, чтобы такие речи загонять на будущего нано сеньор разработчика Кремниевой долины
>>1034579> а сам как думаешь?)Ради денег?
>>1034711Много таких по весне из войти выкатилось.
>>1034744Догадливый.
Spring Data JPA vs. Hibernate нить стартует здесь
>>1034799ни то ни то не нужно. Спринг-дата вообще вредна/нить
>>1034800А что же нужно? И почему Spring Data вредна?
>>1034700Делай инкремент миллисекунд в геймлупе. Как сделать геймлуп в jfx я хз, какой нибудь апдейт или рендерер переопределить в компоненте.
>>1034799Spring Data JPA - это лишь удебненький интерфейс к JPA, реализацией которого является тот же хибернейт.Хз о чём ты спорить собрался.
>>1034814Действительно, перделка то удобная, но все равно процентов 30 запросов будешь писать через @Query или на неймд квери, и еще около 10 процентов, как ни крути пишутся на нетив и похуй на то що к платформе гвоздями прибиваемся.
>>1034817Так именно и тем удобная. Ты просто взял и написал кверю в аннотации и разметил параметры. Мне очень нравится. Ну и всякую крудопарашу за тебя написали, чтобы ты не копипастил с предыдущего проекта.
>>1034817>>1034820А хуита по генерированию кверей из методов не нужна, да.
>>1034803>И почему Spring Data вредна?становится невозможным выйти за пределы примитивных селектов
>>1034849Что тебе мешает взять и реализацию написать методу какую хочешь?
>>1034854> что тебе мешает взять костыль и положить его на другой костыльТак и живем.
>>1034854а можно просто отказаться от этой спринг-даты
>>1034860В каком месте дата - костыль? Это просто интерфейсик поприятнее. И в каком месте свои методы - это костыль, если это пример прямо и з документации спринг даты?>>1034861И ебаться руками с entityManager даже в крут методах, и копипастить это сраный AbstractEntityDao<E> из проекта в проект.
>>1034864>и копипастить это сраный AbstractEntityDao<E>а вот это не надо. Сохранение каждой сущности надо писать руками, дабы не сохранить чего лишнего. Автогенераторы ни к чему хорошему не приводят> И в каком месте свои методы - это костыль, если это пример прямо и з документации спринг даты?Костыль описан прямо в документации. Мило>Это просто интерфейсик поприятнее.я не готов жертвовать расширяемостью, гибкостью и скоростью ради "приятненького интерфейсика"
>>1034877> я не готов жертвовать расширяемостью, гибкостью и скоростью ради "приятненького интерфейсика"Ты ничем и не жертвуешь.>Сохранение каждой сущности надо писать руками, дабы не сохранить чего лишнего.Ну тут я даже комментировать ничего не буду.
>>1034879ты очередной фанатик ОРМ, как огня боящийся голого sql. Я тебя понял
>>1034880Нет. Я тут задвигаю за плюсы и минусы даты относительно использования хибернейта самому.
>>1034881Позадвигай про плюсы не на петс проектах. Выяснится что это негибкое говно, отказаться от которого легче чем его расширять.
>>1034799Ты еблан, долбоеб?
>>1034883Хз, юзаю в проде, всё ок. Расширяется так, как хочешь. Это же в итоге просто pojo с EntityManager внутри.
>>1034700да брось ты маяться фигней, кликер он делает. До тебя все сделали уже. Го в хотс катанем лучше пидоръ
>>1034474макрософт не нужен
>>1034883юзаем hibernate, узкие места оптимизируем на sql, что не так?
>>1035135> что не так?Используете plain sql вместо винрарного жука там, где нужен sql.
>>1035149Платный же вроде.
>>1035163Для MS SQL и Оракла. Для остальных бд бесплатен. И ничего не мешает просто спиздить джарники jooq-pro.
>>1035196Сейчас он на Stream API работает, вообще годнота:https://www.jooq.org/doc/3.4/manual/getting-started/jooq-and-java-8/Это же LINQ to SQL.
>>1035047снова ты выходишь на связь, мудила?
>>1034811уже кое-что, благодарю, но, насколько я понял, есть какой-то класс вроде Thread для jfx, но это не точно. Ещё я нагуглил вариант с обёрткой, но, мало того, что я только 1 раз нашёл я ещё и толком не разобрался(искал способ попроще, блин).
>>1034541Гугли "java build tools"
Сап джаваны, уже пол года работаю джуном на тырпрайзе. Сегодня позвало начальство и предложило перейти на другой проект на пистоне, на пистоне есть опыт небольшого круда на джанго, в универе делал на нем лабы по паттернам, вроде даже нравилось. Соглашаться или нет, какие подводные камни ?
>>1035372Можешь обучиться перестать ставить пробелы перед вопросительными знаками.
>>1035393Нет, слишком сильное колдовство.
>>1035372> хохло контора?
>>1035458нескажу, диванон.
Привет, анон. Обращаюсь за вспоможением. Так уж сложилось, что мне предстоит в ближайшие три дня писать тест на знание java, от которого зависит мое будущее трудоустройство на должность, где знание java - далеко не на первом месте. Имею общие представления о ООП и опыт процедурного программирования. Т.е. уровень знания java околонулевой. Что может помочь освоить язык на минимально допустимом уровне за 24 часа? Вики треда читал, там в основном ссылки для тех, кто намерен основательно изучить язык. Мне же нужен некий "ликбез", чтобы можно было клепать хеллоуворлды и основные тонкости языка знать, что чаще всего спрашивают при собеседованиях. Посоветуйте, пожалуйста, кроме сосания хуйцов и деланья бочки.
>>1035550Всё просто: Ты не сдашь этот тест
>>1035550Джава не JS и не питон - порог вката выше.Тест не сдашь, думай уже сейчас как маневрировать с остальным.
>>1035550Погуглил за тебяhttps://learnxinyminutes.com/docs/ru-ru/java-ru/алсо в шапке есть всё, но ты же ленивый
>>1035372если тебе похуй на чём кодить, то иди.я бы не перешёл на другой язык, т.к. хочу вырасти именно в джава
>>1035680Спасибо, может в глаза долбился, не заметил в вики. Организационное решение уже придумал, но все равно почитаю на досуге.
Как обуздать жидею, чтобы при переносе на новую строку соединяемого String - не пидорасило отступы? Чтобы вторая и последующие строки были на одном уровне с первой.
>>1035791Settings->Editor->Code Style->JavaИзучай. Заодно и нам расскажи если найдёшь своё.
Джаваны, на чём вкатиться в веб на ядрёной жабе без обмазывания пидорскими хипсторскими фрэймворками?
>>1035966на сервлетах и jsp
>>1035791>>1035847https://stackoverflow.com/questions/18159995/how-do-you-fix-intellij-strange-string-indentation
>>1035966Ни на чем тогда.
Как вы поняли что стоит менять работу и лычку джуна на миддла?Сколько лет опыта у вас было и насколько вы оценивали свой опыт?Как долго искали?
>>1036012Сам поймёшь. Если это не теоретический вопрос и до сих пор не понял, то значит пока рано в мидлы.
>>10360121. После трёх лет работы, когда проект перешёл из стадии наращивания функциональности в стадию поддержки багов и костылей.2. Собстно, три года, в течение которых я более-менее познакомился с JAXB/JAXP+SOAP, JSP+JSTL, JPA+Hibernate, EJB. Вдоволь поебался с Tomcat и WebLogic. Ну и по SQL и PL/SQL я натаскался прилично хоть сейчас оно мне и не нужно, слава Ктулху. Со Spring был незнаком вообще.3. Почти мгновенно. Создал профили на LinkedIn он ещё доступен был, HeadHunter. Также указал вПаше, что я ололо-жаба-кодер. В течение трёх дней мне позвонили раз восемь. Выбрал филиал зарубежной компании с переездом в город покрупнее моего Мухосранска не ДСы, зп увеличилась в два с хуем раза но это, скорее, эффект низкой базы.
Нахуя из Скалы выпилили дотнет?
>>1036072А нахуя скале дотнет?
>>1036073Ну епта, деплоить в джаву для линаксов, в дотнет для винды.
>>1036075Зачем деплоить в дотнет для винды, если можно в джаву?А вообще я думаю, что убрали из-за того, что многие скала-ориентированные либы имеют java интерфейсы.
Сап анон, работаю пол года в поддержке легаси, это нормально, что я из 8 рабочих часов, 4 проебываю скроля двач или другую хуиту, но никак не кожу ?
>>1036079Я 6 часов скроллю двач, час вконтакт, пол часа мануалы, пол часа код. Джун на сишарп легаси.
>>1036072И хорошо, что убрали. Нахуй это говно.
>>1036079Если тебе похуй на свои навыки и карьеру и ты не против просирать своё время - нормально.
Не знаю куда ещё задать вопрос по спрингу. Есть сервер на который должен поступать запрос с изображениями. Нужно обработать запрос, и потом изображения передать на другой сервер, который их у себя сохранит. Нужно это, чтобы каждый из серверов имел доступ к файловому серверу.
>>1036111Это тебе тестовое задание такое дали что ли?А вопрос где?
>>1036118Не, это я сам пилю. Со спрингом хуёво знаком, до этого на нетти всё делал. Ещё я наверно хуёво объяснил, попробую по подробнее. В общем я пытаюсь придумать архитектуру для сервера, который потом можно будет горизонтально масштабировать. Первый раз этим занимаюсь, по-этому пока что получилось то, что на том пике. И всё бы ничего, если бы не требование хранить и отдавать изображения, ну т.е. файловый сервер. Из того, что пришло в голову - это принимать реквесты с изображениями в серверах1-3 (к примеру), обрабатывать сами реквесты, а изображения перекидывать на файловый сервер, который их у себя сохранит. Не знаю, возможно есть вариант лучше, тогда я бы хотел про него почитать. Если нет, то я хочу понять, как мне из спринга законнектиться к другому серверу (спринг/нетти без разницы) чтобы передать туда изображения.
>>1036123а что, перебросить запрос на эндпоинт другого сервера некатит?я тупой, если что
>>1036127Так я это вроде и хочу сделать. Что-то типа вот этого.
>>1036129Причём тут спринг, нгинх, и в чём проблема?
>>1036130Ну, основная проблема в том, как перекинуть запрос из спринга на другой сервер. А другая в том есть ли вообще смысл в том, что я делаю? Может есть какой-то другой вариант.
>>1036123>как мне из спринга законнектиться к другому серверу (спринг/нетти без разницы)Да так же как и не из спринга: пишешь код и коннектишься. Хочешь netty, хочешь ещё как-то. Какой интерфейс сервер выставил - к тому и коннектишься.
>>1036079То, что реально работаешь 4 часа нормально. Не нормально, что остальные 4 часа скроллишь харкач, а не развиваешься.Когда все 8 часов аж пар идёт от непрерывного написания кода, продумывания и обсуждения архитектуры и ревью пулл реквестом и меньше задач не становится очень заебываешься и после работы только на харкач и хватает.
>>1036131двачую этого - >>1036135юзай RestTemplate
>>1036111Делаешь все эти серваки стейтлесс аппниками. Алгоритм работы с изображениями хуячишь на интерфейсах и солиде, после чего горизонтально увеличиваешь количество серваков и машешь коком.Если хочешь изолировать логику по персистенсу изображений и туда же впилить админку, то или хуячь кластер микросервисов с которыми будут работать аппники, либо юзай решения типа айбиэмовского файлнета.Хотя один хуй ты ничего не понял, поэтому пиздуй дрочить джава кор и не возвращайся к этому, пока не станешь воннаби помидоркой.
>>1036145Выебщик ебаный.Тебя человек совета просит, и ты видишь что он не очень шарит, так ты давай понты ганять галимые.я не оп вопроса
Сап, аноны. Не понимаю на каком этапе происходит выбор нужной перегруженной функции. До или после того, как дженерики будут выброшены из кода?Если есть функции f(int v) и f(double v), то вызвав f(l.get(0)), где l - это ArrayList<Integer>, то выполнится первая функция, т. е. нужная функция выбирается до.С другой стороны, если написать f(List<Integer> v) и f(List<Double> v), то выйдет ошибка компиляции, так как у функций будут одинаковые сигнатуры, и значит нужная функция выбирается после.
>>1036170Читай про type erasure.
>>1036168Уебище, протри глаза. Я единственный, кто по делу ответил на его незаданный вопрос. Так что давай извиняйся передо мной за свой пиздеж, если у тебя есть честь.
Как из файла прочитать даблы, которые записаны через точку, а не запятую?
>>1036224Вторая ссылка гугла.https://stackoverflow.com/questions/10584948/doubles-commas-and-dots
>>1036224читаешь как стрингу, заменяешь точку на запятую, парсишь в дабл
Как понять, что я знаю жава коре? Первый тест из шапки прошел, а остальные за донат.
>>1036266Можешь написать красно-черное дерево - знаешь Core.
>>1036273Ну, написать могу. Даже напишу. Только не по памяти, а если освежу раскраску и балансировку.
>>1036076Потому что джавы может и не быть в системе.
>>1036319Ее можно установить, или засунуть jre в комплект к приложению и запускать тупо батником.
>>1036319Ога, джавы может не быть, а дотнет обязательно будет.
>>1034468 (OP)Парни, у кого-нибудь есть тексты JavaRush в формате для читалки? Такое вообще существует?Алсо какой бумажный учебник можете посоветовать если я нуб, но хочу именно как потенциальную профессию изучать
Стоит ли сомтреть курс седжвика на коурсере или книжки достаточно?
>>1034468 (OP)Стоит ли вкатываться в java в 2017 ? есть перспективы? не останусь ли я без работы через 5 лет ?
>>1036540Нет. Нет. Нет.
>>1036542не пизд
>>1036399В дисяточке дотнет по умолчанию установлен.
>>1036582Дисяточка это 25%.Сперва добавь в инсталлятор свой поддержку xp, потом возвращайся, поделишься впечатлениями.
>>1036586Хуй с ней с xp. Я как вспоминаю проблемы с установкой монги на сервер 2012r2. Когда у тебя не встаёт .net framework, потому что не накатилось ОБНОВЛЕНИЕ ВАШУ МАТЬ НА ВИНДУ.
Есть ли плагины чтобы писать хаскелем и компилить в жава код?
>>1036960Только под бсд.
>>1036960https://github.com/Frege/frege
>>1036495Java. Библиотека профессионала, том 1. Основы. Кей С. Хорстманн, Гари Корнелл. П.Ноутон, Г.Шилдт - "Java 2. Наиболее полное руководство".
>>1036495Поясните за JavaRush. Стоит ли обмазываться тому, кто до этого с программированием был не знаком никак, от слова совсем это мой первый язык
>>1037113Обмазывайся Си или Паскалем, учи алгоритмы с деревьями, сортировкой и т.д., и уже потом перекатывайся в Жабу. JavaRush это бесполезная трата времени. Ладно бы там учили фреймворки типа Spring или Hibernate (с его языком запросов и т.д.), но там изучают, как писать HelloWorld в консоли - на каких олигофренов это рассчитано, непонятно.
>>1037113Учи JS, а то кобол решил учить первым.
>>1037121Ну как я понял, они себя позиционируют как курсы, после изучения которых ты сможешь работать. Ну то есть после полного прохождения, офкЯ тащемта смотрю на зарплаты java-программистов и они мне кажутся вполне хорошими.
>>1037136Начинать изучение программирования с лямбда-выражений? Проиграл.
>>1037152>Ну как я понял, они себя позиционируют как курсы, после изучения которых ты сможешь работать.В макдональдсе кассиром - запросто. А вот для устройства Java разработчиком нужно знать не синтаксис языка и базовые классы (это любой школьник знает), а фреймворки, чему на этих курсах не учат. Ну и алгоритмическую подготовку какую-нибудь.
>>1037152>Я тащемта смотрю на зарплаты java-программистов и они мне кажутся вполне хорошими.А ты задумывался, за что им платят такие зарплаты? Уж явно не за умение писать public class Program { public static void main(String[] args) { System.out.println("Hello World!"); }} и даже не за сервлеты.Вот какой-нибудь PHP можно было бы изучить по таким курсам, ну и зарплаты у них соответствующие.
У меня зп 35к, 5 лет опыта на жабе, а на те вакансии, где хорошо платят, не прохожу собеседование. Ибо там гоняют по тонкостям работы виртуальной машины.
>>1037171Дуй в ДС/ДС-2
>>1037171>У меня зп 35к, 5 лет опыта на жабеНахуй так жить? Че ты там делаешь ты че ебанутый? Послушал бы пару лекций шипелева, почитал бы джава мемори модел, почитал бы сборшики и глядищь бы устроился.Ну или в ведро перекатился бы.Или у тебя пять лет конвертирования из XML в аннотации и обратно?
>>1037171Опыт измеряется не годами работы. Если тебя никуда не берут, то это повод задуматься о своей реальной квалификации.
Мои Best Practicles1) Объекты только в виде POJO, никакой логики внутри. Ибо если внутрь класса класть бизнес-логику, он быстро превращается в god object, внутри появляется очень много зависимостей и зависимостей от вызовов методов. Плюс нарушается принцип инкапсуляции - зона ответственности весь класс и все потомки, нет четких границ. В случае же процедурного-подобного подхода зона ответственности четко ограничена, и четко видны вход и выход.Плюс объекты с бизнес-логикой внутри сложно тестировать, ибо оно зависит от внутренних состояний2) Бизнес-логика в виде процедурно-подобных методов в классах-сервисах. Легко тестировать, легко расширять, легко видна зона ответственности, легко делится на слои, легко разделяется на разные классы3) Наследование только в виде расширения POJO объектов, в соответствии с первым пунктом4) Делим приложение на слои, минимальное количество: слой записи, слой чистой бизнес-логики и слой взаимодействия с внешним миром5) Юнит-тестирование только в случае непонятного или страшного кода, в котором я не уверен. Гнаться за 100% покрытием - вредно, ибо увеличивает кодовую базу и затрудняет рефакторинг и правки.Вместо юнит-тестов по максимуму интеграционные тесты, прогоняющие реальные сценарии работы с начала и до концаРейт
>>1037598Норм. Пришел примерно к тому же в данный момент.Часто использую lombok. Для некоторых POJO/DTO просто делаю все поля public без сеттеров/геттеров - логики в них всё равно нет. сеньорпомидор
>>1037603>lombokинтересно. Спасибо, читаю
Вопрос насчет скалы и akka-http. Пишу загрузку файла с помощью веб-формы. На текущий момент я написал с помощью play. https://pastebin.com/TZT8J0nFНо по причине полного незнания акки я жестко туплю. Подскажите, как вообще это работает? Я просмотрел пример для начинающих у них на странице. Нашел еще пример на SO https://stackoverflow.com/questions/37430141/file-upload-using-akka-httpНо сама проблема у меня это как связать play request и акковское взаимодействие.
>>1037685>akka-httpчто-то такое припоминаю. Оно возвращало null без ошибки при любой проблеме. И при любой сетевой проблеме я получал NPE. Дропнул
>>1037691Падажи ебана, мне кажется оно шлет специальный месадж если проебется.
>>1037685встречный вопросты в скалу с джавы вкатился? сложно было?
>>1037598Про тесты хуита.
>>1037725чому?
>>1037727Гугли tests pyramid
>>10375981,2,3 это же MVC паттерн, не?3 не очень понял, 5 - тоже не шарю, ибо не писал больших кодовмимо джун ваннаби мидл
>>1037730Автор не шарит. В большинстве случаев юнит-тесты бесполезны. Кроме того они далеко не бесплатны, их нужно поддерживать, их нужно писать, они сложнее чем тестируемый код, в них есть баги, они затрудняют любые изменения, они нарушают инкапсуляцию.Конечные интеграционные тесты - оптимальное соотношение. Они тестируют только конечное поведение, которое не изменяется при жизни кода. И они действительно показывают что приложение работает в критериях бизнес-задачи
>>1037750>1,2,3 это же MVC паттерн, не?это отрицание идеалов ООП и паттерна ActiveRecord в частности
>>1037750>>1037765я 1,2,4 имел ввиду, но, думаю это ничего не меняетваннаби мидл
>>1037685https://www.playframework.com/documentation/2.5.x/ScalaFileUpload#Writing-your-own-body-parser
>>1037752Юнит тесты стоят дешевле всего по сравнению с интеграционными, ui и системными. Именно поэтому они составляют бОльшую часть твоей пирамиды. Они обеспечивают регрессию и поэтому ускоряют и упрощают рефакторинг.
>>1037849поменял логику, упало 100500 юнит тестов.И ты не знаешь, это потому-что они тестируют реализацию, или потому-что бизнес-задача упала.Плюс они нарушают инкапсуляцию. Они знают о коде, причем это дублируется в куче мест
>>1037849ИМХО, не надо упарываться по юнит-тестам, их реально сложно становится поддерживать, когда проект разрастается.На моём проекте, например, юнитами покрывается только бизнес-логика, причём не вся, а только самые критичные участки.Зато 100% покрытие бизнес-кейсов интеграционными автотестами, с пролитием тестовых БД, заполнением данными и т.п., в качестве сторонних сервисов - либо "реальные" тестовые среды, либо wiremock.мимо-недо-сеньор
>>1037923P.S. Хотя, конечно, у нас просто есть отдельные бойцы-автотестеры, которые всё это поддерживают. Без них, я думаю, спасались бы юнит-тестами да мануальщиной.
>>1037927рест-запросы можно дёргать автоматически, через спринговые приблуды
>>1037929Я больше про то, что они тесты пишут на уровне бизнес-кейсов и приложения в целом, а "просто" разработчики в основном погружены в потроха своей части проекта и сложно бывает переключаться с одного уровня абстракции на другой - проект большой. Т.е. не только в технической реализации дело.
Ребятки, а знаете с чего я ржу?>Нам нужно защищать внутреннее состояние объекта> Хитрые сеттеры-геттеры> Прайваты> Файнал классы@ИНТРОСПЕКЦИЯ
Смотрите, че нашел, курс Java от Microsofthttps://www.edx.org/course/learn-program-java-microsoft-dev276xКто может пояснить, нахуя майкрософту это нужно?
>>1037961Пиздец, как же пичет от всего этого говна, когда нужно переопределить поведение наследника объекта, а самые нужные места объявлены как private.Такое чувство, что вся эта хуйня задумывалась исключительно ради кодомартыханов на конвеере, чтобы соседняя обезьяна не дай бог что-то сломала.
>>1038312Потому что надо делать private base, а потом приватно наследовать от неё в конечный объект. Ах да, я забыл, ведь в джаву не завезли приватное наследование.
>>1037724Да, я на работу недавно устроился джавистом. Монолит на джаве, а сервисы на скале. Пока тяжеловато, особенно новые инструменты осваивать.
>>1038310Инструктор няшный
Что подразумевается под> Знание технологий и архитектуры приложений Java?
>>1038397http://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/aop/framework/AbstractSingletonProxyFactoryBean.html
>>1038404проіграв
>>1038405http://java.metagno.me/
Какой на жаве есть удобный аналог requests питона?Надо бота написать для телеграма, мог бы на питоне запросто, ибо уже делал не раз, но это скучно + мне нужна java практика.
>>1038570Берешь понравившуюся библиотеку для телеграма и пишешь бота на джаве, груси, котлине, скале. По вкусу добавляешь абстрактную фабрику синглтонов по созданию фабрик для создания фабрик.
>>1038570Apache HttpClientRetrofitSpring RestTemplateНо нахуя всё это, если уже есть готовая либа?
>>1038610>>1038612Спасибо за ответ.Готовые либы юзать не хочу чисто принципиально, челенж такой себе поставил, лол.
когда учился и вкатывался в айти - было очень интересно и круто. и вот проработал я 1.5 года - от программирования тошнит. но знаю, что если сменю профессию, то опять будет хотеться программировать. может мне как-нибудь договориться чтобы работать 6 часов без обеда, а не 8? тогда недоедать не будет. пришёл к 8, а в 2 часа дня уже свободен, кайф
>>1038748Это называется свободный график в нормальных компаниях - когда работаешь 6-7 часов и вопросов нет, т.к. успеваешь и выполняешь задачи.Но у тебя проблема другая - прост программирование не твое, вот запал новой сферы пропал и тебя все заебало. Постоянно об этом предупреждают войти вайти, идущих за чуть более длинной деньгой, но воз и ныне там. Конкретно в твоем случае 6 часов вместо 8 проблему не решат и с каждым днем ты все меньше будешь хотеть просыпаться и идти на работу с мыслями как ты ее ненавидишь и все заебало, вгоняясь в депрессуху. Если не хочешь скатиться, то можешь начинать искать новое призвание уже сейчас.
>>1038620Так тебе шашечки нужны, а не ехать?
>>1038770>>1038748Можно проработать в смежных областях, где твой опыт программирования даж понадобится.Я с веб-макаки на интернет-маркетолога перескакивал, пациент жив, вернулся в веб.
Няши, что стоит выучить:java/scala/что-то специфическое типа go/хаскел итдНа данный момент владею крестами, пиздоном, немного веб-говном.
>>1039016Scala.
>>1039016А почему бы тебе языки не по алфавиту изучать?https://en.wikipedia.org/wiki/List_of_programming_languages
>>1039055Потому что интересно изучать что-то полезное, применимое в работе. Если б я хотел просто потратить время то учил бы ASM. Или LabView.
>>1039060Каким боком это к языкам программирования общего назначения относится?
>>1039062Ну а какой прок в 2017 изучать например Ada из этого списка?
>>1039064А какой прок советовать closure байтоебу? Ты же не обозначил свою область деятельности.
Я не байтоеб, кресты никогда особо не нравились, но в институте выбора не было... Поэтому и хочу сейчас перекотиться на что-то более приятное и удобное. Попробую скалу пока.
>>1039075>>1039070
Чет я с частичного вызова функция в скале в осадок выпадаю. Пиздец, такого навертели. Но интересно.
Scala и Kotlin - говно без задач для тех, кто не осилил ООП (на хорошем уровне).
>>1039450Ресторан - говно без задач для тех, кто не осилил помойных крыс (на хорошем уровне).
>>1039450Java - говно без задач для тех, кто не осилил ООП.
>>1039450Хуйню несешь.
>>1038410Пиздец какие вы там в своей яве ебанутые! Как же я вам завидую.
Начал учить джаву, читаю Хорстманна. Добрался до апплетов, погуглил - пишут, что сейчас их никто не использует. И отсюда вытекает закономерный вопрос:Стоит читать про апплеты или можно со спокойной совестью это дело пропустить?
>>1039907И да, еще вопрос: не вытеснит ли js с react native джаву из разработки под андроид?
>>1039916Да.
>>1039916Пока что джаваговно все еще быстрее реактонэйтивговна, поэтому не вытеснит, как минимум год еще есть.мимо формошлеп на реакте
>>1039907Пропускай про апплеты с чистой совестью, их уже не поддерживает ни один нормальный браузер. В жре остались только ради легаси.
Посоны, объясните одну вещь.Есть такой вот класс:class foo{private ArrayList<String> a1;private ArrayList<String> a2;private void add(ArrayList<String> collection, String string){if(collection == null) collection = new ArrayList<>();if(!collection.contains(string))collection.add(string);}public void addToFirst(String string){add(a1,string);}public void addToSecond(String string){add(a2,string);}}Когда я у экземпляра этого класса вызываю addToFirst("Some string"), то a1 этого экземпляра остаётся null. Я думал, что мы передаём ссылки на объекты, потом по этим ссылкам меняем эти объекты и всё збс, а теперь нихуя не понимаю как что работает.
>>1040317Останови в дебаге выполнение, посмотри что хранится в переменных и подумой.
>>1040332Не совсем понял, куда именно смотреть.Collection у нас есть, но a1 нету. Я думал, что когда мы методу передаём a1, мы передаём ссылку на этот a1 с именем collection, эта collection инициализируется new ArrayList если нужно, и в него добавляется элемент. Но на самом деле нихуя, collection заполняется сам по себе, a1 остаётся равен null.Хотя, абсолютно аналогично устроенный Arrays.sort(int[] array) работает, просто вызываем void метод, передаём ему массив и массив меняется.Понятно, что разница есть, int[] это примитивный тип, а arraylist - ссылочный, но как это всё устроено, что-то в толк взять не могу.
>>1040352спойлер для байтоёбовссылка передается по значениюВ Java оперируют примитивами и ссылками на объекты. При передаче аргумента в функцию, его значение копируется. Когда ты вызываешь функцию add и передаешь туда ссылку на коллекцию, внутри самой функции на стеке/в фрейме переменная-параметр будет иметь значение-копию той ссылки. Итого, внутри функции ты можешь изменять значения параметров как угодно (это не значит поля объекта доступного по ссылке), и это никак не повлияет на остальную программу.
>>1040352джва года на джаве гавнокодю (с учетом обучения), и ты меня сейчас заставил полусонного потупить.если коротко - все в джаве передеатся по значению.передается не сама ссылка, а ее значение, а в методе создается новая ссылка, которой это значение присваевается. и когда ты создаешь новый обьект, то перезаписываешь значение новой ссылки. старая (которую ты передавал) так и висит себе нетронутая.https://ru.stackoverflow.com/questions/433241/%D0%92%D0%BE%D0%BF%D1%80%D0%BE%D1%81%D1%8B-%D0%BF%D0%BE-%D0%BF%D0%B5%D1%80%D0%B5%D0%B4%D0%B0%D1%87%D0%B5-%D0%BF%D0%B0%D1%80%D0%B0%D0%BC%D0%B5%D1%82%D1%80%D0%BE%D0%B2-%D0%B2-java
>>1040368Что-то "ебал ёё рука" местами, но да пох. Спрашивай что не ясно.
>>1040368>>1040369Ну окей, это понял, спасибо. А как тогда работает вот эта шляпа:int[] array = new int[]{5,2,1,7,1};Arrays.sort(array);System.out.println(Arrays.toString(array));В консоль выведется [1,1,2,5,7]Алсо, как мне в этом случае поступить? Передавать коллекцию в метод, там её менять и из метода возвращать? Сколько раз при этом будут создаваться-удаляться объекты? Не лучше тогда не ебать мозги всяким переиспользованием кода и прочим ООП и копипастом наебашить как чоткий посан по две проверки и по два присвоения?
>>1040377>А как тогда работает вот эта шляпамассивы в джава - это обьекты.передаешь ссылку, компоненты этого обьекта там обрабатываются(сортируются) и все довольны.А на остальные вопросы я бы и сам послушал ответ.пока в мою голову пришло то же что и тебе:class foo{private ArrayList<String> a1;private ArrayList<String> a2;private ArrayList<String> add(ArrayList<String> collection, String string){if(collection == null) collection = new ArrayList<>();if(!collection.contains(string))collection.add(string);return collection;}public void addToFirst(String string){a1 = add(a1,string);}public void addToSecond(String string){a2 = add(a2,string);}}Но да, так будет много обьектов создаватся.
>>1040377>не ебать мозгиthis
Расскажите про энтерпрайз софт, для кого он нужен и что он из себя представляет. Я так понимаю, что он будет нужен всегда?
>>1040495> что он из себя представляетг о в н оовноЭто софт, который используют организации для своих внутренних делишек. Не нужен: стоит мегадорого, очень хуёвый, негде его применять, если ты не большая фирма.
>>1040385Когда я читал книжки по джаве, там было написано, что есть два типа переменных - примитивные (int, long, boolean и т.п.) и ссылочные. А теперь получается, что на примитивный тип можно передать ссылку, а на ссылочный нельзя, можно передать только его значение. Где логика? Или это трудности перевода? Как эти типы обозваны в английской литературе?
>>1040519хуевый перевод читал, не иначе.>Как эти типы обозваны в английской литературе? reference types and value typesПримитивный тип передаётся по значению.Ссылочный тип передаётся по ссылке - значению ссылки.Т.е. передаёшь в метод/конструктор ты в любом случае значение.Разница в том что примитивный тип является объектом сам по себе, а ссылка - ссылается на непримитивный объект.
>>1040519Соль в ссылках в том что у тебя объекта нихуя в руках нет. Ты создал объект через new и только получил на него ссылку. А сам объект при этом лежит внутри heap и обратиться к нему ты можешь только через ссылку.
Кто-нибудь в 2017 начинает новые проекты на Java?
>>1040607Нет.
>>1040647ты че охуел
>>1040607
>>1040655Там ведро же.
>>1040651Не охуел.
>>1040607так, что учить шарп чи java ?
>>1040664JS
>>1034701и java fx и swing не учи
>>1040676не пизди, fx - норм тема
>>1040665хотелось бы что-то серъезнее
>>1040519>на примитивный тип можно передать ссылкуЛовите наркомана!
>>1040749JS это серьезнее некуда.
И ета что получается я зря 10 лет учил жаву??
>>1040802жаву каждый год хоронят
Как узнать, в каких компаниях в дс пишут на скале (помимо мониторинга вакансий на hh)? Собираюсь вкатиться, есть год опыта на джаве в адском легаси-говне и запиленный дома той проджект: рест-сервис на akka http.
>>1040802Да.>>1040968Тиньков.
>>1040971> Тиньков.Ну не знаю, не очень хотелось бы работать в компании у чувака, который выкладывает в инстаграм фотку своих сотрудников с надписью "долбоебы 2й раз за день обедают, крадут время у компании".
Здраститя, я залетный тут, и хочу спросить.Куда развиваются джава-программисты? Какие области кроме мобильных приложений перспективны? Например бэкенды на джвае это распространенное явление? Есть актуальный roadmap?
>>1040989На пенсию или сразу в могилу.
>>1040989Ну самый банальный пример - сайт на spring mvc. Ну и дальше будешь всю жизнь учить всякое энтерпрайзное легаси-говно. Заранее учить не надо, тебе будут давать огромный легаси-проект, будешь смотреть че там за технологии и учить их. Самый главный скилл тут - уметь разбираться в говне, которое высрали другие индусы много лет назад, это приходит с опытом.
>>1040989зачастую в говно погружаются просто: тырпрайз да спрингование, и тонут там.но есть вариант таки работать над интересными задачами/проектами, хайлоад там, распределенные системы, итд. но это редкость и такое срастить сложно.
Доброго вечера Вам, Господа джависты. Интересует такой вопрос — а на чём нынче модно парсить html страницы в вебе? Товарищи с stackoverflow ссылают на jsoup. Но, быть может, есть уже что-то более новое и простое? Что сейчас в активном ходу по этой теме? Заранее шлю лучи добра!
>>1041529Преобразовать HTML в XHTML (закрыть одиночные теги и т.д.), дальше любой XML парсер.
>>1041533То есть гнать в xhtml это процедура обязательная?
>>1040802>>1040816МИИЛОСТИ ПРОШУ К НАШЕМУ ШАЛАШУ
>>1040974Это вроде про телефонных мартышек, а не разработчиков.
>>1041600>Это вроде про телефонных мартышек, а не разработчиков.блядь, необучаемые
>>1041611Так чо, куда рекомендуешь?
сап, джаваны!разбираюсь со спрингом/jsp и прочей компанией. Есть у меня страничка с формой, когда я ввожу кириллицу туда, у меня внезапно стали прилетать крякозябры.В jsp указал это <%@ page contentType="text/html;charset=UTF-8" language="java" pageEncoding="UTF-8" %>, в web.xml прописал фильтр, но не помогло. В чем может быть проблема, куда копать?
>>1041693Трактор рекомендую.
Аноны, на сколько хорошо нужно знать PL/SQL ?
>>1042080Если не работаешь с ораклом, то нинасколько.
>>1041697В самом редакторе в иде небось исо-кодировка.
Сап, аноны. Объясните, почему статические методы и поля скрываются, а не перегружаются? Зачем это было придумано?Еще более непонятно, почему при скрытии статических методов нельзя сужать доступ, а при сокрытии полей можно.
>>1042113А нахуя тебе получать доступ к полю класса (не инстанса), которое будет браться из другого класса? У тебя наверняка какая-то проблема с архитектурой, если такие вопросы возникают.А еще наркоман небось.
>>1042121>>к полю класса (не инстанса)Поля объекта. Только методы статические. И это не я такой говнокодер, а на собеседованиях задают.
>>1042126>Поля объекта. Только методы статические.в статических методах можно же только к статическим полям класса обращатся, не?на какую позицию собеседование?
>>1042130Да, только к статическим. Но здесь поля и методы независимо рассматриваются.Джун. Я только вкатываюсь.
>>1042113> Сап, аноны. Объясните, почему статические методы и поля скрываются, а не перегружаются? Зачем это было придумано?Это ошибка дизайна языка. По понятным причинам переделать это уже нельзя. В скале, например, такого нет, там доступ извне выглядит так, как будто ты обращаешься просто к полю, но на самом деле ты обращаешься к геттеру, который генерится при компиляции и который при желании можно переопределить.
>>1042151Я идиот, не увидел слово "статические", ответил про обычные поля. Ну да ладно.По поводу статических полей: не хочу о таком думать и ни один нормальный человек не станет думать о том, чтобы наследовать классы и переопределять статические поля. Непонятно зачем вообще такие правила знать.
Няши, я видимо что-то в многопоточности не понимаю.Есть некий массив.Есть такой код: for( a <- 0 to (array.length)){ new Thread(() => checkUrl(array(a))).run() }По идее, он должен вызвать сразу кучу параллельных потоков. Но нет, все равно функция вызывается одна за другой, не параллельно. Как это пофиксить?
>>1042258google java thread concurrency
>>1042259Уже пытался. Это первое, что я сделал, собственно. Я просто не могу понять, ЧЯДНТ.
>>1042264У тебя много ресурсов уходит на создание потока, больше чем на вызов самого метода run() который ты заимплементил. Тебе нужно создать пул потоков а затем в цикле по нему прогоняться чтобы увидеть результат.
>>1042264Да нихуя ты не пытался. Если бы хоть раз попытался, то увидел как в джаве запускаются потоки. Скопируй ссылку и попробуй сделать так, как я сказал.
>>1042268Проще тебе будет использовать ExecutorService чем самому пул создавать.https://docs.oracle.com/javase/7/docs/api/java/util/concurrent/ExecutorService.html
>>1042269Я немного не в жаве, а в скале. В теории, можно использовать функции жавы, но тем не менее.>>1042268Щас почитаю. Кто-нибудь использовал akka кстати?
>>1042272Не знаю про akka, но знаю внутренний проект в компании который юзает reactive java.https://github.com/ReactiveX/RxJava
>>1042282Опиши юзкейс, что за проект и что делает.
>>1042258Забудь что тебе тут мудаки написаливсе что нужно это заменить .run() на .start()If you just invoke run() directly, it's executed on the calling thread, just like any other method call. Thread.start() is required to actually create a new thread so that the runnable's run method is executed in parallel.
>>1042285Во-первых, вопрос задавал я а не он, а во вторых, это просто параллельные запросы на сайт.>>1042286Пиздец, и это все?! Почему тогда на SO писали про именно run? Где ты кстати нашел документацию? Скинь ссылку пожалуйста.
>>1042287https://stackoverflow.com/questions/8579657/whats-the-difference-between-thread-start-and-runnable-run
>>1042285Management система для распределения задач по кластерам. Что-то типо master тачки через которую посылаются команды на все энвы. Но так как он недавно начался, то мы еще используем старые aws тачки.
>>1042113Наркоман штоле?Статическое поле - это глобальная переменная.Статический метод - это глобальная процедура.Класс для них всего лишь пространство имен.Как, блядь, они могут перегружаться?Ты вообще понимаешь, как ООП работает, как объекты хранятся в памяти, что такое таблица виртуальных методов?
>>1042289И в чем профит перед JMS?
>>1042409JMS старое говно, которое еще и требует апп.сервер с реализацией, для работы.
>>1042458Нормальное говно, не пизди. С транзакциями и херней. А со Spring Integration так вообще становится смузихлебно.Но вообще интересно - расскажи подробнее. RxJava она же в пределах инстанса. На серваке есть список кластеров, входящее говно продюссерит событие в очередь, откуда ее конзюмерит один из тредов, каждый отвечающий за свой кластер на серваке, который берет говно и транспортом отправляет ее на свой конкретный кластер?
>>1042464я не тот анон, который уоминал про rx. просто увидел jms и вспомнил, что говно. Про rx: rxJava не нужен, это для мобильщиков, которые заразились ФРП-пердежом от фронтовиков.Если у тебя распределенная среда, то бери сразу hazelcast, там все есть. рапределенные очереди, система сообщений, успралвение кластером, итд. Охуенная дока, и не надо ебать мозг как с аккой, познавая сначала ее концепции акторов. Набрал себе нужных распределенных структур и хуячешь.
Integer i1 = 4; Integer i2 = 4; System.out.println(i1 == i2);> trueInteger i7 = 400; Integer i8 = 400; System.out.println(i7 == i8);> falseВ чём разница?
>>1042707Кэширование
господа есть формочка такого типа.как мне сделать чтобы отправлялись в контроллер только те записи которые помечены чекбоксом?передать запись нужно в виде столбца name и то что ввелось в поля столбца message.как мне это связать?делаю через спрингбут.в чекбоксе value присваиваю id записей, по свойству нэйм в реквестпраметр контролеера уходит.а че дальше делать хз. подскажите плез
>>1042723Подробнее
>>1042742Целочисленные переменные в диапазоне -128 +127 кэшируются JVM. Тебе дается ссылка на объект в кэше
Что по яве почитать можно на англицком для неофитов? На форумах какие-то холивары, будто бы филиал двача открылся.
>>1042754Жаба для импотентов
>>1042755>ррряяяя, Жаба для импотентов, ррряяя Жаба гавно.
>>1042756Кек
>>1042755Но я бы хотел что-то актуальное подучить, что бы с приложениями мобильными работать.
>>1042751Спасибо.
>>1042761А что в этой книжке не актуально?
>>1042763Какой "этой"?
>>1042765Core Java for impatient
>>1042754Принцесса Бубльгам, которую мы не заслужили.
>>1042731[ ]
>>1042755Это правда.мимо из простатит-треда
У меня странный вопрос. Нет ли ответов на вопросы с собеседований в PDF?
>>1042854PDF сам делай http://www.geeksforgeeks.org/company-interview-corner/
>>1042858>ответовПора спать сидимо
>>1042272> Кто-нибудь использовал akka кстати?Сейчас дома пилю рест-сервис на akka http. По акторам я доки читал, но пока хз, где и как мне их заюзать. У меня дома только 1 комп, соответственно распределенные приложения особо не попишешь. В akka http можно заюзать akka streams, но я не юзаю, я пока только вкатываюсь.
>>1042897Обдокерись в жопень.
Господа, а что насчет regular expressions в жабе? Как часто сталкиваетесь на работе, юзаете, много ли профита использовать их, а не обычные методы стрига, стрингбилдера и стрингбаффера?
>>1043680Наркоман что ли, сука?
>>1043701Я просто не в теме. Читаю Thinking in Java, он там уделяет этой ебистике солидный кусок. Книге 200 лет, поэтому и решил спросить.
>>1043680> Господа, а что насчет regular expressions в жабе? > Как часто сталкиваетесь на работеНе сталкиваемся. А что это?
>>1043713Конечные автоматы в виде строкового DSL, которые любят лепить нубы.
>>1043760Ну и perl-пидоры.
>>1043760Да не, хуйня какая-то. Еще и название странное - "регулярные выражения". В чем они регулярны?Хуй знает, короче, это не используется в 21 веке.
>>1034468 (OP)как найти ментора по джава? могу подкидывать пару копеек в месяц, символично.
>>1043856Ты хочешь чтобы ментором был школьник?
>>1043860тут не в возрасте дело, а в опыте. главное чтобы мог научить чему-то и подкорректировать план развития.
>>1043901Какой опыт у школьника может быть?
>>1043906нулевой скорее всего. поэтому я написал, что дело в опыте.
>>1043914Значит школьник тебе не нужен?
>>1043808>В чем они регулярны?Регулярно спрашивают на собесах
>>1043921нужен человек с опытом, который сможет подсобить и направить.
>>1043926Тогда бы ты написал: "Нужен опытный ментор по джаве. Сколько это может стоить?"
>>1043856а ты тяночка?
>>1043948нет
>>1043934ага
>>1043949а кто ты по масти? расскажи о себе, что можешь интересного дать/поделиться? не думаю что сениоров помидоров копейки прильстят
>>1043951>расскажи о себе26 лвл, живу в Израиле, в октябре буду изучать кс. Месяца 3 изучаю Джава, и матан.>можешь интересного дать/поделиться?ничего экстраординарного, общение.>не думаю что сениоров помидоров копейки прильстятя же написал, что плата символична.На самом деле хотелось бы найти кого-то, кому можно будет изредка показывать свой код, и спрашивать какие-то вопросы на который не нашел ответа в гугле(что маловероятно).
>>1043976иди нахуй жид
>>1043978иди на бутылку присядь для начала.
>>1043976ядрён, да ты и не школьник нифига, помладше меня, но сойдёт. Лан, будут вопросы катни на [email protected] - отвечу в течении дня. Только плис пруфани в первом письме чем-нибудь из израильской тематики, чтобы я понял что ты не зелёный ^^
>>1043989напихал тепе защеку пятаков, пейсатый хуй
>>1043990Спасибо. скинул пруф.
>>1043990пруфанул обрезаным хуем
>>1043949Ну и на кой хуй ты всрался?
Работающие аноны, подскажите ситуацию с IDE на вашем месте работы. Покупает работодатель или заставляют писать на крякнутой/опенсорсной?
>>1044146вряд ли купить, а тебе принципиально это?
>>1044181Не принципиально, интересно.Просто лицензия стоит 150 баксовЭ, что в принципе немало.
>>1044146Если фирма жмотится на покупку ide, то бежать оттуда нужно.
>>1044146>или заставляют писать на крякнутой/опенсорснойТак вот откуда такой наплыв Atom/Sublime/Emacs говноедов.
>>1044146Сам купил, хотя если бы попросил, оплатили бы. Но я скромный.
>>1044146я купил себе лицензию на идею за 80 баксов.Эти жмоты даже на винду жмотяться
>>1044276В молодую динамично развивающуюся компанию требуется программист со своим ноутбуком.
>>1044281ну этот "тимлид" обосновывал прыщи необходимостью "чтобы ОС разработки не отличалась от ОС на проде".Зачем? Дескать могут вылезти ОС-специфичные баги. Видимо предрассудки и наследие его работы с какими-нибудь говноплюсами
>>1044288> прыщи> обосновывал прыщи необходимостьюДа ты, сука, охуел. Обосновывать необходимость линукса на машинах разработчиков. Как докер запускать, если нет hyper-v? Как какой-нибудь яндекс танк запускать? И прочая хуита.Ты бы, блять, еще спизданул про необходимость обосновывать необходимость второго монитора.
>>1044291>Как докер запускатьзачем он мне? От кривости прыщей я страдаю гораздо больше
>>1044297Что еще тебе не нужно? Спринг? 8, а то и 7 джава? Jrebel? Диды на 1.0 кодили, и ты кодь?
>>1044308всё это работает под виндой. Необходимости терпеть кривость прыщей нет
>>1044318> докер не нужен> танк не нужен> куча хуйня, работающая без перделок на линуксе, не нужнаТы просто даун-ретроград.
Нужна помощь.Есть non-static метод в классе SetKeys. Как обратиться к нему из static void main, не нарушая конфликт статик-нестатик методов?
SetKeys setKeys = new SetKeys();setKeys.methodName();
>>1044424Точно. Спасибо.
вся эта интерпрайз хуйня тиа спринга дает мне только депрессию, можно во всем этом разобраться не повесившись?
>>1044490можно. только зачем?
>>1044491чтобы работать в скучной компании с интерпрайзоми получать хорошие деньги
>>1044493> и получать хорошие деньгиУчи JS и выходи на апворк. Или не выходи и тут получай хорошие деньги.
Есть ссылки на то что спрашивают у миддлов?Или буду рад кастомному ответу - завтра на собес иду
>>1044686Вилкой в глаз или в жопу раз?
>>1044686Ты падаешь с парашютом. Слева море говна без островов, справа лес хуев без полян. Под тобой лес без предисловий сразу переходит в море. Куда будешь приземляться?
>>1044775На твою мамку.
Еле заставил себя встать с постели и прийти на работу.Мозги не отказываются напрягаться, тупо сижу и смотрю в окно. Что делать?
>>1044798Бочку.
>>1044798после обеда пойду домой, благо начальник уехал
>>1044807Держи нас в курсе.
>>1044808вот я и держу, дорогой дневничок
>>1044810доехал поди до дома уже?
няши подскажите пожалуйста.вот есть у меня две сущности, которые я замапил.заказ, и товары, в сущности заказ. у меня полем храниться список товаров.когда сохраняю в бд заказ с заполненным список товаров, он просит id заказа для списка товаров, который должен сгенерить бд.получается мне сначала нужно сохранить заказ без списка, потом сохранить сам список товаров, и потом апдейтить сам заказ?сразу никак не получиться? и как вообще правильно делать такие манипуляции?
>>1044848да. Погулял по городу, посидел у озера, немного отпустило
>>1044852выкинуть orm. Он приносит только вот такие сложности и проблемы
>>1044852Ошибка. Для получения ответа в сообщении должна быть хотя бы одна большая буква.
>>1044915Где ты в кейсе сложности нашел?
>>1044920необходимо пердолиться и ублажать хибернейт
>>1044915да я ебанусь все это тогда писать на пюре_джэйдибиси>>1044919Ну Извини Меня Позязя. Подскажи Блеать
>>1044923>да я ебанусь все это тогда писать на пюре_>джэйдибисиоткуда вы этого набираетесь? Кто вас пугает?
>>1044922Где ты в указанном кейсе нашел пердолинг? Ровно столько же инсертов, как если самому писать SQL. Только разве что список выбранных товаров можно батчем хуйнуть.>>1044923Поздно, мелкобуква.
Помогите, пожалуйста, ньюфагу. Хочу изменить пару байтов в class файле да и закинуть его обратно в jar. Использую для этого dirtyJOE , вполне удобно. Вот только не работает. Вытаскивал из жарки класс, вставлял его обратно неизмененным - работает. Вытаскивал класс, изменял iconst_3 на iconst_5 в двух местах, для проверки, чтобы порядок байтов не поменялся - не работает. Менял обратно этой же прогой iconst_5 на iconst_3 - не работает. Стало быть, нужно искать что-то другое для редактирования байткода? Что посоветуете?
>>1044934там защита против таких как ты
>>1044950> там защита против таких как тыГде «там», каких «таких», и смысл от таких защищаться?
>>1044965Вот видишь, защита работает.
>>1044927Ок, c id я разобрался.Почему когда я делаю save(order);он сохраняет, только order без писка продуктов. Т.е. мне еще отдельно запускать метод save для списка продуктов? я думал это все автоматизированно...
>>1044975>>1044950И против прямого редактирования нехом проканает? Просто немного лень вручную искать, специализированные тулзы ведь должны быть удобнее.
>>1044965>каких «таких», и смысл от таких защищаться?От хацкоров, пытающихся инфицировать джарник
>>1044998>не работаетДурень, кидай сообщение об ошибке. Алсо, пробуй запускать с ключом -Xverify:none, после своих грязных ручек.
Можно ли создать свой собственный примитивный тип? В гугле ответа не нашел
>>1045153Нет. Value-типы завезут в релизе Valhalla когда-нибудь.
>>1044991Гугл, мазафака, ду ю ноу эбаут ит?https://stackoverflow.com/questions/1795649/jpa-persisting-a-one-to-many-relationship
>>1045163А почему нет? Можно подробнее, чем именно обусловлено ограничение. Нифига не въезжаю
>>1043760> регулярки в джаве> Конечные автоматы> Хотел выебнуться псевдознаниями кампухтер саенса, но жидко обосрался.https://www.quora.com/How-are-regular-expressions-implemented> Regular languages have a lot of structure, which is what lets us build up an NFA and implement it efficiently. However, the regexps you are used to in most languages are actually more powerful than this, so we can't use this method.> As an extreme example, we can actually write a Perl style regexp that only matches non-prime numbers (written in unary):> 1|(11+?)\1+
>>1045044> -Xverify:noneСпасибо, няша, в этом и была проблема.
>>1045202А вот и перл макаки подтянулись. Дурачок, от расширенных возможностей, они не перестали быть конечными автоматами. Учи общее - частное.
>>1045230> -Xverify:noneНу это фиговый листочек, для прода ключ не рекомендуется к использованию. В конечном счёте, нужно разбираться, какие инварианты в байткоде нарушены.
>>1045252насколько я понял, все джарники при сборке подписываются, и хэш где-то там хранится.И сам переподписать ты их не сможешь
>>1045252Так я не погромист ни разу, все эти продакшны очень далеки, я для себя одно приложение подредактировать спрашивал.
>>1045255Ну разве что сборка приложения описана таким образом. Но это требует использования приватных ключей и утилиты jarsigner. Обычно jar не подписывают. А работа верификатора - это про https://stackoverflow.com/questions/10562876/responsibilities-of-jvm-bytecode-verifier Скорее всего у тебя остаётся мусор на оп стеке в модифицированном байткоде.
>>1045169>>1045153Sealed classes в Kotlin
>>1045248Мань, ты понимаешь, что регекспы не являются регулярными выражениям в том смысле, который вкладывается в кампухтер саенсе?https://cs.stackexchange.com/questions/38451/when-a-regexp-is-not-a-regular-expressionСоответственно, заимплеменчены они не через конечные автоматы.На перле я ни разу в жизни не писал. В джаве, если че, есть фича, за счет которой регекспы перестают быть регулярными выражениямиhttps://docs.oracle.com/javase/tutorial/essential/regex/groups.html
>>1045657>Называет маней>Начинает маневры насчёт реализации> В джаве, если че, есть фича, за счет которой регекспы перестают быть регулярными выражениямиНикто это не оспаривал. Перечитай ветку.
Сап джаваны, никто не шарит как получить предыдущий рабочий день в jpql ?
Итак, после полугода забросил на полгода, помогите решить головоломку. Хочу продолжить, но тк жаба в моем понимании "Большая" сука говна пиздец, с чего начать даже не знаю.
>>1045889Помогаю.
Пацаны, поясните - что должно быть в резюме чтобы меня хотя бы на собеседование позвали? За 3 месяца ни одного приглашения на хэдхантере, а кому пишу - сплошные отказы
>>1045964опыт работы
>>1045705По существу-то есть че ответить?
>>1045964Выучить JS. Джавадебилы никому не нужны.
>>1045987Вот же дурак упёртый.В той же ссылке что ты дал, в той же цитате что ты привел:>Regular languages have a lot of structure, which is what lets us build up an NFA and implement it efficiently.говорится в точности то же:>Конечные автоматы в виде строкового DSLТо что, в современных реализациях регулярок есть backtracking, никак не лишает их возможности распознавать грамматики DFA. Достаточно по существу?А теперь, иди подмойся, маня, весь тред уже завоняла.
>>1046001Какое же ты уебище тупое, просто не человек. Покормил.
Двощ, где можно прочитать про то, как действительно нужно делать проекты на джаве. Какие есть интересные курсы, где объяснялось бы, как и для чего использовать maven и gradle, плюсы, минусы этих сборщиков. Для каких проектов нужно использовать spring, hibernate, где это не нужно, где нужно что-то еще. Реализация каких-нибудь простых проектов. Ну и всё в таком духе.
>>1046001>>1046016Дебилы, блять. Спорить что является ли regexp регулярными выражениями или нет, и если да, то в каких случаях.Регексп и регулярки это синонимы. Отсосите.
Вам уже очевиднейший контрпример показали: регулярка (a+)b\1. Очевидно, что строка вида anban не может быть распознана конечным автоматом.Очевидно, программист не может быть настолько низкоквалифицированным мусором, чтобы это не понимать и вы просто тралите, а я вас зачем-то кормлю.
>>1043976>26 лвл, живу в Израиле, в октябре буду изучать кс. Месяца 3 изучаю Джава, и матан.Почему ты не обманываешь гоев, а хочешь честно работать, занимаясь утомительным непрестижным трудом? Ты больной штоле? Вон посмотри на Цукерберга - он сам программы не пишет, но профит от IT имеет.
>>1046063Алё, про вложение множеств слышал?https://en.wikipedia.org/wiki/Chomsky_hierarchy#/media/File:Chomsky-hierarchy.svg
Добрый день, ебусь с хибером и не могу понять, какая тут связь, one-to-many unidirectional? Но меня смущает, что user_coin никак не связана с coin.По сути, мы в joinTables ставим название полей из промежуточной таблицы? Нужно ли в user_coin прописывать foreign key на user?Как же я запуталсяhttps://pastebin.com/KAk9JkXw
>>1046165Many-To-ManyВ таблице user_coin два поля: user_id, coin_id.
>>1046170Я об этом думал варианте, но он неудобен тем, чтобы достать symbol для user-a нужно вытащить id коина и затем только по id достать symbol. Поэтому решил сделать проще, чтобы сразу доставать symbol
>>1046173Ебать дебил.
>>1046176Ну ты бы обосновал, а то нихуя не понятно
>>1046177У тебя user_coin - кросс-таблица, но связи к coin с user_coin нет ни через id, ни через symbol. Это даже на схеме видно.мимо
>>1046179Так это и понятно. В базе coin хранятся все записи с монетами, у монеты есть symbol - btc, ltc, mnr и т.д. То есть, если юзер хочет следить за битком, то в user_coin записывается id юзера и symbol монеты. А потом когда он хочет посмотреть историю курса, из user_coin для этого id достаются все symbols и по ним уже в coin ищутся записи с этим symbol
>>1046184Во-первых, можно сделать и так как ты придумал, но это не соответствует подходу РБД. А если ты не используешь фичи РБД, то может ну его нахуй? Переедь на nosql какой-нибудь типа монги.Во-вторых, почему ты так переживаешь из-за >чтобы достать symbol для user-a нужно вытащить id коина и затем только по id достать symbolВ каком месте твоей системы это будет проблемой?
>>1046210В общем, да ты прав. Я еще поспрашивал и мне сказали, что для хибера manyToMany проще будем, чем мое гавно.
Господа, поясните за потокобезопасный синглтон.Есть вот такая реализация - https://pastebin.com/ajrar35AВсё понимаю, не понимаю только зачем мы делаем Singleton localInstance = instance и проверяем на null именно его. Может кто-нибудь объяснить в чем смысл?
>>1046184>Когда он хочет посмотреть историю курса, из user_coin для этого id достаются все symbols и по ним уже в coin ищутся записи с этим symbolЕбаный дебил, джоин по суррогатным ключам для кого придумали.Тем более, что ты даже не джоин по варчару собирался делать, а отдельный запрос с ином.
>>1046293Контейнер юзай.
>>1046293Алсо код говно.
>>1046293Учись гуглить: https://en.wikipedia.org/wiki/Double-checked_lockingЕсли кратко, то может ускорить процесс получения уже созданного инстанса, ибо будет не два volatile read (check for null + return), а один (assign to a local variable).>>1046311Какой, блять, контейнер? Что ты несёшь?>>1046312Это стандартная реализация синглтона, используя идиому double-checked locking.
>>1046372Благодарствую.
>>1046372DI-контейнер, какой же ещё
>>1046415А в DI-контейнерах это, по-твоему, как реализовано? Чел хотел разобраться, как средствами языка реализовать синглтон одним из способов, только и всего.
>>1046421>А в DI-контейнерах это, по-твоему, как реализовано?Чё-т я не заметил, как обосрался, извиняйте. Тем не менее.
>>1046423Ах да, это был селф-фикс, если что.
>>1046421Иначе.
>>1046078>ешь честно работать, занимаясь утомительным непрестижным трудом? Ты больной штоле? Вон посмотри на Цукерберга - он сам программы не пишет, но профит от IT имеет.наверное потому что я на 1/8 еврей
А тут есть знатоки Jtwig? Вот смотрите, передаю я объект в шаблон в качестве переменной:Product p = new Product();JtwigModel model = JtwigModel.newModel().with("product", p);template.render(model);В самом шаблоне вызываю методы этого объекта. Если метод без параметров или со строкой в качестве аргумента, то всё работает как надо. Если пробую вызывать с параметрами типа int (и Integer тоже), то вообще ничего.
Есть проблема - не могу писать игры. Может кто что-нибудь посоветовать? Вообще не могу понять как писать змейку, тетрис, пакмана. С чего начать, что делать?
>>1046514> не могу писать игры> С чего начать, что делать?С изучения сишарпа юнити или питона.
>>1046515Я достаточно так знаю java, и мне не хочется все дропать. Мне лишь нужно понять внутреннее устройство, как это все в коде, но все тщетно.
>>1046517Ну тогда берешь и делаешь. Алгоритмы одинаковы.
>>1046518Ну я пытался написать тетрис сам - ничего не вышло, после недели мучений мозг закипел. Вот решил попытать удачи снова, но на этот раз спросив советов.
>>1046520> сам > после недели мучений мозг закипел> берешь и делаешь> Алгоритмы одинаковыТы ведь понимаешь по частям значение слова алгоритм? Если сам придумать не можешь, то гуглишь, понимаешь и делаешь по тому, что нагуглил и понял. Если же все понимаешь, но ничего написать не можешь, то ты собака просто программирование не твое. Как не всем быть нейрохирургами.
>>1046524Дело в том, что я понимаю: принципы игры, что нужно сделать. Но не понимаю как это отобразить именно в коде, особенно в гуи. Больше всего проблемы именно с гуи, он как то отталкивает.
>>1046528Ты какой-то ебланат.> что я понимаю: принципы игры, что нужно сделатьЯ тебе про АЛГОРИТМ говорю. АЛ ГО РИ ТМ.Вникай в мои послания тебе или не вникай.
>>1046528за тетрис тебя никто не возьмет, стыдно игры выкладывать для примера кода, если нет другого более полезного.паттерн mvc включает в себя паттерн наблюдатель, где вьюха наблюдатель за изменениями модели. в модели массив, который изменяется, а вьюха его отрисовывает как только он изменился.
Компания Оракал , сжалилась над java господами всея планета. И стала подкидывать нештячки. 1 что решили , это отдать EE в руки сообщества, чтобы наконец-то этот монстроуозный кусок говна привели в порядок.Будем надеяться, что когда-нибудь наконец-то и джаву отпустят в свободное плавание , а то уже чахнитhttp://www.opennet.ru/opennews/art.shtml?num=47049
>>1034541помимо maven есть еще gradle, он получше будет
>>1046614Ага, не возьмет. Мне тз такое давали(собсна я его провалил, соре я даун). С чего вообще решил, что я его кому то показывать буду? Я это для себя. Паттерн mvc я знаю. Просто мне как то не по себе, что я могу написать электронный магазин, а какую то 2д игру нет.
>>1046620у меня наоборот, игру написать могу, а ИМ пока нет. я резюме на hh иногда смотрю, так как хочу устроиться джуном, интересно кто в конкурентах. частенько умиляют резюме в которых в качестве достижений указаны игры. потому и подумал, что для резюме написать хочешь.
Вот он где.Сап пр, имею проблему, схожую с этой - https://goo.gl/WvFLNb Делаю приложение с опенСВ и javaFX, и не могу собрать jar. ОпенСВ также прописан в настройках эклипса и машины, но после экспорта в jar, он не запускается, пишет не могу найти главный класс. Как все это собрать?
Добра вам , аноны. Нужна помощь. Есть Spring проект, в нем есть JPA Entity под названием Car c именем и номером.Есть репозиторий (пик 1) и Сервис (пик 2)Собсно вопрос: как тестировать Сервис?
>>1046741Тестирование - это для пидоров.
>>1046752Дитя, плиз, 12 дней осталось, беги во двор за остатками лета.
>>1046721а майн класс в pom.xml ты прописал?
>>1046752Войтивайти забыли спросить.
>>1046768Нет. Я в мавен и т.п. вообще не очень могу, думал может так удастся просто экспортировать.
>>1046777 Ну так-то ты и экспортировал. Теперь вопрос в том, как ты запускаешь приложение и какой манифест у него и когда разрабы стали линковать жвм с либастрал.
>>1046785Запускаю из консоли, как обычно. Манифест, все либы запакоовались в жар.https://pastebin.com/5QGU4gzz
Вечер в опенспейс, джава-господа. Пишет вам руби-помидор, который, в связи с надвигающейся кончиной руби (я понимаю, что понаписать успели столько, что хоронить будут еще долго), собрался перекатываться в джаву. Планирую полгодика позадрачивать core, spring, hibernate, maven, во это все, поднапиздеть в резюме, что на предыдущей работе тоже работал с джавой и сделать перекат senior ruby developer -> senior java developer. Немного о себе, 26 лвл, почти 5 лет опыта, ДС, 200к с небольшим, могу во фронт (javascript, typescript, angular/react, webpack, даже верстать умею), пишу сейчас фактически тот же энтерпрайз, так что к атмосфере мне не привыкать. Получать хочу столько же или больше, как думаете реально такое провернуть?
>>1046663Я в резюме не указываю никакие свои наработки. Не вижу смысла указывать свои работы, где я тупо учу что то.Просто какой я программист, если не могу написать игру? Правильно - плохой. Вот за спринг не берусь пока что, потому что хочу сам написать хотя бы тетрис.Собсна я тоже хочу джуном устроиться, но в моём городе 1-2 вакансии.
>>1046741ну давай разберём по частям твой сервис)))что делать метод add? вызывает метод saveAndFlush у репозитория и возвращается его же результат. всё. как тестировать: 1) нужно проверить вызов конкретного метода у репозитория.создаёшь кар - проверяешь, что у репозитория был вызван метод saveAndFlush с конкретным заранее созданным каром2) проверить то, что сервис возвращает объект, который вернул репозиторий, никак не изменяя егосоздаёшь кар, мокаешь репозиторий, чтобы при вызове метода saveAndFlush он вернул созданный ранее кар. проверяешь, что созданный кар и кар, который вернул сервис одинаковыи так со всеми методамикогда ты что-то тестируешь конкретный метод, всегда задавай вопрос: что мы имеем до вызова метода и что мы имеем после. абстрагируйся от своей реализации (именно поэтому лучше сначала написать апи, потом тесты на него, а уже потом писать реализацию методов, гугли TDD)
>>1046817> Собирается полгода разбираться с core, spring, hibernate, mavenТо что ты перечислил - это уровень джава джуна, не знаю за что ты собрался больше 200к получать. Выучить это до минимального уровня, после которого ты сможешь пилить реальные проекты, занимает пару недель.
>>1046841>То что ты перечислил - это уровень джава джунаЕстественно, я собираюсь не только это изучить, но не буду же я тут 20+ наименований приводить и, естественно, это будет не минимальный уровень и я запилю какой-нибудь в меру крупный проект, насколько позволит время.Меня скорее интересует ваше мнение о том насколько вообще реален такое перекат?
>>1046835>1) нужно проверить вызов конкретного метода у репозитория.>создаёшь кар - проверяешь, что у репозитория был вызван метод saveAndFlush с конкретным заранее созданным каром>2) проверить то, что сервис возвращает объект, который вернул репозиторий, никак не изменяя егои что ты тут тестируешь? Что твои глаза тебя не обманывают? Что компилятор не сломался?
>>1046850Спринг. Вдруг сломался.
>>1046850А что ты ожидал от тестов хеллоуворда с сервисом без бизнес-логики? Какой сервис - такие и тесты. Была бы бизнес-логика - протестировал бы её. Здесь бизнес-логики нет, сервис не делает дополнительные модификации, я и протестировал, что он никак не изменяет объект.
>>1046907не нужны на это тесты.На присваивание объекта ты тоже будешь писать тест? А на арифметическую операцию?
>>1046942Я бы и на собаку написал тест.
Как пользоваться Instagram API и есть ли по их использованию гайд? (Как реализовать авторизацию и прочая поебень)Знаю, что есть JInstagram, но в душе не ебу, как пользоваться внешними библиотеками (недавно начал вкатываться).
>>1047002> авторизацию> OAuth Остальное обычное API.
>>1046849Реален, я считаю. 200к в ДС, вроде, не так уж и плохо, так что, видимо, ты парень смышленый. Главное побольше (> 3) лет java-опыта в резюме напиши. Кто ж проверит?
>>1034468 (OP)Сап /pr/, есть один вопрос. Имеется небольшой проект, включающий Spring Data.Есть две таблицы:1. Таблица пользователей[CODE lang="Java"]@Entity@Table(name = "users")public class User { ... @ManyToMany @JoinTable(name = "user_roles", joinColumns = @JoinColumn(name = "user_id"), inverseJoinColumns = @JoinColumn(name = "role_id")) private Set<Role> roles; ...}[/CODE]2. Таблица книг[CODE lang="Java"]@Entity@Table(name = "books")public class Book { ... @ManyToMany(mappedBy = "books") private Set<User> users; ...}[/CODE]Очевидно, что существует отношение [CODE]favorites[/CODE], соответствующее списку избранного для каждого пользователя. Внимание, вопрос! Как удалить книгу из списка избранного? Добавление работает нормально, но удаление — нет. Методы сервиса отвечающие за добавление и удаление в список избранного:[CODE lang="Java"] @Override public void addBook(User user, Long bookId) { Set<Book> books; if (user.getFavorites() == null) { books = new HashSet<>(); } else books = user.getFavorites(); books.add(bookDAO.findOne(bookId)); user.setFavorites(books); userDAO.save(user); } @Override public void delBook(User user, Long bookId) { Set<Book> books = user.getFavorites(); Book book = bookDAO.findOne(bookId); if (books != null && books.contains(book)) { books.remove(book); user.setFavorites(books); userDAO.save(user); } }[/CODE]
>>1047182Тьфу! Первая таблица:[CODE lang="Java"]@Entity@Table(name = "users")public class User { ... @ManyToMany(fetch = FetchType.EAGER) @JoinTable(name = "favorites", joinColumns = @JoinColumn(name = "user_id"), inverseJoinColumns = @JoinColumn(name = "book_id")) private Set<Book> books; ...}[/CODE]
>>1047183>@ManyToMany(fetch = FetchType.EAGER) Советую выкинуть хибернейт и использовать нормальные запросы, там нет пердолинга и скрытых камней
>>1047189Ты типа на чистый jdbc намекаешь?
>>1047191jdbc template например. Тебя это пугает? Кто посеял этот страх? Может тебя и чистый html пугает?
>>1047194Ненужная параша, представляющая собой нагромождение юзлесс-кода, где из ста строк к логике относится от силы три. Есть кошерный Spring Data.
>>1047182Бамп вопросу. Структура БД.
>>1047197Ну продолжай делать фулсканы и ебстись с хибернейтом
>>1047201По делу есть что сказать, или ты чисто срача ради зашёл?
>>1047197в jdbctemplate нет бойлерплейта
>>1047182Отдебажь метод удаления, что ты как маленький. Вангую, что не выполняется условие>if (books != null && books.contains(book))Т.к. при двух запросах в базу - списка книг и конкретной книги - внутри списка будет лежать новый объект книги и он не будет equals с отдельно выдернутой книгой. Лучше пройдись по списку книг сам, циклом, или отфильтруй стримом.
>>1047240Блядь, только с языка снял. Сейчас проверил — заработало! Бро, держи азиатской порнушки в нормальном качестве.https://www.javboss.com/embed/gvxj265qwrz
Хорошее знание SQL всегда ведь большой плюс? Стоит задрочить PL/pgSQL? Или обычно этим дбашники занимаются отдельно? Сейчас в моей конторке все занимаются и фронтом, и бэком, и базой
>>1047240Бро, а самая писечка в том, что у меня не были реализованы методы equals() и hashCode() в классе Book, из-за чего поиск в коллекциях банально не работал. Вот такие вот грабли.
>>1047255Я обычно наследую все энтити от абстрактного класса, в который пихаю id, getId, setId, equals и hashcode, чтобы таких факаоп не было. Бонус - сами энтити остаются чисто со своими полями и методами без дублирования кода.
>>1047256Кстати, годный совет. Спасибо!
Вот собираю я war, в нём запакованы либы, нужные в рантайме. При деплое на сервер приложений выбрасывается ClassCastException из-за того, что одна из либ приложения уже есть на сервере и загружается отдельным класслодером.Я могу, конечно, убрать либу из war-ника, но тогда получается, что я на этапе сборки должен знать, что на сервере будет эта либа.Какие ещё тут решения могут быть?
>>1047257И сразу отвечу на вопрос, который возникнет через 15 минут:@MappedSuperclass
>>1047260Да сейчас не к спеху, но спасибо, ага.
>>1047258В мавене это provided
>>1047264Смотря какой сервер. По идее, в дескрипторе развёртывания можно отключить делегацию класслоадеров веб-приложений, и тогда у каждого веб-приложения будут грузиться свои классы (если они есть), за исключением тех, что из стандартной библиотеки.Гугли, в общем, %server name% classloader delegation.
>>1047258Промахнулся, когда отвечал в >>1047280
>>1047264>>1047280Спасибо.Да, в WildFly можно отключать автоматические зависимости через jboss-deployment-structure.xml. Но если я заранее знаю, что собираю приложение под WildFly, то тогда я могу указать депенд как provided.
>>1047256Это никак не спасает тебя от "факапа" с Set, наркоман. Реализация equals&hashCode должна плясать от "бизнес-ключа", а не от id.
>>1047182А это вообще пиздец. Чтоб удалить Book загружать User и все Book для него. За такое ссаными тряпками гнать надо из профессии.
>>1047310Set приватный. Теперь логика не может его изменить, только хибер своими рефлексивнфми бубнами. Где твой бог теперь?Общая реализация еквалса и хэшкода по id имхо хорошо работает в небольших проектах-крудах, где после save и присвоения id объект надолго в памяти не задерживается. В этих ваших больших ентерпрайзах, когда объект может грузиться и изменяться из разных мест в коде - да, лучше так не делать. Как альтернатива - самому рефлексией сравнивать поля, получится весьма универсально, ценой производительности.
>>1047315Что ж ты кокой злой, сразу из профессии гонишь его. Нет бы объяснил, почему это плохая практики и порекомендовал нэтив квери написать. Спринг дата это поддерживает и работает отлично.
>>1047315Это тестовое задание на джуна, причём первый проект который я когда-либо писал… Говно с авторизацией и реализацией списка избранного. Для это списка у меня в БД табличка примерно такого вида:[CODE lang="Sql"]CREATE TABLE favorites ( user_id INTEGER NOT NULL, book_id INTEGER NOT NULL, FOREIGN KEY (user_id) REFERENCES users (id), FOREIGN KEY (book_id) REFERENCES books (id), UNIQUE (user_id, book_id));[/CODE]Мне уже просто влом @NamedQuary писать, ибо и так заёбся.
>>1047326> queryНу вы поняли. Реально заёбся. А сейчас мне предстоит восхитительная ёбля с Heroku, потому что с Git я хотя и работаю, но знаю только базовый команды и как пушить сразу в два удалённых репозитория (сейчас натравлен на GitHub), не знаю.
>>1047194Двачую. А если лезешь в хибернейт, то будь добр лезть и в мануалы
>>1047332Войтивайтям объясняют (в статьях, во всяких джаварашах или сами "догадываются"), что ORM это nextlevel после SQL и избавляет от знания SQL (вон, выше "plain sql это не нужная параша, я же не дебил sql писать, когда есть spring data)))". И починается... Это хорошо, если такой войтивайти из войти выкатится к хуям, или, вкатившись, возьмется за ум. А если болезнь прогрессирует, то появляются проекты, которые ебенейше тормозят со всем, что связано с персистенсом.
>>1047320https://docs.jboss.org/hibernate/stable/core.old/reference/en/html/persistent-classes-equalshashcode.html
>>1047326>Это тестовое задание на джунаМы вам перезвоним.
>>1047326Мне бы б такие задания на джуна давали, мне бы б вакансии на джуна в мой город.Сижу дома, для себя все проекты пишу.
https://github.com/github/dmca/blob/master/2017-03-13-Jetbrains.mdКакие они всё-же гнилые...
Почему у меня выскакивает ошибка, когда я пишу в командной строке %javac ..., а если без %, то всё норм? в книге Сьерры и Бейтса "Изучаем жава" примеры приведены именно с %прифигел кстати, что в джаве ошибкой будет написать так:int x = 223;while(x){...}какие еще сюрпризы ждут псюсоутёнка на пути постижения java?
>>1047372Это будет ошибкой в любом нормальном языке со статической типизацией. От Ada до Haskellю
>>1047373Всё что я до этого изучал это C/C++,там такое вполне можно написать и это даже не посчитается плохим стилем
>>1047326На sql тебе понадобился бы один примитивный запрос, который не требует предварительной загрузки данных, и который не будет создавать проблем производительности.DELETE FROM favorites WHERE book_id = ?
>>10473770 это false, а 1 это true? Где логика? Чем тогда будет -1 или 0.1?
>>1047385[CODE lang="Sql"]DELETE FROM favorites WHERE book_id = ? AND user_id = ?[/CODE]Вообще, ты прав, конечно. Но не сегодня, определённо.
>>10473870 это false,остальное - true,пусть даже там будет строка "ты хуй", это всё равно true.Логика в том, что только 0 это ложь, ну и булева переменнная со значением false, остальное true
>>1047388И именно поэтому я против spring data, где выход за стандартные примеры приводит к необходимости ебли. А стандартные в sql вещи реализуемы только через костыли и магию
>>1047371Ты тоже любишь забесплатно работать?
>>1047391А 0.000001? В курсе проблем сравнения даблов?
>>10473971 Внезапно да. Я разрабатываю свободное по в свободное время.2 Нормальной компании и нормальному человеку должно быть стыдно появиться в том репозитории в качестве потенциального истца.3 В репозитории полно ссылок, похожих на чьи-то бекапы, куда по ошибке попали файлы лицензий. И вместо урегулирования вопроса с владельцами репозиториев или просто одностороннего перевыпуска файлов-лицензий зачем-то на них была подана жалоба. Это адекватное поведение? Правда тот репозиторий весьма занимательное чтиво. Чего там только нет: нарушения гпл, решения к универским курсам, которые по мнению автора "нарушают копирайт" потому, что студенты их выдают за свои, попкорн тайм, боты для игр...
>>1047419>Внезапно даДа хоть скульптуры из говна лепи - вопрос в спросе. >Чего там только нетНу ты определись, ты за свободу (даже и в крайнем проявлении - анархии, судя по popcorn time) или за корпоративное и юридическое регулирование.
>>1047343Так в чем проблема оверрайднуть это в суперклассе?П.с. в моем псто про приватный SetId говорил, есличо. Само поле приватное априори.
>>1047508знаешь разницу между суррогатным и натуральным ключом?
>>1047371Шо там? Много юридических букв. Клейм жидбрейнса с требованием удолить кряк от идеи?
>>1047510На суррогатный ключ мать и себя посажу, на натуральный нихуя не посажу.
В этой вашей джаве можно обращаться к отдельным элементам строки, как к элементам массива?
>>1047612Да, я разрешаю.
>>1047612https://docs.oracle.com/javase/6/docs/api/java/lang/String.html#charAt(int)
>>1047348Удалёнка, причём скорее всего мне перезвонят (анон выше расписал почему).
>>1047660А как вообще происходит работа на удаленке? Можешь рассказать? Или кто то - расскажите, я никогда не задумывался об этом варианте, хм.
>>1047663Также как в распределенной территориально команде.
>>1047510Что ты несешь, еб твою мать? Нужно мне сделать идентификацию ентити только по id - оверрайжу еквалс в суперклассе, чтобы не копировать один и тот же код для половины энтити. Нужно сделать кастомный еквалс для этого твоего суррогатного ключа, оверражу прямо в классе энтити и сравниваю нужные поля. В чем проблема-то? В любом случае тебе эти методы нужно будет оверрайдить, ну так почему бы не вынести общий код в общий класс, а там где общий код не подходит, заменить на нужный только в этом классе?Нет, не хочу, хочу в каждой второй энтити оверрайдить один и тот же метод одним и тем же кодом, или ловить факапы от дефолтных методов.
>>1047770>идентификацию ентити только по id - оверрайжу еквалс в суперклассеЧудило, я тебе выше скинул ссылку почему это не работает.мимо
Сап джаваны, с чего начать читать о масштабировании тырпрайз приложений и что скажете об akka ?
Можно ли на джаве делать интерфейс с помощью xml-подобных файлов? То есть как xaml в c#
>>1047924В JavaFX есть что-то подобное, FXML называется. С WPF и XAML не сравнится, конечно, но кое-что можно сварганить.
>>1047891А что тут читать, берёшь getting started, придумываешь себе проект и пишешь. Подводные грабли будут постепенно всплывать.
>>1047924Да, андроид называется.
Чому у меня на основном мониторе значок IJ в трее ч/б, а на вспомогательном - полноцветный? Не тонем, господа.
>>1048236>#511>Не тонем, господа.бамплимит
Господа, поясните за Liferay кто работал.Вкатился на новую работу, новый проект на это штуке будет.Я погуглил - отзывы не очень радужние выгледит как хуй
>>1048363радужные*
Почему в Си и плюсах я при использовании rand получаю одни и те же числа, сгенерированные один раз (там надо танцевать с бубном, что бы они реально были рандомные)а в жаве я просто пишуint Хуй= (int) (Math.random() * Жопа);и у меня получается рандомный хуй, вот так запросто?
>>1048845Потому что разработчики JVM позаботились о нормальном рандоме без лишних изподвыподвертов.Но по секрету там тоже нихуя не нормальный рандом, а лишь посредственный псевдорандом. Для сочного, годного рандома нужно юзать или естественные источники, или специальные алгоритмы, предоставляющие высококачественный псевдорандом.
>>1048865SecureRandom же.
Держу в руках Java Core Хорстманна из шапки, зачем в 10-ом издании 2016 года главы по Swing, AWT, JavaBeans а во втором томе пол книги расширенные возможности всей этой еболы? И ни слова про Java 8, почему шапка такая тупая?
>>1049481Java познается через страдание. Так что, всё верно и в книге, и в шапке.
>>1049481Смузихлебство соседней дверью, дружок.
Какие вообще распределённые in-memory хранилища геоданных есть нормальные? Знаю про редис, но он вроде как однопоточный и это мне не очень нравится. Нужно хранить значения типа <LatLng, String>. Желательно чтобы была возможность кластеризации точек, всякие там поиски по ближайшим точкам и тд.
Леплю свои первые хеловорды из говна и палок java и swing. Такая проблема, виджеты не отображаются сразу же после запуска моей йобы, а только после свернуть-развернуть. Это нормально? Это лечится? Ткните ссылкой, гугол только уроки по андроид-разработке даёт.
>>1049481Деды энтерпраиз джява бобы жрали и ты будешь, дрянь малолетняя.
Если я учусь на втором курсе примата, могу в ООП на уровне лаб, и сейчас засяду люто задротить джаву, то приблизительно сколько времени у меня уйдет на то, чтобы набыдлокодить простое приложение на ведро без сетевых функций? А чтобы пройти собес на джуна?
>>1049700И со времени дидов книг не писали больше?
А что бы вы ответили на поставленный вопрос?
>>1049736Хули поля с большой буквы?
>>1049744я зелёный
>>1049747Я тоже. И толстый.
>>1049747Поля - это то, что класс знает, его переменные. Есть неписаное правило, имена полей с маленькой буквы пишутся.
>>1049692Индеец зажигать.
>>1049747Вольнов, иди крымчанам звони.
>>1049481>Swing, AWT, JavaBeansНикогда в продакшене не использовал эту хуйню.Хотя про java бины почитать стоит, но не нужно увлекаться.
Поясните, эти джва конструктора работают одинаково, и, естественно, чтобы меньше писать, юзают второй?
>>1049698поподробнее - что конкретно отображаешь и как?если правильно делать - такой хуйни не должно быть.мимо-свингобог
>>1049934да.
>>1049934нет.
>>1050071Создаю панель, через flowlayout добавляю на неё два текстовых поля и кнопку.Вообще, я уже нашёл решение проблемы (методом тыка и сравнения с тем, что у меня работало правильно). Я создал класс Frame extends JFrame, и в нём запилил конструктор public Frame() {}, в котором полностью описал, каким должен быть этот фрейм. Проблема заключается в методе setResizeble(). Когда я в моём конструкторе писал строку setResizeble(false), получалось то, с чем я сюда пришёл. Но если в в методе main написать Frame mainFrame = new Frame(); mainFrame.setResizable(false);, то всё работает как надо.У меня только остался вопрос, почему так.
почему в методе main пишут:public static void main(String[] args){ }какой массив строчек там принимают на вход, к чему это вообще?
>>1050214Аргументы при запуске программы.java -jar test.jar vasya 666 pupkinargs[0] = "vasya"args[1] = "666"args[2] = "pupkin">>1049934Во втором конструкторе неявно подразумевается, что number = "99999" и balance = 100.55.Первый конструктор более общий. Работают неодинаково. Одинаковый результат будет лишь в том случае, если ты в первый конструктор передашь первыми двумя аргументами "99999" и 100.55
>>1050216аа то есть это название файла-класса или массив названий файлов-классов, если виртуальная машина запускает архивспасибо
>>1048363бамп
>>1050225Нет, это просто строковые параметры.Для jar должна быть только одна точка входа main. Т.е. классов с main может быть сколько угодно, но тогда нужно в манифесте указать конкретный класс с точкой входа.Например, у тебя прога какие-нибудь параметры принимает. С помощью args ты можешь распарсить эти параметры.java -jar hello.jar vasya ua>Hello, vasya! Slava Ukraine!java -jar hello.jar vasya ru>Hello, vasya! Slava Rossii!В C, например, ту же функцию выполняет пара (int argc, char* argv[]). В Java argc не нужен, т.к. у массива есть поле length.
>>1050249Можно ещё добавить, что в коде у тебя будет где-нибудь что-то подобное (всякие проверки на количество и валидность параметров опустим):public void main(String[] args) { final String greeting; switch (args[1]): case "ua": greeting = "Slava Ukraine!"; break; case "ru": greeting = "Slava Rossii!"; break; default: greeting = "Where are you from?" System.out.println( String.format("Hello, %s! %s", args[0], greeting) );}
>>1050259Только switch надо в фигурные скобки обернуть, конечно же.>switch (...) { ... }
>>1050264Только switch не работает со строками
>>1050268Работаэ, начиная с Java 7.
>>1050276> Java 7.Не нужно
>>1050282Не нужна твоя мать.
>>1050282Питух тупой блядь
>>1050296Хуя себе, галерной крысе ПИЧОТ.
>>1049736написали бы реализацию интерфейса Телевизор?
Учу тут Spring по-тихоньку, столкнулся с обычной для меня проблемы:Не могу придумать себе задание или проект, который помог бы практически доучить спринг.Киньте идею, что можно написать, чтобы Spring был оправдан хоть немного. P.S. Желательно не интернет-магазин..
>>1050851Интернет-ларек.
Сделал перекатhttps://2ch.hk/pr/res/1050914.htmlhttps://2ch.hk/pr/res/1050914.htmlhttps://2ch.hk/pr/res/1050914.html
>>1049681>>1049681>1049481>Смузихлебство соседней дверью, дружок.
>>1051101Какое смузихлебство конкретно?
>>1050096инфа 300%% что ты написал setVisible фрейму до инициализации всех виджетов.А нужно делать setVisible в самом конце.а вообще хорошая практика писать так:new Frame().setVisible(true)Ещё ты напоролся на грабли многопоточности, из-за чего по сути и огрёб. Если интересно - разовью тему. По красоте должно быть:EventQueue.invokeLater( () -> new Frame().setVisible(true) );У тебя - костыль, при котором еще и в ошибку может свалиться из-за многопоточности. Убери его и помести setVisible в конец.мимо-свингобог