Java Core

Java Core

Квест «Java Core» рассчитан на тех, кто уже получил минимальную подготовку по Java (в рамках Квеста «Java Syntax» JavaRush). Здесь вам предстоит пройти 10 увлекательных уровней, в которых вы изучите основы ООП, познакомитесь с потоками, сериализацией, перегрузкой методов, узнаете много нового об интерфейсах и множественном наследовании. Учёба уже не так проста, как на Квесте «Java Syntax», но регулярная практика — решение задач — поможет вам успешно пройти все его 10 уровней и быть готовым к разработке мини-проектов в самом ближайшем будущем.

Комментарии (267)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий вы должны авторизоваться
Алексей18 уровень, Полысаево
13 января, 04:43
Говорят, что многопоточность на JavaRush это сложно, говорят, мол, вот пройди и посмотрим на то, как тебе понравится "глючный" валидатор и объемы знаний. Теперь я понимаю, кто так говорит, и почему он путается в понятиях. Ведь многопоточность - это не так уж и сложно. Сложно то, что тут с головой приходится окунаться в чужой код, а это совпало с появлением многопоточности, вот и ругаются на неё. Чтобы понять, как работает код задачи, приходится включать дедукцию и логику на полную катушку, и записывать, записывать,записывать. В общем, не так страшна многопоточность, как код без комментариев и описания принципов работы. P.s. пишите код грамотно, потому что вам в нём потом разбираться. =) И пожалейте тех, кто будет разбираться в вашем коде после вас, они вообще ни в чем не виноваты.
10 января, 15:13
Работаю джуном - год. Сменил 2 компании (Европа) , работал на 3х проектах - гэмблинг и казино, Drive-In Solution (продукты заказ заранее, и забирать на машине (магазинная сеть в одной из Европейских стран) и Ставки на спорт. (Никаких легаси проектов, только новье) П.С. Не выношу идеи скипать Java Core и Java Syntax, переключаясь на Фреймворки и другие технологии, база это база, я помнил основы с C# 'Must Haves' которые встретил я: - АНГЛИЙСКИЙ (ну если уж без западных клиентов, то уж Литература и код точно!!!) - Spring (Spring Boot) - Maven / Gradle - Git - Mockito / JUnit для тестов - json/ xml - форматы данных - Hibernate (реализация спецификации Java Persistence API) - PostgreSQL / MySQL / NoSQL - JavaScript / jQuery / Ajax (для базы, но в срекьезных Вэб Апках используется Angular 2+ / ReactJS / VueJS) Мог что-то упустить. П.С. По факту, до JavaRush в универе учил C# и .NET (знаю от слова ничего). На первой работе повезло с ментором, дядька вкинул сразу же то, что действительно нужно знать для позиции Junior Java Developer нынешнего рынка. Год спустя все так же ощущаю себя днищем, понимаю, что знаю меньше чем знал в начале пути (в % соотношении, ибо кругозор разьехался до необьятных размеров), хотя выучил много всего нового (например прошел хороший и долгий, очень deep'ный платник по Angular). Дошел еще год назад до 12го и забросил, т.к. появилась работа и смежные технологии для изучения. Понял что буду проходить JavaRush дальше, что бы закрыть пробелы на практике. Для теории юрал книги по подготовке к OCAJP (Oracle Certified Associate), крутая, мозговыносящая тема, которая не оставляет шансев пробелам в голове. -> Как бонус официальная сертификация от Oracle (экзамен реально сложный и стоит хороших денег (240eur(?)) О мотивации: Забрасывал раза 3, надоело, собрал бубенцы в кулак, поставив цель на 19ый год - устроиться. Мотивация и желание подьехали в момент. Дожимайте, ребят, до конца, если есть возможность, вы не просто так это все затеяли.! :)
10 января, 15:35
И ах да, литература: - Pro Spring Boot 2nd Edition (проста в понимании, делаете проект по книге) - Java Persistence API (сложная в чтении, но почему бы и нет) - Полное руководство Java Version 8 - Герберт Шилдт - Clean Code - Robert Martin
Vonorim23 уровень
10 января, 22:30
Каким образом этот must have относится к позици джуна на вакансию Java Developer? Достаточно набрать на hh.ru список вакансий, и вряд ли вы где-то найдете на джуновскую позицию хотя бы половину из озвученных "технологий". Окей, могу понять git, Spring, Maven/Gradle, json/xml, Hibernate. И то, Spring и Hiber полноценно можно изучить только в реальном проекте. Но какой к черту JS, его фреймворки и знание СУБД? Вы работаете как full stack? Или вы один человек, который делает всё в проекте? Must have в разных компаниях разный, а то сейчас люди увидят и побегут учить то, что им вообще не нужно. Официальная сертификация Oracle ничего вам не даст при трудоустройстве. Спрашивать на собеседовании будут столько же и так же. Тот же диплом, только в профиль как говорится. Или вы думаете, что работодатель посмотрит сертификат и сразу зеленый свет?
11 января, 11:23
Добрый день :) Ни в коем случае не глобазиловал свое высказывание, написал то, с чем сам столкнулся и где столкнулся. (Европа) Моя идея не была дать оценку с позиции человека, отлично разбирающегося в этой теме, скорее повествовать о том, какие критерии и требования встретил сам. Подкорректирую 'must have' выше. Во-вторых, все выше перечисленное является экстрактом МОЕГО имхо. По прядку: - Спринг и Хайбернейт я сам начинал учить вне реального проекта, но ПОД реальный проект. Тут на 50/50 соглашусь с вами. - Обьективно: знания и умения фулл стека облегчат жизнь и добавят независимости больше, нежели ковыряния в чем то одном. (Предположу, что уже будучи сениором стоило бы сделать фокус на чем-то одном) - Про СУБД совершенно не согласен, как вы можете писать бэкэнд не зная баз СУБД? - Oracle: Если вы идете в достойную контору и вашь интервьюист скиллованый человек, разбирающийся в паттернх проектирования, перечитавший тучу литературы, видящий ночью сны о SOLID принципах, а не самоучка, с опытом копипастинга чужих код сниппетов, наайденных в интернете -> вопросы по теории к вам отпадут сразу. (В целом не понимаю такого подхода, был на 30+ собеседованиях, ни разу не было каких-то теоретически жестких вопросов, прикола ради в паре мест спросили на первом интервью о том какие пакеты Java Core знаю и разницы статического и не статического метода) P.S. Почитайте (отзывы, рекомендации, фидбэк от тех кто сдавал и сдал и т.д.) о OCAJP и OCPJP экзаменах, их сложности и количеству времени, отведенному на сдачу. Это показатель ваших знаний теории языка, в отилчии от диплома.
alex13 уровень
11 января, 12:21
У тебя нет упоминания JavaFx, он что уже не используется? Или появились более новые технологии
Vonorim23 уровень
11 января, 17:15
У нас все по-другому нежели в Европе, поэтому в целом я не был согласен с вашим списком. Есть несколько знакомых: один сейчас работает как Senior (говорит, что ему хватает Java, Spring, Hibernate, системы сборки, git). На старте первой работы (читай джун) он знал только Java, и успешно прошел испытательный срок (альфа-банк). Далее уже учился работать с озвученными технологиями. Второй тупо работает с СУБД Oracle. СУБД может знать и нужно, но это не столь очевидно, смотря на каком уровне их знать. Можно знать SQL на уровне запросов и "склеивания" таблиц, а саму систему на уровне знания той же среды разработки. Каждый второй распинается про SOLID-принципы, а по факту в большинстве проектов используется тот же говнокод. Насчет сертификата все-таки не соглашусь. Я думаю, что у нас это не ценится, иначе бы все стремились к этому, а не залипали на javarush. Если бы я собеседовал человека, я бы не смотрел на этот сертификат уж точно. Но в любом случае, интересно было узнать ваш опыт. Возможно я спишусь с вами позже. :)
12 января, 18:36
Ни в одном месте не встретил требований к JavaFX, поэтому не стал вписывать в лист. В большей степени потому, что Java является Enterprise-oriented языком для работы на серверах и GUI Javе особо не нужен. Сам этот модуль(вроде же как JavaFX был вынесен в отедльный модуль) никогда не трогал, но есть маленький опыт разработы десктопных апликух на C#, поэтому смею предположить, что что бы разобраться с этим модулем много времени не уйдет. *могу ошибаться*
12 января, 18:57
В целом тут уже больше у нас с вами коммон поинтов :) Люди недооценивают знание и соблюдение высоких стандартов в написании кода, от этого и говнокод, все зависитот конторы. Тут можно простую логическую цепочку построить, почему их нужно знать и соблюдать: помимо нашей бескрайней любви к программированию, мы все те же меркантильные паразиты, которые хотят получать хорошую денюжку,что бы возить своих девочек на сказочноеБали. Какие компании платят больше? Компании либо имеющие гос. бюджет, либо крупные компании имеющие десятки тысяч сотрудников по миру и целуое множество таких же клиентов. т.к. контракты и проекты огромные, любой технический долг по коду проекта будет стоить огромнейших денег компании. А такие компании всегда аудитируют ими написанный код при помощи других компаний. Вывод: - Хотите больше денег? Надо работать не в шараге. - Что бы работать не в шараге, нужно быть конкурентно способным для таких мест. - Что бы быть конкурентно способным, нужно понимать что написанный вами код в дальнейшем будет кем-то дорабатываться, скорее всего, и от того как он будет написан, будут зависить расходы компании. Вот мы и уперлись в принципы, стандарты, архитектурные решения, "чистоту" кода и т.д. На примере: У меня в проекте есть парень с Индии, с 12 годами опыта разработки, который 9 из них говнокодил по индийским компаниям, парень очень толковый и много всего знает, но например никогда не деллал Code review, никогда не разбирал код сниппеты с тим лидом и никогда не пользовался такими тулами как (SonarQube) для анализа качества кода. Переехал 2 года как в Европу, зп выросла в его случае, думаю, раз в 10, с его зп в Индии. И в разговоре с ним я понял, что те компании,в которы нету всего этого, компании, у которых нет возможности платить за все часы разрабов ушедшие на все это. В целом, как-то так. :)
12 января, 19:05
JavaRush уникальный ресурс в Рунете с большим количеством практикических заданий. А писать код на теории, к сожалению, на научиться. :) И кстати, про то что в Русском бизнес сегменте все не так, как в Европе, я не соглашусь. В серьезных компаниях все плюс минус так же, высокие стандарты и требования с ожиданиями, но и совершенно другие возможности в плане карьеры, зарплат и т.д.. (Естественно я говорю сейчас только о разработке ПО ибо за другие сферы не уверен)
Алексей18 уровень, Полысаево
13 января, 04:47
Уже не раз натыкался на людей, которые жаловались, мол, программисты перевелись, разучили себе пару фреймоворков и считают себя специалистами. А что-то за рамки фреймворка выходящее создать уже не могут. Уважуха за стремление учиться и силу воли.
idzayu20 уровень, Краснодар
30 декабря 2019, 15:29
как же грустно без мативашек
Валихан24 уровень, Санкт-Петербург
13 декабря 2019, 14:34
Java Core пройден! Йахуууу!!!
Asike18 уровень, Shymkent
20 декабря 2019, 00:01
красавчик! ВСе задачи решил? Или что то скипнул?
Константин18 уровень, Москва
27 декабря 2019, 22:47
молодец, скоро и я приближусь)))
Олег Пацей18 уровень, Санкт-Петербург
7 ноября 2019, 20:01
Скучно , понятно что идет тренинг жесткий , делать в основном одно и тоже ... правда надоело
Java Student26 уровень
9 ноября 2019, 09:00
До 15 уровня идет жёсткое закрепление Java Syntax, т.к. его нужно знать как таблицу умножения
Vonorim23 уровень
31 октября 2019, 11:02
Меняю свой подход к обучению. Раньше я проходил уровень за уровнем, лез за дополнительными сведениями, когда в задаче возникала трудность, однако время ценно и понимаю, что знание тех же регулярок на собеседовании на должность джуна в среднестатистическую контору не будут спрашивать. План такой: отделить ООП, стандартные библиотеки Java (lang, util и т.д.), каркас коллекций и многопоточность. Далее создать отдельные документы-конспекты (еще можно с помощью Anki разбить на более короткие так называемые карточки), в которых по каждому из четырех обозначенных выше разделов составить свою шпаргалку. В шпаргалке будут заметки и подводные камни из книг (Шилдт, Хортсманн, Эккель) по обозначенным разделам, плюс список возможных вопросов к собеседованию и ответы на них. Ещё добавить паттерны и алгоритмы. Полученные знания подкреплять практикой (как здесь на уровнях, так и просто в IDEA простыми задачками из головы), плюс периодическое повторение. Практика практикой, но на собеседовании спрашивают теорию, а чтобы попасть на работу, надо пройти собеседование. Получится такой полноценный Java Core, а это уже заявка на успешное прохождение интервью. Далее по плану Maven, Spring. А Hibernate уже как плюс к большинству вакансий на должность джуна. Java Core - 6 месяцев. Maven - неделя. Spring + Hibernate (основы) - 3 месяца. Это мой план, он не претендует на оригинальность и правдивость, но для себя лично решил именно так. Советы бывалых и уже работающих приветствуются.
Ярослав17 уровень
3 ноября 2019, 17:59
Про SQL забыл. Мастхэв.
Vonorim23 уровень
3 ноября 2019, 20:17
Да верно, можно было выделить в отдельный пункт, но я тут его смешал (хоть и не совсем верно) с Hibernate.
Islam Laipanov24 уровень, Москва
3 ноября 2019, 22:44
и git
Vonorim23 уровень
4 ноября 2019, 21:05
Да, я в своём посте SQL объединил с Hibernate, хоть это и не совсем правильно. Можно было и отдельно, согласен. Git аналогично не помешает.
Semen Bondarenko23 уровень
9 ноября 2019, 21:08
Ещё Английский язык сверху добавь. По сколько часов в день занимаешься? И что насчёт личных проектов?
Vonorim23 уровень
10 ноября 2019, 13:35
В день по обстоятельствам, но обычно это 3-4 часа в среднем, не меньше. Иногда бывает по 8 часов, могу 1-2 дня отдыхать. Один знакомый, который успешно устроился джуном ещё пару лет назад (сейчас он сеньор на стеке Spring+Hiber) говорит, что не имея опыта в резюме, можно состряпать бота с Telegram API. Он к слову на собеседовании рассказывал, как его делал. Это всё неплохо засчитывают как плюсик. Сам хотел еще написать приложение под Android, да и вообще идти в моб.разработку, но там много возиться с интерфейсом и разметкой, что меня не особо привлекает. Поэтому для начала написать бота с мощной функциональностью, а потом смотреть. Возможно, какой-нибудь сервлет, но идей нет.
Chundrik35 уровень, Санкт-Петербург
10 ноября 2019, 15:11
Классная идея! Устроиться с уже имеющимся проектом наверное гораздо проще
Сергей17 уровень
13 ноября 2019, 14:05
как вариант можно сделать чек-лист для ежедневных достижений. (сделано в https://my.365done.ru/) Сделал пункты по 25 мин по методу "помидора" (https://ru.wikipedia.org/wiki/%D0%9C%D0%B5%D1%82%D0%BE%D0%B4_%D0%BF%D0%BE%D0%BC%D0%B8%D0%B4%D0%BE%D1%80%D0%B0)
Vonorim23 уровень
14 ноября 2019, 21:16
На codewars довольно потные задачи. Там есть система рангов, и спустя 20 уровней на javarush, я без проблем решаю только задачи 8 и 7 ранга (и то не все с первой попытки). 8 и 7 ранги - это новичок, который только начал учить язык. Задачи 5 и 6 ранга (также считаются новичковыми) попадаются большие с не совсем понятным условием, во многом из-за этого тяжело их решить. Думаю, если конкретно залипнуть в условие, то решаемы. Средний уровень (мне кажется там уже боль) это 3 и 4 ранги, чему соответствует знание: complex algorithms simple design patterns simple regex simple detailed requirements Хотя там в легких попадается то просто написать в методе return a+b, то написать функцию по нахождению минимального и максимального значения в строке, которая состоит из чисел с пробелами (которые опять же надо через регулярки обработать), плюс запарсить в Integer.
Artificial Intelligence17 уровень, Москва
9 декабря 2019, 22:07
Могу рассказать, что нужно на Android Developer.
Артур1 уровень
11 декабря 2019, 17:01
Расскажи пожалуйста
Михаил22 уровень, Санкт-Петербург
13 декабря 2019, 15:22
в разметке в Java под Android ничего сложного нет, усваивается за пол часа. Я написал свое первое андроид проложение еще по сути до изучения Java, чисто за счет понимание какой стек мне нужен и гугления. Получилось довольно функциональное коммерческое приложение.
Asike18 уровень, Shymkent
20 декабря 2019, 00:03
https://codingbat.com/java Здесь попробуйте порешать задачки попроще
10 января, 14:59
Учите Gradle, господа, приятнее в понимании, создан на основе Maven и используется сейчас больше, если не легаси проекты, разумеется. :)
Евгений Буш28 уровень, Санкт-Петербург
31 октября 2019, 06:43
Ну что, коллеги, пора приступать к плотному изучению Springa? Делитесь опытом. Сам пока решил тут пожить http://spring-projects.ru/projects/spring-framework. Нужен хороший ресурс с задачками в тему.
Максим Толстобров16 уровень, Москва
10 декабря 2019, 20:06
https://www.youtube.com/watch?v=5ePo08sqcpk&list=PLAma_mKffTOR5o0WNHnY0mTjKxnCgSXrZ&index=2&t=0s - вот тут хорошо, очень понятно и доходчиво, сам учу тут
Евгений Буш28 уровень, Санкт-Петербург
11 декабря 2019, 10:57
Алишев - хорошо, но редко выпускает. Да и не очень углубляется.
Максим Толстобров16 уровень, Москва
11 декабря 2019, 11:17
Дак, а что еще нужно, у него почти все основные темы раскрыты, возможно новые какие то возможности не описаны. Стримов вроде нет у него еще по java. Но в любом случае, он один из лучших, кто делает обучающий контент, особенно для новичком, мне во всяком случае его видео вносят ясность.
Евгений Буш28 уровень, Санкт-Петербург
11 декабря 2019, 14:16
я не спорю, сам все просмотрел. Но читаю https://www.manning.com/books/spring-in-action-fifth-edition?a_aid=habuma&a_bid=f205d999&chan=twtr
Максим Толстобров16 уровень, Москва
12 декабря 2019, 06:48
Евгений, спасибо ! Я себе сохранил, почитал чуток, не плохо написано, и вроде все актуально и инфа достаточно полная. Буду параллельно тут почитывать.
Vladislav Shamshurin24 уровень, Ижевск
24 октября 2019, 17:42
Java Core почему-то идёт легче, чем Java Syntax) Тут и задачи по сложности не распределены.
Maxim Volkov25 уровень, Таллинн
25 октября 2019, 11:07
Посмотрим как ты заговоришь на 17-20 уровнях)))
Nubas19 уровень, Новосибирск
25 октября 2019, 17:32
возможно Java Core ослабляет вашу бдительность... 😑
Vladislav Shamshurin24 уровень, Ижевск
28 октября 2019, 13:50
Просто эти темы я уже проходил и не раз) И не только на JAva
Danil13 уровень, Уфа
20 октября 2019, 01:36
Дошел до 10 уровня за 24 дня. Дней 5 наверное вообще не занимался. В какие то дни заходил на час-два. В какие то сидел почти весь день и ночь.
Vladislav Shamshurin24 уровень, Ижевск
23 октября 2019, 14:01
За 11 дней дошёл до 13 уровня, опыт до этого был, но небольшой. Задачи выполнил не все. Решаю выборочно, в основном все Medium и Hard, Easy оставляю
Eugene K35 уровень, Санкт-Петербург
30 октября 2019, 12:49
до 10 не считается, пойдём с нами до 41 )
Danil13 уровень, Уфа
1 ноября 2019, 15:15
Нет денег на подписку(, сижу вот перечитываю
Dmitry18 уровень
5 ноября 2019, 08:26
За 5 дней дошёл до 40-го уровня. Посчитал, что это не по-хардкорному, создал новый профиль, и вот, спустя 2 часа и 15 минут я здесь))
Student8 уровень, Алматы
11 ноября 2019, 08:05
за 10 мин дошел до 8 уровня))) Опыта не было вообще)))
Roman Lobovikov13 уровень, Ижевск
8 декабря 2019, 07:55
За 10 минут минут дошёл с 8 до 13 уровня! Просто потратил всю чёрную материю, что у меня была. Завтра подписка заканчивается. Потом придётся покупать вторую подписку. Наверное куплю, но уже когда всё в моей жизни наладится. Возможно, уже когда устроюсь на работу в IT-компанию. Вряд-ли она мне тогда понадобится, просто хотелось бы не имея профильного (или хотя бы высшего) образования иметь за плечами какую-то законченную вещь.
Максим Толстобров16 уровень, Москва
10 декабря 2019, 20:08
За примерно 15 секунд дошел до 69 уровня, заколебало, начал занага и вот за примерно 0,157 секунды я тут.
Евгений Буш28 уровень, Санкт-Петербург
12 декабря 2019, 06:13
за 26 лет дошел до 26-го. Привык под бой курантов открывать новый уровень.
Asike18 уровень, Shymkent
20 декабря 2019, 00:09
я смотрю тут у вас клуб скорострелов собирается или гениев. Пока не понятно
Дмитрий Чаруйский16 уровень, Санкт-Петербург
30 декабря 2019, 11:01
Скорее шутников)
Пирожок17 уровень, Москва
11 октября 2019, 19:38
Братва, за какое время в среднем Java Core квест полностью проходите?
Nubas19 уровень, Новосибирск
25 октября 2019, 17:26
ИМХО можно все прощелкать на минималках (главное чтобы черной материи >0 ). А можно стараться решить самостоятельно все задачи, включая бонусные. И еще искать доп. материал по всем темам. Так что скорость тут важна только если внезапно заканчивается период подписки )))
Eugene K35 уровень, Санкт-Петербург
26 октября 2019, 22:00
Или если хочешь успеть на стажировку =)
Рома17 уровень, Москва
13 ноября 2019, 14:41
Не каждый день занимаюсь, т.к. работаю.. и это минус. потому что вроде столько прошел, а в голове будто нет никакого понимания(((
Денис17 уровень, Москва
25 декабря 2019, 20:34
Обратная ситуация – как будто есть полное понимание всего что прошел, но... открываю конспекты, и, оказывается, я какие-то темы тут проходил :)