Java Collections

Java Collections

Квест «Java Collections» посвящен детальному изучению Java-коллекций, но не только их одних. Речь пойдет о том, как работать с файлами и архивами, что такое паттерны проектирования и как их применять. Вы получите опыт работы с JSON, Guava, Apache Commons Collections, JUnit, узнаете подробности о сборке мусора в Java. Помимо продвинутых составляющих Core, вы познакомитесь с необходимыми любому современному разработчику инструментами, узнаете о Git и JAXB, RMI и DynamicProxy, прикоснетесь к другому важному языку программирования — JavaScript. В этом квесте вы создадите мини-проекты — большие задачи. В обучающих целях их решение будет разбито на этапы.

Комментарии (81)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий вы должны авторизоваться
Konstantin Skavinskiy16 уровень, Москва
2 марта, 21:03
Всем привет а про функциональные интерфейсы и лямбда функции есть в это курсе?
Xytrex41 уровень
17 февраля, 14:53
Спасиба команде JavaRush за такой крутой курс
Maxim Moskalyuk22 уровень, Санкт-Петербург
25 января, 22:24
Здравствуйте, хотел спросить, у тех у кто проходит уровни по Квесту «Java Collections» , я могу сразу после 20 его проходить или мне надо ещё пройти квест потоков ?
Sergey Simonov35 уровень, Санкт-Петербург
26 января, 11:13
на сколько я помню открываются сразу оба квеста и ты волен делать их в любом порядке, но все же стоит пройти сначала потоки (моё мнение), тк в 4м квесте больше энтерпрайс и тем для дальнейшего самостоятельного изучения
Maxim Moskalyuk22 уровень, Санкт-Петербург
26 января, 18:41
Спасибо, я учту
Максим41 уровень
30 января, 11:03
Если хочется скорее попасть на стажировку, лучше начать с Collections. Но в целом, мне кажется, лучше параллельно оба курса проходить... Collections, пожалуй поинтересней, но Multithreading тоже надо... так что пробуйте всё, смотрите сами.
Артём Кашкин41 уровень, Харьков
1 декабря 2018, 19:45
Огромное спасибо команде JavaRush - за такой КЛАССНЫЙ курс !!!. Мне понадобилось 2 года на его прохождение, ни разу не бросал, всегда занимался когда было свободное время. Уже на первом году обучения написал две программы по вычислению параметров. 1ю подарил фирме в которой работаю 2ю ПРОДАЛ !!! )) директору этой же фирмы 2я программа вычисляет 3 цены клик рамочек относительно высоты и ширины: - стоимость клик рамочек для клиентов - их себестоимость - прибыль - несмотря на то что со Swing, при написании программы я не был знаком, разобрался сам ) - самое сложное в написании программы было, как оказалось, сделать математическую модель для вычисления материалов. Ещё раз, большое Вам спасибо !!! Резюме уже составил, буду отправлять.... )) Усиленно готовлюсь к собеседованию. ВСЕМ УДАЧИ и да прибудет с вами JAVA ))) !!!
Max Miheev36 уровень, Москва
5 декабря 2018, 08:07
круть ! а ты в графике сдела ? а скинь скриншоты ! интересно
Ярослав40 уровень, Днепр
22 июля 2018, 09:39
Советы: 1) Если вам нужно скорее выйти в Энтерпрайз и так далее, чтобы скорее научиться писать свои полноценные веб-приложения и тому подобное, то зацикливаться на курсах JavaRush не нужно. Курсы действительно очень полезны и предоставляют хорошие знания благодаря практики, но есть и Ахиллесова пята: слишком затратно по времени. Как по мне, можно параллельно с каждым уровнем изучать что-то еще, кроме самого уровня. А на некоторых уровнях останавливать и углубляться во что-то. Для меня такими уровнями стали: 5, 9. На 5 уровне пришлось пойти изучать git. Не сказать, что я его освоил прямо хорошо, но достаточно, чтобы работать с гитхабом через консоль. Хотя, сказать честно, надо будет еще подробнее изучить кое-какие аспекты. На 9 уровне пришлось пойти изучать сервлетты и JSP вместе с Томкэтом, так как начало уровня - Tomcat, а остальные лекции по дебагу в идее, что сбило меня с толку. Сервлетты достаточно простые, самое сложное для меня было разобраться со сборкой проектов, артефактов, деплоем и прочими аспектами работы веб-приложения. И хоть интуитивно все было понятно, на деле получалось не всегда очевидно. По ходу дела, я изучил Maven. Честно: отличная штука. Сначала показалась сложной, но черт, как же он хорош! P.S. В тестовом задании проект надо будет делать на мавене :) Хорошие лекции на youtube по Maven: ссылочка. Параллельно нужно пытаться что-то самому писать, на практике все встало на свои места.
Ярослав40 уровень, Днепр
22 июля 2018, 09:47
2) Не бойтесь сложностей с фреймворками и другими вещами, у которых отпугивающее название (Spring, Maven, Hibernate). На самом деле, можно и за день обучиться основам. Нужно просто сесть и изучать, изучать и изучать. А вот как изучать - дело каждого. Лично я не очень предпочитаю книжки. По крайней мере, для знакомства с чем-либо. У меня свой подход: ищу лекции на ютубе, смотрю, параллельно подсматривая в какие-то статьи те или иные моменты, которые не очень ясны сразу, и так же параллельно, останавливая лекции, стараюсь так или иначе писать код в идее. Мне так удобно, потому что я больше люблю видеть те или иные результаты своей работы. Книги для меня - способ углубить знания. Но у каждого свой подход :) 3) Технология = мини-проект Все просто: изучили что-то - создали любой мини-проект, где воспользовались всем, что недавно изучили. Когда вы после теории сделали практику, в вашей памяти знания сильнее закрепятся. Так же, вы сможете позже вернуться в свой мини-проект и вспомнить те или иные моменты для работы с фреймворком. То, что вы во время практики искали около получаса-часа, вы вспомните сразу, когда увидите это в проекте. По крайней мере, у меня это так, - мне достаточно посмотреть какие-то фрагменты моего кода с использованием какой-то технологии, чтобы вспомнить основные моменты её использования.
Ярослав40 уровень, Днепр
22 июля 2018, 09:57
И, может, кому будет интересно. На 5 уровне не рассказывалось подробно про git и так далее, а просто ссылку давали на howtogit или какой-то такой сайт (который я проходил, но надо будет еще раз перепройти и до конца). Так вот, как подключить github репозиторий к себе: git clone (url) (directory), где url - ссылочка на github репозиторий, а directory - папка (относительно текущего каталога) куда нужно поместить, можно не указывать, тогда будет взять имя git проекта. Данная ссылочка находится тут: После этого, заходите через консоль в директорию и у вас, считай, есть последняя версия проекта с гитхаба. Далее (если это ваш проект) нужно указать кое-какие конфиги: git config (--global) core.username (имя вашей учетки на гитхабе) git config (--global) core.email (почта вашей учетки на гитхабе) git config (--global) core.password (пароль вашей учетки на гитхабе) Если указать эти конфиги, то вам не нужно будет авторизовываться через окошко при выполнении команды push. github будет считывать конфиги вашего гита и автоматически авторизовываться, если будет необходимости. Если не указывать --global, то настройки будут только для текущего репозитория. Это может понадобиться, если у вас несколько учетных записей на гитхабе, и для этого проекта у вас отдельная учетная запись. Иначе можно спокойно писать --global. После этого, кроме основных команд гита для локальной работы (commit, status, reset, rm, add и другие), надо будет использовать еще 3 дополнительные команды:
Ярослав40 уровень, Днепр
22 июля 2018, 10:00
git fetch - проверяет, есть ли изменения на репозитории на гите. Если есть, то просто уведомляет, что вы не используете последнюю версию проекта. Можно не использовать, git pull автоматически сверяет версии и вытаскивает их, хотя в отдельных случаях помогает (если вы хотите просто проверить, нет ли новых коммитов в основном репозитории, но не хотите их перекачивать к себе). git pull - скачивает последние коммиты с репозитория на гите. Так сказать, обновляет вашу локальную копию до актуального состояния. git push - заливает ваши сделанные коммиты напрямую в репозиторий на гитхабе. Перед этим проверяет, что у вас последняя версия проекта, если нет - требует сделать pull. На самом деле, все достаточно просто. Эти команды очень простые. Главное разобраться с остальными командами для локальной работы, тогда с этими проблемы не будет. К чему все это было: на howtogit данные лекции то ли отсутствуют (вряд ли), то ли где-то довольно далеко. Я прошел около 30-40, и так не дошел. А ведь подключаться к github'у очень хочется, когда вы там храните свой проект.
Artem Sobolenko39 уровень, Днепр
24 сентября 2018, 10:52
Тянет на отдельный пост.
S20 уровень, Минск
18 марта, 11:19
Ярослав прав. Сам немного "из будущего" - так как прогоняю JR повторно после другого курса. Знаком с системами сборки, Tomcat, сервлетами. Мой совет в добавку - хотя и время важно, но не гонитесь за скоростью в решении задач, в их количестве. Лучше решите 5 задач из 12 в конце темы и потратьте сэкономленное время на то, чтобы убедиться, что вы поняли тему и ПОЛНОСТЬЮ понимаете КАК работает решенная задача в комплексе - не только написанный вами код, но и код, написанный авторами. Иначе, к концу курса, может случиться, что вы поймете, что вы не умеете писать код для решения задачи с нуля, а только интуитивно добавлять свой кусочек кода "чтобы работало".
Rihard198533 уровень
5 июня 2018, 00:29
Может я когда нибудь дойду сюда)
Кирилл Голуб22 уровень, Днепр
9 июня 2018, 14:21
Дойдёшь, не бойся)
Alexander Avdoshin34 уровень, Нижний Новгород
3 июня 2018, 22:15
Что впервую очередь изучать - Multithreading или Collections?
Сергей Судариков35 уровень, Днепр
5 июня 2018, 10:32
лучше Multithreading, на коллекциях подзастрянешь немного
Ярослав40 уровень, Днепр
15 июня 2018, 20:56
Лучше всего комбинировать, пройти сначала первые 3-4 уровня трэда, потом сколько захочешь уровней коллекций (хоть все), потом до конца мультитрэда. А можно и просто мультитрэд, а потом коллекции. В принципе, такой вариант тоже нормальный.
Дмитрий28 уровень, Москва
22 августа 2018, 17:12
Коллекции нужнее джуну, если уже ищешь работу.
alCODolizm23 уровень, Москва
7 октября 2018, 12:16
На собеседовании как раз говорили, чтобы в приоритет на коллекции делал
S20 уровень, Минск
18 марта, 11:20
Конечно коллекции! Из MultiThreading перед коллекциями возьми только где-то первых 3 темы: StringBuilder обязательно. А в самом конце уже доделаешь все остальное.
Сергей Лахменев30 уровень, Санкт-Петербург
3 июня 2018, 15:27
3.06.2018
NodeOne41 уровень
18 августа 2018, 07:15
и?
Roman Avdashkevich20 уровень
3 сентября 2018, 19:42
Держи нас в курсе!
Sergey40 уровень, Киев
26 февраля 2018, 17:09
26.02.18 Материя - 1891
Makarich31 уровень, Киев
24 февраля 2018, 12:47
Просто оставлю это здесь. Требования для того что бы попасть на курсы в компанию: Требования к Java Developer в той же компании: Наиболее ценные качества программиста:
Немчинов Сергей40 уровень, Новосибирск
27 февраля 2018, 15:58
> Требования к Java Developer в той же компании Особенно понравилось aptitude вместо attitude
Makarich31 уровень, Киев
27 февраля 2018, 21:20
aptitude - склонность. attitude - отношение. What is the difference between attitude, aptitude, ability?
Makarich31 уровень, Киев
14 марта 2018, 07:14
Anonimus1506331 уровень
14 марта 2018, 14:49
Спасибо, полезная статья была. А как все же переводится "або вище"?
Makarich31 уровень, Киев
16 марта 2018, 22:04
перевод "або вище".
Roman Sharun41 уровень, Киев
9 апреля 2018, 17:52
Або вище - в данном случае означает не ниже уровня Intermediate
Ярослав40 уровень, Днепр
22 июля 2018, 09:21
Круто осознавать, что у меня уже достаточно знаний, чтобы пройти на курсы :D Хотя мне они не нужны, по крайней мере сейчас. Я еще только на 2 курсе в универе и не могу пойти в компанию на курсы, разве что если на дистанционные. Сейчас сам стараюсь уходить в сторону веб-технологий и всякого такого, изучаю Hibernate сейчас, сервлеты изучал недавно и JSP и написал даже проект на сервлетах, который предоставил одному игровому серверу за небольшие, но все же деньги (проект - банхаб, чтобы у игроков была возможность получать информацию о банах и т.д.), JDBC вспомнил (так как раньше его изучал, а потом не было нужды его использовать, так как продолжил курсы на JavaRush проходить). В скорых планах уже Spring, heh :)