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

До бесконечности и дальше: сколько времени требуется для изучения Java?

В этой статье “знать Java” не означает, что вы можете написать “программу Hello world”. Речь идет о том, чтобы знать Java достаточно хорошо, чтобы найти свою первую работу.

Автор оригинала: Alisa Korzh.

Итак, сколько времени требуется для изучения Java? Десять лет, десять недель или один день? Может быть, всю твою жизнь? Вы можете найти очень своеобразные ответы на этот вопрос на некоторых интернет-форумах. Давайте проясним это с самого начала. В этой статье “знать Java” не означает, что вы можете написать “программу Hello world”. Речь идет о том, чтобы знать Java достаточно хорошо, чтобы найти свою первую работу.

Девиз Базза Лайтера здесь, в названии, не совсем шутка. Вы действительно можете продолжать изучать Java или любой другой язык до конца своей жизни. Причина в том, что язык постоянно развивается, его сфера применения меняется и… Хорошие новости, друзья! Нет никаких причин для паники! Изучение Java-миссии, безусловно, можно завершить за 3-12 месяцев, однако есть много нюансов, которые мы обсудим в этой статье. Здесь мы также попытаемся ответить на вопрос “как быстро выучить Java”.

Как нам искать ответ на этот вопрос?

Вопрос “сколько времени требуется для изучения Java” довольно сложный. Мы разделили его на более конкретные подзадачи и ответили на них здесь. Чтобы быть более точным, мы использовали интервью со студентами CodeGym, открытые источники и статистику опроса, проведенного в конце 2019 года. Этот опрос был посвящен процессам изучения Java и поиску этой первой работы. Он проводился одним из местных подразделений Code Gym. Участниками опроса были студенты колледжа 30-го уровня и выше, которые нашли первую работу, связанную с Java, или приняли участие в стажировке на Java.

Что значит “Знать Java”?

Наиболее точным, хотя и очень общим ответом на этот вопрос было бы “лучше решить проблему с помощью Java. “Такой проблемой может быть цель “сдачи экзамена” или “получения работы”. Или это может быть техническая задача, либо большая “создать свой собственный проект, достаточно хороший для Play Market”, например, или небольшая, такая как “понять, как писать код, который делает то, что вам нужно”. Конечно, ваши проблемы со временем изменятся. После получения вашей первой работы вам нужно будет вырасти на должности (например, от младшего разработчика Java до среднего/Старшего разработчика Java). За первой задачей кодирования следует вторая.

сколько времени требуется для изучения Java

Далее, когда вы это сделаете, появятся какие-то новые цели. Давайте вернемся к нашему вопросу. Какие темы вы должны знать, чтобы написать “Я знаю Java” в своем резюме?

Студенты Java обычно изучают следующие темы:

  • Ядро Java или
  • Ядро Java + JUnit или
  • Основные базы данных Java + или
  • Основные инструменты Java + или
  • Основные библиотеки Java + или
  • Ядро Java + Весна + Весенняя загрузка + Переход в спящий режим или
  • Ядро Java + Android SDK или
  • …и все вышеперечисленные комбинации.

Все эти темы имеют одну общую черту. Это базовая Java, основы. Так что, если вы не знаете Ядро Java , вы определенно не знаете Java вообще. Поэтому изучение базовой Java-это шаг № 1 для каждого будущего разработчика программного обеспечения Java.

Ядро Java охватывает основные понятия языка:

  • Основные типы и объекты
  • Базовые конструкции (Специальные Операторы, Циклы, Ветви)
  • УПС Концепции
  • Классы-оболочки
  • Коллекции
  • Многопоточность
  • Потоки ввода-вывода
  • Обработка исключений Таким образом, ядро Java содержит основные типы, объекты, конструкции и принципы, а также наиболее важные библиотеки и фреймворки. Кроме того, ядро Java охватывает классы для сетей, безопасности, доступа к базам данных, разработки графического пользовательского интерфейса (GUI) и анализа XML.

В основном все пакеты “Core Java” начинались с ” java.lang..” Первая цель для каждого студента Java – изучить ядро Java.

Чему учиться после Java Core? Это зависит от того, для чего вы изучаете Java.

Ваш личный путь. Для чего вы изучаете Java?

В этой статье мы не рассматриваем такие варианты, как “Я изучаю Java просто для удовольствия” или “Я хочу преподавать Java в будущем”. Здесь мы говорим о профессиональном использовании Java в ИТ. В настоящее время чаще всего Java преподается для того, чтобы пойти одним из трех способов:

  • Разработчик Java, от стажера/Младшего разработчика до старшего разработчика
  • Разработчик Android, инди или в компании (от младшего до старшего)
  • Автоматизация контроля качества (с Java)

Разработчик Java

Пул разработчиков Java очень широк, и требования к знаниям Java заключаются в том, чтобы получить самую первую работу, которая может сильно различаться. Согласно опросу Code Gym, есть люди, которые получили свою первую младшую работу на Java, зная только ядро Java и ничего больше. Компании были готовы обучать их во время рабочих процессов. Однако это довольно редкое событие. Чаще всего такой человек может присоединиться к стажировке или становится стажером Java после сдачи некоторых экзаменов.

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

  • Ядро Java
  • API JDK
  • Java 8 (лямбды)
  • Библиотеки тестирования (JUnit)
  • Пружинный Каркас
  • Пружинный ботинок и пружинный MVC
  • Зимовать
  • JDBC Ниже приведена расширенная инфографика, основанная на коде Gymsurvey и анализе текущих вакансий Java для младших. Мы только отмечаем, что в нем изображена не сама Java, а также ряд других технологий, которые должны знать современные разработчики Java.

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

Разработчик Android

Разработчики Android могут работать в компании или иметь свои собственные проекты. Они должны точно знать ядро Java и некоторые другие технологии. Здесь у нас есть одна инфографика, которая демонстрирует путь разработчика Android.

сколько времени требуется для изучения Java

Что ж, в списке много пунктов, но не многие из них касаются непосредственно Java (только инструменты тестирования и фактически основная Java). Обычно разработчики соглашаются с тем, что изучение программирования на Android самостоятельно несколько проще и быстрее, чем разработка на предприятии.

Тем не менее, даже для тех, кто стремится к должности Java Junior, будет полезно создавать проекты для Android, чтобы тренировать свои навыки программирования.

Автоматизация контроля качества

Хорошая автоматизация контроля качества должна довольно хорошо знать язык программирования, это один из самых важных навыков для этой профессии.

Подключено к Java

  • Ядро Java (особенно ООП, Сбор, Файловые Операции)
  • Библиотеки тестирования (JUnit)
  • ИДЕЯ IntelliJ

Другие технологии:

  • Платформа Selenium RC/WebDriver
  • Объектная модель Страницы
  • HTML/CSS
  • SQL

Обычно путь к младшей автоматизации контроля качества несколько короче, чем у младшего разработчика Java. Точные цифры вы найдете в конце этой статьи.

Кто спрашивает? Портреты потенциальных студентов Java

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

Чтобы получить свою первую работу инженера-программиста, вам нужно будет не только изучить Java, но и понять основы информатики, объектно-ориентированного программирования и написать несколько проектов, которые могут продемонстрировать вашу работу. Я думаю, что это может занять где-то от девяти до двенадцати месяцев.

Я знаю, что это звучит как большая работа, но не расстраивайтесь! Это путешествие может быть по-настоящему увлекательным, если вы обнаружите, какой аспект кодирования приносит вам радость, и позволите себе поиграть”. Юлия Дейнега , разработчик программного обеспечения-самоучка. Юлия работает в LinkedIn в качестве инженера-стажера REACH. Кроме того, она создала Канал YouTube , чтобы поделиться своим опытом изучения компьютерного программирования и поиска работы в Силиконовой долине.

сколько времени требуется для изучения Java

Мы можем разделить тех, кто начинает изучать Java, на три основные категории:

  1. “Новички”. Нулевой опыт. Что ж, есть люди, которые ничего не смыслят в программировании.
  2. “”Середина”. Студенты с минимальным или хаотичным опытом программирования. Эти люди изучают программирование в школе, университете или на курсах, но это не было серьезным обучением.
  3. “Плюсы”. Разработчики программного обеспечения, знающие другие языки программирования (1 или более).

Согласно опросу, 49% наших студентов изучали базовое программирование в школах или на курсах до того, как они начали серьезно изучать Java.

  • 33,3% были абсолютно новичками
  • 17,6% знали хотя бы один язык программирования

Что положительно влияет на время учебы?

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

Выберите правильные источники

Вы можете найти много различной информации о Java в Интернете. В нем легко заблудиться. Иногда, если вы не понимаете тему, полезно поискать в Google новые источники, но прежде чем вы начнете, неплохо бы выбрать:

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

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

Будьте готовы учиться многому и последовательно

Джон Селавски, преподаватель Java и разработчик программного обеспечения, сказал в одной из своих статей, что иногда у него были ученики, которые удивительно хорошо программировали, но некоторые из них просто прекратили свое обучение. Их проблемы были не в свободном времени, возрасте или поле. Дело было не в способностях! Речь шла о последовательности. У всех успешных студентов было четкое расписание, и они придерживались его. Они добились прогресса, даже если иногда он был медленным.

Поэтому у вас должно быть расписание (вы можете взять его из своего основного курса или учебника) и установить время для обучения.

Вы хотите сделать программирование на Java своей профессией? Если это так, будьте готовы ежедневно учиться в течение 1-3 часов. Согласно опросу CodeGym, 52,3% наших успешных студентов ежедневно занимались от 1 до 3 часов.

сколько времени требуется для изучения Java

Хорошее соотношение теории и практики

Вы не можете научиться плавать, не пытаясь плавать, просто по книге. Та же история и с программированием. Вы не можете научиться программированию, не написав код. Программирование-это практическая деятельность. Важно начать писать код как можно раньше. Вам не нужно изучать слишком много теории сразу, особенно в первые месяцы учебы. Лучше изучать его небольшими порциями, а затем сразу же закреплять на практике. Итак, 20% вашего времени отводится на теоретические исследования и 80% – на практику.

Здесь самое подходящее место, чтобы вернуться к самому первому вопросу “Что значит знать Java” и уточнить ответ. Знать Java означает уметь писать код на Java. Не “знать о Java”, но уметь писать программы различной сложности и иметь некоторый опыт в таком кодировании.

Хорошее соотношение для легких и сложных задач

Новички довольно часто пытаются решить какие-то сложные задачи, пробуют их снова и снова. Если они будут делать это слишком долго, результат будет печальным. Это путь к потере мотивации. Новичкам выгоднее решать множество мелких и простых задач, чем несколько сложных. Хорошее соотношение для первых месяцев обучения-1 сложное задание к 10-20 простым.

И еще одно: если задача слишком сложна для вас и вы пытались решить ее несколько раз, наберитесь смелости… отложить ее до тех пор, пока не узнаете больше. Лучше решить еще несколько более простых задач, а затем вернуться в непроходимую крепость. Или … если вы все еще думаете, что сейчас подходящее время для ее решения, не бойтесь задавать вопросы. Это следующий пункт.

Уметь задавать вопросы

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

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

Так что, если что-то пошло не так, зайдите на форум и задайте вопрос! Это может быть Javaranch, или StackOverflow, или помощь в программном тренажерном зале, наверняка.

Лучшие форумы для того, чтобы задавать вопросы или искать ответы:

Итак, как долго я должен изучать Java, чтобы получить свою первую работу?

Мы приблизились к тому моменту, когда сможем ответить на главный вопрос этой статьи: сколько времени потребуется для изучения Java, прежде чем вы начнете рассылать свое резюме и получите свою первую работу?

Мы используем данные опроса и интервью со студентами для создания следующих графиков, в которых учитывался начальный уровень респондентов и одна из трех необходимых должностей. Для каждой группы мы определили временные интервалы, в течение которых они изучали ядро Java, и время, которое они потратили на изучение соответствующих технологий, необходимых для получения первой работы.

Внимание! Вот информация для чтения графиков.

“Новичок” – это человек с нулевым опытом программирования, “Средний” – это тот, кто немного изучал программирование в школе или на курсах. В случае разработчика Java и Android “Профессионал” означает человека, который хорошо знает один или несколько языков программирования.

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

сколько времени требуется для изучения Java
сколько времени требуется для изучения Java
сколько времени требуется для изучения Java

Общее время обучения указывает на момент, когда кандидаты начали рассылать резюме или завершили свой первый проект (тот, который начал приносить деньги). Согласно нашему опросу, в среднем на поиск работы уходит от месяца до трех. Эти месяцы поиска начинаются в конце изучения соответствующих технологий. Были счастливчики, которые нашли работу через неделю после отправки своего первого резюме, но были и те, кто потратил год на поиски.

сколько времени требуется для изучения Java

Выводы

Как долго нужно изучать Java? Согласно результатам исследований, скорость изучения Java и связанных с ней технологий в основном зависит от регулярности и начального уровня студента. Конечно, сейчас вы ничего не можете сделать со своим начальным уровнем, но регулярное обучение, безусловно, является вашей обязанностью.

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

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

Если вы будете следовать установленному графику, соблюдать правильный баланс теории и практики и ежедневно практиковаться не менее 1-3 часов,не бойтесь задавать вопросы, вполне возможно выучить Java до уровня, который позволит вам найти свою первую работу через 6-12 месяцев… А затем продолжайте свое обучение в качестве разработчика/специалиста по автоматизации контроля качества до бесконечности и за ее пределами!

P.S.: А теперь что насчет тебя? Как долго вы сейчас изучаете Java? Является ли этот процесс сложным?

Или, может быть, вы уже нашли свою первую работу, связанную с Java? Было ли это трудно? Или, может быть, вы просто начали его искать? Поделитесь своим опытом здесь!

Впервые был опубликован в блоге Codegym Java .

Оригинал: “https://www.codementor.io/@alice1002/to-infinity-and-beyond-how-long-does-it-take-to-learn-java-172kv5jnow”