Это копия, сохраненная 16 октября 2018 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
Q: Поздно ли вкатываться в айти в 20/30/40/100 лет?
А: Нет, не поздно.
Q: Cобираюсь учить джаву по 2/5/20 часов в день. За сколько дней я выучу достаточно, чтобы зарабатывать фрилансом?
A: На джаве фриланса нет. Хочешь фрилансить — дуй в ПХП/раби/1С тред.
Q: Хули все книги на английском?
A: Без английского ты не нужен и можешь смело идти нахуй. Ну или в 1С-тред.
Q: Что скажете за джавараш?
Если вкатываешься с нуля, то можешь написать пару "хеллоу ворлдов" до 10 лвла. Дальше курс рассчитан на ленивых и не умеющих читать книжки людей. Количество говнокода зашкаливает, годных задачек пару штук на весь курс. В любом случае решать тебе.
https://github.com/qqqlll/Java-Thread/wiki
-Город
-ЗП
-Стаж
-Над чем работаете
Естественно нереально, 22 лвл это уже очень много для айти. В основном люди начинают лет с 7-8 программировать и только через годы задротства могут получить долгожданное место джуна за еду. Я сам с 5 лет начал программировать на Си, как и большинство в треде. Так что, даже выпускники бауманки отсекаются в основном. Если сходу не напишешь Timsort на собеседовании, то ты просто не нужен работодателю, ты по факту будешь обузой. В 22 устроиться с нуля - невозможно. Ты просто уже физически слишком стар.
В зависимости от параметров нужно добавить возвращаемому объекту компоненты, с ифами это выглядит так:
else if(otype == 1) {
result.add(new Cname);
result.add(new Cdata); }
else if(otype == 2) {
result.add(new Clink); }
и так далее.
Был бы вариант сделать через регистр Map<RTYPE, List<Component>>, но как создать и передать новый объект в цикле? Без рефлекшона
Посоветуйте как ньюфагу можно это проще сделать.
И вот например в плане тестирования, это каждый раз нужно собирать apk-файл, накатывать его в эмулятор, проверять, убедиться в небольшой ошибке и заново? как-то по другому это делается?
Вопрос такой, почему, когда я пишу аннотацию Entity над классом и хочу подставить import нужного класса, IDEA мне на выбор дает либо Entity из пакета javax.persistence, либо из hibernate, но последний зачеркивает. Что с ним не так, если вроде как Hibernate хочу использовать?
А еще объясните, пожалуйста, по поводу JPA. Везде написано, что это просто описанная спецификация и реализации от самого Оракла (или Sun) типа нет (стандартом в плане реализации считается Hibernate), но пакет javax.persistence ведь существует. Тогда почему все твердят, что JPA это только стандарт без реализации?
> Вопрос такой, почему, когда я пишу аннотацию Entity над классом и хочу подставить import нужного класса, IDEA мне на выбор дает либо Entity из пакета javax.persistence, либо из hibernate, но последний зачеркивает. Что с ним не так, если вроде как Hibernate хочу использовать?
Хибернетовская аннотация очевидно деприкейтед. Используй из персистенс, хибер с ней и работает.
>но пакет javax.persistence ведь существует
Так ты посмотри что в том пакете. Интерфейсы, которые и задают стандарт. Реализации там нет.
питон не изучал, но языки предназначены совершенно для разных вещей, по этому не вижу смысла их учить одновременно. Тем более, если до этого опыта в проге нету.
Синтаксис питона не очень хорош для начинающих.
Он скорее годится для того чтобы его изучать после джавы, как сборник best practices оформления кода и решения задач.
> как сборник best practices оформления кода
щито? Любитель считать пробелы дохуя? Или любишь когда скопированный код не будет работать из-за похеренных отступов?
Блядь а ощущение после обучения такое, что кажется, что нихуя не понятно и нихуя не выучил и не запомнил.
Спасибо.
Хз, мне перезвонили.
Посоветуйте книгу по архитектуре приложений. Хочу писать качественные программы с четырехслойной архитектурой, правильно писать сервисы и то, что находится на уровне данных, внедрять зависимости и т.д.
Так как у меня нет опыта мне нужно на гитхабе пару проектов, верно? Реквестирую собсна каких проектов для джуна можно сделать.
Ага бля, сейчас я буду показывать код коммерческого проекта, чтобы потом штраф в поллимона получить. Ахуенно.
я писал о тех джунах, у которых никакого опыта работы нет. то что они там напишут банкинг мало кого будет ебать. в твоем же случае просто спросят над чем работали и с какими проблемами сталкивались. код никто просить не будет.
Я вообще другой анон. К слову, сегодня меня hr попросила прислать GitHub профиль или примеры кода. Ахуеть просто. Я java разраб уже больше 1,5 лет, какой она код ожидает - хз, последнее что писал для себя было для диплома, на R и питоне. Это вообще законно?
Чтобы передать команде разработчиков, очевидно.
Предполодим вам на вход подается последовательность логов в виде массива строчек вида:
2018-07-24 00:02:33,712 DEBUG [] [] [Sample text] [Sample text] - Sample text
А на выходе вам нужно выводить на консоль строчку лога и время, прошедшее с момента события,описанного предыдущим логом
2018-07-24 00:02:33,712 DEBUG [] [] [Sample text] [Sample text] - Sample text
Current timestamp: 0
2018-07-24 00:02:33,715 DEBUG [] [] [Sample text] [Sample text] - Sample text
Current timestamp: 3
2018-07-24 00:02:34,715 DEBUG [] [] [Sample text] [Sample text] - Sample text
Current timestamp: 1000
итд
Я предположил, что легче всего эту разницу будет подсчитать в милисекундах,дату при подсчете разницы между таймстемпами не учитывать, а саму задачу решать с помощью регулярок.
Код на Java:
https://ide.geeksforgeeks.org/nLJ1CBPu3b
Я специально не предусматриваю тот случай, когда нет таймстемпа,
я реально не могу понять, почему у меня не матчится.
Хочу как можно быстрее выучить Spring. По каким мануалам это проще всего сделать?
документацию открой.
Fx или swing? Что больше востребовано?
Нужно переться, я не знаю как ещё. Может быть есть люди, которые прутся когда засыпают от нудятины, у них есть шанс. Но если ты не прешься, этому сложно помочь. В первую очередь не открывай больше эту книжку.
private long todayOrYesterdayDate() {
if (input.contains("сегодня")) {
return System.currentTimeMillis();
} else if (input.contains("вчера")) {
return System.currentTimeMillis() - 86400000;
} else {
return -1;
}
}
расскажи подробней
от души, спасибо)
Блять, ну ты дебил или как? Идёшь на HH, мой круг или другую парашу, смотришь вакансии. У всех одно и тоже написано.
Учи, за свингом будущее.
>private long todayOrYesterdayDate() {
>if (input.contains("сегодня")) {
>return System.currentTimeMillis();
>} else if (input.contains("вчера")) {
>return System.currentTimeMillis() - 86400000;
>} else {
>return -1;
>}
>}
Ультраговнокод
roflanDaunich
Пацаны, опытные прогеры, расскажите про такой аспект:
Вы чувствуете себя уверенно когда идете на работу? Что вы будете востребованными со своими знаниями еще лет 5? Или все очень быстро меняется и нужно постоянно держать руку на пульсе?
>В первую очередь не открывай больше эту книжку
А чем она плоха? И чем ее заменить? Мне вот советовали получить сертификат ОСА. Может надо к нему читать гайды? Самое плохое что я не могу кодить, хотя бы говнокод писать, во всех этих книгах классы, классы, чтение, чтение, чтение. Как вообще начинают писать?
А как ты собрался изучать документацию, в которой, ты не поверишь, перечисление классов и методов, если ты даже с учебником не можешь справиться?
И какой тебе нахуй ОСА, если для него тоже надо читать-читать-читать?
Я читаю. Но не чувствую себя лучше. Это не затягивает, но видимо это и есть порог вхождения и может дальше будет интересней.
Ало, FX выкинули на мороз, а свинг нахуй никому не нужен, а если нужен, проще повеситься.
Ну так возьми груви, если хочешь динамическую типизацию. Можешь обмазаться скалой, у неё есть вывод типов, да и в 10 жаве добавили локальный вывод типов, так что можно ебашить теперь:
var yourMom = new Whore();
Он просто работает в Revolut!
Учитывая, какие долблебы приходят на собеседования, проработав в NC пару лет - БЕГИ ОТТУДА ФОРЕСТ! БЕГИ!
поясни за nc. чем занимался, какие технологии/фреймворки, кто и почему на твой взгляд долбоебы. ну и в целом опиши ситуацию в развернутом виде, если не сложно
Куда? Какой стек?
Первое, что бросается в глаза - люди очень мало знают. Поясняю - человек может годами сидеть на проекте и дрочить один модуль или технологию(но не целиком, а лишь малую ее часть). Что происходит во всем остальном проекте для него загадка, сокрытая туманом войны. Вокруг него сидят ровно такие же сотрудники. Это накладывает на мышление определенный отпечаток - ебучая узость взглядов. Он с очень большим трудом может обсуждать что-то вне своей компетенции и это страшно вдвойне, если у него чсв раздуто до небес от чести работать на такую кампанию как энцэ.
Про технологии ты можешь узнать от их же ейчаров. Просто отправь им резюме, а они пришлют тебе документ где ты должен будешь поставить галочки в чем ты силен. Там все стандартное, разве что бросилась в глаза строка с фреймворками для полнотекстового поиска. И да, тебе могут перезвонить, лол.
а в плане общего процесса разработки и разделения обязанностей? отдельно есть системные архитекторы, девопс, люди которые занимаются бд, бекенд разрабы, фронтенд разрабы, верстальщики и тд и тп? обязанности строго распределены и свой хуй ты в бд не можешь присунуть даже на пол шишки, являясь условно бекенд разработчиком? насколько давит ебучая бюрократия и все такое?
Я там не работал, но судя по слухам там все так как ты описываешь.
Ты правда хочешь у них работать?
нет. я в другой компании и здесь мне все нравится. просто когда ради интереса смотрел вакансии, то везде вот такое ебаное разделение труда и бюрократия, что пиздец как давит и превращает разработку из творческого процесса в каторгу
Я тебе так скажу, пока у тебя нет опыта и ты ленивое чмо - иди туда. Ток задерживайся не больше чем на полгода-год.
Вообще похуй. У меня есть фундаментальные знпния, которые не могут устареть. Есть опыт разработки. Хуле мне беспокоиться, что изобреиут нечто новое и фундаментальное? Я изучу
да, чувствую себя уверенно. если ты работаешь не в верстальщиком лендингов в подвальной веб студии, постоянно развиваешься, изучаешь и применяешь востребованные технологии, меняешь проекты (то есть не подпираешь легаси костыли из года в год), то всё будет ок
вкатывальщиков очень много, среди них нормальных - единицы. люди приходят на собеседование и не могут решить задачу из разряда "удалить повторяющиеся элементы в массиве". не хитровыебанными алгоритмами, а любым способом достичь цели
если есть мозги хотя бы на среднем уровне, то даже когда в дс из мухосрани перебираться будешь, оторвут с руками, заебут предложениями как только резюме на хх закинешь (говорю это основываясь на фактах от двух моих друзей понаехавших в нерезиновую)
мне был интересен взгляд изнутри. с чего ты вообще решил, что я собираюсь туда устраиваться? если не можешь нормально общаться, то иди нахуй
второй раз за месяц зашел в джава тред, а тут одни агрессивные обиженки. я задал конкретный вопрос. тебя вообще ебет зачем я его задал? ты, блять, женщина, чтобы ДОДУМЫВАТЬ? тебя грязный хуем одноклассники избивали в школе? можешь ответить - отвечай, не можешь - съеби
Так во всех вакансиях он есть.
так стрелочки эффективнее твоих вложенных квадратичных циклов. Коллекция тоже будет эффективнее
Нихуя. То, что ты описал, это на мидла собес. У джунов должны спрашивать банальные вещи о синтаксисе языка, которые не касаются каверзной хуйни типо как устроены коллекции в джаве, по какому принципу работают дженерик коллекции, глубокое понимание устройства памяти и прочее. Модификаторы доступа, может быть, чем статик поля от нестатик отличаются, ооп-вопросы и computer science.
JVM не поддерживает .apk файлы
Возможно пригодятся знания sql и общие понятие из бд.
Спасибо, не знал. Возможно, смогу выторговать побольше зарплату. Тогда, какие каверзные вопросы могут задать мидлу?
- Кем вы себя видите через 3 года?
- Можно ли починить микроволновку, используя монтировку?
- Как часто вы готовы оставаться на ночь на работе?
1. Тимлидом.
2. Так же, как и спасать мир - живым наполовину.
3. С такой же частотой, с которой можно будет не оставаться на работе днем.
- Вы идете по улице и видите пустую кастрюлю рядом с квадратным люком. Ваши действия?
Иду дальше, я не хочу опоздать на работу.
- Я бы сказал, "Я БЫ СДЕЛАЛ ЛУЧШЕ. ВОТ, НАПРИМЕР, ТРЕУГОЛЬНЫЙ ФРЕЙМВОРК 0.99 ПОДОШЕЛ БЫ ЛУЧЧЕ"
Зачем еще один фреймворк, если уже есть готовая кастрюля и она как раз?
ты блять как сюда еще и курсы то приплел? где я хоть раз упоминал что-то о курсах, конина ты блядская? писал выше, что работаю абсолютно в другой конторе и увольняться в ближайшее время не собираюсь. куда ты суешь свой короткий хуй в чужие дела?
если способен не поверхностно усваивать информацию, разбираться, анализировать глубже чем простые фреймворк-юзерс (спринг бут домохозяйки, выучившие две аннотации по ютуб видеокурсам рандом васяна), то наверное мозг есть, по крайней мере зачатки для дальшейшего развития
мы вам перезвоним
и хуйле ты мне этого говна принес? в ветке общались про nc, я спросил у чувака про контору. схуяле ты решил что я про курсы твои ебаные спрашивал? что это блять за курсы тимлида? я блять по-твоему один здесь сижу?
понимать что ты делаешь, понимать в общих чертах архитектурные моменты, как оно работает и почему, чтобы любая нетривиальная задача, подразумевающая нечто большее чем повесить две аннотации над классом, не вводила тебя в ступор
с современным нагромождением фреймворков и абстракций это невозможно. Мне вот например проще написать sql запрос, чем разбираться в этих костылях и завихрениях реализации хибернейта
это всё костыли с целью натягивания классов на базу один к одному. Непонятна конечная цель этого. База и классы это разные вещи и могут иметь разную структуру
Братишка, не стукай, я ровно о том же говорю что и ты.
ну тебя никто и не просит заучивать наизусть все исходники спринга и хибернейта. абстракции над абстракциями тоже не особо погоды делает. но всё это основано на базовых вещах. ты должен уметь объяснить(хотя бы себе) что ты делаешь, зачем и почему. это уже сократит количество написанных тобой костылей и велосипедов минимум вдвое
Таблетки прими, тимлид. Изначально разговор шёл с ньюфагом. Мог написать, что ты другой анон, а так сложилось впечатление, что ты тимлид-еблан.
В общем, мне кажется, что организация работы через базу данных это костыль. Какие существуют методики интеграции нескольких приложений написанных на разных языках, но на одной платформе в одну единную систему с учетом того, что части системы связаны между собой по подобию сигнал-действие?
P.s. Ну, и, сайт metanit.com подойдёт?
Спасибо и правда выглядит лучше чем через БД.
В плюсах мы после линковки получаем исполняемый файл, который выполняется на процессоре. Будет работать не на всех машинах.
В жабе мы компилируем файл javac`ом и получаем (?)бинарный жава-код, который дальше загружаем на устройство, на котором есть jvm и что делает виртуальная машина?
Почему нужно иметь виртуальную машину на устройстве, чтобы выполнять программы? Может ли виртуальная машина скомпилировать программу в объектный файл на устройстве, чтобы я мог затем удалить виртуальную машину, а программа осталасть работать?
Короче зачем нужна виртуальная машина каждый раз, когда запускаешь программу на устройстве? Почему нельзя один раз скомпилировать для устройства конкретного и не устанавливать виртуальную машину?
JVM внезапно начинает исполнять бинарный java-код. Этот бинарный java-код может выполнить только JVM, и никто больше.
Поэтому необходима JVM, иначе ничего не запустится.
Если есть и база то почему-бы и ее не использовать. Один срет в табличку, второй обрабатывает, третий отчет по этому выводит. И анализировать результат удобно.
Да, но почему jvm не может единожды скомпилировать байт-код в машинный код устройсва, чтобы потом выполнять его без виртуальной машины? То есть для работы программы всегда нужна jvm.
Из-за этого каждый раз приходится динамически компилировать байт-код жавы в машинный код, а не просто выполнять его -> жава тормозит.
Я просто хотел прояснить, почему это так, вот и все. Каждый раз запускать jvm на смартфоне для динамической компиляции - это не очень круто. Видимо есть причины, почему нужен jvm
Ну на смартфоне конечно говно. Но уже года 3-4 приложение компилируется под девайс во время установки.
так я тебе 10 раз повторил что просто интересуюсь обстановкой в конторе, без всякой цели. ну тогда за мат извени
На собесе в мою нынешнюю контору меня предупреждали, что работают они не на самых новых технологиях, обещали вкат в неизвестные мной технологии (может кто помнит, на чем писали 6-7 лет назад, какие сервера приложений были в моде, те поймут, о чем я), да еще и предложили денег меньше, чем в другие конторы (на 5-7к, в перспективе 10). Я закрыл глаза на всё (дебик) и согласился. Ах да, попросили еще, чтоб я никуда не уходил от них в течении года (типа они вкладываются в джуна на первом этапе, на втором хотят поиметь с меня выручку), и это важно, ибо совесть во мне живёт.
А теперь эмоциональная часть - блять, какой же это пиздец. Технологии протухли ещё в прошлой пятилетке, тонны xml, шестая джава и ни версией выше. Jsp, ejb, самописные фреймворки. Жутчайший ентерпрайз. Да еще и задачи ставят в основном уровня девопса. Когда прошу какой-то помощи, говорят - смотри проект, делай по аналогии. Кода почти не пишу, а то, что пишу - подвергается рефакторингу и у меня руки опускаются. Получается на работе очень мало полезного, а сидеть дома, изучать эти технологии, чтоб на работе чувствовать себя увереннее - не могу заставить себя, ибо старье.
До этой конторы познаний в sql было больше (здесь не приходилось еще работать с ним, поэтому забываю, хотя думал, что в боевых условиях подтяну). Современных технологий не юзаю. Код почти не пишу. Разве что в юнит тестах чуть прошарился, но и их писал совсем чуть.
И вот вопрос - это я тупой, не способен к обучению, и вообще программирование - не моё, или контора такая, проект дно, и надо валить? Кстати, я хотел увольняться через месяц после выхода на работу, указав на все косяки, даже приглашали в другую контору (зп выше, но узконаправленная шляпа), но после разговора с начальником он меня убедил остаться.
На собесе в мою нынешнюю контору меня предупреждали, что работают они не на самых новых технологиях, обещали вкат в неизвестные мной технологии (может кто помнит, на чем писали 6-7 лет назад, какие сервера приложений были в моде, те поймут, о чем я), да еще и предложили денег меньше, чем в другие конторы (на 5-7к, в перспективе 10). Я закрыл глаза на всё (дебик) и согласился. Ах да, попросили еще, чтоб я никуда не уходил от них в течении года (типа они вкладываются в джуна на первом этапе, на втором хотят поиметь с меня выручку), и это важно, ибо совесть во мне живёт.
А теперь эмоциональная часть - блять, какой же это пиздец. Технологии протухли ещё в прошлой пятилетке, тонны xml, шестая джава и ни версией выше. Jsp, ejb, самописные фреймворки. Жутчайший ентерпрайз. Да еще и задачи ставят в основном уровня девопса. Когда прошу какой-то помощи, говорят - смотри проект, делай по аналогии. Кода почти не пишу, а то, что пишу - подвергается рефакторингу и у меня руки опускаются. Получается на работе очень мало полезного, а сидеть дома, изучать эти технологии, чтоб на работе чувствовать себя увереннее - не могу заставить себя, ибо старье.
До этой конторы познаний в sql было больше (здесь не приходилось еще работать с ним, поэтому забываю, хотя думал, что в боевых условиях подтяну). Современных технологий не юзаю. Код почти не пишу. Разве что в юнит тестах чуть прошарился, но и их писал совсем чуть.
И вот вопрос - это я тупой, не способен к обучению, и вообще программирование - не моё, или контора такая, проект дно, и надо валить? Кстати, я хотел увольняться через месяц после выхода на работу, указав на все косяки, даже приглашали в другую контору (зп выше, но узконаправленная шляпа), но после разговора с начальником он меня убедил остаться.
контора дно, уходи
Обучался с ментором, хорошо подготовился к собеседованию, хорошо выполнял тестовые (не без джуновских косяков, конечно). Была уверенность.
Но текущая работа всю уверенность херачит.
Сколько времени ушло на обучение? Оцени субъективно по 5й бальной шкале свои навыки:
английский
джавакор
мультитрединг
коллекшнс
эскюэль
спринг
хибер
мавен
что? что вы несете?
мимо 20лвл джун из мухосрани ватывался 2 года 1 и 2 курс без задротства вообще лениво
>>50162
ну сразу скажу - приходил к ментору не нулёвый. уже с кором и даже уже постигал азы связки спринг/хибернейт
обучался 5 месяцев
навыки буду писать те, что были во время собесов (считаю, это был мой пик java-формы)
английский - свободный уровень чтения стэковерфлоу, планирую в школу языковую податься в начале осени
кор - 4
мультитрейдинг - 1.5 (никогда не писал, но к собесу мог написать дедлок и ответить на базовые вопросы)
коллекшнс - 4.5 (на собесах с этим ни разу не возникло проблем, но слабые места мог найти у себя)
sql - ну если здесь понимать и бд, то 3. с запросами легко обращаюсь, но один собес (на мидла) выявил, что проектированием я не занимался ни разу (хибер же на себя берет всё в хом прожектс)
спринг - работаю с ним спокойно с несколькими его проектами (boot, mvc, data, даже integration юзал), смотрел с десяток разных конференций на ютубе, но до гуру далеко.
хибер - также считал, что хорошо владею, но тот же собес на мидла мне дал понять, что не гуру (вопрос про кэш колекций не помню как точно звучал, но рассуждал я долго насчет него)
maven - 4
алгоритмы изучал еще в универе, основные паттерны под собес активно изучал
плюс был веб-стек - html, js, css, bootstrap, jquery
извини, что много слов, пиздеть - не с ejb ебаться.
Очень круто, спасибо.
jms
>Почему?
Потому что я хочу научиться/узнать о других способах решения этой задачи. Сокеты - это просто чудо. Просто и надежно без привлечения лишних сущностей.
Если принимающее приложение будет недоступно некторое время, как данные будешь хранить\отмечать что отправлено а что нет?
Очереди сообщений кстати не подойдут? RabbitMQ etc...
Я слышал, что с перфомансом сравнительно нет проблем. Сначала оно долго поднимается, зато потом за счёт JIT компиляции получрает байт-код, оптимизированный под конкретную систему - и летает. Ещё я слышал, что сборщик мусора блокирует все прочие процессы, если это так, то насколько оно влияет на производительность?
Про память - я слышал мифы о "черезмерно жирной жаве" ипонимаю, что JVM имеет некий вес. Но сравнительно с прочими данными в приложении - насколько это много? Сколько вообще данные занимают в памяти? Сколько в среднем памяти занимает контекст одного http запроса (если мы говорим про веб-приложение)?
А если понадобиться видео проигрывать какое-либо? Или в принципе данные какие-либо должны поступать бесперебойно?
В общем, мне нужно сделать фабрику с использованием дженериков, и я не могу разобраться как правильно и более "элегантно" это сделать.
В любой момент я могу склепать фабрику-монстра с кучей реализацией create() для возвращения каждого из возможных типов. С другой стороны, мне кажется, что правильный подход связан с использованием дженериков. По сути в итоге я хочу получить что-то вроде:
Interface Factory<T extends foo>{
T create();
}
Class Bar extends Foo {...}
Factory factory = new Factory<Bar>();
Bar bar = factory.create();
Но не знаю, как реализовать логику самой Fabric. Если нельзя вызвать конструктор класса T, то единственное решение, которое я нашёл - это костыль с передачаей класса в метод фабрики, но это какой-то пиздец.
Ухх, сука, какой же я тупой, пиздец. Помогите мне разобраться с этим говном.
Ты неправильно понимаешь шаблон фабрика - фабрика заранее знает о всех типах объектов которые она создает. Фабрика или создает один конкретный тип объектов или выбирает один из знакомых типов в зависимости от переданных аргументов.
В твоем примере непонятно по какому принципу создавать объекты. Если тупо по классу - то передавай его в create() и newInstance()
Начни с вопроса что тебе нужно throughtput или latency, а там и ответ будет.
То есть всё-таки правильно будет явно реализовать методы создания экземпляра каждого класса?
У меня была ещё одна идея - сделать так:
Бля, чет пост отправился раньше, чем ожидалось. Ну да в пизду, всё равно идея идиотская была.
Если хочешь все-таки уебаться, то без передачи класса никак:
class Factory<T extends Foo> {
private static final Map<Class<T extends Foo>, Creator<T extends Foo>> factoryMap = new HashMap();
static { //пихаешь свою логику создания }
static void <T> create(Object... args, Class<T extends Foo> clazz) { return factoryMap.get(clazz).create(args); }
interface Creator<T extends Foo> { T create(Object... args); }
}
Только учти, что я писал на коленке, и, во-первых, лучше не использовать варарги, и во-вторых, нужно навесить парочку исключений в метод create.
Тут по обстоятельствам. Иногда создают экземпляры через конструктор иногда через фабричный метод как писал:
>>50772
Еще есть вариант когда создаваемые классы сами регистрируются в фабрике. Как например раньше был сделан DriverManager - класс драйвера при инициализации регистрировался в DriverManager, а дальше по openConnection() уже создавал соединение с БД.
Ух бля, звали в хибрис когда собеседовался в ЕРАТ, слава богу не прошел.
Паша, а ты случайно не Леромин ?
>вкатится
Джава - слишком сложный язык для начинающего. Попробуй для начала русский выучить, ну а потом как пойдет.
не обращай внимания. скоро эти агроспециалисты соберут портфели и унесут свою экспертизу за парты
потом ангрийский, а там на стажировку можно
Спасибо за совет, пойду дальше ебать твою мать.
есть ли фреймворк на JAVA такой же легкий и простой как LAVAREL PHP???
>Чем глаза капать, чтобы не пересыхали?
баларпан, но он дорогой. В глазной клинике давали памятку, но потерял
>>51002
Судя по участку кода, null в проекте передается как портовая шлюха среди матросов. Это неизбежно приведет к NPE, которые вы долго и нудно будете дебажить. Удачи, чо. Четкие аноны обрабатывают null в момент его появления - либо оборачивая в optional, либо выкидывая осмысленное исключение на месте. На пике - просто пиздец, там даже idea ругается каждые 4 строчки. Пиздец, уволил бы нахуй.
Ну и YaNeUmeyuNazivatKlassiVJavePotomuChtoDebil.java во все поля
Java Programming 24-Hour Trainer (2015, Wrox)
>BigDecimal
А что с ним не так? Хот явроде как в финансах все в целых держится, но бигдесимал вроде не выкидывает фортелей.
Операции над BigDecimal медленнее на 3+ порядка по сравнению с long.
Вопрос: что нужно знать для стажировки или джуна(а то в офертах уж дохуя нужно знать для Джуна, так ещё и 2-3 года стажа хотят), какие ресурсы посоветуете.
Есть книжка "Философия джавы". Инглиш на уровне поговорить не о сложных вещах и читать тех.литературу.
И что лучше писать для резюме на джаве и соответственно в резюме.
Потому что примитивные типы не нужны и их скоро объявят deprecated, а когда-нибудь от них и вовсе избавятся.
написано, что кор месяц, дальше веб и работа над проектом
хороший вариант для тупых ващет
Потому что в коллекциях хранятся Object'ы. Можешь глянуть исходники ArrayList'а - увидишь что данные хранятся в Object[]. Это из-за реализации дженериков в джаве.
>Почему коллекции принимают только ссылочные типы?
Потому, что коллекция - это набор ссылок (указателей).
В C есть указатели. В джаве - ссылки.
Хочешь именно физический блок данных - используй массив.
Ну и автобоксинг/анбоксинг никто не отменял.
Т.е. ты просто можешь и класть в List<Integer> значения int и получать их оттуда.
Нормально, не ссы.
Всё норм, был там, сейчас 5 лет опыта, получаю >300k, кор хватит
Опыта реальной разработки на Java не имею, но язык знаю.
Нужно покрывать тестами тулзу которая интегрируется с разными scm хостинг системами, отсюда мне нужно решать следующие задачи:
1) работа по JSON апи с самой тулзой, а так же со всякими разными гитхабами
2) собственно работа в качестви гит клиента. Так понимаю что jgit может все или почти все.
3) вменяемый запуск тестов
4) удобные и читаемые логи-репорты
5) возможно в будущем к этим тестам прекрутить поддержку веб UI тулзы, но тут понятн что селениум.
Какой стул выбрать ? JUnit, TestNG, ... ? В общем в какую сторону копать.
Извините за не ровный почерк, не кормите говном, дайте пожалуйста мудрых советов.
а в 36, как думаешь, сильно тяжело? Если есть опыт работы в айти (не разработчик) и голова на плечах.
ох, торопился, перечитал и стыдно стало (
Пытаюсь подключиться к удаленной бд. Через sequel pro чекал специально, логин пароль порт хост - все рабочее. В spring boot - нихуя не работает. Что чекать? Ловлю всегда нулевой коннектор.
вряд ли они сейчас где-то используются, ну и работа с ними сводится к тупому добавлению объектов во фрейм. По сему, думаю, что ты всё правильно сделал
тестирование, автоматизация, относительно небольшая но серьезная контора. Короткого ответа на твой первый вопрос нет (да и не хочется в тред вываливать свои какие-то личные сложности).
Смысл вопроса был в том, что обычно, если человек имеет склонность к программированию, то приходит к этому довольно рано, особенно, работая в it.
Я не имею в виду проф. разработку, а именно программирование вообще - для себя, скрипты для администрирования и т.п.
И да, в 36 - это не поздно, если есть желание.
спасибо, бро.
MIT курс с джавой. Множественный выбор в чтении + несколько проблем сетов для самостоятельной работы.
Интересно, проходила ли эта ссылка на джаватредах двача раньше?
Мне очень нравится, какие приоритеты они ставят для кода: без багов; понятно; открыто для изменений.
спасибо
Тоже вкатился в 34. Правда, с детства периодически писал всяческую хуйню под разные платформы, начиная со спектрума
А я Кнута листал, лол.
Игорь привет!
Не работает. Адреса серверов как будто вообще не проверяются.
Хочу юзать для велосипеда: для передачи класса Activity через Intent в Android.
200мс - это время отрисовки 12 кадров из 60 при нормальной боярской частоте кадров в 60фпс
Это причина, по которой кроме мунесруфта на жабе нет игр, а мунесруфт фризит не смотря на все примочки и приблуды, которыми его пытаются лечить.
Это время проведения десятков-сотен HFT сделок на бирже
Это инпут-лаг при котором бугуртит даже соснульщик Сосава из пантеона черветреда:
[YouTube] Пинг Раздражения - Кто Кого? (401)[РАСКРЫТЬ]
Это пинг, при котором вы выходите из каэсочки по причине невозможности играть.
Всё это у тупой жабобляди в останови-манямирке считается нормальным и незначащим оверхедом.
Но расскажите мне, жабобляди, почему я в 2000 запускал VS 6.0 на Celeron 300/32MB RAM и оно каши не просило, а ваши жабодебильные иде на жабе просят топ-пекарню с core i9/32GB рам для работы, при этом функционала в них ненамного больше вижуалстудии 98 года?
Может потому что вы говно, хуи и рак? А хуле, бабемане из бухгалтерии норм полчаса проводочку в застывшем гуе вашего жабокруда ждать, значит и остальные пусть терпят, да?
Жабоблядей и прочих абстракционистов нужно давить.
Нужно понимать - жабоблядь - это обмазанная сотнями слоев интырпрайз-фабрик абстракций блядь-кодомакака. Она производит только говно. Этим говном она обманывает народ, заставляя его жрать тормозно говно и убеждая что тормозное говно это норм азазаза, через пол года новый ведрофон.
Жабоблядь надо давить всеми силами. Не позволять ей врать что тормоза - нетормоза. Загонять под шконку и заставлять зависать там с хуем на полсекунды, ведь именно так работает мусоровоз на их жид-машине.
например:
"aaa 12 bbb" - "aaa bbb" = "12"
Про какие паузы ты говоришь
нет
Для каких целей
+++
Погугли регекспы
>Хочу юзать для велосипеда: для передачи класса Activity через Intent в Android.
Ты как-то не так хочешь использовать интент чувствую я. Интент сам по себе принимает класс компоненты.
пытаюсь использовать лямбда выражение, но что-то выходит не так. Идея ругается "unexpected token"
переменная buttonName - это стринга
что я делаю не так?
Используешь лямбды там, где не нужно.
Ты просто проверяешь кнопку и выполняешь действие. Для проверок люди используют if, ?: и т.п.
Лямбды в жабе - сахарок для анонимного класса, реализующего интерфейс. Вот и думай, зачем он тебе здесь.
я использовал if else if так как элементов много, но код получается достаточно громоздким. Потом я заменил эту конструкцию на switch case - стало выглядеть более аккуратно и читабельно. Однако захотелось применить что-нибудь новенькое вроде лямбд, вот я и задумался о замене свитча лямбдами
Алсо, прочитай хотя бы so на тему использования лямбд. Потому что на пике ты:
Передаешь в лямбду boolean,
Внутри ничего с ним не делаешь (то есть она закрывада бы окно всегда),
Объявляешь лямбду вне контекста интерфейса, который она реализует, т.е. jvm не понимает, что этот кусок кода должен принимать как аргументы, и что должен возвращать,
И, видимо, ждешь, что она сама по себе выполнится, хотя ты ее просто объявляешь и не передаешь никому, кто бы ее вызвал.
Мда ет я попробовал, даже так нельзя:
buttonName.equals("closePromotionAdv") && firstPage.getClosePromotionAdv.click();
тогда так только
if(buttonName.equals("closePromotionAdv")) {firstPage.getClosePromotionAdv.click();}
>if(buttonName.equals("closePromotionAdv")) {firstPage.getClosePromotionAdv.click();}
это уже if statement, я как раз от них избавился в пользу switch, а switch тем временем хотел заменить lambda
Оп, эта ссылка не пашет чото. есть сохраненная инфа от туда у кого нибудь?
Да и еще и динамически типизирован, охуеть просто. Еще и работает быстро, это вообще пушка.
da
ZE BESD LANGUAGE EVOR
Лул, ну если ты свое приложение деплоишь на какой-нибудь вебсфере и ваще любишь поместь говнецо в энтерпрайзе, то все закономерно.
Нормальные ребята знают как писать лоулетенси код на джава и следят за аллокэйшн рейтом попутно тюня джиси.
А если нужно совсем избавиться от стоп зе ворлд, то просто покупается азул зинг за 3к на сервер и все спокойно продолжают писать на джава.
Не кормите животных.
Как? Понимаю что нужно за спринг браться но боюсь что недостаточно поднаторел для этого.
Ничего кроме примитивщины типа задачек про бутылки из Head first java. А разве не нужен Spring для написания чего нибудь?
Spring (core) - это так называемый IOC контейнер.
Он позволяет удобно связывать разные объекты в программе. Т.е. он сам находит требуемые зависимости (если его просят), и их не надо передавать вручную через всю программу.
На базе этого контейнера наворочена ещё куча всего, на все случаи жизни.
Этим можно пользоваться, а можно не пользоваться - дело хозяйское.
Понял тебя. Но сам как поступил бы на моем месте. По отдельности понимаю все. Ну мол это коллекции, это циклы, но со шпаргалкой только. Где поделать упражнения и набраться практики? Именно по основам языка вплоть до коллекций.
>вплоть до коллекций
А что такого в коллекциях?
И, как раз, алгоритмические задачи и позволяют с ними разобраться, например.
Списки, деревья, графы - поиск, сортировка, поиск пути, и т.п.
На курсере есть курс по графам. И вообще годный курс по джаве.
Я бы посоветовал попробовать делать несложные программы с GUI (Swing).
Похуй, что десктоп "не нужен". GUI - это весьма суровое ООП, и очень хороший способ с этим разобраться.
Например, простейшую базу данных с одной-двумя формами. Что там хранить? Да любую хуйню - список личных расходов или фильмов или книг и т.п.
Потом попробуй сделать то же в веб, на Spring MVC, например.
Примеры есть, надо просто поискать.
Вот, например, простейшая программа - конвертор систем счисления.
Там смысл примера, правда, не в самой программе, а в паттерне MVVM.
https://www.youtube.com/watch?v=-IIXlqF94WA
Да ты прав всякие задачки на codewars помогут в коллекциях, я понимаю. Но как например понять когда использовать абстрактный класс, когда интерфейс, где сериализацию применять, то же ООП. В алгоритмических задачках этого нет (вроде).
>где сериализацию применять
Этого нужно, по возможности, избегать, лол.
Нормально - сериализация применяется при передачи по сети - в JSON или в XML.
Для долговременного хранения - не рекомендуется.
Интерфейс - если нужно "наследовать" несколько вещей.
Абстрактный класс - если одну, и, при этом, есть куча общего базового функционала.
Можно успешно совмещать.
Также - см. паттерн "template method", например.
В наше время, по возможности, рекомендуют делать дизайн чисто на интерфейсах.
Если нужен общий функционал - используют композицию и делегирование вместо наследования (абстрактного класса) - самостоятельный внутренний объект, которому делегируется выполнение соответствующих функций.
Читай книги и статьи по ООП - их полно, и там, в наше время, в основном Java, Ruby или Python. Язык не важен для понимания общих принципов. Но, если будет речь про C++ - обходи стороной, лол.
Про "паттерны проектирования" (design patterns) почитай.
И код надо писать.
Просто чтения недостаточно.
Код можно никому не показывать, лол.
В принципе, все что он сказал верно, только не лезь в гуи, нахуй надо. Бери сразу спринг бут и изучай + аннотации подучишь.
>интерфейс
Как-то двусмысленно получилось.
Я имел в виду, что один производный класс может реализовывать любое количество интерфейсов, но унаследовать может только один абстрактный класс. И это, часто, неприемлемо. Поэтому, используют интерфейсы и делегирование.
Нет. Начинай прямо сейчас писать планировщик задач на спринг буте, с базой постгрес и фронтендом на vue.
Возьми, для начала, любую книжку по алгоритмам, которую ты сможешь читать (я не знаю, как у тебя с английским).
И решай то, что там написано, на джаве.
Консультируясь на дваче и стаковерфлоу.
Например, вот эту:
https://www.ozon.ru/context/detail/id/24903185/
Это очень хорошая книга (я читал оригинал).
И она маленькая.
Язык там - псевдокод, т.е. можно писать на любом языке.
Ну и гугол в помощь.
Готов последовать совету.
Но есть еще вопросы.
1. Что такое планировщик задач? Гугл выдает виндузятную хуету
2. Перед тем как на спринг буте разрабатывать его стоить ли понять работу самого спринга, скажем прочитать Спринг ин экшн.
3. Вместо vue подойдет реакт? Я реакт изучаю.
>>53154
Спасибо за книжку. Но слушай, стоит ли пользоваться для проработки этого codewars? Там каких только задач на алгоритмы нет. Скажем читать задачу, попробовать решить, а если не получится (что поначалу видимо часто будет) смотреть решение и учиться по нему.
> codewars
Для начала - стоило бы изучить основы.
Базовые алгоритмы и типовые проблемы.
Без этого ты будешь решать задачи методом тыка и изобретать велосипед, а это не особо полезно.
Пикрилейтед. Хотя, если тебя интересуют алгоритмы, то можешь придумать что-то посложнее. Просто to-do list это по-моему самое распространенное упражнение. Если тебя интересует именно спринг, то стоит, но не обязательно. Можешь использовать реакт, да и базу любую.
>Ты гуглишь его. И решаешь.
Да, так можно делать.
Но, лучше именно прочесть книгу.
Чтобы научиться рассуждать определённым образом.
Выработать определённый стиль мышления и взгляд на вещи.
Это важно.
Есть, например, книга, которая называется "How to Think About Algorithms" (MIT).
Ты думаешь, её просто от нечего делать написал целый профессор?
Но, с другой стороны, можно это сделать и потом, когда поймёшь, что тебе чего-то не хватает.
Вообще, первейшая задача для ньюфага - как можно скорее начать писать код.
И писать как можно больше кода.
Сложно сейчас устроиться джуном?
Знание java core и начальные Spring и Hibernate хватит для этого?
Благодарю за ценные советы.
Тогда перестаю вкатываться.
Я пока думаю что нужно какой-то jar вытащить
То, что ты написал - это не веб-сервис.
Это станет веб сервисом, когда ты его "опубликуешь".
Спринг бут тебе в помощь.
Простейший веб-сервис на сприг буте - это просто метод с аннотацией.
>Как вообще помещается код в компьютер и работает?
Ты о чём вообще?
А что ты тогда написал?
Гугли Spring Boot hello world web service.
http://www.allitebooks.com/spring-boot-in-action/
http://spring-projects.ru/guides/rest-service/
Можешь ещё Baratine попробовать, если хочется быстрого результата.
Это ещё проще, чем Spring Boot.
Охуенная вещь, чуваки из Caucho - реально крутые.
http://doc.baratine.io/v1.0/getting-started/
Идея там примерно та же, что и в Spring Boot.
Только в Caucho делали IOC контейнеры ещё до того, как это стало мейнстримом.
Но, боюсь, что этот проект (Baratine) в дальнейшем не будет развиваться.
Ну и спринг - это гораздо больше, чем веб-сервисы, и очень широко применяется.
Нет, я нагуглился и понял, что имел в виду apache tomcat через вароский файл. Осталось только поменять айпишник на имя и запустить на удаленном компе и протестить.
Допустим клиент написал какой-то класс, создал его объект и нам надо создать другой объект этого класса.
На этапе компиляции мы ничего не знаем о классе и никакой код туда добавить нельзя.
На ум приходит только получить список конструкторов и попытаться найти тот, который легче всего исполнить (без параметров -> с примитивными параметрами -> все остальные).
Но это геморрно и не покрывает всех случаев, потому что клиент может написать такой класс: https://pastebin.com/8XVzarAm С единственным ебанутым конструктором и там никакой reflection уже не поможет.
> Можно ли как-то создать объект через кишочки JVM?
https://docs.oracle.com/javase/8/docs/api/java/lang/reflect/package-summary.html
Я понимаю, что через reflection можно.
Но там как получается:
1. Беру класс.
2. Получаю список всех конструкторов.
3. Сортирую список конструкторов по сложности подбора параметров.
4. Вызываю конструкторы в этом порядке
4а. В случае существования конструктора без параметров всё просто, сразу его вызываем.
4б. В случае конструктора (-ов) только с примитивными параметров ставим некие дефолтные значения аргументов: false для boolean, 1 для всех числовых, " " для String и т. д. ( и надеемся, что не будет Exception)
4в. В случае каких-то ещё написанных клиентом классов рекурсивно вызвать п.1 для класса параметра.
Но это же заебаться можно. Вот я и думаю: может есть какой путь в обход всего reflection, что-то вроде WE NEED TO GO DEEPER, и анон знает об этом.
Как ты хочешь не знаю какой конструктор вызывать и что значат его параметры пользоваться им?
Не понятно что ты вкладываешь в понятие "клиент".
Конструктора тебе одного хватит, у него в
сигнатуре аргументы Object...
Ниже рефлекшона только пляски с байткодом, но то тебе вряд ли поможет. Есть еще MethodHandles они шустрее обычной рефлексии.
бамп блять
Просто пишешь в доках требование запилить дефолтный конструктор без аргументов, если клиент ебанат не запиливает его, то кидаешь ему исключение, что он ебанат. Базарю, большинство либ так и пишется.
netcat
Spring Boot или Baratine - это то же самое.
Только веб-сервер встроенный, и его не надо отдельно конфигурировать.
И у тебя получается просто обычная джава программа, у которой есть веб сервис.
Но, для начала лучше сделать через отдельный веб-сервер. Особенно, если не очень понимаешь, как оно всё вообще работает.
У тебя какая-то странная постановка задачи.
Что ты хочешь получить в итоге?
Возможно, это вообще по-другому делается (без создания экземпляра класса), в том числе и через байткод-инжиниринг (ASM, BCEL).
Очень нужна библиотека для логгирования в файл, но без необходимости конфигурировать через XML. Или конфигурация должна быть минимальной и без передачи параметров через командную строку. Что можно использовать для этого?
Java То ВСЁ
В
С
Ё
Нет смысла изучать Hello world, когда вышел KOTLIN и он набирает обороты. Запомните, JITодрочеры, скоро kotlin Будет лидировать во всем космосе
Андрей Бреслав? Что вы делаете на дваче?!
Мне нужно, чтобы после каждого перезапуска сервиса логгирование велось в новый файл, и имя этого файла формировалось из текущей даты. Java.util.logging это умеет?
>JITодрочеры
Ебобо? Чем тебе не угодил JIT? Или ты так из-за AOT на эксклесиоре перевозбудился?
Я не знаю.
Гуглить за тебя мне лень.
Но, такая фигня называется "log rotation", и библиотека логгинга сама по себе это уметь не обязана.
И то, что ты хочешь, делается в несколько строчек кода в самой программе, а потом ты уже передаёшь файл библиотеке логгинга и она в него пишет.
Потом тяжело перекатываться в ынтерпрайз, мне кажется (мимо ведроидщик).
Суть: не запускается джава на шиндосе 10. Там один мод обращается к javaw.exe, но при этом появляется ошибка пикрил. Как я понял(но это не точно, я тупой), джава в принципе не запускается на пеке, так как её процесс не появляется в диспетчере, а при попытке включить java.exe на секунду появляется какое-то окно и тут же исчезает, никак не отобразившись в процессах.
Как это сделать? Я с программированием знаком чуть более, чем никак.
мимо недомидл
потому что JAVA НИНУЖНА
Запусти цмд, и перенеси иконку javaw в окно цмд, потом нажми энтер.
Еблан, просто загугли "Java mindmap". Алсо, чуваки, поясните, если на собеседованиях спрашивают, с какими параметрами я запускаю jar-файл - это хорошая контора? И какие параметры есть вообще при запуске jvm?
>И какие параметры есть вообще при запуске jvm?
Ну вот, а так хорошо начал.
Запусти java -help.
Это продолжение вопроса. Переформулирую: нормально ли, когда на тех.собеседовании спрашивают, какие я параметры использую при запуске jar файлов и какие в принципе есть параметры?
> Запомните, JITодрочеры, скоро kotlin
Но ведь котлин юзает тот же JIT-компилятор, потому что JIT-компиляция идёт из байткода.
Какие в прицнипе есть - норм. А какие ты используешь лично, ну как-то не очень. Настройки gc и хипа там например.
Бля, не дописал. Есть игровое поле размером m x n точек. Точка может быть свободна или на ней может быть препятствие. Также даны две точки - источник и назначение, нужно определить кратчайшее расстояние между ними.
Вопрос в том, как все это визуализировать. Чтобы можно было менять размер поля, расставлять препятствия и смотреть результат.
> Вопрос в том, как все это визуализировать. Чтобы можно было менять размер поля, расставлять препятствия и смотреть результат.
Ебашь символы '.', 'X', 'O', '@'. И функциональные кнопушки F1-F10 с курсором.
Каково жить в тени C# Богов и быть лишь слабой надеждой в IT мире?
Как чувствуется, когда вас посылают нах раз за разом при выходе новых версий? а? А?!
РАУНД
>>54927
а хотя если не еблан то есть javaFX там же и рисовать можна
http://www.java2s.com/Tutorials/Java/JavaFX/0050__JavaFX_Rectangle.htm
например
maxCount=0;
Берем каждый интервал и смотрим сколько с ним записей пересекается, за исключением самого себя разумеется. curCount+= если пересекается
if(curCount>maxCount)
maxCount = curCount;
JavaFX я уже знаю, хочу что-то другое попробовать. К тому же там много возни будет лишней.
> Я не об этом, где мне это все рендерить?
Какой рендеринг? Ты получаешь путь к инпут.тхт в аргументах или через консоль (тогда считываешь через сканнер) и делаешь магию. Ну и потом делаешь систем аут, и все.
Ну я хочу красиво, чтобы препятствия самому рисовать и смотреть путь пошагово.
Если хочешь, чтобы у тебя очко сгорело, то есть Swing. Можешь какой-нибудь LibGDX заюзать, но это оверхед для такой задачи.
Так сейчас можно взять Substrate VM и любой жавайбайткод скомпилять по принципу AOT.
>хочу что-то другое попробовать
попробуй в своем мозге срендерить , да и скомпилить прямо там же можно
я так на работе делаю и меня все за это уважают вот так-то мда
Это можно написать на питоне (гуи - на TkInter, WxPython, PyQt).
Можно на джаве (Swing).
Для работы с com-портом на джаве - RxTx.
Если нет опыта на джаве (и вообще и свинг), под такую задачу лучше бери питон.
Современный EE довольно-таки похож на спринг (IOC контенер).
И одно другому не мешает, спринг много и часто используется в EE приложениях.
>посылают нах раз за разом при выходе новых версий
Ты очень точно описал то, что Микрософт делает с разработчиками под свои ОС.
Через String builder
Ктото неуверенный ведь прочитает, и бросит начатое и перейдёт на другой язык.
Нет. Это класс в котром лежит char[] или byte[].
Тебе же человеческим языком пишут, что у IP нет дефолтного конструктора, вызови нужный сам.
Нет, вот такие конструкторы. Просто я хочу сделать чисто свой конструктор в наследуемом классе.
Довольно логичная. Нахуй тебе тогда абстрактный класс если ты не собираешься переиспользовать его части? Используй тогда интерфейс.
Вообщем-то, в ЖС тоже есть ООП, которое выглядит почти как полноценное. Ну и всегда Тайпскрипт есть.
Заодно расскажите, как в московском офисе работается. На следующей неделе буду проходить собес у них
думаю, от него ждут другое решение.
>>54884
анон, посмотри мое решение (годичной давности правда) вот этой https://acmp.ru/index.asp?main=task&id_task=76 задачи, она почти такая же, только уточнено, что данные отсортированы.
https://pastebin.com/Liq7pjaL
говоришь, что хочешь изучить Java, спрашиваешь, какие фреймворки учить. Все как один говорят какой-то свинг учить. Сидишь, учишь, клепаешь формы так, листенеры добавляешь, ага. Потом оказывается, что нужно было учить не свинг, а спринг. Никто не приглашает на собеседование. Никуда не берут. Занавес.
Проорал с этой истории. Это кто-то интересно реально попадал в такое?
спасибо, но я решил дропнуть их нахуй. Чет у меня подгорело от всего этого. Чет для стажера много хотят, а потом еще собеседование и если повезет 3 месяца бесплатной стажировки и потом если повезет, то может быть возьмут к себе джуном. Кароч решил не распылятся я на джаву, а продолжить дальше сражаться с жабаскриптом
Хотя ну нахуй, я придумал A*, который застревает в тупиках.
там не абстрактный класс. А в целом содержимое говнокод
в общем, нужно написать быдлокод метод, который принимает коллекцию параметров и в теле метода уже вызываются три геттера.
Я использую цикл, но получается что каждый геттер вызывается по три раза. Как мне лучше реализовать этот метод, действительно ли нужен здесь цикл?
Ты же сам написал что тебе все гетеры нужно вызвать. А зачем ты их в цикл поместил если они не принимают параметра из цикла?
в таком случае мне цикл не нужен, я думаю можно стрингой обойтись
например, принимаю в качестве параметра стрингу а в теле метода выполняю проверку, где в теле оператора ветвления уже вызываю геттер.
наверное так
просто думалось как бы с коллекцией такое можно было бы провернуть
Ниче не понятно, хуйню какую-то городишь.
объясните пыхеру, зачем нужна аннотация @Override?
Зачем писать необязательную директиву, если можно просто проверить, правильно ли ты скопировал сигнатуру у родительского класса? IDE на худой конец подсветит тебе всё.
Это же просто лишняя хуита?
Тебе лень написать оверрайд, но не очень лезть в родительский класс сверять сигнатуры?
можно и не писать но это дурной тон
другой разраб должен видеть какой метод ты переопределил их же там 20-30 может быть а потом ты наследуешься, дополняешь новой логикой и переопределяешь некоторые родительские методы
кароче каша получится ГОВНОКОД
Но не лень*
>Тебе лень написать оверрайд
не то, чтоб лень, но ведь лишнее же
>но не очень лезть в родительский класс
конечно, если я пишу наследуемый класс, то уж наверное я зайду, да посмотрю. какая сигнатура у метода, который я хочу заоверрайдить
>>56333
так почему не keyword тогда ввели обязательный, а аннотацию поганую, которую как бы можно ставить, а можно и нет? или комментарий писать, что ли. Странно
У меня пока так EntityToDTOConverter<User, UserDTO> userToUserDTOConverter, но блин, это как-то длинно. Алсо, таких переменных может быть несколько, так что просто converter назвать не получится :(
Поле стринговое ещё напиши в теле класса.
Ты по сути передаешь список arraylist. Сначала делай форич по списку параметров, а потом форич по списку элементов в каждом arraylist.
И как ты потом поймёшь, что ты переопределил метод родительского класса, а не свой создал? У тебя в принципе, если метод не приватный, идея или компилятор будут ругаться, что метод с таким названием уже есть.
Нормальное название, не парься.
Короч поясняю по хардкору, как и зачем это все работает. В правильном ООП доступ к закрытым переменным получается только через открытые методы. Поэтому когда ты наследуешь какой-то класс, то из подкласса не можешь напрямую обратиться к переменным родительского класса (хотя они для подкласса точно так же существуют). А раз такие дела, то как ты их будешь инициализировать в подклассе? Только через вызов конструктора родительского класса. Вот и получается, что при создании объекта подкласса иерархии N уровня вызываются все N конструкторов, начиная от самого верхнего класса в иерархии. Отсюда вывод, что тебе надо либо определить дефолтный конструктор в классе А (не шарю, но думаю, что это считается говнокодом), либо вызвать уже существующий через super(String a). Иначе компилятор без понятия, как ты будешь инициализировать закрытую переменную ipAddress, унаследованную от класса А.
Для начала, что тебе мешает вместо строки в метод передавать ENUM?
>но ведь лишнее же
Тебе же сказали, что можешь не писать, но потом не удивляйся почему тебе постоянно на ебало ссут.
>это как-то длинно
А тебя ебёт, что они длинные? Тебе главное, чтобы они чётко и ясно отражали суть метода. А компилятору похуй на длинну названия.
Можно, только коллекция называется HashMap, а в ней ты хранишь Function<> обёртку своего геттера. Работать будет медленее трёх ifов
Анон, мне 25, меня зовут Антон. Вкатываюсь в Джаву.
Хотел вкатываться в магию и эзотерику,но так как живу в этих ваших ДСах понял, что до профессиональной магии мне ещё как раком до луны и мне нужен базис.
Суть такая двачик. У меня есть воля, ибо я похудел на 25 кг за 2 месяца и теперь мне нужно что-то изучить,чтобы почувствовать себя человеком вновь, так как работать в тех.поддержках после вуза заебало.
Закончил МИФИ в 2017 году.Есть опыт на С++
У меня вопросы:
1) Что такое Spring?
Я не понимаю, что такое спринг и нахуя он нужен?
Это что- ментальная карта? Почему не использовать ебучий Xmind?
Что он позволяет делать?
Везде он указывается, что типо необходим для джуна. Что это за ебала и нахуй он нужон я не понял.Объясните плиз.
2) Есть ли какие-то среды разработки типо QT CREATOR. Я на нем прогал на крестах, и мне хотелось бы нечто подобное на Java. Чтобы не блокнотиком, а именно полноценной программой компилировать и писать.
Вопросы по карьере.
Я собираюсь вкатываться в джаву в ДС в 25 лет на позицию джуна где то через год.( в 26 лет) Реально ли?
Джаву собираюсь
1. читать- 30 минут в дороге.
2. На работе в блядской тех.поддержке как получиться
3. Писать на джаве с 18:30 до 21:00 3-4 раза в неделю.
Также планирую вжобывать по Java на выходных.
Меня интересуют больше куллстори, как вы пришли к жизни такой, что вас взяли на джуна и что вас конкретно спрашивали на собеседовании и сколько и чего вам конкретно пришлось изучить для становления джуном.Если есть ДСники- буду рад, если вы озвучите з/п ,возраст и метро работы.
ЭЙ JAVAМОЙДОДЫР,ПРИНИМАЙ ПОПОЛЕНИЕ
ТАКОГО ТЕБЕ ДЖУНА НАРИСОВАЛИ,ОБРАЗОВАННЫЙ, МАМКИН РЕВОЛЮЦИОНЕР.
> Реально ли?
Если ты даже ответы на свои вопросы нагуглить не можешь, то нереально абсолютно.
> Хотел вкатываться в магию и эзотерику
Джава неинтересная скучная хуйня, лучше дальше в С++ катись.
>Хотел вкатываться в магию и эзотерику
Мошенником что ли хотел быть?
>Что такое Spring
Фреймворк для бекенда.
>Есть ли какие-то среды
Ну почему бы тебе не загуглить java IDE?
IDEA, Eclipse, NetBeans, еще несколько есть.
В том то и дело, что я перегуглил. Видишь ли, я параноик и немного неврастеник, поэтому я гуглю с избытком.
Именно поэтому я всегда спрашиваю мнение людей, которые уже получили опыт и прошли.
Прийдя на ЮТАБ, я обнаружил два видоса с взаимно противоречивой информацией, где один говорил, что джуну нужен только core,а второй,где с джуна спрашивают также как и практически с мидла.
Порывшись на hh.ru я увидел там требования, что джун должен знать за небо и аллаха,помимо джавы, чтобы поступить на джуна.
>>56775
Меня на данный момент интересует джава как средство заработка. >>56777
Поняв, пошив рабитать.
Я не он, но что интересного в плюсах? Кроме ебанутой сложности с фееричным созданием бесконечного числа дубликатов объектов и всякой низкоуровневой шляпы.
>Что он позволяет делать?
IoC и DI из коробки.
>Есть ли какие-то среды разработки типо QT CREATOR
Есть в десятки раз лучше, но будь готов отдать всю свою оперативную память.
Как средство заработка лучше JS учить. Знать надо меньше, вакансий больше, платят на уровне, если не лучше.
посрал в IDE и получилось следующее: https://pastebin.com/fU33TLzz. Я беру элемент по айди mw-parser_output, а потом беру из него элементы <ol>, где и появляется ошибка. Как сделать заебись взять элементы ol из элемента с айди mw-parser_output?
Мне показлось что мы в андроид треде и это как-то очевидно.
Посоветуйте ультимейт статью про обраотку ошибок в джаве. Чтобы подробно изучить проверяемые и непроверяемые исключения, понять, когда какие исключения лучше использовать, как обрабатывать типичные внештатные ситуации и т.д.
Не согласен, в жаву порог вхождения ниже, а тут хз как это все работает (я про спринг)
Чому?
в книге из фака Хортсманна слишком сложно написано, на хабре легче, но я все равно не могу понять, как настроить конфигурацию?
где находится ебаный файл logging.properties?
где находится файл, куда сохраняются логи, или такого файла нет ,пока я сам его не создам?
>The Java Logging API has a default logging configuration file located at "lib/logging.properties", inside the JRE directory
https://stackoverflow.com/questions/15758685/how-to-write-logs-in-text-file-when-using-java-util-logging-logger
>где находится файл, куда сохраняются логи
В конфиг файле указываешь. По умолчанию
java.util.logging.FileHandler.pattern = %h/java%u.log
%h - System.out.println("%h: " + System.getProperty("user.home"));
%u - однозначный номер
Но я его не могу найти у себя. Только если явно путь задам как здесь по ссылке выше
Поехавший, ты get с set не путаешь часом?
спасибо, нашел!
Юзай switch тогда хотя бы
мануал спринга - выглядит страшно без знания джавы.
>есть ли годный практический мануал по вкатыванию в спринг?
Есть
https://doc.akka.io/docs/akka/current/index-actors.html?language=java
>https://doc.akka.io/docs/akka/current/index-actors.html?language=java
Ога, как и в остальных мануалах, прото срут на голову кучей непонятного кода.
зачем мне это когда я могу открыть гайд по джаве?
для вкатывания в джаву мне достаточно learnxinyminutes и какой-нибудь книженции по философии джавы.
ищу именно годный практический гайд( мануал, фак, пост для ДСП)для девочек по запуску, к примеру блога на спринге.
нашел, спасибо. слушай, а можешь объяснить, нахуя перед каждым логом выводится дата (в консольке)?
это же пиздец не удобно, не? (например когда я в цикле каждую итерацию вывожу значение какое-нибудь) или нужно типа весь лог в какой нибудь стрингбилдер засовывать, а потом 1 раз выводить с помощью log.info(msg)?
https://docs.spring.io/spring-boot/docs/2.0.3.RELEASE/reference/pdf/spring-boot-reference.pdf
Да ты можешь поменять формат сообщения на любой другой, но зачем. Можешь сделать лог после того как цикл выполнится. Можно вообще каждую строчку кода логать
спасибо, почти то что нужно, надеюсь смогу реализовать
Кстати да, как раз по нему изучаю. Как думаешь, если прочитать всего Шилдта плюс философию Джавы и всякие паттерны, можно ли претендовать на мидла?
ещё хотя бы эффектив джава, 2 и 3 тома Хорсмана, и что-нибудь по алгоритмам, наверное. Ещё надо сделать несколько проектов, ну и без 2 лет коммерческой разработки обычно не берут на мидла
и как ты себе это представляешь? «я прочитал "книга_нейм", делайте меня мидлом», философия джавы + эффектив джава 3, и дальше практикуй знания. Твой тимлид, при виде твоих изящных костылей, вспомнит молодость, пустит слезу, да даст тебе ласоснуть тунца желаемую должность.
Принцип джавы «написанный код работает на всех устройствах». Базара ноль, Книги Шилдта - уважаю, сам читал(только про кресты), но его принцип «нет решения - сделай сам, неважно какими методами». В джаве таким людям сложно( интерпрайз - ты чаще будешь исправлять чужой код, чем писать свой, а тот код который ты будешь исправлять, исправляло 60 людей до тебя, и каждый внес частичку гавна себя в этот код), хотя, вру, им легко, сложно исправлять код за такими.
И в итоге: язык направленный на мультиплатформенность ебланит требует тщательной доработки под каждое устройство из-за хуевой тучи костылей.
Хочешь выделится? Иди в Си, делай вставки Си кода в джаву.
Хочешь в джаву? Пиши как все.
Спасибо, что расписал. Кстати, тоже читал книгу Шилдта по плюсам, пока не дошел до конструкторов копий (вроде, так оно называется), которые хрен пойми как вызываются, все легко понимал, книжка хорошая. А по теме: я скорее хочу вкатиться во фриланс, чем просиживать штаны в офисе, но понимаю, что с начальными знаниями я там никому не всрался, вот и ориентируюсь на мидла. Что-нибудь из опыта про эту сферу знаешь?
вообще, фриланс на джаве/питоне/си и практически любом адекватном языке - мифлюдей знающих основы джавы дохуя, все умеют изобретать велосипеды, заказчика не волнует качество, только цена
либо адский труд«ой, ну там у нас в проекте нужно строчку исправить, но разработчик не оставил документацию, проект полностью самописный, комментарий в количестве 3 шт на 400 строк, да и то на китайском», ах да, там еще и все на соплях, ибо старый разработчик боялся что его кинут
есть неплохие вариант подработки, ну или зарабатывать своими идеями( но я бы тут вроде выбрал питон, ибо на нем проще делать прототипы, да и свои проекты)
хз, щас вообще на частника тружусь, делаю ему всякую отчетность/аналитику в экселе( он думает что делаю руками) и потихоньку пилю свои проекты
> Принцип джавы «написанный код работает на всех устройствах».
Ага, как же.
https://docs.oracle.com/javase/8/docs/technotes/guides/compactprofiles/compactprofiles.html
а вообще, если есть шанс пойти на джуниора (главное не 1с и пхп, береги себя!), иди не раздумывая, получишь нереально много знаний и опыта работе в команде, даже если проект дохлый, даже если работать с уебанами. Моя первая вакансия была - джуниор по биг дате, хоть я и плохо писал код,но я приносил какие-то идеи.
Прям миф? А если не рассматривать чистую Джаву, а писать под андроид? Просто вот недавно был вебинар с представителем апворка, тот втирал, что разрабу под мобайл очень просто найти себе работу на фрилансе.
>>58206
Да, возможно, так и сделаю. Сейчас бы еще до нормального уровня язык подтянуть, и можно пытаться.
ну ахуеть теперь, Никто и не обращает внимания на эти 100 мб, или ты собрался писать софт под всякие устройства с ограниченным количеством памяти? Может еще и блокчейн/джс/машоб захуярим туда?
Ты наверное лысый... На, возьми расческу.
>>58218
Честно, я не представляю как можно вникнуть в проект на фрилансе, может там на андроиде все как-то по особенному происходит.
Практикуйся, создавай что-нибудь, попробуй там калькулятор на джаве, игру, яхз че там можно сделать, на практике ты столкнешься с реальными проблемами и научишься их решать. Ни в одной книге не будут описаны элементарнейшие проблемы, ибо писать их бессмысленно, т.к. они легко гуглятся, а джуниоров и расспрашивают только о элементарных проблемах да синтаксисе.
Окей, спасибо.
можешь по-подробнее рассказать, про то, что спрашивают с джунов на собесе, элементарные проблемы, вот это все?
смотря куда идешь, во всех случаях готовый проект( пусть даже немного кривой, но способный выполнять какие-то задачи) будет огромным плюсом
еще очень много зависит от того кто проводит собеседование, могут даже про многопоточность спросить
если у тебя будет готовый проект, могут поспрашивать о методах использованных в твоем проекте.
сайт факультета
Код метода https://pastebin.com/mniuUFnd
как очередь может быть "заполнена"?
она же расширяется блять....
Ты не думал что можно заранее определить максимальное количество элементов в очереди (например указать в конструкторе)
У этих очередей нет capacity constraint за исключением Integer.MAX_VALUE. Возьми ArrayBlockingQueue.
спасибо, понял
Какие подводные и какие плюсы?
Ну вообще-то можно и так, и так, а вообще code conventions это скорее рекомендации, а не правила.
Ребята, приветствую. Сегодня написал хеллоуворлд на спринг бут.
Хочу написать малюсенький проект - быстрочиталку.
Суть в том, чтобы на пустую страницу браузера выводить текст пословно, то есть динамически.
Подскажите, пожалуйста, куда мне рыть и какие еще технологии мне нужно изучить для этого.
В принципе нет, но зачастую приходится.
Есть кто работает со Spring AMQP здесь?
Это нормально, что мне приходят сырые байты? Есть ли возможность их нормально преобразовать?
Как должно работать я знаю, пользуюсь уже лет 10. Хочу свою реализовать, но понятия не имею с чего начать и что гуглить.
>Q: Поздно ли вкатываться в айти в 20/30/40/100 лет?
>А: Нет, не поздно.
И как это делать? Есть какой-то гайд? Старичка в офис же не возьмут на работу, т.е. только самому дома учиться? Брать мелкие заказы на фрилансе.ру? Как вообще начать и куда двигаться?
List<String> list = new LinkedList<>();
и
LinkedList<String> list = new LinkedList<>();
Видимо, в том, что с обычным листом будет доступно меньше методов, потому что он суперкласс линкед листа.
Sup, pr.
Есть char массив. Моя задача разобрать его на буквы и цифры и записать их в отдельные массивы.
Как мне это реализовать? Помогите
>Есть char массив. Моя задача разобрать его на буквы и цифры и записать их в отдельные массивы.
>Как мне это реализовать?
Создаешь два стака (java.util.Stack), один для пик точёных другой для хуёв дроченых. И давай то туда то сюда буквы пердолить (push). Потом у обоих toArrray() и вот тебе два массива.
thx, сейчас попробую
List<String> lines = Files.readAllLines(Paths.get("D:\\Sort\\" + args[1] + ".txt"), Charset.defaultCharset());
//преобразую его в массив
lines.toArray();
//пытаюсь разобрать массив на составляющие, но не получается. ЧЯДНТ?
for (int i = 0; i < lines.length(); i++) {
if (Character.isDigit(lines)) {
}
if (Character.isLetter(lines)) {
}
Всё это для бэкенда. Для фронтенда есть JavaServer Faces (такой древний недореакт для даунов), вот они тебе и нужны.
В консоль выводи что у тебя прочиталось. Вангую Charset.defaultCharset() - в шиндошс это cp1251
Можно, но смысла нет - тут всю работу можно сделать на стороне браузера, а это js.
>>59932
В первом случае у тебя ссылка типа List на объект LinkedList.
Во втором - тип ссылки совпадает с типом объекта.
Первый удобнее использовать, чтобы потом в кишках библиотеки при смене LinkedList на ArrayList пользователь библиотечной функции не заметил разницы.
Для локального использования пиши var и не еби мозг.
> lines.toArray();
Эта строка ничего не делает и не нужна.
Дальнейший код вообще не должен собираться - весь цикл херня.
Либо ты нам туфту впариваешь, либо вырезал часть промежуточных шагов, в которых может быть проблема.
пишет :
java: cannot find symbol
symbol: method length()
location: variable lines of type java.util.List<java.lang.String>
и ещё: java: array required, but java.util.List<java.lang.String> found
Так C# же говно без задач? Там же только игори на юнити и приложения 10 летней давности,не?
Я сейчас колеблюсь между явой и C# и выбираю, что учить.
Занимался хайбрисом в Епаме, есть даже сертификат (Core), у нас всех гнали сдавать.
Алсо прошел в Люксофт собеседование, через неделю выхожу на работу наконец-то. Не работал последнее время, начал с июня готовиться/искать работу.
Я не джабист и могу ошибаться, но походу ты не понимаешь, что toArray() должен возвращать массив. По твоей логике метод должен конвертировать List в массив, так не происходит и у тебя остаёться тот же List, о чём джаба тебе и говорит.
Настрой уровень варнов повыше.
Читал про них статейки на ебаном. Такое по всему миру или только в Киеве?
Недавно звонила HR из ДС-офиса епам, обиделась, когда отказался к ним идти
изи
Python, я выбираю тебя
Ну смотри, если сокет, то сервак держит коннекшен постоянно. Если так то сервак может связаться с клиентом в любое время. Если так, коннектишься с другого клиента, и слушаешшь события сервера
Netty позволит мне написать сервак с нужным количеством потоков-обработчиков от n клиентов и передачей данных другим m клиентам?
Конечно
Доки оракле
Здесь все по харду
Рано или поздно это должно было случиться
Зачем?
Да кстати, вопрос к знатокам. Насколько я понимаю, есть свободная OpenJDK и несвободная (с закрытыми исходными кодами) OracleJDK. А что стараются чаще использовать в продакшене?
Раньше подавляющее большинство использовало оракловскую, а остально примерно поравну разбито между всякими редхатами/ibm/azul/exclesior/openjdk, нас ждут перемены. Но теперь опенждк максимально близок к оракловскому, и ты разве что не такую поддержку и перформанс получишь.
Вот еще вопрос. Насколько сильно влияет то, что исходники этой самой JDK закрыты? Ведь туда могут вшить какой-нибудь зонд например.
Какой закрыты? OpenJDK на то и опен что ты идешь на их репозиторий, скачиваешь исходники и развлекаешься с ними как хочешь.
А зонды в платных, ну что я могу сказать, у тебя в процессоре/оси зонд, толку волноваться?
Мда. Оно может конечно хорошо, но чувствуется как какой-то костыль.
Причем тут проперти к lazy. Я тоже в начале подумал что можно же сделать как в некоторых библиотеках и просто объясвлять как Lazy<T>. Но тут более фундаментальная проблема решается, компилятор когда грузит одно статическое поле вынужден шрузит все остальные, в итоге нормальный AOT имедж не сгенерить.
У вас так же?
Некоторые программисты любят использовать обертки примитивных типов вместо самих примитивных типом. Зачем они это делают?
Им нужна нулабилити? Зависит от места применения, в некоторых по другому нельзя.
а я только перекатываться в джаву собирался, уже на шестисотой странице шилдта. Что блядь, всё зря?
Вот сегодня столкнулся с optional кстати
Ну в моем случае в контроллер передается параметр из url, и его может не быть, а в Otional проверяем есть ли он или нет
БOльшая часть разработки на С# это asp.
Раньше было бесплатно. За деньгу можно было купить что-то платное у Оракла, но это было опционально. Из альтернатив - платить деньги другим вендорам и пользоваться их реализациями, или взять опенждк и охуеать почему какая-то проприетарная залупа не работает. Сейчас вроде с опенждк все норм, а ораклждк это просто опеждк + платные навороты на +1 к перформансу.
На самом деле не критично, но многие попав на сайт оракла сольются.
Опен сорс, значение знаешь?
А вообще над опенждк работают все теже погромисты из оракла, ibm, редхата и тд. Потому что потом все остальные билды базируются на нем.
"hui1": {},
"hui2":{}
...
"hui100500":{}
}
Есть Json такого типа. Все ключи-хуи - одного типа, с одними же и теми же полями. Число их заранее не известно.
Вопрос - как обработать такое чудо полностью с помощью Moshi и прочие радостей, не создавая 100500 полей в модели?
Короче, можно ли с помощью Moshi сделать динамический POJO, где все ключи JSON'а будут лежать в списке (а они блять не списком приходят), а не биндится в одноименные поля?
Сяп.
А если JSON такой структуры:
{
"names":[
{"name" : "vasya"},
{"name" : "petya"}
]
}
Можно ли без ручного парсинга с помощью той же Moshi избавиться от бесполезного объекта Name, который содержит аж одну строку, и сразу запилить список строк-имен, вместо списка с Name'ми?
Чтобы модель имела только список строк-имен сразу же.
В какой версии языка у стримов появился метод search?
Customer customerByID(List<Customer> custList, int custID) {
return custList.stream()
.search(c -‐> c.getID() == custID);
}
Без ручек никак, только кастомный адаптер. Или ты под ручным парсингом имел в виду что-то другое?
Узнал, что в Java EE есть аннотация @Inject для внедрения зависимостей. А какой контейнер выполняет связывание компонентов на основании таких аннотаций? Разметил код аннотациями, но ничего не работает.
Аннотация сама по себе ничего не значит. Даггер опирается на них во время кодогенерации, спринг при запуске выкупит, но у него для тех же целей есть Autowired
JavaEE. Контейнер например джбосс
Сделал правильно, но файл не перекомпилировал.
Это все на спринге
Вот у нас есть Observable<List<Data>>, возвращаемое моделью (в частности, сервисом Retrofit'а).
Как можно превратить Observable<List<Data>> в Observable<Data>, то есть, провести какую-то обработку в конце, и выбрать по определенному признаку только один элемент из списка, например?
http://reactivex.io/documentation/operators/filter.html
А потом в subscribe onNext получишь свою выьранну модельку, если будет по критерию.
Трудно сказать. Я выбрал джаву, потому что не люблю работать с этими лейаутами на адроиде. Ты выбирай что тебе по душе.
>и в finally при этом сделать return, то finally перезатрет сообщение об ошибке
Это как? Я знаю, что finally выполняется вообще в любом случае, даже если вызвать return из catch, но твою фразу не понял.
Видимо как-то так:
int m() {
try {
...
} catch (Exception e) {
throw e;
} finally {
return 1;
}
Ну, честно говоря, первый раз о таком слышу.
мимо
потому что finally всегда выполняется последним и перезатирает резалт на стеке, который был положен до него (например в том же catch-блоке)
Ок, спасибо.
Самое основное, это jpa. Потом спринг(МВС там всякие, но я предпочитаю через рест работать), спринг бут, спринг дата, хибернейт. Ну бд какую-то основную выбрать. Я работаю через mysql, но знаком еще с postgre.
Есть всякие xml-дрочеры, но мне через аннотации гораздо легче.
В коммерческих целях Oracle JDK 11 будет платной.
ez
Вопрос про паттерны.
1) Нужно наизусть все выучить ибо спросят на собеседовании джуниора?
2) Вы в реальных проектах кроме синглтона какие использовали за свой опыт?
>1) Нужно наизусть все выучить ибо спросят на собеседовании джуниора?
Нет, но всякие фабричные методы, билдеры, абстрактные фабрики, декораторы, команды, стратегии, шаблонные методы надо знать.
>2) Вы в реальных проектах кроме синглтона какие использовали за свой опыт?
Шаблонный метод, билдер, обсервер, визитор, фабричный метод, фабрика, та дохуя. Ты зачастую берешь готовое и просто цепляешь туда где это нужно и выгодно.
Foo foo = fooFactory.getFoo("BAR"); //Может вернуть null
foo.buz(); //Если null то получаем NullPointerException
Варианта 2:
1)
if (foo != null){
foo.buz();
}
else
{
//ERORR SUKA BLIAD
}
2)
try {
foo.buz();
} catch (Exception e){
//ERORR SUKA BLIAD
};
Первый, но может быть вариант с тем что фабрика кидает эксепшн, и ты уже его ловишь, но не второй вариант. А наверное лучший вариант - завести специальную модель в которой объясняется в чем ошибка. Тогда и вовзращать что-то в духе: Either<FaileToCreateFooReason, Foo>.
Для начала карьеры должно быть в самый раз.
Типичные интеграторы, но почему-то более пафосные, чем остальные. Недавно ходил собеседоваться в московский офис. Ты сам откуда?
Про киевский филиал куча кулстори на ебаном лежит, можешь ознакомиться.
>а шо там?
там в общем-то все довольно хорошо
https://www.youtube.com/watch?v=oYFTWuRwpJE
В общем, чего ожидать?
прогать
И тут в одной небольшой, но хорошей конторе появилась вакансия javascript джуна. Требование: знание чистого javascript, знание ajax.
Моя цель - попасть в айти. Не могу сказать, что я изучил достаточно для того, чтобы устроиться джава джуном(учитывая сегодняшние требования спринг, хибер и т.д).
Стоит ли попробовать быстренько подучить джаваскрипт (учитывая, что вероятно он все равно понадобится) и попытаться влезть на эту вакансию?
Либо не пытаться лезть во фронтэнд и сконцентрироваться на бэкэнде?
Есть опен сорс проекты для того чтобы высрать туда что-нибудь и чтобы это хоть как-то котировалось при устройстве на работу?
Опенсорс это слишком банально и скучно) Ты должен сделать нечто большее, чем просто поучаствовать в опенсорсе, чтобы доказать, что ты достоин работы.
HR-тян
одну страничку я еще наверное смогу разобраться как разобрать на xml элементы, но тут вот надо жать на кнопки на сайте, чтобы отобразилась вся инфа. как эти данные можно получить? я уже думаю с помощью селениума этой хуйней заниматься, можно как-то полегче?
Если выполнишь пару ишуев там, уже хорошо прошаришься.
Что же на счет попенсорса, куда джун может что-нибудь высрать, то это никому для работы нахуй не упало. Уж лучше тогда что-нибудь свое полноценное сделать
Лол блятб, я это спрашиваю только потому что другой хуй сказал что свои некоммерческие проекты нахуй никому не всрались а опенсорс это отличный пример твоего кода который работает.
Так и есть) Ни пет-проекты, ни опенсорс не являются доказательствами того, что именно тебя надо взять на работу. Нужно что-то более убедительное)
HR-тян
Я уже понял что вы ебанутые и сами не знаете чего хотите, сидишь в своей задрипаной шараге и ожидаешь от человека который блять только начал свой путь, человека нахуй который к вам за еду работать то впринципе пришёл, чего-то УБЕДИТЕЛЬНОГО.
Хуйня какая-то, у меня таких проблем было две за всю жизнь, когда я не нашёл готовых аналогов. И первый раз я её решил на шарпе, а второй на пхп. А с джавой я даже хз, это же энтерпрайз язык.
Просто походи по собесам
За 300 золота и 60 дерева
есть задача создать образовательный ресурс типа (https://stepik.org/) или курсеры
подойдет ли для этого джава?
если да то в какую сторону копать стоит
сам умею в джаву кибернеты, спринги делал простые петы
Так, проблему решил. Создаю сканер до блока synchronizedэто законно же?. Теперь проблема в том, что если я не до конца ввёл строку, то вывод строки из очереди вторым потоком происходит в ту строку, где я пишу. Как это фиксить?
Бля, я уже в кровати, лень вставать.
По сути, два поток, в одном:
while(true)
Scanner sc = new Scanner(System.in);
String s = sc.nextLine
Во втором:
while(true)
Thread.sleep(5000)
System.out.println(s)
Ситуация такая, что во время ввода строки в неё может попасть строка, которая выводится. Можно ли это как-то предотвратить?
Просто организовать общение потоков через wait() и notify(), создав объект-абстракцию, символизирующий консоль. В нем будут синхронизированные методы вывода и ввода. А вообще если сам не додумаешься, то в книжке Шилдта есть решение твоей проблемы в главе про многопоточность.
шапка уебищная у вас
Перекати не уебищную
Чувак, я же не совсем дебик. Понятное дело, что у меня общаются потоки через wait-notify. Проблемс в том, что строки в первом потоке кладутся в очередь, а второй поток из очереди достаёт. Т.е. я пишу, например:
abc
dif
gh (если на этом моменте слип закончился, то пока я пишу, другой поток достает из очереди abc и выводит там же, где у меня ввод идёт, и получается:ghabc)
Ты, похоже, не понял, о чем я тебе говорил. Тебе нужен один общий объект консоли, который и будет запрещать с помощью синхронизации одному потоку доставать строки из очереди, пока в другом потоке осуществляется ввод. То есть пока ты вводишь строки в одном потоке, другой (выводящий) висит на мониторе этой консоли и ждет вызова метода notify(), когда ты закончишь ввод. Там тебе слип вообще не понадобится. Короче, если не понимаешь, то прочти книжку, о которой я написал.
Мне нужно, чтобы потоки ждали, в случае, если очередь заполнена, либо в очереди нихуя нет. Ты предлагаешь вариант, в котором и очередь то не нужна, ввёл значение и сразу его вывел. Мне не нужно запрещение вывода, пока я не ввел, что хочу. Хочу заполнять очередь, не обращая внимания на то, что второй поток достает из этой очереди. Слип мне нужен по сути для того, чтобы я успевал что-то в очередь заносить с консоли, чтобы не было так: одно значение ввёл и мне сразу второй поток его из очереди достал.
Ну так сделай внутри объекта-консоли очередь со строками, в чем проблема? В любом случае нужно запретить вывод, пока ты вводишь, консоль-то одна. Не понимаю, как ты хочешь выводить одновременно с вводом.
>чтобы не было так: одно значение ввёл и мне сразу второй поток его из очереди достал
Заполняешь очередь своим вводом, вводишь какой-нибудь символ завершения ввода, по которому пробуждается поток вывода, а поток ввода засыпает. Все еще не понимаю, что тут сложного (кроме твоих странноватых требований).
Гомель, говорят если дити со второго курса на треннинги, оч малая вероятность что взьмут на работу, после третьего чуть больше, а на четвёртом большинство берут
phantom js
Но это на крайняк, если есть апи, то лучше апи.
Анон, есть два стула:
на одном JavaEE + Spring
на другом - C# + ASP.NET
Какой сам выберешь, какой собственно имеет смысл выбрать в 2018?
Кто-то с codeacademy сталкивался?
Интерфейсы могут имлементировать несколько классов. Если вкратце, то для ооп для полиморфизма.
Со вторым дела не имел, по этому не посоветую.
Это копия, сохраненная 16 октября 2018 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.