Java Collections

Java Collections

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

Комментарии (68)
  • популярные
  • новые
  • старые
Для того, что бы оставить комментарий вы должны авторизоваться
Артём Кашкин41 уровень, Харьков
1 декабря, 19:45
Огромное спасибо команде JavaRush - за такой КЛАССНЫЙ курс !!!. Мне понадобилось 2 года на его прохождение, ни разу не бросал, всегда занимался когда было свободное время. Уже на первом году обучения написал две программы по вычислению параметров. 1ю подарил фирме в которой работаю 2ю ПРОДАЛ !!! )) директору этой же фирмы 2я программа вычисляет 3 цены клик рамочек относительно высоты и ширины: - стоимость клик рамочек для клиентов - их себестоимость - прибыль - несмотря на то что со Swing, при написании программы я не был знаком, разобрался сам ) - самое сложное в написании программы было, как оказалось, сделать математическую модель для вычисления материалов. Ещё раз, большое Вам спасибо !!! Резюме уже составил, буду отправлять.... )) Усиленно готовлюсь к собеседованию. ВСЕМ УДАЧИ и да прибудет с вами JAVA ))) !!!
Max Miheev33 уровень, Москва
5 декабря, 08:07
круть ! а ты в графике сдела ? а скинь скриншоты ! интересно
Ярослав40 уровень, Днепр
22 июля, 09:39
Советы: 1) Если вам нужно скорее выйти в Энтерпрайз и так далее, чтобы скорее научиться писать свои полноценные веб-приложения и тому подобное, то зацикливаться на курсах JavaRush не нужно. Курсы действительно очень полезны и предоставляют хорошие знания благодаря практики, но есть и Ахиллесова пята: слишком затратно по времени. Как по мне, можно параллельно с каждым уровнем изучать что-то еще, кроме самого уровня. А на некоторых уровнях останавливать и углубляться во что-то. Для меня такими уровнями стали: 5, 9. На 5 уровне пришлось пойти изучать git. Не сказать, что я его освоил прямо хорошо, но достаточно, чтобы работать с гитхабом через консоль. Хотя, сказать честно, надо будет еще подробнее изучить кое-какие аспекты. На 9 уровне пришлось пойти изучать сервлетты и JSP вместе с Томкэтом, так как начало уровня - Tomcat, а остальные лекции по дебагу в идее, что сбило меня с толку. Сервлетты достаточно простые, самое сложное для меня было разобраться со сборкой проектов, артефактов, деплоем и прочими аспектами работы веб-приложения. И хоть интуитивно все было понятно, на деле получалось не всегда очевидно. По ходу дела, я изучил Maven. Честно: отличная штука. Сначала показалась сложной, но черт, как же он хорош! P.S. В тестовом задании проект надо будет делать на мавене :) Хорошие лекции на youtube по Maven: ссылочка. Параллельно нужно пытаться что-то самому писать, на практике все встало на свои места.
Ярослав40 уровень, Днепр
22 июля, 09:47
2) Не бойтесь сложностей с фреймворками и другими вещами, у которых отпугивающее название (Spring, Maven, Hibernate). На самом деле, можно и за день обучиться основам. Нужно просто сесть и изучать, изучать и изучать. А вот как изучать - дело каждого. Лично я не очень предпочитаю книжки. По крайней мере, для знакомства с чем-либо. У меня свой подход: ищу лекции на ютубе, смотрю, параллельно подсматривая в какие-то статьи те или иные моменты, которые не очень ясны сразу, и так же параллельно, останавливая лекции, стараюсь так или иначе писать код в идее. Мне так удобно, потому что я больше люблю видеть те или иные результаты своей работы. Книги для меня - способ углубить знания. Но у каждого свой подход :) 3) Технология = мини-проект Все просто: изучили что-то - создали любой мини-проект, где воспользовались всем, что недавно изучили. Когда вы после теории сделали практику, в вашей памяти знания сильнее закрепятся. Так же, вы сможете позже вернуться в свой мини-проект и вспомнить те или иные моменты для работы с фреймворком. То, что вы во время практики искали около получаса-часа, вы вспомните сразу, когда увидите это в проекте. По крайней мере, у меня это так, - мне достаточно посмотреть какие-то фрагменты моего кода с использованием какой-то технологии, чтобы вспомнить основные моменты её использования.
Ярослав40 уровень, Днепр
22 июля, 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 июля, 10:00
git fetch - проверяет, есть ли изменения на репозитории на гите. Если есть, то просто уведомляет, что вы не используете последнюю версию проекта. Можно не использовать, git pull автоматически сверяет версии и вытаскивает их, хотя в отдельных случаях помогает (если вы хотите просто проверить, нет ли новых коммитов в основном репозитории, но не хотите их перекачивать к себе). git pull - скачивает последние коммиты с репозитория на гите. Так сказать, обновляет вашу локальную копию до актуального состояния. git push - заливает ваши сделанные коммиты напрямую в репозиторий на гитхабе. Перед этим проверяет, что у вас последняя версия проекта, если нет - требует сделать pull. На самом деле, все достаточно просто. Эти команды очень простые. Главное разобраться с остальными командами для локальной работы, тогда с этими проблемы не будет. К чему все это было: на howtogit данные лекции то ли отсутствуют (вряд ли), то ли где-то довольно далеко. Я прошел около 30-40, и так не дошел. А ведь подключаться к github'у очень хочется, когда вы там храните свой проект.
Artem Sobolenko39 уровень, Днепр
24 сентября, 10:52
Тянет на отдельный пост.
Rihard198533 уровень
5 июня, 00:29
Может я когда нибудь дойду сюда)
Кирилл Голуб22 уровень, Днепр
9 июня, 14:21
Дойдёшь, не бойся)
Alexander Avdoshin34 уровень, Нижний Новгород
3 июня, 22:15
Что впервую очередь изучать - Multithreading или Collections?
Сергей Судариков35 уровень, Днепр
5 июня, 10:32
лучше Multithreading, на коллекциях подзастрянешь немного
Ярослав40 уровень, Днепр
15 июня, 20:56
Лучше всего комбинировать, пройти сначала первые 3-4 уровня трэда, потом сколько захочешь уровней коллекций (хоть все), потом до конца мультитрэда. А можно и просто мультитрэд, а потом коллекции. В принципе, такой вариант тоже нормальный.
Дмитрий28 уровень, Москва
22 августа, 17:12
Коллекции нужнее джуну, если уже ищешь работу.
alCODolizm23 уровень, Москва
7 октября, 12:16
На собеседовании как раз говорили, чтобы в приоритет на коллекции делал
Сергей Лахменев30 уровень, Санкт-Петербург
3 июня, 15:27
3.06.2018
NodeOne32 уровень
18 августа, 07:15
и?
Roman Avdashkevich20 уровень
3 сентября, 19:42
Держи нас в курсе!
Sergey40 уровень, Киев
26 февраля, 17:09
26.02.18 Материя - 1891
Makarich31 уровень, Киев
24 февраля, 12:47
Просто оставлю это здесь. Требования для того что бы попасть на курсы в компанию: Требования к Java Developer в той же компании: Наиболее ценные качества программиста:
Немчинов Сергей40 уровень, Новосибирск
27 февраля, 15:58
> Требования к Java Developer в той же компании Особенно понравилось aptitude вместо attitude
Makarich31 уровень, Киев
27 февраля, 21:20
aptitude - склонность. attitude - отношение. What is the difference between attitude, aptitude, ability?
Makarich31 уровень, Киев
14 марта, 07:14
Anonimus1506331 уровень
14 марта, 14:49
Спасибо, полезная статья была. А как все же переводится "або вище"?
Makarich31 уровень, Киев
16 марта, 22:04
перевод "або вище".
Roman Sharun41 уровень, Киев
9 апреля, 17:52
Або вище - в данном случае означает не ниже уровня Intermediate
Ярослав40 уровень, Днепр
22 июля, 09:21
Круто осознавать, что у меня уже достаточно знаний, чтобы пройти на курсы :D Хотя мне они не нужны, по крайней мере сейчас. Я еще только на 2 курсе в универе и не могу пойти в компанию на курсы, разве что если на дистанционные. Сейчас сам стараюсь уходить в сторону веб-технологий и всякого такого, изучаю Hibernate сейчас, сервлеты изучал недавно и JSP и написал даже проект на сервлетах, который предоставил одному игровому серверу за небольшие, но все же деньги (проект - банхаб, чтобы у игроков была возможность получать информацию о банах и т.д.), JDBC вспомнил (так как раньше его изучал, а потом не было нужды его использовать, так как продолжил курсы на JavaRush проходить). В скорых планах уже Spring, heh :)
Александр41 уровень, Москва
21 декабря 2017, 08:16
Кто-нибудь знает, почему статус курса проходится не сменился на пройден? Все лекции открыты. Или это доп квест?
Valery40 уровень, Москва
21 декабря 2017, 09:43
В комментариях на курсе я встречал людей с уровнем 41. Что-то подсказывает мне, что это уже стажировка. А так - да, курс окончен, поздравляю! Теперь в свободное плавание и задачки задавать будет уже жизнь в лице заказчиков, работодателя и т.д. и т.п., если, конечно, работать профессионально. Удачи!
Александр41 уровень, Москва
21 декабря 2017, 15:19
Не угадали про стажировку )
22 декабря 2017, 16:15
Тоже не меняется статус с проходится на пройден. И уровень остается 40. Все лекции открыты и задачи решены. Стажировка у меня пройдена тоже. В чем может быть проблема?
Александр41 уровень, Москва
25 декабря 2017, 15:34
видимо, уже решено )
ilya35 уровень
26 декабря 2017, 10:57
на работу не устраивали пока статус не сменишь ?)
Александр41 уровень, Москва
26 декабря 2017, 12:37
не брали, говорили только с 41 левела )
Игорь35 уровень
15 декабря 2017, 09:07
Прежде чем разбирать Spring и Hibernate, советую сперва изучить что такое сервлеты, контейнер сервлетов, какие запросы бывают и т.д.. Потом прочесть хоть первую половину книги "Идеальный код", а потом поверхностно изучить MySql. Контейнер зависимостей Spring, а так-же Spring MVC, работает поверх тех же сервлетов. А hibernate хватит основных анотаций, и может в общих чертах какие состояния объекта и т.д. ВАЖНО!!! Что-бы сохранить массу вашего времени, после Spring Core советую почитать за SPRING BOOT!!! ОЧЕНЬ полезная вещь. Если что-то нужно уточнить пишите в личку. ---Добавляю: очень хорошо разберите SOLID принципы, особенно последний. И неплохо бы обратить взор на TDD.
Игорь35 уровень
16 декабря 2017, 09:10
Как я начинал путь по технологиям: 1.сервлеты -> сервлет контейнер(Head first Jsp and Servlets книга).2. sql(youtube + w3school(я там разбирал)).3. "Идеальный код" книга и думаю можно начинать искать работу. Пока ищешь работу--- Spring core, mvc, boot, Hibernate. P.S. сборка проектов(что это такое найдешь в интернете) Maven или Gradle. Книги читайте выборочно, думаю из пункта 1 - хватит первой половины или даже трети, пункт - 3 первая половина.
Игорь35 уровень
16 декабря 2017, 09:18
Когда будете делать тестовые задания, да и вообще запускать Spring, еще раз советую обратить внимание на Spring Boot. Если-бы я когда-то прочитал это сообщение,да еще и заметил, что чел делает на этом акцентированное внимание, сэкономил-бы много личного времени. P.S. Самое лучшее решение - это простое решение. Сам не люблю писать комментарии или умничать, но в свое время не мог найти стоящего "туториала" начинающего Java программиста, надеюсь что кому-то буду полезен. Обращайте внимание на качество своего кода, это очень важно в разработке. "по статистике 10 часов тратится на чтение кода, и всего один час на написание." Поэтому понятный и качественный код must have.
Игорь35 уровень
16 декабря 2017, 11:08
Может займусь как время будет. Сюда захожу не часто, поэтому лучше не ждать статьи, а самостоятельно начать хотя-бы ознакомление с технологиями. В одной статье сложно будет описать все даже поверхностно. Еще добавил бы, что неплохо знать сложность алгоритмов и хотя-бы как устроены основные структуры данных и как они реализованы в JDK.
Nikolay25 уровень, Киев
26 июня, 19:14
А где лучше учить Спринг? Есть источники/л-ра?
Игорь35 уровень
30 июня, 21:03
Spring in action книга, spring для профессионалов, документация у них четкая-!, youtube и т.д. И пробуй ручками что-то писать. Недавно видос четкий глянул (Spring потрошитель) на youtube, но не советую с него начинать, если хотя бы основ не знаешь, просто добавь в закладки и обязательно пересмотри раза 2+(с первого раза сам все не запомнил). Не читай все полностью в книгах и не пиши все примеры, просто разберись со Sping Core, MVC, Boot и пробуй свое что-то создавать. Вообще Spring in action классная книга. Плюс почитай статьи на хабре за IoC его плюсы и т.д.
Эрик Айткулов34 уровень, Санкт-Петербург
7 декабря 2017, 14:03
было бы здорово добавить бы в какой нибудь из курсов лямбды, функциональные интерфейсы, стримы.
Kirilo Lozitsky40 уровень, Киев
7 октября, 19:46
На Stepik есть очень хороший курс на эту тему. Еще и английский можно подянуть.