Как изучить основы Java с нуля за 3 недели. Бесплатно и без курсов
Я сам занимаюсь программированием уже 20 лет, чуть меньше по времени работаю на позиции разработчика, имею педагогическое образование в области информатики, поэтому решил вложить свои «5 копеек» в образование новых программистов.
Было время: хотел организовать курсы, обучать людей по этим курсам, но понял что теорию давно уже хорошо описали в книжках. Нет особого смысла её переписывать своими словами. Гораздо интереснее практика. Лучше помогать людям практиковаться, улучшать свои навыки на реальных проблемах и задачах.
Первая задача, которую я перед собой поставил: как научить человека, который мало знаком с миром разработки, основам программирования. В качестве языка программирования выбрал Java на котором уже пишу много лет.
Методика самостоятельного обучения, которую я пропагандирую, исходит от практики. Хотя я и учился по специальности, связанной с информатикой, считаю себя самоучкой. Мне было так интересно, что я изучал темы вперёд и потом получал зачёт по ним автоматом т.к. знал уже гораздо больше.
Таким образом теории я читал очень мало. Просто ставил цель написать какую-то программу, например в те времена очень популярным был плеер Winamp и я пытался сделать его аналог (к слову всё получилось) и потом по ходу дела разбирался с возникающими проблемами. Получалось не всегда быстро, но очень эффективно!
Конечно написать сразу большую программу достаточно сложно, поэтому лучше начинать с небольших и постепенно наращивать сложность. Если совсем не знакомы с программированием, то традиционно надо начинать с простого «Hello World».
Итак вернусь к проблеме. Как быстро научиться программировать на Java? Наверное вы уже догадались — практиковаться и немного читать теорию, а не читать теорию, а потом пытаться практиковаться.
Я составил план развития (дорожную карту) на 17 дней, в который включил 27 задач для развития по 29 темам.
Темы, в которых в первую очередь должен разобраться начинающий Java программист. Разобраться конечно всё также на практике.
- Структура программы
- Вывод информации на экран
- Переменные и типы данных
- Операторы
- Ввод информации пользователем
- Оператор выбора
- Циклы
- Генерация произвольного числа
- Одномерные массивы
- Двумерные массивы
- Строки
- Символы
- Классы, объекты
- Свойства и методы
- Объектно-ориентированное программирование
- Инкапсуляция
- Наследование
- Полиморфизм
- Внутренние классы
- Интерфейсы
- Исключения
- Работа с файлами
- Работа с сетью
- Коллекции: ArrayList и HashMap
- Рекурсия
- Сортировка методом пузырька
- Сортировка выбором
- Сортировка вставками
- Бинарный поиск
Смотрите сколько
тем. Если просто прочитать теорию по
этим темам за те же 17 дней, то в голове
будет полная каша. Но если решить
небольшую задачу, то результат не
заставит себя ждать. Проверено мной
неоднократно)
Дорожная карта начинающего Java-разработчика
Всё это я оформил в виде pdf-файла с практическими задачами. Его выдаёт бот https://t.me/TrueProgStartBot Не закидывайте сильно помидорами. Бот просит подписаться на канал https://t.me/trueprogru, в котором я также публикую задачки для самостоятельного решения и минимум теории, которые должны знать начинающие разработчики. Файл сделал не «на шару». На его подготовку потрачен целый рабочий день.
Наверняка возникнет вопрос: почему в заголовке статьи обозначены 3 недели, а по факту дорожная карта на 17 дней? В конце дорожной карты есть итоговое задание, которое также займёт время. Если вы до него доберетесь и сделаете, то с удовольствием дам обратную связь по коду.