Рубрики
Без рубрики

Как Изучать Java И Не Скучать

Даже самый быстрый и супер талантливый студент, который обожает свой предмет изучения, иногда устает и скучает от этого процесса. Это естественная вещь. Каждый процесс обучения содержит рутину, и если вы хотите добиться успеха в своем деле, вы не можете просто избежать этого. Помечено как начинающие, java, кодирование, обучение.

Даже самый быстрый и супер талантливый студент, который обожает свой предмет изучения, иногда устает и скучает от этого процесса. Это естественная вещь. Каждый процесс обучения содержит рутину, и если вы хотите добиться успеха в своем деле, вы не можете просто избежать этого.

Это правило даже усиливается, когда речь заходит о такой многогранной области, как программирование. В этой статье я рассмотрю несколько подходов к обучению и расскажу вам, как стоит изучать программирование, чтобы не утонуть в рутине и не потерять мотивацию.

Прежде всего, где изучать Java или другие языки?

Есть разные способы.

Классика: колледжи и университеты

В прежние времена высшее образование было единственным логичным путем к разработке программного обеспечения, но даже тогда было много исключений. Если вам посчастливится учиться в хорошем университете с классными и прогрессивными преподавателями, высшее образование, конечно же, будет вашим преимуществом. Особенно если вы хотите заниматься наукой.

Тем не менее, в реальной жизни лишь небольшая часть разработчиков программного обеспечения занимается наукоемкими задачами. Ваши интервьюеры ожидают от вас не отличного диплома, а хороших практических навыков. Я сомневаюсь, что вас не возьмут на работу, если вы способны решать реальные проблемы. Однако, если вы не будете… Зачем вам нужна такая работа?

Плюсы:

  • Престиж.
  • Фундаментальные знания, которые помогут вам в работе инженера-программиста.
  • Опыт, который вы получили в своих учебных проектах.

Аферы:

  • 4 или более лет обучения.
  • Некоторые предметы могут быть пустой тратой вашего времени.
  • Не все преподаватели и учебные программы адаптируются к современным реалиям.
  • Очень часто вы не получаете реальных практических навыков для реального программирования.
  • Хорошие колледжи стоят довольно дорого.

Куда пойти, если вы действительно хотите получить степень в области компьютерных наук? Универсального ответа нет, но вы можете попробовать поискать в Мировом рейтинге университетов .

Оффлайн/Онлайн-курсы с фиксированным временем занятий

Хорошая новость: автономные курсы программирования длятся гораздо меньше, чем учеба в университете. Обычно они занимают стандартный семестр, то есть около 4-5 месяцев. Эти курсы напоминают лекции и практические занятия в университете, которые проходят по определенному расписанию онлайн или оффлайн.

Плюсы:

  • У вас есть определенный график, план, составленный профессионалами. Таким образом, вы знаете, что делать на следующем шаге.
  • Ваш репетитор проверяет ваш код и знания.
  • Вы можете проконсультироваться со своим репетитором.
  • Обычно вы можете обсудить свои проблемы со своими одноклассниками.

Аферы:

  • На таких курсах материал преподносится очень лаконично. Если вы пропустите пару занятий, вы можете значительно отстать от группы.
  • Они довольно дорогие.
  • Для хорошего результата ваш репетитор должен быть одновременно хорошим программистом и хорошим учителем.
  • Преподаватель слишком занят, чтобы уделять достаточно времени каждому ученику
  • Вы из маленького городка? Я не думаю, что вы найдете хорошие курсы для разработчиков программного обеспечения в автономном режиме.

Онлайн-курсы с видеолекциями, книгами, учебными пособиями

Хорошие лекции ценятся на вес золота. Однако не стоит забывать, что программирование – это в первую очередь практическая деятельность. Поэтому лекции, размещенные на YouTube, на веб-сайте или на бумаге, очень полезны, но это только часть исследования и не самая важная.

Плюсы:

  • Четкая структура.
  • Фундаментальные знания.

Аферы:

  • Вы не станете программистом, просто читая или слушая лекции.
  • Даже если вы найдете упражнения в своих книгах или видеолекциях, вам нужен кто-то, кто проверит ваши решения.
  • Недостаточно задач.
  • Вы должны контролировать себя, чтобы регулярно учиться.

Поэтому использование таких курсов или книг – хорошая идея, но это не основа вашего обучения.

Современные практические онлайн-курсы и сборники заданий

В последние годы появилось множество интерактивных онлайн-курсов и приложений. Они предлагают вам задания по написанию кода. Иногда есть встроенный валидатор кода. Лично мне очень нравится эта тенденция. Я был бы гораздо счастливее иметь такие коллекции интерактивных заданий во время моего обучения.

Плюсы:

  • Практика. Вы действительно учитесь программировать.
  • Интересные задачи.

Аферы:

  • Обычно сборники заданий не подходят для полных новичков, они требуют некоторых предварительных знаний.
  • Иногда эти коллекции не имеют структуры и лекций, поэтому вам нужно использовать другие источники.
  • Опять же, вы должны контролировать себя, чтобы регулярно учиться.

Итак, что же вам следует делать? Как выучить Java?

Практика – это №1!

Слишком много “минусов” в каждом абзаце, не так ли? Однако это не означает, что не существует подходящего метода обучения программированию. На самом деле, в каждой категории вы можете найти очень хорошие решения для вас. Кроме того, ваше личное сочетание этих способов – действительно хорошая идея. Например, прочитайте Книга по Java вам нравится все вместе решать проблемы с кодированием из онлайн-коллекции. Ходите на курсы с наставником и… дополнительно решайте проблемы с кодированием. Изучаю информатику в университете и… опять же, решаю проблемы с кодированием. Не случайно я целых три раза упоминал о практических заданиях. Я искренне уверен, что практика – это тот волшебный ключ к успешному развитию программиста. Поэтому мой ответ таков: изучайте Java где угодно, но решение множества проблем с кодированием является обязательным. Я имею в виду, пишите код каждый день, даже если у вас нет такого домашнего задания от вашего учителя.

Источники задач:

CodeGym — онлайн-курс Java Core с 1200 задачами по кодированию (от самых простых до довольно сложных), валидатором и лекциями… GeeksforGeeks — хороший ресурс с множеством заданий и различных курсов. Вы можете найти здесь множество задач по кодированию для понимания алгоритмов и решения головоломок. CodeWars — вы можете найти там разные головоломки, их действительно интересно решать.

Как избежать скуки и не потерять мотивацию

Ставьте перед собой цели

Это действительно легко, если вы учитесь в университете или на курсах, у вас просто есть свое расписание. Однако что вам делать, если вы изучаете Java в полном одиночестве? Хорошая идея – поискать расписание онлайн-курсов для начинающих с высокими рейтингами. Обычно я предлагаю своим ученикам следующее расписание + список дел

(Я приведу его здесь в краткой форме, без подробностей)

Ядро Java и немного больше

Процесс обучения длится от 2 до 6 месяцев в зависимости от предыдущего опыта студентов и времени, которое они готовы посвятить своему обучению.

Изучение некоторых технологий, отличных от Java, которые обычно используют работу разработчика программного обеспечения

Это длится от нескольких дней до 2 недель в зависимости от технологии.

  • Git и bitbucket/github (вы можете довольно быстро изучить его, например, с помощью learngitbranching и использовать его для своих проектов позже)
  • JavaScript (каждый разработчик должен немного знать этот язык)
  • SQL или язык структурированных запросов, используемый в программировании и предназначенный для управления данными, хранящимися в системе управления реляционными базами данных (СУБД), или для потоковой обработки в системе управления потоками реляционных данных (RDMS). SQL легко освоить на начальном уровне.

Овладение вашими знаниями

После второго шага вы многое знаете, и хорошая идея – выбрать, что делать позже. Вы можете изучить Android для мобильной разработки или множество корпоративных технологий, таких как Spring и Hibernate, если вы планируете работать в компании отраслевого уровня. Однако эти технологии трудно освоить самостоятельно. Так что вам лучше найти наставника, курсы или стажировку. И еще одно: сейчас самое подходящее время написать свой собственный проект. Это может быть игра или приложение для Android, что-то, что вы можете добавить в свое резюме.

…Это лишь приблизительный способ. Вы можете создать свой собственный список дел и придерживаться его. Поверьте мне, тикать очень приятно. Я рад, что некоторые современные онлайн-курсы интегрируют мотивацию и геймификацию в образовательный процесс.

Например, в курсе CodeGym Java, помимо обучающих лекций и огромного количества заданий, есть мотивационные лекции. Вы прокачиваете своего персонажа, переходя от уровня к уровню. Каждый уровень содержит несколько лекций и множество заданий. А также, решая задачи, вы набираете очки — темное дело, которые вы тратите на открытие новых лекций и переход на следующие уровни.

В CodeCademy достижения и значки очень хорошо вплетены в курс. Кроме того, эти курсы имеют очень удобный интерфейс.

Codewars – хороший сайт для студентов, изучающих Java от среднего до продвинутого уровня, где вы решаете приятные задачи и головоломки. Вы начинаете с кю 8 (ранг), и ваша цель – повысить его до самого высокого ранга, кю 1. Это мотивирует.

Сохраняй равновесие. Знать, как правильно укладывать

Очень важно определить, когда вам не хватает знаний и навыков для решения той или иной проблемы, или вы просто слишком ленивы. На первых этапах вашего обучения лучше бросить учебу немного раньше. В то время как ваши навыки кодирования растут, наоборот, лучше “потерпеть” немного дольше, пытаясь решить сложную проблему.

Как решить проблему с кодированием. Примерная процедура, позволяющая избежать бессмысленной укладки.

1 – Во-первых, вам нужно понять это условие.

1.1 – Если вы прочитали это несколько раз и все еще не понимаете, перейдите к шагу

1.2 – Если вы получили условие, не спешите сразу же кодировать. Постройте приблизительный алгоритм решения в вашем. Появляется ли алгоритм?

1.2.1 – Если нет, перейдите к шагу 2.

1.2.2 – Если да, начинайте кодировать.

1.3 – Если что-то работает неправильно, используйте пошаговый отладчик go with your IDEA и попытайтесь понять, что работает неправильно.

1.4 – Все еще не работает? Проанализируйте алгоритм. Попробуй это изменить.

1.4.1 – Если вы не знаете, что делать, в конце концов, инструкции отладчика вам ничего не говорят, самое время перейти к шагу 2.

1.4.2 – Если вы знаете, что делать, что ж, просто сделайте это.

2 – Попросите о помощи.

2.1 – Если вам помогли, вернитесь в ту точку, из которой вы пришли сюда. Если вам не помогли, оставьте эту задачу, а пока попробуйте решить другую задачу.

Внимание, пожалуйста! Не стесняйтесь обращаться за помощью! Каждый программист когда-то был новичком, и каждый программист, даже самый лучший профессионал, использует форумы для своей работы.

Использовать Javaranch (форум для начинающих) или Стековый поток (самый популярный форум для разработчиков).

Научитесь отвлекаться на… другая тема для изучения программирования

Иногда вы чувствуете себя подавленным и уставшим от своего графика. Если вы самообучаетесь, то сейчас самое подходящее время… сделать ход конем. Попробуйте что-нибудь связанное с программированием, но не с вашей непосредственной темой обучения. Что бы это было?

  1. Вы можете начать думать о своем собственном проекте, особенно если вы уже знаете Java Core.
  2. Если вы не чувствуете себя уверенно, попробуйте выполнить проект, используя пошаговые инструкции:
  • На YouTube есть много подходящих видеороликов. Например, Сделайте игру в крестики-нолики – учебник для начинающих Java или что—то в этом роде.
  • В Code Gym есть увлекательный и бесплатный раздел Игры . Там вы можете создавать свои собственные версии некоторых легендарных видеоигр. Теперь это Сапер, 2048 и Змея. Каждая игра разделена на два десятка подзадач и пошаговых инструкций. Вы получаете свою подзадачу и советы, затем пишете свой код, а когда заканчиваете, ваш код проверяется системой auto CodeGym. Если код работает правильно, вы переходите к следующему шагу.
  • Робокод . Это игра, в которой вы учитесь разрабатывать боевой танк-робот на Java. Это один из первых игровых проектов Java, которые все еще живы, и это увлекательно.
  1. Попробуйте какие-нибудь другие технологии или темы. Если вы устали от Java, возможно, сейчас самое подходящее время изучить основы JavaScript или SQL. Как я писал выше, если вы планируете стать разработчиком программного обеспечения, вы должны их знать. Или, возможно, изучите интересные библиотеки Java или фреймворки для вашего следующего проекта. Это может быть libGDX если вы заинтересованы в разработке мобильных/инди-игр.

Выводы

Помните: каждый ученик страдает от скуки и время от времени теряет мотивацию. Однако есть разные способы бороться с этим, просто не останавливайтесь и продолжайте учиться для своей будущей профессии.

Оригинал: “https://dev.to/selawsky/how-to-learn-java-and-not-getting-bored-j3d”