24 декабря Архивач восстановлен после серьёзной аварии. К сожалению, значительная часть сохранённых изображений и видео была потеряна. Подробности случившегося. Мы призываем всех неравнодушных помочь нам с восстановлением утраченного контента!
Этот тред для тех, кто пишет (или хочет научиться писать) на кроссплатформенном, свободном, и самом распространенном языке современности. Java это воистину простой как камень и потому бессмертный язык. Во время войны в Ираке, американские солдаты выбрасывали свои ЯП, и подбирали Java. Британские ученые провели исследование, в результате которого выявили 58 видов Java. Женщины Вестероса шьют флаги и слагают песни в честь Java. Как тут не оставаться равнодушным?
2. Я зануда и я хочу умные книжки. 1. Head First Java, (2nd Edition) : Kathy Sierra, Bert Bates - для совсем нулячих простым языком. 2. Core Java (9th edition) : Cay S. Horstmann, Gary Cornell - тоже для нубасов, но на серьёзных щщах. 3. Thinking in Java (4th Edition): Bruce Eckel - для тех, кто умеет в хеллоуворлд на другом языке. 4. Effective Java (2nd Edition): Joshua Bloch - для тех, кто знает язык, но хочет перестать писать костыли. Больше здесь: http://www.proklondike.com/books/java.html
7. Всё это хорошо, но без алгоритмов меня на работу не возьмут. Не беда, вот курсы от Принстонского университета: https://www.coursera.org/course/algs4partI То же самое но в бумаге: Роберт Седжвик, Кевин Уэйн - Алгоритмы на Java
Выбираю между пхп и джавой. Цель - начать работать на удалёнке/в офисе. Джун. Опыт Си и обжектив-си примерно 2 месяца. Интересуюсь разработкой больших веб приложений бэкендовых.
Аноны, открываю для себя гитхаб. Многие знакомые и незнакомые погромисты говорят, что нужно просто брать и без задней мысли вкатываться в какой-нибудь интересующий проект и набивать опыт. Проблема в том, что я пока толком ни хуя не умею. За спиной только томик Шилдта (да и то не весь), фреймворков, конечно же, тоже не знаю, но практиковаться нужно. Существуют ли вообще на гитхабе какие-нибудь проекты для ньюфагов типа меня? Может, игрули какие-то
>>617787 Пили свой проект. Выбери то что тебе хотелось бы написать — имиджборду, игрушку, етс. Проси еого-то опытного чтобы помогли тебе набросать стек технологий. И тупо гугли название технологии + tutorial.
Аноны, может уже 100 раз обсуждалось, но я всё же спрошу. Как вы относитесь к сайту javarush ? Стоит ли там задрачиваться или же лучше учить по гайду ОП-поста?
>>617899 >Как вы относитесь к сайту javarush ? Стоит ли там задрачиваться или же лучше учить по гайду ОП-поста? Плюсы: 1. Неплохо разжевана теория, так чтобы дошло до не ИТшника. 2. Много практики(причем есть задачи круто обыгрывающие особенности языка) с проверкой решений, и все в идее через плагин, что есть гуд. 3. Ведет тебя за ручку от основ до практических инструментов и первых проектов Минусы: 1. Бесплатная часть не очень ценна. 2. Стоит многа денюх. 3. Одного джавараша не хватит чтобы устроиться на жунивора. Вывод: Если ты не ИТшник и у тебя низкая мотивация, которая не позволяет тебе разобраться самому то тебе не место в професии это твой бро.
Ребят, я тут смотрю на книги Spring в действии(1), и Spring для профессионалов(2), и меня интересует один вопрос: почему во 2 книге столько листов? Там куча воды, или просто более детально разобран спринг?
>>618017 Похоже что ты дошел до уровня, когда тебе нужны DAO. Создаешь класс ХуйняНеймDAO с методами saveХуйня, getВсюХуйню и подобное. Наебешься с DAO, приходи за Repository, ORMами и энтитименеджерами.
>>618098 я прошу мне пример дать как вообще это всё делается? вот допустим у меня в некоторых классах нудна работа с бд как мне бд туда доставить? создать в main и прокидывать через классы
>>618135 Вообще, я бы очень хотел перепрыгнуть на эклипс (поскольку в толковых зарубежных конторах везде требуют знания эклипса, т.к. не хотят платить за идею), но божечки, там такой пиздец.. особенно с дебагом. Не знаю, как куплю большой монитор, так и буду дальше смотреть.
Во-втором случае, берешь Spring, у которого есть куча своих удобных оберток над всем, что может понадобится для типичного хай авалебилити хай скалабилити энтерпрайз апликейшн, и гуглишь "spring то, spring сё" Ну и их классический пример https://github.com/spring-projects/spring-petclinic. Также у них много обучающих статей с примерами приложений на github'е.
>>618159 > какой смысл в этом? Именно в оборачивании запросов в метод, т.к. это всего лишь паттерн, чтобы индус, вьетнамец и белый человек могли быстро найти, где подправить запрос, написанный при старте проекта 15 лет назад.
Про цели я имел ввиду, хочешь разобраться и попробовать на примере все то, что лежит под современными фреймворками, пройдя 20 лет эволюции технологии? Написать свой велосипед для ДИ, доступа к БД и т.д.?
>>618176 >хочешь разобраться и попробовать >Написать свой велосипед нет хочу чтобы работало чтобы сделать быстро и чтобы в дальнейшем не пришлось переделывать
>>618206 Тогда бери один из популярных веб-фреймворков, в соседнем треде тебе писали. Я использовал для пары маленьких проектов Play (1, не второй), сейчас - spring boot. Как организовать доступ к бд в каждом решаются немного по своему.
Пока пьяные го-хипстеры спят в своей рвоте и тихо мечтают о доминирование говна на андрюшках и прочих мобилках, гугл потихоньку двигает породистого самца в стойло.
>>618481 Это из серии, сам сначала добейся, а потом предлагай, или что? У меня два выбора телеграмм или двач - я выбираю тебя пикачу! двач (тут, бля и так три с половиной человека сидит в треде, а ты мой юный организатор собрался конфу собрать).
ПЫСЫ: я уже сказал, что есть геттер (есть даже мертвая слака где-то), то есть ни к чему сообщество размазывать по каждому чатику. Но если уж собрались, то я пойду туда где не надо мобильный номер вбивать. Дожились, теперь каждый говночатик номер требует.
>>618533 Причем этот чатик требует у тебя номер якобы ради секьюрности. А потом говорит о тех, кто залогинился в твоем телефонном списке. Я так узнал, что у меня зарегистрировалась бывшая. А она узнала мой ник. Охуенный мессенджер.
Короче, докладываю. Начал дрочить туториал BEGINNER из ОП поста. Там книжка называется "JAVA для школьников от 11 до 18 лет, родителей, бабушек и дедушек" Пару слов о себе: 23лвл, получил диплом о высшем образовании в прошлом году. Сначала всё было ясно в этой книженции, прочитал страниц 60, делал задания в эклипсе как положено, а потом такая хуйня началась сложная, что я вообще ничего не понимаю. И это даже не середина книги ещё, у меня огромное количество вопросов возникает и весь процесс останавливается. Обоссыте или дайте совет. Может я слишком тупой для программирования?
>>618682 -кодить дается не сразу, будь готов учиться и не удивляйся, что через 10 лет, зайдя на хабр, ты поймешь что и половины не знаешь. Вообще самая неблагодарная профессия, лучше бы я в моляры пошел.
-могут все, но не все постигают истину, ибо писать код может быть самое унылое занятие в твоей жизни. То есть, если тебя втыкает только жажда бабла, то не твое (хотя до уровня промышленной обезьянки можно дотянуть).
-у каждой фичи всегда есть какое-то название, термин, бери его и гугли, читай альтернативные источники, проникайся. Не возьмешь ты эту область за 21 день.
В общем нужно умение пробивать лбом стены и быть ответственным. Хотя все это бесполезно, в твоей жизни появится тян и все конечно перевернет в жопу. Поэтому пока не поздно иди в маляры, не делай моих ошибок.
Хочу вкатиться в джаву. Сам даже не джун. Собираюсь понаехать из Израиля в Рашку/Европу (в Израиле уже 3 вакансии требуют ВО, а как мне сказали, ВО будут требовать все). Каково с работой (которая не требует ВО) в Европе (Испания/Чехия/Латвия) и в России для джава джунов? Да и вообще даун может познать джаву и трудоустроиться или лучше оставаться на пхп и не кукарекать?
>>618800 чат не для кода, а для общения только долбоёб будет толстые куски кода в чат кидать для этого есть миллион сервисов а для маленьких кусков подсветка не нужна
Чому яву считают хорошим и простым языком для начинающих, при этом удобочитаемым, когда она выглядит по громоздкости хуже кобола и не лучше крестов? Я серьёзно.
>>618822 то что громоздкость - недостаток - придумали хейтеры, чтобы продвигать всякое говно уровня скалы, потому что каких-то существенных минусов у явы оче мало поэтому и форсят ГРОМОЗДКОСТЬ
>>618826 Ну такое, могли бы и ключевое слово var добавить, компилятор и так может вывести тип, а ещё не иметь пропертя для моделей в 2016, а value types. Ну не начинай. Java как язык ещё тот тормоз. Но вот jvm заебись, да и куча всего уже написано.
>>618826 Не совсем. Хейтеры конечно есть, но я не на них ориентировался, когда составлял своё мнение, просматривал листинги. Может оно конечно так и надо и к этому быстро привыкаешь, но, имхо конструкции слишком велики и избыточны. А придираются обычно к тормознутости, хотя это не всегда так.
Oracle DataBase Administrator с стажем ~ 10 лет(версии 9,10, 11,12, rac, dataguard , вот это вот всё), сертификат OCA/OCP по 11
Так же в наличии знание weblogic, ibm websphere, ibm mq. Любые unix( aix, solaris, hp-ux) Веба, погромирования( php, perl, javascript, html, ror) нету.
>>618822 жава ценима и любима в энтерпрайзе в общем-то по одной причине - своей простоте. Изначально задуманная как минималистский максимально простой в освоении язык для встраиваемых устройств, джава обладает замечательным качеством - научиться программировать на ней может кто угодно в рекордно короткие сроки, что нещадно эксплуатируется энтерпрайзом. Так как код для энтерпрайз-систем не обладает большой ценностью, имеет реальные шансы быть выкинутым еще до завершения его написания из-за изменений в бизнесе или законодательстве, не чувствителен к ошибкам (всегда можно пофиксить на месте, это вам не тиражируемая система, к которой придется рассылать патчи), единственным к нему требованием является писать быстро-быстро довольно примитивные вещи по готовым заданиям от аналитиков. При этом еще и максимально дешево. Вот и причина причина её популярности - возможность привлечь дешевый ресурс (большая часть джава-программистов - индусы) и быстро наговнякать что-нибудь с минимальным издержками. Работать это будет плохо, но жить с этим придется не долго, через пару лет всё будет переписано. Но что касается отношения любого опытного программиста к джаве как к своему рабочему инструменту - очевидно оно будет насмешливо-негативным. Конечно, если этот `опытный' программист не мыслит теми же категориями, что и индусский таксист после 3-х месяцев интенсивной подготовки.
>>618858 >простой в освоении язык >научиться программировать на ней может кто угодно в рекордно короткие сроки Нынче под эти критерии Go подходит. Выразительность и абстракции - спорные, конечно, моменты, но для неостанавливающегося написания кода школьниками для энтерпрайза самое то.
>>618858 >единственным к нему требованием является писать быстро-быстро довольно примитивные вещи по готовым заданиям от аналитиков мне кажется этот диванный эксперт никогда не работал в интерпрайсе может быть он тот самый клоун >>618742 что писал что ВО не нужно в интерпрайсе
>>619035 нет я уже с рашки, но без вышки) Я с перерывами активно довольно программировал, но хочу "войти в айти" по полной. Смотрел программы универов где "штампуют" программистов, и там какая-то полная мудятина, отдаленная от реальный потребностей. И подумал, неужели это говно важнее, чем опыт?
>>619074 >я уже с рашки так какого хера ты мне мозги ебёшь? делаешь портфолио, делаешь резюме на сайтах уровня сеперджоб, в комментариях к резюме пишешь обязательно что у тебя дохуя опыта такого-то и такого-то, прикладываешь ссылки, честно пишешь что во нет
Короче начитавшись умных книжек пошел на этот ваш джавапараш в поисках практики. Прошел первые 10 уровней за 4 дня(разумеется теорию не читал, а только решал задачки). Короче все показалось каким-то унылым и слишком легким. Поэтому реквестирую где найти больше годных заданий, помогающих набить руку на практике.
Привет, ананасы. Обращаюсь к вам с просьбой о помощи. Есть ли у кого-то опыт работы с ЭЦП в документооборте? Намереваюсь запилить простенькую СЭД для ВУЗа, и одно из требований - цифровая подпись. Информации мало, и не совсем ясно что использовать - какие-то либы или классы из java.security.* ? Алсо, нихуя не пойму за сертификаты (да и саму процедуру подписи пока что толком не выкупаю). Где их брать? Вроде как их покупают? Я могу их сгенерировать сам для каждого пользователя системы и хранить на сервере? Короче, как это все сделать правильно и с минимальными заморочками?
Шалом, парни. Тут есть кто-то кто работал с корпоративными приложениями? Нужны пару советов по архитектуре и вообще процессу. У меня есть задача построить что-то внутренней корпоративной социальной сети с разными типами пользователей, возможностью загрузки видео, документов, изображений для определенных групп и определенных пользователей. В энтерпрайзе никогда не работал, но опыт своих поделий на схожем стеке имею. Приложение строю на Spring Container, Sping Data, Spring MVC, Spring Seurity. На чем писать фронт еще не решил, скорее всего Angular, не будет получаться, буду пилить на JSP. Пока что только сконфигурировал слоя, что дальше делать плохо представляю, кажется нужно маппить сущности - вот только не знаю как это сделать правильно с учетом моего Security слоя, прибегнуть ли к наследованию, или нет. Короче если есть желание немного подсказать - оставьте фейкомыльца, или я свое оставлю, не важно. П.С это легитимный тренд? А то я сначала запостил каком-то левом.
>>620252 Любую из оп поста. Но скипай то, что ты уже знаешь. Если тебе нужно с самого начала -- Хорстмен. Если тебе нужно проникнуться концепциями языка -- Экель. Потому читкани JavaSE8 Вводный курс Хорстмена. А потом Effective Java Блоха. А потом можешь себя проверить java pazzlers Блоха.
Коты, ткните, пожалуйста, в ошибку. Пилю "бота" для крестиков и ноликов в тренировочных целях. Алгоритм поиска оптимального хода ищется по принципу минимакса. Теорию изучил и осознал на бумаге. Варианты перебираются исправно (в зависимости от глубины поиска), проверял в дебаге, листья дерева решений оцениваются корректно и возвращается оценка, проверял в дебаге, но в итоге на вызов метода возвращаются координаты хода с нулевой оценкой и неоптимальной логикой.
http://pastebin.com/kMvW3gXY вызов метода minimax(field, 2, 5) // где field char[3][3] поле игры, 2 - идентификатор ноликов и 5 глубина в дереве решений метод возвращает массив, откуда берутся координаты хода.
>>620387 Это вроде как цмс запиленная на яве? Насколько гибко она конфигурируется без манипуляций с праздниками? У меня просто довольно специфичная аудитория приложения — люди которые не умеют скинуть на флешку фильм, им надо упрощать все донельзя.
Вопрос скорее для забугорных программистов. Так получилось, что уезжаю на пмж в гермашку. Сам я с программированием знаком вскользь. Но вести жизнь рабочебыдла мне надоело. Как вкатиться в мир it чудес и стать junior'om там?
Когда я пишу на Джаве, Господь подымает меня над полом и приближает к себе. Не так близко, чтоб поздороваться, но так высоко над вами, чтобы узнать вам, дешёвкам, цену. Вы писькины плевки, получившие паспорта, вы спрессованный в толпу корм для рыбок, ваши лица сливаются в одну огромную жопу. Человек без распечатки в портфеле есть такая низкая тварь, что даже утопая в реке, я не подам ему руку.
>>620645 Это не то что бы обычная cms, там ещё портлеты замешаны, но там из коробки есть права, загрузка документов и прочие штуки, для энтерпрайзного портала. Отдельные портлеты с нужным тебе функционалом допилить не сложно. Но это ещё то говно, работал с ним и нихуя не остался довольным. Тяжелое, неповоротливое, типично энтерпрайзное говно. Но твоим запросам удовлетворяет.
>>620411 Да, сука! Проебался с начальными значениями bestScore для листьев дерева и операторами сравнения, в результате чего минимаксный метод искал наиболее невыгодный ход для компьютера и выдавал его как самый выгодный.
Кури Брюса Шнайера "Прикладная криптография" - там описания принципов, что и как. Самому придумывать ничего не надо - в стандартной библиотеке уже реализовано все что надо.
Для тестов сертификаты можно и самому генерить. А так обычно в сети покупают в соответствующих центрах/организациях.
Чего-то "Философия Джава" не заходит. Вот читаю и будто не вникаю, по сто раз перечитываю инб4 тупой хуесос. Книга по Си от Аарона Хилегасса зашла на ура. Есть что-то по жабе подобное?
Серьезно, любой из вас будет жалеть. Лучше закройте идею и забудьте, что там писали. Я вполне понимаю, что данным сообщением не вызову дополнительный интерес, поэтому даже не буду предостерегать пытливых. Все равно сами дальше не пойдете.
Ну давайте попробуем разбавить обстановку. Накидайте ссылок на репозитории опенсорс проектов под энтерпрайз. Анон в соседнем "не легитимном" треде поднял годную тему. Может кто интересного накидает. Интересны именно конечные проекты систем, а не фреймворки - с ними и так все более менее понятно.
>>621071 Ты прав, очень уж взаимоисключающие параграфы. Основная мысль какая была - во всяком обучении чему либо нужно кроме теории иметь и практику. И если ты джнуиор на ниве энтерпрайза, то где взять эту практику? В контексте данного треда мы не будем рассматривать трудоустройство в контору которая собственно и занимается разработкой промышленных систем, где собственно и можно подчерпнуть этот опыт. Где еще можно ознакомиться с теми же исходниками/примерами систем разработанных по спецификациям ЕЕ?
>>621090 Продолжая мысль. Допустим я джуниор работающий в конторе, которая как в сообщении выше занимается разработкой некого энтерпрайз решения для среднего/крупного бизнеса. Все здорово, я увидел систему изнутри, узнал много нового, получил уникальный опыт. Но теперь интересно посмотреть на другие крупные системы, сравнить, как делают другие, определить для себя основные практики применяемые при разработках такого рода проектов. Как делать нужно, а как не нужно. Имея опыт только по одному проекту взгляд на такие вещи получается немного однобоким. Поэтому и хотелось бы увидеть альтернативы. Ближайший вариант который пришел в голову - опенсорные проекты, ведь энтерпрайз же не только для корпораций. А может есть еще какие-нибудь годные варианты?
>>621094 Но опять же, технологии от апача это в массе своей фреймворки и платформы которые используются для разработки конечных систем? Или есть что-то еще?
>>621098 >>621090 Анон, пойми, промышленное программирование за деньги, у джуниоров, это, в основном, легаси и суппорт. Ты будешь по 8 часов в день смотреть в код, который писался когда sun ещё цвел и пахнул. И твои такие порывы угаснуть через пол года унылой работы. Для себя можешь пилить пет проекты, с интересующим тебя стеком технолигий не знаю, кто бы захотел для пет проектов выбирать javaee стек, когда есть sparkjava, ratpack, scala, playframework, ninjaframework, да тонны годных фремворков и технологий даже на jvm платформе, господи, да тот же спринг бут если тебе нужно громоздка энтерпрайз система, поcмотри на liferay https://github.com/liferay/liferay-portal не понимаю, кому это может нравиться не за деньги.
А у меня такой вопрос — кто-то может внятно объяснить чем отличается разработка на JavaEE стеке от разработки на том же спринге? Я просто действительно не могу структурировать у себя в голове чем это все отличается и для чего применяется. хотя уже успел накодить свою имиджборду на спринге
Есть маленькая прога на джаве, которую мне надо запускать из консоли. Т.к. я в джаве ноль, приятель мне сделал сборку с помощью мавена, я её запускаю командой `mvn test` и всё в порядке.
Но внезапно оказалось что когда другие веб-макаки скомпилировали эту прогу в jar, то запускали её с установкой переменной окружения: $process->setEnv( array( "LANG" => "en_US.UTF-8" ) );
Как мне это повторить при запуске мавена? Попробовал `$ LANG=en_US.UTF-8 mvn test` - не помогло (результат работы проги не изменился как предполагалось).
Написано веб-приложение, во время девелопмента разворачивалось и тестировалось на томкате на локалхосте, все было в порядке. Пришло время тестирования на продакшоне, там wildfly. Деплоится норм, но при запросе из браузера http://сервер/контекст вместо собственно приложения получаю 403 Forbidden. При запросе рандомного URL справедливо отдается 404, что дает основания подозревать именно какие-то настройки безопасности. inb4: jboss-web.xml в наличии. Делал ./add-user.sh - Application user в консолечке, никаких изменений.
Может, есть какие-то настройки, специфичные для вилдфлая? Гугление не помогло, честно.
>>621495 если так хочешь сделать мавен-вей, то воспользуйся exec-maven-plugin, он позволяет запустить рандомную команду среды во время сборки. тебя интересуют здесь https://github.com/hdghg/overseer/blob/master/overseer-client/pom.xml#L17 строчки с 17 по 33. Пругой путь - делать это непосредственно перед запуском мавена: export LANG="en_US.UTF-8" P.S. А что за операционка то? Если сперма то команда для тебя: chcp 65001
>>621456 жабаее - когда-то тяжеловесный стандарт для веб-разработки. Со временем появилась альтернатива, которая была простой в использовании, избавляла кодеров от тонны бойлерплейтов, и использовала язык куда эффективнее. Называлась она спринг. С тех пор многое изменилось, стандерт ЕЕ перенял от спринга много полезного, сам же спринг стал довольно жирным. Сейчас ЕЕ это легкий в использовании стандарт, спринг освоить немного сложнее. Разницы принципиальной нет, некоторые подходы встречаются в обоих технологиях, но для новичка спринг важнее ящитаю.
>>621574 Воткнул в фильтры дампер запросов. В серверном логе появились еще и запросы-ответы, которые говорят, что на запрос такой-то отвечено 403. Спасибо, кэп. Гуглю как настроить что-то типа трассировки.
>>621614 все равно давай логи вайлдфлая. и кто 403 отдает - вайлдфлай? ты говоришь у тебя есть http access log? Это значит у тебя там apache? Попробуй без него сначала, на чистом вилдфлае.
Серверный лог - запуск + запрос. Остальные приложения убрал, развернул это в корневом контексте. http://ideone.com/eRNmaw Осторожно, дебаг-уровень.
>http access log? Это значит у тебя там apache? Не, это тоже лог вилдфлая, там только время-запрос http остается. Доступ к серверу через прозрачный нгинкс-прокси, с ним не должно быть проблем, но на всякий попробую сейчас и без него.
>>621580 Нет, я не хочу именно мавен-вей, я хочу заполнить pdf форму любым способом из консоли. Я выше написал что нашел готовый jar и запустил, но безуспешно. ОС Ubuntu 15.10. Проблема с кириллицей в pdf-формах.
>>621654 Изини, уснул. А когда проснулся, rghost уже лежал. этонея У меня подозрение, что вайлдфлай у тебя установленный из репозиториев операционной системы. Попробуй стянуть с оффсайта и развренуть на нем, если я прав. По логу идей особо нет, так как лежит ргхост, но вот вообще пока спал подумал что возможно вайдфлай каким-то образом завязан на авториризацию системы, потому он тебя и не пропускает. Сам с таким не сталкивался никогда. Вот может это поможет. https://developer.jboss.org/wiki/LDAPSecurityRealmExamples У меня вайлдфлай всегда в домашней директории обычного пользователя лежал, никаких пользователей я в нем не создавал, в таком состоянии он заводится на 8080 порту всегда.
>>621755 Вилдфлай официальный. Поглядел на работающие аппы - заметил, что файлы страниц лежат в корне war'а. Перенес файлы шаблонов - теперь отвечает Forbidden (без 403 в самом теле хтмл, лол), но зато теперь честно отдает 404 на любые несуществующие подпути у этого контекста. Буду копать в этом направлении, вопрос пока снят. Странно, что томкат работал исправно не ругался.
>>617731 (OP) Аноны, обьясните долбаёбу, почему при выводе на печать значения a и b, выводится 2 и 3? Ведь переменные a и b, не изменяются, а их значение лишь присваивается c и d. https://ideone.com/NyMmqn
>>621915 Это я понял, но почему при присваивании значения c и d , изменяется так же значение a и b? И System.out.println("a = " + a); выдает 2 вместо 1?
>>621915 А, понял, тогда ведь b++ при присваивании какой-либо переменной совсем не как b+1, ведь при присваивании b++ значение самой b изменяется, а при b+1 - нет.
>>621930 Ну смотри, вот пример: int a =1; int b =a++; System.out.println(a); //выдаст 2 и еще: int a=1; int b=a+1; System.out.println(a); //выдаст 1 Тоесть ++ прибавляет 1 и к самой переменной, в отличии от просто +1
>>621934 ++а сначала прибавляет, а потом возвращает новое значение. т.е. а сначала перезапиывается, а потом оно возвращает перезаписанное значение и б его забирает. Видишь как все просто?
>>621762 В веб.хмл ничего интересного: <контекст-парам>...</контекст-парам> <фильтр>...</фильтр> <фильтрмаппинг>...</фильтрмаппинг> <секьюрити-роул>...</секьюрити-роул>
>>622028 ты человек-загадка. Я прошу у тебя логи, ты говоришь что логов нет. Я прошу веб.хмл, ты говоришь что там ничего интересного. А мне вот интересно услышать что за секурити ролы и фильтер маппинги.
>>622063 Я человек-мудак, раз не догадался заглянуть в вар и не сообразил, что если страница в веб-инфе, то будет 403 Держи http://pastebin.com/kLEqiJh8
>>622434 А лучше вот что: как сгенерировать пдф не в файловой системе, а так, чтобы у меня Managed Bean в EJB генерировал PDF и возвращал его юзеру на просмотр.
>>623016 Джава - язык для энтерпрайза. Как ты думаешь, есть ли смысл серъезным компаниям нанимать Васю Суходрищева для того, чтобы он им приложение запилил, которое имеет доступ к корпоративной базе данных, за доступ к которой, да, хуй с ним, даже за проблемы долговременные, удаление базы любой конкурент забашляет чуть более, чем дохуища. И стабильное приложение нужно. И, хуй знает, надо саппортить его тоже, мало ли что. Да и вообще, справится ли Вася? И отуда вы все лезете. В гугл даже не можете. Начитаются джавараша и ябут друг-друга в жопы отвлекаете со своими ниже плинтуса вопросами.
Сап, приглашаем в нашу конфу, посвещенную пограммированию. Мы обсуждаем всё, так или иначе связанное с веб-разработкой. У нас есть отдельный канал про javascript, про ruby, про python есть development для обсуждения остальных языков и вопросов, связанных с разработкой, есть jobs для обсуждения вакансий, собеседований и рабочих вопросов и есть random для неформального лампового общения, плюс планируется ещё несколько каналов для других языков, которые вскоре будут созданы. У нас нет ограничений по уровню скила, мы рады как тотал нубам, так и синьорам ˜помидорам˜.
Мы пользуемся slack. У него есть неплохие десктопный (под все ОСи), веб и мобильный клиент. Для регистрации необходима только почта (фейковая тоже подойдет).
Жаваны, вопрос наверное не сложный, но я чего-то не нашел уверенного best practice для этого. Короче есть у меня хуйня, которую я боюсь долго оставлять в памяти, но ссылку на неё должна быть в Runnable который работает с интернетом. По-этому я хочу в момент cancel обнулить ссылку на неё. Ситуация примерно пикрелейтед. Как мне уловить момент отмены и обнулить объект?
>>623575 По идее, отмена выполнения некоего потока производится через метод interrupt() этого потока. Так по крайней мере делают различные executor классы, да и вообще такой способ отмены является каноничным. Если в этот момент в потоке выполняется операция которая может бросать InterruptedException (какой-нибудь sleep), то операция будет прервана и собственно будет брошено это исключение. В противном случае состояние потока будет переведено в interrupted. Следовательно тебе в теле call() необходимо периодически проверять это самое состояние через isInterrupted(). Как только поток окажется в этом состоянии - обнуляй свою ссылку.
А вообще java.concurent предлагает более удобные классы для работы с отменяемыми фоновыми задачами - FeatureTask и собственно Feature. Там и отдельные каллбэк методы есть для обработки операций отмены.
>>623836 А какие варианты? >>623627 Спасибо няша, затупил с интерраптедом, в принципе сработало бы. Что-то не подумал про FutureTask, в нем типа done() оверрайднуть и проверить isCanceled? А чем анпример дефолтная фича бы помогла?
>>623627 >>623908 Алсо это нормально, что нужно cancel вызывать у FutureTask'a, который я засабмитил, чтобы isCanceled в done() был true, а не на Future, которую submit возвращает?
Как быть с огромным билдером? Короче есть куча разных параметров типа lat/lng, timezone, ip, user-agent и тд. штук 20 наберется. Все это до поры до времени хранится в мапе. Ничего что 20 сетеров и 20 гетеров или остаивтьь только специфические, а остальные через делегат к мапу?
>>623997 В том, что много геттеров-сеттеров ничего страшного нет. А вот хранить в мапе - нефиг, разве что ты в итоге именно мап и будешь отдавать (но тогда зачем вообще билдер?)
>>624009 Нет, в итоге будет использовать uri который построится частично из этих параметров, а частично из уже имеющейся инфы. Параметры просто в query добиваться будут.
>>624229 Потому что они противоречат друг другу: статические методы принадлежат классу (т.е. this в них принципиально недоступен, объекта этого класса может и не существовать), а дефолтные - инстансу (их можно вызывать только на объекте).
Котаны, чем пользуетесь при создании веб-интерфейсов? jsf или html+js ? С коллегами на работе периодически пытаемся что-то подобрать, чтобы всех устраивало. Я склоняюсь к тому, чтобы на java писалось rest-ядро, а ui был на html, данные при этом дергались бы либо через js, либо template engine использую. Один парень пытался нам tapestry и vaadin впаривать, мы его нахуй послали.
>>624241 Мне повезло, мы пилим рест-апи, которое затем используется юаем, так что нас вообще не ебет с каким там по счету хтмлом пердолятся юайщики.
> Один парень пытался нам tapestry и vaadin впаривать, мы его нахуй послали. Это вы правильно. За ваадин надо было еще пиздюлей дать, чтоб и слово такое забыл.
>>624386 Поясните за такой подход. ниже мое нищебротское представление как это устроено Это значит должно быть 2 веб сервера: 1 - рест(например), 2 - для отдачи морды. И после загрузки страницы в браузер со второго сервера со всеми скриптами, отправляется куча ajax запросов на рест сервер. выглядит ниочень В чем вообще преимущество рендерить страницы не на томкате, гласфиш или пр. Или как вообще такое практикуют?
>>624411 Смотри у тебя лежит на сервере твой jar со встроенным сервером (jetty, tomcat), ты его запускаешь и вот твое апи. Тут же лежат файлы html/css/js где просто идут ajax запросы к твоему серверу. Никаких war-ов с web.xml никакой ебалы с application серверами.
>>624411 >2 веб сервера: 1 - рест(например), 2 - для отдачи морды Во втором сервере нет особого смысла, используй обычный сервер джявы.
>И после загрузки страницы в браузер со второго сервера со всеми скриптами, отправляется куча ajax запросов на рест сервер Грузятся только сами данные без лишней хуиты, жсон (особенно сжатый) весит в разы меньше, чем уже отрендеренные в хтмл данные.
>В чем вообще преимущество рендерить страницы не на томкате, гласфиш или пр. Как раз в этом и преимущество. Сервер только отдаёт/принимает пачки данных, а 99% работы делегировано браузеру. Больше никакого петушения уровня 90-ых с открытием новой страницы на каждую хуйню и серверными сессиями, и разумеется апи из коробки. В идеале весь сайт запихивается в одну страницу/скрипт, и после этого вся навигация выполняется мгновенно джяваскриптом, сайт даже не надо загружать больше одного раза, т.к. и скрипт и страница статические.
Было собеседование на java джуна(стажер первые 2 месяца) зп назвал сумму 25. Нормальная зп? Или я продешевил? Будет ли повышение? И как вообще вести разговор о повышении зарплате с руководством? ДС.
>>624598 Охуел? Во-первых, радуйся, что тебе за стажировку вообще платят. Во-вторых, ты и ее ещё не прошёл, а уже повышение хочешь. В-третьих, обычно первый пересмотр через полгода - и не повышение, а именно пересмотр. И в-четвёртых, почему ты вообще решил, что тебе должны платить больше? Какую пользу ты принёс работодателю?
>>624411 > Поясните за такой подход. Модный подход. У тебя есть сервер на котором крутится твой REST API. Можно запилить 100500 разных клиентов с разными мордами используя этот единый API. Это может быть одностраничное приложение на AngularJS/ReactJS, толстый клиент на Swing (упаси боже) или какая-нибудь аппа под Android. А ты, как тру бэкенд-девелопер, должен париться только за совй API. Иначе уебывай в тред про JS.
>>624623 > Охуел? Во-первых, радуйся, что тебе за стажировку вообще платят. Во-вторых, ты и ее ещё не прошёл, а уже повышение хочешь. В-третьих, обычно первый пересмотр через полгода - и не повышение, а именно пересмотр. И в-четвёртых, почему ты вообще решил, что тебе должны платить больше? Какую пользу ты принёс работодателю?
Ты прав, я уже обдумал и решил что в первую очередь это опыт. Просто школьники с этого ресурса с зп 100к на начальных должностях сделали меня усомниться в правильности выбора стажерской зп. Спасибо за ответ про "пересмотр".
>>624623 Ты понимаешь, что ты хуило? Из-за таких, как ты в массе, рашкинские работодатели радостно постепенно снижают зарплаты (про индексации я уж и не говорю) к зарплатам сисадминов и просто IT-инженеров.
25-30к рупий для стажера было норм до 2014 года, когда Крым был еще не наш и доллар стоил 30 рублей. Сейчас же 25к это ТРИСТА С НЕБОЛЬШИМ ДОЛЛАРОВ. Триста долларов. В макдональдсе люди 40к получают, а тут у сферического джуна вышка, общие навыки IT, ограниченное знание выбранного ЯП и pre-intermediate в массе английский без практики. 25к в наше время это нихуя не нормально и потворствование такой хуйне со стороны работодателей в виде одобрения (в массе, напомню) это лютейший треш и пиздец.
О, посоны, привет. Недавно арендовал виртуальный сервер. Поставил там центосину. Написал простенький веб-сервер на жавке. Установил как сервис. Зацени плис.
>>625044 > Лебедев > june 20th, 2012 > Всю ленту засрал. Вы уж пишите хоть что-то. > http://babobka.livejournal.com/ > НУ ПОЖАЛУЙСТА, ОБРАТИТЕ НА МЕНЯ ВНИМАНИЕ!
Сколько лет прошло, а ты все не изменился. Все еще серишь в кровать?
>>619394 >мных книжек пошел на этот ваш джавапараш в поисках практики. Прошел первые 10 уровней за 4 дня(разумеется теорию не читал, а только решал задачки). Короче все показалось каким-то унылым и слишком легким. Поэтому реквестирую где найти больше годных заданий, помогающих набить руку на практике. там дальше есть задачи интересные и непростые. первые 10 уровней хуйня ваще, преподают в первом семестре любой ит специальности даже сисадминам
Ребята, накидайте минимальные стек технологий, что бы вкатиться в web-java. Без фреймворков, хочу я к примеру зебашить web-app для например автоматического транслита с одного алфавита на другой ,что мне использовать? сейчас юзаю apache tomcat, что еще нужно?
>>625590 Q: What is the difference between the source code found in the OpenJDK repository, and the code you use to build the Oracle JDK?
A: It is very close - our build process for Oracle JDK releases builds on OpenJDK 7 by adding just a couple of pieces, like the deployment code, which includes Oracle's implementation of the Java Plugin and Java WebStart, as well as some closed source third party components like a graphics rasterizer, some open source third party components, like Rhino, and a few bits and pieces here and there, like additional documentation or third party fonts. Moving forward, our intent is to open source all pieces of the Oracle JDK except those that we consider commercial features such as JRockit Mission Control (not yet available in Oracle JDK), and replace encumbered third party components with open source alternatives to achieve closer parity between the code bases.
гайс помогите с выбором короче могу в с\с++ хелоуворд так же в универе вроде неплохо решал дабы по андроиду так же был семестр джавы(на который я хуй положил, хуевый препод) и теперь думаю что читать Хорстмана или Эккеля?
>>625896 Хорстман годно объясняет, все понятно. Но не так глубоко, как Экель. Но чтобы Экеля понимать, нужен опыт программирования, и понимание ооп нормальное. Я вот в кор могу, почти что на нормальном уровне. Но Экель пока не заходит. Оставляю на потом. Хз, похоже в оригинале он более годный. Многие говорили. А сам я учился по туториалам, и дохуя чего из книжек на инглише дочитывал. В общем, попробуй почитать обе, немножко, и поймешь, что тебе заходит, а что нет. Такой простой совет. Сейчас все на торрентах берется. Это тебе не в магазине выбирать, 50 баксов туда или сюда. И учи английский. Пригодится.
>>626368 > в универе два семестра был... > без вышки Лол. Ну а честно, путь описан в оппосте, без вышки сложнее, но при наличии какого-нибудь опыта, на вышку всем становится насрать. Опыт же получить сложнее, но есть окольные пути. Если никто не берёт тебя джуном во что сложно поверить, то идёшь к интегратору, нанимаешься на поддержку интеграционного говна от IBM и параллельно дрочишь джаву. А там уже при удобной возможности переводишься между отделами.
>>626422 Да, суть в том, что вакансий мало, но знающих людей на порядок меньше. Вот интеграторы и берут на обучение полных нулей. Начинай со слова Websphere
аноны, как вписать в массив arrayList посимовльно введённое слово? Пикрелейтед не работает, ведь a.add в данном примере работает только для тела функции. Подскажите пожалуйста.
>>626780 А нахуй тебе там вообще ArrayList? Конкатенация двух substring, не? Может все методы String сначала посмотришь, charAt, например, или split? http://ideone.com/uZ3rbp
Пацаны, выручайте, пишу игруху на libgdx, ее главная фишка - разпознавание жестов. До последнего момента я считал, что для это есть куча библиотек, но нашел только вот это видео: https://www.youtube.com/watch?v=8OXExn29OTE без всяких ссылок на сам плагин. Может я что-то проглядел? От отчаяния я решил сам сделать алгоритм, только хз будет ли он работать. Есть метод, который энное количество раз в секунду возвращает координаты зажатой мышки. Я хочу разбить пространство на клетки и при пересечении курсора с клеткой складывать ее в массив. Потом описать нужную фигуру точками, построить на них круги и сложить круги в массив. Потом вычесть из одного массива пересечение с другим и оценить остаток. Взлетит?
>>627433 No. Хуевый какой-то калькулятор. Сделай чтоб просто брал из system.in выражение вида ARG_1 OPERATION ARG_2 и выводил результат в system.out без всяких там вопросов пользователю. Т.е. 666 + 333 --> 999
Нужно организовать такую штуку: Если за определенное время (3 секунды, напрмер), не будет получен UDP пакет с определенным содержимым, то нужно выполнить один участок кода. Если получен - то другой.
Я вижу решение через wait()/notify() или более годные аналоги из java.util.concurrent (пока не сильно разбираюсь в этом пакете, но по ходу пойме, думаю.): Создаем объект UDPHelper, там реализуем метод onReceive(), в нём проверяем тот ли пришел бродкаст. Если тот, то, допустим некую boolean переменную делаем true и вызываем notify(). После этого запускаем поток и вызываем wait(3000), а потом в зависимости от boolean переменной делаем то, или иное действие.
>>627495 >избежать использование такого вечного цикла? Если хочешь сделать что-то типа REPL, то без цикла никак (только исключение лови, чтоб программа не крашнулась при неправильном вводе и убери нафиг "Enter task"). Я же предлага что-то типа linux way. Программа должна считывать все данные из system.in (в данном случае одно выражение), обработать их и выдать результат в system.out.
Как с помощью DateFormat переводить миллисекунды в нормальный формат без поправки на таймзону? Сейчас, например если сделать DateFormat format = new SimpleDateFormat("HH:mm:dd); format.format(0); //03:00:00, а охота 00:00:00 И ещё, если сделать format.format(246060*1000); //03:00:00, а хотелось бы 27:00:00 (а лучше всего 24:00:00) Как поправить?
Гутен так. Понимаю, что заебали эти вопросом ещё древних греков, но все же спрошу. Дело в том, что я два года клепал говноскины для цмс за еду, но после очередной хандры осознал, что дальше так продолжаться не может. Учусь уже на 5 курсе и скоро выпуск, поэтому нужно вливаться в адекватное программирование, а не " привет мир" на шарпе или траханье с бутстрапом. Друг сказал, что с моими знаниями можно спокойно идти на джуниора фронтэнда, там набраться ума, подучить пхп и зарабатывать свой хлеб. Но всю мою жизнь мне вкладывали, что пхп - гроб гроб кладбище пидр и что соскочить с него нельзя, а через 5 лет работы на нём я буду кусать локти. Поэтому я подумал о бекэнде на java, вроде как принципы ооп знаю, поэтому за полгода выдрочить основы и библиотеки и пойти джуниором. Так вот вопрос: Java или php. Тяжело ли в бульбостане влиться в Java web dev без анального epam.
>>628790 Кинули двоих друзей на проекты. Ребята работали бесплатно у них стажерами 2 месяца, запросы и БД пилили. При попытке поднять вопрос о найме - извините, вакансий нет. При этом взяли на их место блатных, а их проект прекрасно отдали заказчику, т.к. выполнили его годно и документацию подготовили. В компании уже работало пару человек, поэтому весь инсайд слили. Потом я пошёл на курсы к ним. Первый этап английского сдал на отлично, а вот потом две старые кашелки принимали код. Все хорошо ответил, а потом задали вопрос, мол зачем вам курсы. Честно ответил, что знаю .net хреного и хотел бы его лучше изучить, а те библиотеки, которые были заявлены в тренинге я не знаю, поэтому и иду. Начали пальцы веером ставить и говорить, мол они не учат, а лишь шлифуют бриллианты, и вообще у меня должен быть опыт работы с фреймворками этими. Такое ощущение, что я проходил собеседование не на курсы, а на работу.
Ребят, выбираю IDE для Джавы, посоветуйте пожалуйста что лучше. В универе использовал Eclipse и NetBeans , последний нравился, но сейчас мне сказали что лучший вариант Intellij Idea, что скажите?
Поясните про джаву, за сколько, не с нулём опыта в кодинге, можно перекатиться на неё и какой-нибудь стэк технологий чтобы съебать в ДСы джуном\мидлом?
>>629476 С нуля лучше в С# вкатись, денег немного меньше, зато и знать на много меньше нужно. Как ms сказал, так и будет и никаких тебе спрингов, хибернейтов, линков и прочего. А если решил java, до джуна за 3-6 месяцев спокойно можно, до мидла +1-2 года реального опыта.
Посоны, хочу написать на джве визуальный реактор кода для детей под винду, как на пике. Как сделать нормальную два де графику? Знаю токо джава кор, но готов ебашить
28 лвл ньюфаг-кун вкатывается в тред. У меня такой вопрос, я хочу стать погромистом, но у меня нет опыта. Можно ли начинать учить Джаву без опыта с нуля?
Анон, поясни за Джаву. Меняю профессию, и теперь вместо безработного нефтяника с образованием и стажем. лол на старости лет решил заниматься кодингом.
Вообще расскажи о работе джавы погроммиста, как выглядит его работа. На двачах говорят о каких то там блять библиотеках, фреймворках, расскажи, пожалуйста
О себе - 1. 27 лвл 2. Не рублю в кодинге вообще. Хотя вот второй день учу усиленно и уже чет нет-нет и понимаю 3. Знаю и умею в моделирование. Собственно это и есть причина безработности моей, ибо на научке начали срезать еще при цене в 80, а про 27 уже даже шанса нет найти работу
Цель - хочу писать программы для нужды нефтянки. Знаю что нужно, знаю как нужно, кому нужно и кто может заплатить.
На платиновые вопросы про бочку/про а хуле ты без работы даже отвечать не буду. Ибо очевидно, нефть 27, санкции, кровь, пизда живому.
Это хуйня. Я как то 3 суток не высыпался - проект доделывал. Потом лег отсыпаться и мне сон снится: Иду я такой по улице и смотрю толпа народу собралась. Подхожу к ним и спрашиваю: "что за хуйня?" - Мне говорят: Путин приехал с людьми разговаривает. Я такой пытаюсь поближе прорваться, что бы посмотреть и тут толпа выталкивает меня прямо к нему. Вокруг пресса стоит - все федеральные каналы, вспышки фотокамер. Путин смотрит на меня и говорит: "Задавайте свой вопрос."
Я чета растерялся, стою и не знаю что спросить. Потом собрался и говорю: "Что ты делать с экономикой будешь? Цены на нефть не поднимутся." И тут он встает подходит ко мне и смотрит прямо в глаза.
Я замечаю что глаза у него поросячьи какие то, глупые такие как у ребенка, а затем говорит: "А я и сам не знаю".
Я ему: "Надо щас высокие технологии развивать. В айти сектор вкладываться. Нефть это прошлый век".
Он говорит: "Это я и так знаю. Я уже отдал указание подготовить 5000 javascript разработчиков".
Я начинаю ему нервно объяснять: "Зачем вам javascript разработчики? У него архитектура плохая: глобальные переменные, прототипное наследование и т.д."
Путин говорит: "А щас деваться некуда. Весь фронтенд на javascript'e пишут" - и тут зазвонил будильник.
>>630357 Спасибо дорогой анончик! Сам путём активного гугления дошёл до такого же. И уже даже прописал депенденсинс в градле на lwgjldjjjf, и запустил окошко с красным. Какой я, всё-таки, молодец. Ах, анончик, если рубишь в этом, моно попросить два слова, как связать javafx и этот lwjgl? Один запускает окно по своему, второй по своему.. Ладно, не кидайся, сам розберусь.
>>630437 На java быстро не запилишь интернет магазинчик, ты только неделю выбирать фреймворки и дружить их между собой. Java больше предназначена для проектов средней величины и выше. А вот работы сверстать пару страниц на upwork'e довольно много.
>>630444 >>630444 Нужно жить в большем городе, где инет лучше и нормальный компьютер на который нужно заработать оффлайном + нужны лицензионные программы типа фотошопа и что нибудь наподобие notwpad++ только платного ибо c++ просто так не откроешь, ну хз можешь попробовать, я вот за пару месяц выучил html и css норм иду
>>630459 Начитался про сеньёров в 19? Или ты думаешь, что всё то, что сейчас хотят от джуна можно за неделю выучить? Так на вскидку, из самого простого, вот тебе парочка вопросов, из тех, что у меня спрашивали на джуна. Что напечатает код: http://pastebin.com/S3awdybM По спрингу: Сколько сервлетов создает спринг Что-то там ещё было по хайбернейту. И после того как я прошел, я ещё три месяца делал инхаус-тестовый проект. И только после этого начал пилить продакшен код. Мидл 1-2 года продакшен кода, иногда просят больше, иногда меньше и это всё ещё при том, что бы знаешь как работает спринг, а просто наставил анотаций и хуй бы сним, шаришь в канкаренси и было бы не плохо, если бы в java ee хорошо разбирался. >>630460 Что тебе в шарпах не понравилось, как язык он намного лучше java. Вот в краце, что меня в java не устраивает. >>618838
>>630483 Проебался с фразой, должно быть: >Мидл 1-2 года продакшен кода, иногда просят больше, иногда меньше и это всё ещё при том, что ты знаешь как работает спринг, а не просто наставил аннотаций и хуй бы с ним, шаришь в канкаренси, и было бы не плохо, если бы в java ee хорошо разбирался.
>>630483 > Что тебе в шарпах не понравилось Не знаю, просто джава попалась под руку первой, а во всех этих тонкостях языков и их оптимизаций я не шарю.
>>630504 Ну так посмотри, взвесь, готов ли ты мириться со всем, чего нету в java и не скоро появиться, готов ли ты знать овер дохуя фреймворков желающих одни и те же вещи, но по разному, мириться с иногда лагающей ide, с работой в Linux, с тем, что язык развивается очень медленно, с кучей легаси кода, с которой тебе скорее всего столкнешься хотя бы на одном проекте. Короче, я к тому, что подумать стоит, java или не java. Пару лет назад я бы точно сказал, что java, а вот сейчас нет.
>>630549 Я просто хочу вкатиться в айти движуху получить опыт заработать на колбасу для хлеба и найти свою область в кодинге. А так мне вообще нравится скриптопараша с её сахарком. Не бейте, лучше обоссыте.
>>630552 Ну так в чем беда? Даже в моём хохло-мухосране есть вакансии Python\Django и Ruby\RoR. Да их меньше, чем java\c#, но зато можно найти работу для джуна. В отличии от java, где всем сеньёров подавай. Уверен, что в ДС со скриптовыми языками куда проще.
>>630564 зайди на hh и посмотри. Что хотят от офмф джуна и от скриптового джуна. Если у тебя цель только заработать бабки прямо здесь и сейчас, учи js и иди во фронтенд девелопера.
>>630641 Это хуево. Няшные react js с ФП подходом к генерации UI, хранилища на иммутабельных структурах данных, тайпскрипт с декораторами, дженериками, async/await и опциональными типами, прекрасные Веб-компоненты от гугла. Потек?
Хой джависты. Быдлодмин треде. Короче, я даун и ничего в этом не понимаю, будьте няшами, просто ответьте кратко на ответ. Есть один tomcat. Я так и не понял всей этой кащеевщины, но типа он какой-то контейнер, а в него завёрнута Catalina, а в каталину завёрнута уже более-менее понятная jvm. Причём томкэт и каталина это просто джаваклассы, это даже не код машинный (интриги, расследования!). На самом деле томэкт ещё во враппер один завёрнут, но это уже не важно. Вопрос вот в чём. Каким-то неведомым образом (магия, не иначе; а если серьёзно то наши вумные программеры проишли в инсталляционные скриппты нужные конфиги для каталины чтобы она всё это подхватывала) при старте всей это еболы она подхватывает 3 разных .war файла, каждый из которых, архитектурно, абсолютно отдельный модуль со своим функционалом, т.е. 3 разных приложения, фактически. Глубже настроек томкэта я вообще ничего не понимаю, даже в них не особо. Но что я вижу на поверхности, это то что во враппере можно лишь задать выделение максимума heap-памяти для всего томкэто-контейнера. И есть одно требование что одно из тех приложений в .war-ах должно иметь не менее 1Гб персонально ему выделенной. Вопрос: это возможно? Можно ли, не меняя сильно архитектуру, что то где-то прописать так, чтобы конкретному war-у отдельно память выдавалась? Или они там все одну общую кучу пользуют?
Можно с неоконченой вышкой устроиться программистом? А то на всех вакансиях требуют вышку, пздц. Hr даже резюме рассматривать не будут, если какой-нибудь пункт под их критерии не попадет. Что делать? Кому писать? Я вк месяц работу найти не могу в ДС.
Можно объявить переменную strLen с типом Function<String, Integer> и присвоить ей значение s -> s.length Потом передать её куда-нибудь. И затем вызывать: int len = strLen.apply("OLOLO")
Или определить инлайн, прямо при вызове метода, принимающего функцию или другую разновидность фукционального интерфейса - см. >>631516, например
Аноны, кто когда нибудь проходил курсы на степике, там надо сколько то баллов набрать для сертификата или как? На странице курса написано только про финальные задания.
Суп, анон... Спасай... В общем, нужна программа для проигрывания радиопотока(m3u). Суть такова, запустил джарник, и музыка играть начала. В джаве я полный нуль(даже -1). Помоги, а?(тоесть сделай пожалуйста и скинь исходники). С меня как всегда...
У меня есть класс A, в котором есть хэшмап, и примитивные поля Есть класс B, который содержит статический List с экземплярами A (с заполненными мапами) Когда я инициализирую B.List экземплярами A, то там же проверяю: выводятся все поля A, включая хэшмапы
Проблема: когда я дергаю из других классов B.List, получаю только поля A, а вместо хэшмапов null
Есть A и B, которые могут конструироваться из C. Есть функция, которая блюет C[] надо преобразовать его в A[] или B[]. В плюсах я бы сделал интерфейс с фабрикой для A и B и прикрутил это к шаблонам, нормал ли это для Джавы?
Господа, подскажите, как красивее объявить тестовый spring-config (для теста контроллеров)? В частности, меня интересует импорт диспатчера. Вообще, он лежит у меня в WEB-INF, а значит из тестовых ресурсов я до него дотянутся не смогу. Пока я вижу 2 варианта: 1. Переместить его в resources; 2. Скопировать его содержимое в test-spring-config. Подскажите, какой из этих вариантов более красивый? И есть ли какой-нибудь третий вариант?
>>632574 > без андроида Зачем ты так со мной? Я же тебе доверял!.. Пекарня нужна и Android SDK скококочать бесплатно без регистрации и СМС. Никакой телефон или планшет не нужон
>>632167 На самом деле, вопрос придрачивания. Для меня в этой пикче нет ничего сложного. Однако, например, с пикч с C++ шаблонами и макросами до сих охуеваю, так как не трогал их уже довольно продолжительное время и всё забыл.
Уже новый тред, оказывается, а у меня всё тот открыт. Джаваны, поскажите годное чтиво по циклам в циклах. недавно вкатился. Отдельно с циклами разобрался, а как захуярить таблицу умножения - хз. Но понял, что надо два цикла
>>633476 public class Solution { public static void main(String[] args) { for (int i = 2; i<17;i++){ for (int z = 2;z<17;z++){ System.out.print(z*i + " "); } System.out.println(); } } }
>>633490 потому что я 22 лвл гуманитарий, который решил осуществлять мечту детства и таки вкатиться в ай-ти выше того чем занимаюсь сейчас: смм, статьи и контент( Спасибо за помощь;)
Джаваны, а ещё такой вот вопрос: сколько уделять в день и когда стоит сделать перерыв? просто бывает мозг начинает кипеть от информации и я переживаю, что забуду всё на некст дэй. Но не позволяю себе и дня перерыва( читай - дня без хоть какой-то задачки). Это норма? или можно спокойно денёк проебать?
Анон, в данный момент изучаю Java, до этого писал только простые алгоритмы на Си несколько лет назад.
Пока что даже Java Core не осилил, может быть есть здесь люди, которые разбираются или тоже находятся в процессе обучения, готовые отвечать на тупые вопросы, наставлять, ну или вместе обучаться. 22 лвл.
Джава вопроса. 1. Vector <A> doSomething() { Vector<A> v = new Vector<>(); v.add(new A()); return v; } Vector<A> result = doSomething();
не работает, если его написать так:
void doSomething(Vector<A> v) { v = new Vector<>(); v.add(new A()); } Vector<A> result; doSomething(result); Почему? (У меня код немного другой, но смысл тот же)
>>633645 1) в параметре копия ссылки, что бы работало надо создавать объект вне метода void doSomething(Vector<A> v) { v.add(new A()); } Vector<A> result = new Vector<>(); doSomething(result);
2) Чем докажешь что не utf8? Конструктор PrintStream кинул бы исключение если бы не смог твою кодировку заюзать.
>>633660 1) спасибо, я не думал, что там будет именно копия ссылки
2) я могу только кинуть куски оригинального кода, файлы, которые копирую и файл, который получается. Кстати говоря, Notepad и тотал-коммандерский плагин Lister нормально отображают Юникод-символы в файле, а AkelPad - нет. Он то и показывает, что там ANSI стоит. И самое смешное, если открыть файл в Notepad и пересохранить в utf-8, AkelPad начинает видеть utf-8 и все Юникод-символы отображаются нормально. А вот файл, созданный через код всё равно показывает ANSI. Оба текстовых файла (оригинальный и пересохранённый) весят абсолютно одинаково. Ссылка на файлы: http://ovrload.ru/t/65195___java.zip На сам текст не обращай внимание.
Посоветуйте годного чтива по jvm, внутреннему устройству платформы и языка, как реализованы всякие языковые штуки типа наследования, полиморфизма, анонимные классы, что значат все эти команды, в которые компилируется код и т.д. Можно ссылки\книги(желательно чтоб объясняли как для даунов), можно накидать умных слов, по которым буду гуглить дальше.
Еще вопрос по good practics. Есть DTO с сайта(псевдоюзер с ником, паролем, емаилом и т.д.), который летит в контроллер(spring), там надо его преобразовать в реального юзера. Как лучше это делать? Вынести преобразование в отдельный service, написать static функцию в классе user, делать псевдоюзера внутренним классом юзера или есть каки-нибудь чудопаттерны для этого дела?
>>633688 Выглядит как обычная книга по java типа эккеля, я имею ввиду внутренне устройство, как создается байткод и т.д. и желательно чтобы давалось с основ, дабы люди не начинавшие с ассемблера могли осилить.
>>633687 Coupling DTO и энтити -- плохая идея с точки зрения расширяемости. Например, тебе понадобится DTO другого вида -- херачить ещё один класс/статик метод внутри юзера? А если через сервисы -- просто делаешь нужный сервис. Ну, и вообще, хорошая практика -- разделять уровни приложения. "Реальный юзер" -- это объект персистенса, а DTO -- это доменный объект.
Привет анон, накидай пожалуйста полезных библиотек чтобы оффлайн можно было учить\дрочить их. Уезжаю в места без интернетов и хотелось бы заниматься джавой.
>>633896 Нет, хотелось бы заниматься чем-нибудь полезным когда не будет доступа в сеть. Поэтому спрашиваю, что лучше скачать из библиотек\фреймворков сейчас.
>>632743 Но это же блять пиздец какой-то. На ровном месте какие-то небезопасные касты, изъебы со вспомогательными классами. По крайней мере эта задача на плюсах решается абсолютно просто.
Парни, внезапно умер эклипс. не выводит ничего абсолютно в консль. ни сложные задачи, ни хеллоуворлд, вообще глухо. + стал виснуть внезапно.
Вчера выполнял задание с джаварша на иероглифы - копировал/вставил их: вылетела ошибка о юникоде, закрыл, забыл. Сегодня не работает вообще нихуя. В чём трабл?
>>634173 Насчёт исключения: у тебя немного странное понятие о том, зачем они нужны. 1) Они для нештатных ситуаций, когда что-то сломалось. У меня вероятность того, что объект не сконструируется не меньше вероятности того, что он сконструируется, то что объект не может быть сконструирован - не ошибка. 2) Они преимущественно для ситуаций, которые ты не знаешь как пофиксить и оставляешь на совесть пользователя библиотеки. 3) Лучше, чтобы их вообще не было, потому как они ужасно тормозят, сохраняя всю информацию для обратной раскрутки стека. >>634190 http://stackoverflow.com/questions/10161993/changing-boolean-value-in-class-function-in-java >>634192 Да, пожалуй, можно.
>>634211 >Сам фикшу проблему по флагу >предлагает кинуть исключение >Спасибо что просветил 3 года в джаве. Ну, ты уж прочти, браток, если что не так. Ну, про Maybe-то ты все правильно сказал, я чего, я ничего.
>>633900 javafx и забудь нинужном свинге. узнаешь про интересные реализации коллекций от javafx, которые в стандартном ждк идут. а вообще, какая область тебе интересна, для той и смотри какие есть фреймворки
Рекомендация от препода: >Не реализуйте никакой логики в конструкторе, в нём только сохранение параметров. Я не могу разобрать, почему так. Это его ноу-хау или так принято и на это есть веские причины?
>>634741 А если у меня Presenter (MVP), норм что я в нем делаю начальный запрос данных из сервисов? Или нужен отдельный публичный метод, типа startPresenter()?
>>634750 Ну это же инициализация. Конструктор для создания нужен, инит для первоначального заполнения, в отдельный метод его тромбуй. Если ты к стандартному интерфейсу цепляешься, то там инит скорее всего в наследство получишь.
>>634732 Препод вас наверное предостерегает, от того что бы вы весь код не впихнули в конструктор. >>634755 И инициализация в конструкторе самого объекта это нормально.
Но если она очень сложная, то лучше воспользоваться: билдерами/фабриков/фабричным методом и тд
>>634797 В общем, ты просто создавал новую переменную в конструкторе, которая имеет такое же название. Конструктор кончился - переменная удалилась. Надо было так: strings = new ArrayList<String>();
ГАйс, изучаю книжку из шапки про джава для детей, параллельно юзаю джавараш. вроде с алгоритмами примитивными разобрался, с назначением переменных и всё такое разобрался. но в учебнике тип прыгает в swing и тут у меня прям мозг начинает путаться пиздец. Чё делать?
Сделал простой grep, который получает аргумент и строки, а потом выдает строки, в которых есть данный аргумент.
Однако для меня все еще остается под вопросом, как правильно разбивать программу на классы. Оглядываясь на то, что я сделал, я мог бы просто перенести тела классов в основной класс с main'ом и ничего бы не изменилось. Возможно роль играет простота программы, там нет причин использовать ООП, но все равно я пока не понимаю, когда нужно делать класс новый, а когда нет.
Дописал калькулятор на жаве по учебнику. Алгоритм вычислений простой пиздец, на бумаге всё это себе расписал ещё до составления этого калькулятора. Синтаксис языка так и не запомнил, в итоге пришлось пиздить код с учебника( Аноны, помогите, как быстрее выучить синтаксис и не сойти с ума и не сбиться? а то всё путается и в кашу идёт
>>634604 Да, интересоало именно перегонка, но зато узнал про object mapperы, так что спасиб
Аноны посоветуйте как легче вкатиться в веб и spring(конктено на данном этапе пытаюсь осилить mvc, security, core). Про аспекты, инжекцию все понятно, но написание простейшего вебапл, ебаная регистрация и просмотр зарегистрированных ползователей превращается в какой то анальный ад. Раньше писал на андройде, а тут такое ощущение что на юпитер закинули, куча новый понятий, этих неявных conventionov, постоянная ебля с конфигурированием. Если ли какой-нибудь пошаговый гад как вкатиться? может с обычных сервлетов стоило начать? в общем help жавагоспода.
>>634949 Достаточно знать HttpUrlConnection, Executor, Feature (или даже Runnable хватит) и собственно чуть-чуть запросов к ВК. Ну и на какую конкретно тему тебе нужна задача?
>>634974 Так ты не хочешь назвать конкретную область? Ну если сортировки, то сделай слиянием и быструю. На самом деле это нахуй не нужные задачи, если ты не олимпиадник, но для общего развития пойдет.
Вообще мне кажется такой порядок довольно не плох: 1) Инпут-оутпут, запись-чтение файлов; 2) Работа с базой, самая примитивная без библиотек; 3) GUI, кнопочки инпуты вот это все; 3 альт.) Сокеты/Http, без либ - ручками; 4) Системы сборки: ant, maven, gradle; 5) Свой сервачок, без либ; Обсирайте.
>>634963 Байт-код транслируется в машинные инструкции через JVM. Сама JVM (JRE) -- обычный процесс, имеющий такие же привилегии, как и другие процессы. Так что и через JNI можешь отсосать, если прав не хватит.
>>634992 Проблема то не в отправке, проблема в том как спрятать, чисто теоретический, ведь можно же пробежаться по декомпилированому байткоду и поискать подозрительные вызовы в интернетик.
>>634939 Основываясь на своём опыте, и на опыте нескольких друзей, я вывел 3 способа вкатывания в спринг: 1. Макака - гугление и чтение статеек. Плюсы: самый быстрый и бесплатный способ. Минусы - так и не узнаешь как с ним работать, а просто заучить парочку приёмов. 2. Книжный червь - купить книгу (я советую спринг в действии, некоторым нравится спринг для профессионалов). Плюсы - будет знать как работает спринг и сможешь лепить на нём любые штуки, относительно дёшево. Минусы - как бы дёшево не было, платить нужно (либо можешь скачать книгу, но я предпочитаю тех.литру покупать), нужно разбираться самому, не что не так уж и быстро. 3. Мажор - пойти на курсы. Плюсы - быстрое и (возможно) качественное усвоение знаний, на любой вопрос гарантированно получишь ответ. Минусы - дораха.
>>635037 Ну конечно желательно гуй, но если что то можно и в консольке. Должна быть авторизация (зотя вот прочитал вроде метод публичный, но все равно нужны айдишки), получение токена. Потом получение альбомов юзера, если есть возможность то с превьюхами для гуя. Дальше выбор альбом, опять превью если есть. Ну и потом скачивание полноразмерных в указанную юзером папку. Тут и работа с сетью, и стороннее апи, и база и файловая система.
>>635057 А как тут прикрутить многопоточность, там вроде ограничение на количество обращений в секуну или это относиться только к 1 юзеру т.е. первый поток выкачивает у однго, второй у другого?
Продолжаю писать всякое говно на джаве, в этот раз решил писать задачу, которую другу дали на стажровке. Но не суть, я почти все сделал, но отладка у меня никак не идет. Использую Эклипс, и в коде у меня есть данный цикл: while(sc.hasNext()){ } И это говно работает один раз из 5. Вбиваю себе спокойно числа, потом жму ctrl+z и нихуя не происходит. А иногда корректно срабатывает. Что я делаю не так? inb4 сидишь в эклипсе
>>635090 Зачем indexOf? У String есть вполне простой для использования contains( ... ), если задача не дать добавить вторую точку. Если речь идёт о парсинге потенциально порочной строки, то лучше использовать что-нибудь на регэкспах: split, matches, например. indexOf, насколько я помню, возвращает либо число в диапазоне от 0 до size - 1, которое является индексом, с которого начинается первое совпадение, либо -1, если совпадения не найдено.
Как вызывать функцию? Написал следующее, не компайлится, выкидывает "error: <identifier> expected"
public class Solution { public static void main(String[] args) { String a = "Мама"; String b = "Мыла"; String c = "Раму"; System.out.print(text); } public String text(a,b,c) { String z=a+b+c; return z; } }
>>635585 Сам придумал пример этот чтоле? Если этот пример из книжки - выбрасывай такую, нахуй. Разбирай примеры из книжек, потом поумнеешь. наверное Блять. Ну запусти ты ide, там видно будет, где ошибка. Потом гугли ошибку. Чому мой хэллоуВорлд не работает? Заебали. Ты создаешь в методе мейн метод текст и тут же его вызываешь, блять! Ничего тут тебя не смущает? Вынеси свой метод текст за рамки метода мейн, тогда в мейне сможешь его вызвать, и он отработает.
Ребятки, сколько примерно нужно времени, чтобы полностью пройти все 40 уровней на javarush гуманитарию с мотивацией, который начинает с нуля и готов тратить в день около 6 часов на занятия? Просто вот думаю купить себе курс, так как большая часть базовой информации в одном месте и не придется ее самому искать, что сэкономит массу времени на обучении, и возник вопрос: имеет смысл разжлобиться на базовую годовую подписку, которая стоит 200 у.е. или весь курс проходится месяца за 4 и проще платить каждый месяц?
>>635607 Ну так лучше видно, где косяк: что ты пишешь в аргументе метода println? Текст. А это метод. И этот метод требует аргументы. Значит, нужно println(text(a,b,c)). Поставь эклипс или идею. И там пиши. Ошибки будет искать много легче.
>>635641 Хах, дело говрят, нафиг тебе подписка если еще бесплатыне курсы не прошел + 6 часовой темп 99,999% не сможешь держать, хорошо если потом час будешь уделять + все равно потом будешь всю инфу на stacoverflow искать так что от всей инфы в одном мете толку ноль Да и охуеть, за 200 уе можешь пройти пару курсов ирл, это будет на порядок эффективнее
>>635641 При чем здесь время? Что-то я думаю, мотивация у тебя не так сильна, как ты пишешь. Да хоть по 18 часов сиди. Хуле толку, если для тебя это, как пытка? Если дело любимое, тебе похуй на время. Ты им занимаешься, и тебе заебись. Про джавараш. Уже сто раз вам говорили, что реального толку от этой конторы мало. Их суть: замотивировать всех подряд, что погроммирование легко, каждый может, кококо, купи подписку, кулстори писать фейковые, как с нуля какой-то анон прошел на джуна, только задрачивая их сайт. А то и на мидла) Можно поиграться на бесплатных уровнях, но смысла покупать подписку нет. Почитай лучше Head First. Охуенная книжка для полных нубов, ящитаю. На русском есть. Или еще что другое, что понравится, из шапки. Если в английский можешь - это заебись. Самая годная и свежая литература и источники на нем. Вариантов будет еще больше.
Мне нужно микрософтовый драйвер jdbc грузить, потом пытаться подключать, чтобы прямо в коде делать запросы к mysql? Если в службах тыкаю "выполнить команду", то все работает.
>>635598 А с английским что? Учи его, без него дальше макаки не эволюционируешь, т.к. практически вся годная литература и движуха используют английский язык.
>>635820 Покерный статистическо-аналитический софт типа HoldemManager, например, так и делает -- ставит PostgreSQL на компутер клиента во время установки программы.
>>635659 У Netbeans свои пакеты драйверов - не первой свежести, кстати. Если создаешь новый проект по умолчанию (на самом деле это Ant), то сможешь подключить встроенные драйвера. Но лучше создавать Maven/Gradle проекты и качать с нормальных репозиториев.
>>635820 Используй встраиваемые СУБД - H2, HSQLDB, Derby. Они хранят БД как единственный файл, который ты сможешь распространять вместе с дистрибутивом.
>>635820 Что у тебя за софтина такая, что ей нужна база на локальной машине юзера? С высокой вероятностью you're doing it wrong. Или же тебе таки нужна embedded DB, >>635919 написал несколько вариантов, но почему-то забыл самый распостраненный SQLite.
>>636040 Ну не знаю, у меня подключенная jdbc mysql библиотека. А в mysql отдельно таблицы. Типа круд - регистрация пользователя. netbeans java. Для любой проги будут нужны дб мне.
Анон, помоги с заочкой, препод не объяснив нихуя, дал задание и книжку с требованиями на целый проект, а на словах сказал "пили игру на java без интерфейса, да в консоли все", дак вот, можете покидать примеров? Всякие угадай число слишком простые для него, змейка с псевдографикой уже сложное.
Анон, изучаю джаву. Пока что знаю джава кор (в потоках пока слабоват) и капельку javafx. Хочу написать клиент-серверное приложение, в частности с чатика начну. Какие технологии для этого нужны, что читать? Я плохо представляю как это будет работать.
>>636293 В этом и писечка, нужно в консоли, нужна консольная программа/игра, слишком сложная - не поверит что разобрался, слишком простая - скажет хуйня.
Аноны давеча мне подкинули идею написать парсер фоточке в вк, вот ебусь с переменным темпом над этой задачай. Проблема в авторизации, чтобы пользовать api vk нужен токен, чтобы его получить нужно сделать правильный запрос в браузере, тогда откроется страница где нужно подтвердить что даете разрешение на все ваши фотки в туалете, диалоги, инфу и т.д. Как я понял обычный HttpResponse тут не канает. Нашел йобу в awt, называется Deskstop.browse() туда передается стринг с запросом, эта штука отывает браузер с ссылкой, которую передали, юзер соглашается показать писечеку и потом приходить url с нужным tokenом. Так вот вопрос, как теперь вытянуть ответную ссылку из браузера?
>>636275 >клиент-серверное приложение Java NIO (non-blocking IO) / Java IO (blocking IO) Мне туториалы с tutorials.jenkov.com понравились, когда начинал с темой знакомиться. Если будешь через NIO делать, то многопоточность не понадобится (по крайней мере для приложения без высокой нагрузки).
Сап, двач В общем, пилю для себя типа конвертер валют. Всё сделано уже( а хуле там делать-то?). Принцип такой: пользователь ввёл сумму рублей, которую конвертит; Далее машина выдает: Ваша сумма равна N долларов.
Сумма вычисляется пока что делением на 78. Курс доллара эвридэй плавает, само собой. Теперь вопрос: как связать свою программу с каким-нить интернет ресурсом, чтобы переменная доллара менялась постоянно?
>>636810 Очевидно, найти подходящий сайт, на котором есть курс валют и вытягивать из него эти данные. Можешь попробовать JSoup - библиотеку для выполнения HTTP-запросов и парсинга полученного ответа.
>>636832 ну переменные для денег в джаве реально есть.
Но я сделал конвертер, используя примитивнейшие алгоритмы и встроенные библы и всё такое. В общем по базовым урокам, что вкурил - то и сделал + попробовал использовать JOptionPane.
Вот осталось разобраться с вытяжкой этой переменной из онлайна
>>636854 Отсюда - можно. В общем, тебе надо будет с помощью JSoup вытянуть вот эту вот страницу, а потом с помощью getElementById и getElementsByClass вытянуть строку с курсом. Подсказка: начинать надо с getElementById("widget_exchange").
Начал потихоньку изучать Maven и Spring. И у меня бомбит, потому что нихуя не понимаю. Какие-то XML писать надо, как-то неочевидно все. Может я что-то упустил? Это действительно так сложно? Пока что знаю немного Java Core и JavaFx.
>>636937 I know that feeling bro. Уже немного полегче стало, декларативная ебля с xml уже почти не пугает, но в целом все еще очень сложно. Ахуилиард мест где можно подорваться
>>637240 В 99.999% случаев уберется само, собрщики мусора же. По сути, такого понятия как "утечка памяти" в джаве нет, а то что ей обычно называют, правильнее называть "утечкой ресурса": незакрытые коннекшны, неоткрепленные listener'ы, неиспользуемые ключи-значения в Map'ах.
>>637240 "Гашение ссылки" . Попользовался ссылочной переменной, и она теперь не нужна?
ref = null; Так ты покажешь GC, что он может удалить эту ссылку. Не факт, что GC вообще начнёт работу, а когда он её начнёт - одной VM ведомо. Можно насильно вызвать System.gc();
Но так никто не делает.
Утечек памяти у тебя не будет, если не пользоваться нативными методами.
>>637263 Утечка памяти может быть и при постоянной генерации новых объектов с потенциально длительным жизненным циклом. На работе как-то нашёл утечку, связанную с транзакциями -- на каждый вызов по таймеру создавалась транзакция, таймаута у неё не было и она почему-то не коммитилась и не откатывалась, т.е. просто висела активной. За месяц таких транзакций накапливалось на полтора-два гига.
>>636937 В Спринг можно вкатиться сразу с использованием аннотаций. Потом, как освоишься, прочитаешь про конфигурацию через XML. В Мавене для сборки вообще ничего знать не надо, кроме добавления зависимостей в проект. Плагины, профили, управление репозиториями -- это уже чуть более продвинутые темы.
Swing и JavaFX не относятся к Java Core ведь? Через несколько месяцев пора искать работу джуном, но GUI очень не хочу изучать, ну прямо совсем не интересно. Отдельно про эти технологии никто в вакансиях не пишет.
>>637482 Не относятся. Большинство погромистов в энтерпрайзе вообще не ебёт, как с ними работать. >>637455 Мониторинг VM с помощью инструментов типа VisualVM, а также анализаторы heapdump'ов.
Господа, апач включен, все пакеты подключены в библиотеку. Но выдает ошибку в апаче. Собственно это попытка ввести http запрос в форме поиска на форче. (Знаю, что можно просто через юрл взять страницу, но я хочу именно http client осилить). Такие ошибки вылазят. Что не так? https://ideone.com/D3vdK7
Джаваны! В общем, решил попробовать сократить слово "Вставай". От максимального количества символов до одного. Должно выйти что-то типа того в консоль: Вставай! Вставай Встава Встав Вста
ну вы поняли. Пытаюсь сделать это через цикл for и s.length Да вот только всё никак не могу понять, как бы сделать это правильно и чтоб компилировалось. Все примеры в гугле с циклами разобрал вроде, они все для инт и чар. Код пока что вот такой(на него ошибок не выдается, но он просто бесконечно выводит слово в консоль, потому что я не ставил ++ или --, не даёт ставить эти символы к стринг ленгтх) public static void main(String[] args) { String s = "Вставай!"; for(s.length();s.length()>0;){ System.out.println(s); } } }
>>637675 А ты учебник читать не пробовал? for(int i = s.length(); i > 0; i--) { System.out.println(s.substring(0, i - 1)); }
Естественно, что ты не можешь приписать ++ или -- к s.length(), потому что ++ и -- изменяют переменную, а s.length() - это метод (функция, если тебе так больше нравится), который возвращает значение.
>>637682 и за что отвечает >>637684 и за что отвечает сабстринг? ну вот учебник самый первый из шапки Якова Файна и юзаю пока что. Докончу его - планирую взять хэл фёрст.
В джаве есть возможность объявить переменную того же типа, что и ранее объявленная переменная? Что-то вроде: String a = 1; ... public int getA(); public void setA(); .... .... typeof(a) b = xxx.getA(); .... yyy.setA(b)?
>>637719 Ну так в D это достаточно удобно. Можно отложить окончательное решение о типе на потом. А позже надо будет только в одном месте тип поменять, и всё автоматом подхватится, а где не подхватится, там сразу будет видно почему, без всяких промежуточных invalid type conversion.
>>637673 строку нужно преобразовать в лист или массив с буквами, ебанькой. бляя какой уебищный говнокод (i == 0; i < s.length; i--) System.out.println(s);
Второй месяц учу джаву до этого кодить не умел вообще, весной (май) собираюсь устраиваться джуном. Как правильно выбрать компанию? Что меня будут спрашивать на собеседовании? На какую зп могу рассчитывать в ДС?
>>637993 А когда будет не рановато? На позицию стажеров везде пишут "требуется студент последних курсов технического ВУЗа", коим я не являюсь. Как мне стать джуном?
>>638010 Ну вот я, к примеру, на джавараше с сентября сижу, почти закончил, и то сейчас думаю, что не готов ещё. Ещё всякие фреймворки изучать, желательно иметь представление о html, css, sql. Ну может я и ошибаюсь, дерзай.
>>638255 Аннотация на класс, у неё поле name, аннотация на поле класса, у неё точно такое же поле name. Если name не указано, в обоих случаях нужно использовать f(имя класса/поля класса). Дублирование кода возникает в последней части. Какая ошибка проектирования, ты о чем, Вась?
Хотелось бы брать аннотацию и вытягивать из неё все по интерфейсу, а так придется выносить работу со строками, а не аннотациями в лишний метод. За комплексные спасибо, надо было на английском гуглить, поленился, но тут они мне не подойдут :(
>>638281 У них разные имена и есть ещё поля (маму твою ебал). В общем, я уже проблему решил выносом общей логики работы со строками, в общем случае комплексные аннотации хоть и усложняют дело тем, что выносят дополнительный геморрой на плечи пользователя, но, вроде, подходят.
>>638649 потому что он нихуя не адекватный, такие вопросы заебали уже. каждый второй школьник сюда приходит и спрашивает его снова и снова. В КАЖДОМ КАЖДОМ СУКА ТРЕДЕ.
Суп! Решил я начать кодить на Java. Из опята программирования лишь то, что я во время школьных лет рисовал в Паскале из фигур что-то типа замка. Курсы проводит 1С-контора (которая club.1c.ru) у меня в мухосранске. Они дают сертификат, все дела. За 4 месяца можно пройти их весь курс. На сайте есть описание занятий по каждому модулю. Всего их 4. Дайте свои отзывы о них, если есть, есть ли какая-то альтернатива лучше, если не ВУЗ?
>>639116 > Они дают сертификат, все дела Ну с сертификатом-то тебе везде дорога, прям нарасхват будешь, лол. > есть ли какая-то альтернатива лучше, если не ВУЗ? Книжки из шапки и много практики.
>>637689 Джавараш заставляет тебя писать "Хеллоуворлд" в идиотский способ до 4 уровня, когда только начинается изучение циклов (не удивлюсь, если дальше и тоже заставит). Тот же "Head first" быстро объясняет суть int/string и сразу переходит к циклам, что совершенно правильно. Алсо, в джавараш совершенно дебильный способ подачи информации. Куча бесполезных картинок, левых примеров из Паскаля и т.д. И вместо того, чтобы напоминать про те же ссылки, которые ньюфагам намного сложнее понять, они напоминают про System.out.print("Я - кот"); >>637980 В ОПпосте же есть ссылки и там есть ответы на все твои вопросы. >>638147 Смотришь на требуемый стэк технологий, который выставляют всякие компании к джуниорам и ориентируешься на них. Если во всех разбираешься (где-то лучше, где-то хуже), то можешь слать резюме и писать, что готов работать бесплатно.
>>617731 (OP) Сложный этот ваш жава, одни хашмэпы, листы, многомерные стринги, джейсон объекты, просто объекты чего стоят. Нет, бы один array с методами сделать и приводить к типу автоматически, как в пхп. Сижу уже третий день голову над парсингом джейсон данных ломаю.
>>639351 > приводить к типу автоматически, как в пхп Погугли разницу между динамическим и статически-типизироваными языками. Ты сам на это подписался а мог бы начать с groovy, scala или clojure
Сап, джаваны) как решить задачу следующую?) В городе N есть большой склад на котором существует 50000 различных полок. Для удобства работников руководство склада решило заказать для каждой полки табличку с номером от 00001 до 50000 в местной типографии, но когда таблички напечатали, оказалось что печатный станок из-за неисправности не печатал цифру 2, поэтому все таблички, в номерах которых содержалась одна или более двойка (например, 00002 или 20202) — надо перепечатывать. Напишите программу, которая подсчитает сколько всего таких ошибочных табличек оказалось в бракованной партии.
По принципу, который у меня в голове не получается. А принцип следующий: у нас есть цикл где есть от 00000 до 50000 и n++(ну типа каждое число перебираем) На выходе должно стоять что-то вроде "n.contains(2)". Типа все н, которые содержат в себе число 2. Как подсчитать количество этих Н я разберусь после основного алгоритма, а теперь подскажите, как его реализовать?
К тому же не совсем понимаю, как использовать int со значением из пяти нулей и правильно ли он вообще будет заполняться?
>>639375 А зачем тебе учитывать предшествующие нули? Нули и нули, хрен с ними. n.contains(2) не получится, ибо contains - это метод у строк. Поэтому тебе нужно преобразовать каждое число в его строковый вид, а потом в каждой полученной строке искать двойки.
int count = 0; for (int i = 0; i <= 50000; i++) if (String.valueOf(i).contains("2")) count++;
>>639382 Скажи мне, строка "2" содержит двойку? А строка "00002"?
А вообще это решение - плохое. Оно РЕАЛЬНО медленное. Во-первых, пускать цикл можно от 1, а не от нуля. Во-вторых, преобразование числа в строку, а потом ещё и поиск подстроки - это долго. Лучше просто найти правило, по которому в числе появляется хотя бы одна двойка.
>>639157 Ну в любом случае корка лишней не будет, ящитаю. А так да, я уже из шапки начал читать "Программирование Ява для аутистов, аутистов, аутистов и аутистов". Сижу немного на явараше. Учусь кодить почти все свободное время. В первый день изучения просидел с 6 вечера до 4 утра. Эта хуйня затягивает. Но я так и не смог научиться правильно писать методы. Леплю все на абум в классы. Наверно, нужно алгоритмами заняться. А то я так нихуя не добьюсь.
>>639164 Чому нет? На ней же можно, например, написать что-нибудь на ведро? Ну и всякие бам обжэктивси с их свифтом еще научиться. Пхп аштиэмэль там, скюэлы и прочая хуита. При желании можно это все выучить так, чтобы заебись кодить же! Просто нужно, чтобы всегда были какие-то задачи. Без практики хуй чего добьешься.
Есть тут кто-нибудь из Смоленска? Желательно тот, кто шарит в IT-сфере и кто добился. Очень хочу встретиться и обсудить все вопросы, которые меня интересуют. Хочу, штоле, опыта поднабраться...
Сап. Появилась идея написать загрузчик jar-модулей без использования сторонних библиотек. Результат пикрелейтед. Оно работает. Но хотелось бы узнать, нет ли какого-либо способа проще? То, как это написал я, выглядит несколько костыльно.
Модули таковы: jar-файл с любым набором классов, а среди всех этих классов должен лежать одинили несколько "основных", аннотированных @Module. В итоге, из всего набора jar'ов мне нужно получить список всех классов, которые аннотированы @Module.
Из того, что, как мне кажется, не совсем так, как должно быть: 1) ручной перебор всех файлов в jar-архивах для поиска подходящих классов 2) ручная загрузка абсолютно всех классов из архивов в ClassLoader'е
Пиздец эта ваша джава. Джейсон нормально не распарсить, строку в массив не перевести, вторую часть разбитой строки не взять. Ояебу. приходится такие велосипеды городить.
public static void ParseJson(Map<String, List<String>> map, String str){ //find the string which contains tags for (Map.Entry<String, List<String>> entry : map.entrySet()) { String key = entry.getKey(); Object value = entry.getValue(); String valueStr = value.toString(); if(valueStr.contains(str)){ System.out.println("This thread contains " + str + ": "+ key + valueStr ); for (String retval: valueStr.split(",")){ //getting image if(retval.contains("file")){ System.out.println(retval); int firstChar = retval.lastIndexOf("file"); int bl = retval.length()-1; String fileval = retval.substring(firstChar+7, bl); System.out.println(fileval); } } } } }
>>639691 Да нормально выглядит. > ручной перебор всех файлов в jar-архивах для поиска подходящих классов Jar файлы - это просто архивы, которые не знают про содержимое > ручная загрузка абсолютно всех классов из архивов в ClassLoader'е Пока не загрузишь, не знаешь, какие аннотации у класса есть. Как альтернатива, можно заняться байтоеблей чтобы читать только то что нужно. На 30 стр не стоит съедать исключения, тем более если потом на null не проверяешь На 32 стр лучше использовать .collect(toList()) Можно обойтись без промежуточного списка List<String> classes и грузить классы прямо в цикле.
>>639724 > не использовать библиотеки > не писать парсеры > парсить при помощи split Просто ты быдлокодер и Java тут не при чем.
>>639745 >На 30 стр не стоит съедать исключения Разве? Просто я плохо себе представляю тот случай, когда File может вернуть некорректно собранную URL для существующего файла.
Нужно ли предусматривать многопоточность, для сервлетов, пишущих и читающих из БД MySQL? Мельком читал, что каждый сервлет обрабатывает HTTP-запросы в отдельном потоке. А как насчёт jdbc и прочего. В общем не знаю как подступиться ко многопоточности. Кажется, будто она нужна для компьютерных игр и космических кораблей. Как можно реализовать преимущества многопоточности на своём проекте для самообучения, простеньком веб-сервисе?
>>640047 Джейсон парсер парсит только по ключам, а если ключ динамически формируется, то хуй вытащишь пару по первому куску значения, еблан тупой. А тот ниже еще тупее.
>Split a string into tokens delimited by one or more by separators. Понятно, что нужно делать через String.split, но как в качестве аргумента несколько произвольных символов задать? Регулярные выражения?
>>640261 Ага, регулярки. В сплит тоже их можно использовать, например. А, в основном, если серъезнее, юзают Pattern в связке с Matcher, из java.util.regex.
Джаваны, поясните за проекты над которыми вы работаете в ваших шарагах. Сколько проектов одновременно ведете, как долго ебетесь над одним проектом. Я сам рубимакака из мухосрани, работаю в небольшой студии и меня начинает напрягать куча проектов, которые приходится постоянно поддерживать. И получается типа и работы дохуя и делаешь одно и тоже, еще и друпалить надо. Думаю в джавку перекатываться.
Есть один код: public class ReportCard { public char convertGrades( int testResult){ char grade; if (testResult >= 90){ grade = 'A'; }else if (testResult >= 80 && testResult < 90){ grade = 'B'; }else if (testResult >= 70 && testResult < 80){ grade = 'C'; }else { grade = 'D'; } return grade; } public static void main(String[] args){ ReportCard rc = new ReportCard(); char yourGrade = rc.convertGrades(88); switch (yourGrade){ case 'A': System.out.println("Превосходная работа!"); break; case 'B': System.out.println("Хорошая работа!"); break; case 'C': System.out.println("Надо подтянуть знания!"); break; case 'D': System.out.println("Будь посерьёзнее!"); break; } }
Хочу, чтобы я rc.convertGrades вводил с клавиатувы в диалоговом окне, и чтобы мне "switch (yourGrade){ case '%':" тоже выводило в диалоговое окно. Решил сделать так: import javax.swing.*; public class ReportCard {
public char convertGrades( int testResult){ char grade; if (testResult >= 90){ grade = 'A'; }else if (testResult >= 80 && testResult < 90){ grade = 'B'; }else if (testResult >= 70 && testResult < 80){ grade = 'C'; }else { grade = 'D'; } return grade; } public static void main(int testResult){ ReportCard rc = new ReportCard(); char grade = JOptionPane.showInputDialog(rc.convertGrades, "Введите"); switch (grade){ case 'A': JOptionPane.showMessageDialog(null, "Отлично!"); break; case 'B': JOptionPane.showMessageDialog(null, "Хорошо!"); break; case 'C': JOptionPane.showMessageDialog(null, "Удовлетворительно!"); break; case 'd': JOptionPane.showMessageDialog(null, "Неудовлетворительно!"); break; } } } И тут он мне говорит, мол, rc.convertGrades в char grade = JOptionPane.showInputDialog(rc.convertGrades, "Введите"); нихуя не должен стоять. Где ошибка?
>>640509 Извиняюсь... Есть код: http://pastebin.com/hJZrGysT Очень хочу его переписать, чтобы значение testResult я вводил с клавиатуры в диалоговом окне. И так же чтобы мне ответ выдавался в диалоговом окне. Вот что я написал: http://pastebin.com/ESceCJnn Эклипс мне говорит, что я сделал ошибкуна месте rc.convertGrades в JOptionPane.showInputDialog(rc.convertGrades, "Введите"). Где я сделал ошибку? И еще. Я ничерта не шарю, как и где употреблять те или иные ссылки. Как вкурить?
>>640518 >testResult >= 80 && testResult < 90 Зачем? Ведь уже известно, что testResult не больше и не равно 90. Разве есть ещё варианты? >char grade = JOptionPane.showInputDialog(rc.convertGrades, "Введите"); Я вообще не понимаю, что ты хотел джаве сказать этим кодом.
String input = JOptionPane.showInputDialog("Введите"); Вот так ты получаешь введённый текст. После этого, судя по всему, тебе нужно преобразовать этот текст в число и его уже заслать в convertGrades. char grade = rc.convertGrades(Integer.parseInt(input));
>>640528 Ты пытаешься впихнуть объект Regex (который, похоже, вообще из JS-движка Nashorn!) в метод, который требует String. Действительно, почему же это не работает? В джавадоке написано: >Splits this string around matches of the given regular expression Вот и пропиши регекс как аргумент .split(), как я тебе показал в своём посте.
>>640524 Вот так: http://pastebin.com/ZxApbMcS ? Тоже не получается. Компилятор выводит : Error: Main method not found in class ReportCard, please define the main method as: public static void main(String[] args) or a JavaFX application class must extend javafx.application.Application
>>640536 А прочитать ошибку? >public static void main(int testResult) main-метод в джаве определяется НЕ так. Тебе в сообщении ошибки показано, как надо.
>>640543 Откуда известно, что testResult не больше и не равно 90? Я же его сам ввожу. Ну, изначальный код, который я скинул, это пример из книжки. Я хз, почему так.
Братишки, только начал учить джаву и постоянно путаюсь в методах классах и объектах. Вроде и стараюсь вникнуть в то, что написано в книжке, но плохо понимаю. Окончательно понимание придет со временем или стоит сейчас уделить этому делу больше времени?
>>640553 Тогда лучше сейчас чуть побольше копайся. Впрочем, со временем понимание должно прийти, так что не надо до смертельной скуки задрачивать эту тему.
>>640555 Спасибо, буду вникать еще. >>640556 А с чего нужно было начинать? А касательно ООП, то в Head First Java я пока еще не дошел до момента, где подробно объясняется суть. Пока в книге только рассказывали базовые вещи про ООП.
Если выполнится условие testResult >= 90, выполнится код из первого блока, после чего вся цепочка if-ов будет проигнорирована, поскольку находится в else-ветке первого if. А если условие не выполнится, то зачем ещё раз проверять в else-ветке, что оно меньше 90?
>>640559 Да, возник еще вопрос: некоторые примеры, которые даются в Head First Java, содержат паблик классы. Так вот, если попытаться скомпилировать код в IDEA, то выдает ошибку, в которой пишется, что паблик классы должны выноситься в отдельный public class name.java, а в книге про это речь не идет вообще. Исправляется этот момент либо тем, что класс действительно выносится отдельно, либо просто удаляется параметр(или это как-то иначе называется?) public. Хотел бы поинтересоваться: это как-то связано с тем, что в Head Fisrt Java рассматривается устаревшая версия Джавы? Или это из-за того, что я криво создал свой учебный проект, в котором пишу код?
>>640563 В джаве каждый класс, который помечен как public (модификатор доступа), должен находится в своём файле. Если, например, public class Dvach { ... } - то он должен быть в файле Dvach.java Вообще, по-хорошему вообще все классы/интерфейсы должны быть в своих файлах, а не только public. Кроме внутренних, конечно. Но до них тебе ещё рано.
Приветствую достойных ява-господ. Имеет ли смысл вкатываться к вам, если есть желание научиться кодить и в дальнейшем трудоустраиваться? В кодинге не новичок, до этого занимался питоном, но осознал что динамика засирает мозги.
>>640580 У нас скучно и тебя будет тошнить от инерции языка. Можешь попробовать но лучше какие-нибудь модные штучки типа Scala или Go. Android отдельно.
>>640587 char grade; if (testResult >= 90) grade = 'A'; if (testResult >= 80) grade = 'B'; if (testResult >= 70) grade = 'C'; else grade = 'D'; У меня так прекрасно все скомпилировал. Или вообще это не правильно так делать?
>>640593 Это - не правильно. Пусть testResult = 90. Сначала выполнится grade = 'A', поскольку условие проходит. Потом выполнится grade = 'B', поскольку условие проходит. Потом grade перезапишется в третий раз. grade = 'D' в этом случае не выполнится, так как оно стоит в else-ветке.
Я тебе уже сказал, что регулярное выражение должно быть описано строкой. Ты умеешь писать регулярные выражения? По-моему - нет. "\\re" - это НЕ регулярное выражение. И убери свой Regex отсюда нахуй. Это тут ВООБЩЕ никаким боком.
>>640602 Не нервничай. Символы у меня каждый раз будут изменяться, я не могу написать просто регулярное выражение, мне нужно, чтобы оно создавалось из подаваемых символов. Почему Regex нельзя использовать?
>>640603 Я объяснял тебе, почему нельзя использовать Regex. Потому что .split() берёт на вход СТРОКУ. СТРОКУ! String! Не экземпляр класса Regex (который, если ты посмотришь на пакет, в котором он находится, относится к JS-движку, встроенному в джаву), а ебаную строку.
Покажи мне, что должен делать твой метод, и я напишу его. Только бесить перестань.
Jаноны помогите в многопоточность. Есть класс, который получает массив файлов, которые нужно загрузить и сохранить с нета(DownloadEntity не стал грузить на пастебин, содержит поля name, path, link все стринг с геттерами). И потом пытается грузить и сохранять файлы в несколько потоков http://pastebin.ru/LCnZDHPu При запуске бросает IllegalMonitorStateException, читал про wait и notify, но так и не вдуплил где ошибка.
Сейчас будет вопрос встречающийся тут постоянно, но хочется что бы разжевали именно под мой случай. Отучился года 4 назад в мухосрани(уровень обучения соответствующий) на ИТ специальность. Давали общие знания по всем областям: Сети, системное администрирование, программирование(VBA, PHP, html/css, 1с, sql и основной упор на С++). Программировать получалось хорошо, в разы лучше чем у кого либо на моем или старших курсах, но по окончанию обучения в силу мухосранских особенностей и семейных проблем устроился сисадмином и те немногие навыки кодинга которые были, позабыл. Сейчас 24лвл, а в связи с переездом в ДС, оставаться развиваться как сисадмин или сетевик желания мало, хочется перейти в кодинг, выбрал java. Реквестирую советы как быстрее воcстановить знания и приспособить их к java. Помню мало что, всякие циклы, массивы, типы переменных, легко прошел java курс на codeacademy.com, но как то очень мало информации он дал. Добра всем.
>>640638 Так и знал что пошлют нахуй в concurrent. Пишу для обучения, хочу запилить велосипед чтобы понят как все это работает, потом уже отрефакторю на concurrent. Если лень и впадлу разбираться, пройди мимо.
>>640652 String[] separators = new String[] { "a", "b", "c", "d", "e", "f" }; StringJoiner joiner = new StringJoiner("|"); for (String s : separators) joiner.add(s); String regex = joiner.toString();
Весь кусок - чтобы собрать регекс из НЕИЗВЕСТНОГО ЗАРАНЕЕ набора символов (причём именно символов, если там будут строки длиной более/менее одного символа, работать не будет. String regex = "a|b|c|d|e|f" То же самое, но без автособиралки. Плюс переменная regex не нужна, можно сразу строку в split запихать.
Яваны, помогите решить. Вообще не могу в написание. 1.Создайте новый класс и назовите его TemperatureConverter. Добавьте в него метод для преобразования температур, с такой сигнатурой: public String convertTemp (int temperature, char convertTo) Если аргумент convertTo равен F, то температура должна быть преобразована в Фаренгейты, если C, то в Цельсии. Когда вы будете!вызывать этот метод, поместите! значение аргумента типа char в одинарные кавычки. 2. Объявите метод convertGrades() класса ReportCard как статический и удалите строку инициализации класса из метода main(). Очень прошу, желательно с комментариями про то, что как и куда.
>>640767 1) А в чем температyра изначально? Кельвинах? Сделай иф и по формулам конвертируй. 2) Все там сказано, ставишь после модификатора доступа метода convertGrades() модификатор static. Убираешь строку инициализации из main, в душе не ебу какая там у тебя;
>>640776 Понимаешь... Это и есть все задание. У меня листочек вот с ним. И имеется эклипс с созданным классом public class TemperatureConverter {} Абсолютно не знаю, как эту хуиту делать.
>>617731 (OP) Аноны, хочу у вас спросить, тут, наверное, найдется пару людей, которые проводят интервью. Что спрашивают у джуна, java core понятно, а что по Java EE? Всё, что делал связанное с этим - простенькие сервлеты для чтения и записи в таблицу с помощью JDBC и Hibernate. Плюс на гитхабе валяется приложения под андроид - прогноз погоды. Хватит ли этого, чтобы начать ходить по собеседованиям или я обосрусь? Боюсь, что приду и ни на что не отвечу. И норм ли идея в откликах просить тестовое задание, даже если не успею по сроками, то пойдет на гитхаб?
Блин, я просто не могу понять, как работают эти массивы в жаве. Как создать многомерный массив, чтобы в него можно было передавать как в пхп array = [ [dicks=>value, dicks => value], [dicks=>value, dicks => value], [dicks=>value, dicks => value] ]
А потом проходиться по нему циклом for, вытаскивать массив по индексу, вытаскивать в нем ключ и значения.
Ебать, в жаве дохуя типов, которые типа работают с массивом и каждый выполняет отдельную функцию. Некоторые из этих массивов имеют зарезервированную длину (а у меня длина массивов формируется динамически).
ArrayList<String> ar = new ArrayList<String>();
Map<String, String> hashmap = new HashMap<String, Object>();
Map<String, List<String>>
Map<String, String> hashmap = new HashMap<String, String>();
Что из этого говна и с какими методами мне использовать, чтобы создать многомерный массив с неясной заранее длиной, из которого можно по индексу вытягивать подмассивы и брать из подмассива ключ значение бля?
Т.е. мне нужно разобрать такой массив. [key1=>{unique key=>value2, key3=>value3}. key5 => {unique key>value6}, {key7=>balue7} ] Из этого массива мне нужно взять значение unique key. А потом из этого значения взять ключ key2 и по нему выбрать значение value2. А потом из второго массива с ключом key5 нужно выбрать тот же самый unique key, записать его значение и в итоге должны получиться поля таблицы, каждое из которых должно заноситься в бд по столбцам в ключах (unique key). ------------------------------- key1| value2| ------------------- key5| value6
>>640965 Живой пример того, как динамикодрисня разъедает мозг. Нет, я не хочу читать про коллекции и как ими пользоваться, я побегу на двачи ныть и материться.
>>641601 Я сначала подумал, что это происходит потому что компилятор думает, что я инициализирую типом int, объект Byte, вот он и ругается, мол нельзя инициализировать типом, который больше чем сам объект.
>>641601 Потому что у Byte нет конструктора с аргументов типа int. Через byte можно представить целое число от -128 до 127, а через int -2^31 до 2^31 - 1 (-2^63 до 2^63 - 1). Если числа без знака, то от 0 до 2^32-1 (от 0 до 2^64 - 1). Если ты передашь туда int с преобразованием в byte, то int обрежется до размера byte. Например, если передать Byte b = (byte) 999, то b станет равен (byte) 999 = 231 (у 999 оставить только первые 8 бит).
0. Минимальный список технологий, которые нужно знать, чтоб взяли стажером: https://atlas.mindmup.com/2015/10/3d59a040592a0133d02a5d31ebcc5420/java/index.html
Цикл статей что в каком порядке учить: http://dou.ua/lenta/articles/java-beginner-guide-1/ (заблочен РосКомПозором, юзайте прокси)
1. Туториалы есть?
BEGINNER: http://myflex.org/books/java4kids/java4kids.htm
MEDIUM: http://www.tutorialspoint.com/java_technology_tutorials.htm
HARD: http://docs.oracle.com/javase/tutorial/
2. Я зануда и я хочу умные книжки.
1. Head First Java, (2nd Edition) : Kathy Sierra, Bert Bates - для совсем нулячих простым языком.
2. Core Java (9th edition) : Cay S. Horstmann, Gary Cornell - тоже для нубасов, но на серьёзных щщах.
3. Thinking in Java (4th Edition): Bruce Eckel - для тех, кто умеет в хеллоуворлд на другом языке.
4. Effective Java (2nd Edition): Joshua Bloch - для тех, кто знает язык, но хочет перестать писать костыли.
Больше здесь: http://www.proklondike.com/books/java.html
3. Я не умею читать и хочу видео!
Пожалуйста http://dou.ua/forums/topic/8113/
http://habrahabr.ru/company/golovachcourses/blog/215275/
4. А где практиковаться?
Начните с бесплатных задач по данному языку: http://codingbat.com/java
Дополнительную практику можно получить здесь: https://www.codehunt.com/
Код играючи: http://www.codingame.com/puzzles
Рулеточка: http://postimg.org/image/xdfbvgps9/
Ещё задачки: http://eax.me/programming-language-learning/
Олимпиадка: http://acmp.ru/?main=tasks + acm.timus.ru
Простенькие: http://www.programmr.com/zone/java
5. Что насчет SQL?
Начни с малого: http://www.w3schools.com/sql/default.asp
Затем переходи к: http://www.sql-ex.ru/
В качестве чтива рекомендую: http://oreilly.com/catalog/sqlhks/chapter/
6. Java EE, Java FX:
https://www.youtube.com/channel/UCYTFfeXufxZM5pdC_OEmJwg
https://github.com/KriechelD/YouTubeChannel
7. Всё это хорошо, но без алгоритмов меня на работу не возьмут.
Не беда, вот курсы от Принстонского университета: https://www.coursera.org/course/algs4partI
То же самое но в бумаге: Роберт Седжвик, Кевин Уэйн - Алгоритмы на Java
8. Я готов к первому собеседованию.
Проверь свои знания здесь: http://www.quizful.net/test
И здесь: http://www.careercup.com/
Советы по написанию резюме: потеряли. Может, у кого есть скрин?