207 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Где обучиться java программированию

Как правильно учиться Java-программированию: история одного тьютора

Моя история

Все началось больше десяти лет назад. Решив стать программистом, я начал изучать несколько языков, чтобы в конечном итоге найти «свой» язык.

В Java я влюбился с первого взгляда! Я с головой погрузился в программирование: я посвящал написанию кода по 10-18 часов каждый день. С каждым днем получалось все лучше и лучше.

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

Я был счастлив…почти. Мне казалось, что я упускаю какую-то часть своей самореализации.

Я активно искал, чего же мне так не хватает. Подсказкой стало призвание моих родителей. Обучение! Теперь я понимаю, что унаследовал от них желание преподавать.

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

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

Это ценный опыт: теперь я знаю, какие ошибки существуют, как их не допустить, как их исправить.

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

Давайте по порядку.

Распространенные ошибки и методы борьбы с ними

1. Слишком много теории в самом начале

Итак, вы начали изучать язык программирования.

Что нужно сделать в первую очередь? Прочитать много теоретического материала, а затем сесть писать программу? Не совсем. Нужно прочитать совсем немного и сразу приступить к написанию кода.

Вспомните детский сад или начальную школу. На уроке рисования вам читали лекцию о том, как нужно рисовать? Я уверен, что нет. Вы и другие дети просто взяли в руки карандаши и начали рисовать. В лучшем случае, учитель показал, как правильно держать карандаш и объяснил, что из красного и синего получается фиолетовый. Или школьные спектакли: вам дали роль огурца или брокколи. Не думаю, что исполнителям таких ролей объяснили систему Станиславского.

Та же история и с программированием. Просто начните писать код. Теория важна, но не в самом начале обучения.

2. Желание получить все и сразу

Этот параграф снова о «вреде теории». Некоторые студенты погружаются в нее довольно глубоко: им хочется уже с первого задания понимать каждое слово в System.out.println. Это непосильная задача. Всему свое время. Лучший способ изучить теорию Java — это учиться поэтапно, постепенно увеличивая сложность. Несколько месяцев спустя вы с лёгкостью справитесь с задачей, которая сегодня кажется непосильной.

Сначала изучите основы Java Core, а уже потом начинайте читать книги и документацию — так чтение будет даваться вам намного легче.

3. Слишком мало практических заданий

На первых этапах обучения нужно освоить написание кода — я настаиваю на этом.

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

Конечно, сложные задания тоже нужны. Одна сложная задача на 10–20 простых — вот идеальное соотношение. Где взять все эти задания? Об этом расскажу позже.

4. Слишком сложные задания, работа над которыми занимает целую вечность

Некоторые новички просто не знают, как прекратить работу над слишком сложной задачей. Если у вас что-то не получается, займитесь чем-нибудь более простым и вернитесь к сложному заданию позднее. Но если решение нужно вам прямо сейчас, смотрите 5-й пункт.

5. Неумение задавать вопросы

Есть новички, которые вообще ничего не спрашивают. Они боятся задать глупый вопрос, боятся выглядеть глупо в глазах опытных программистов. Есть и другие: они постоянно задают вопросы в стиле «Эй, ребят, здесь что-то пошло не так!».

Итак, что же делать, если что-то пошло не так? Задавать вопросы! Спросите на форумах—например, на Javaranch или stackoverflow. Спросите у своего наставника, если он у вас есть.

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

6. Ошибка самоучек: невнимание к фактическим ошибкам в коде

Когда самостоятельно учишься программировать, довольно сложно понять, насколько хорошо работает твой код. Вдруг он выдает идеальный результат только при определенных условиях? Вдруг вы что-то упустили из виду? Если у вас есть наставник, который все проверит, то все в порядке. А если нет? Научитесь задавать себе вопрос «а что, если?» и проверять, как программа работает в разных условиях. В будущем этот навык поможет вам писать модульные тесты.

Читать еще:  Кто губернатор Хабаровска

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

7. Отладка кода? Извините, это не для меня!

Дорогой новичок-разработчик, тебе придется заниматься отладкой. Тем более, что с помощью современных IDE это довольно просто. Стоит один раз научиться отладке и у вас появится навык, полезный для обучения и будущей работы. Начинайте заниматься отладкой с первого месяца обучения.

8. Обучение ради обучения

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

9. Вы пишете код, не придумав решение задачи

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

10. Страх экспериментов

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

A. Решите проблему обычным, проверенным способом и проверьте, получилось ли.

Б. Попытайтесь решить ту же проблему по-новому. Это не пустая трата времени. Представьте, что решаете уже другую проблему. У вас уже есть правильное решение, теперь можно вдумчиво и неспеша попробовать найти новое. Научившись чему-нибудь новому, возвращайтесь к уже выполненным заданиям и пробуйте снова решить их с помощью новых знаний.

11. Потеря мотивации из-за трудностей

Это очень распространенная проблема среди самоучек и тех, кто учится медленнее, чем все остальные в группе.

Поймите, что программирование — это не ядерная физика.

Если приложить достаточно усилий, почти любой может этому научиться.

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

Полезные ссылки для каждого новичка в Java

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

CodeGym. «Это он», — подумал я, когда нашел CodeGym. — «Это тот самый курс, о котором я мечтал».

Этот курс Java Core, на 80% состоит из практики. Он поможет как новичкам, так и опытным программистам. Главное достоинство CodeGym — это его система упражнений. На сайте полно заданий: можно каждый день заниматься и улучшать свои навыки. На CodeGym около 1000 упражнений для разных уровней.

Делать упражнения в CodeGym можно с помощью IDE в браузере или используя плагин для IntelliJ IDEA, самой популярной Java IDE. Интеллектуальная система проверки проверит ваш код и укажет, что нужно исправить. Это особенно полезно самоучкам и ученикам, у которых есть наставник: ни один человек не может правильно проверить 10 программ у 20 учеников в день. А система проверки может.

CodeGym разделен на 40 уровней. Каждый уровень состоит из 15–30 заданий на написание кода, 10–20 уроков по Java и мотивирующих статей. Таким образом, решая задачи, вы проходите уровень за уровнем— это своего рода игра, в которую вам не надоест играть. Еще один плюс: у CodeGym веселые, полные юмора уроки, мне они очень нравятся.

CodinGame. Решение заданий на CodinGame — это хороший способ улучшить навыки программирования. Этот сайт предназначен для людей, которые как минимум уже знают основы программирования (на Java или на других 22 языках). Есть и сложные задания для опытных разработчиков.

У CodinGame есть IDE для браузера (как и у CodeGym). С ее помощью можно писать код и компилировать его в том же окне — так вы видите результаты в режиме реального времени. Это не онлайн-курс, а сложные упражнения, связанные с реальной разработкой игр. Сделав упражнение, вы получаете визуальную обратную связь: видите небольшое изменение в игре.

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

Сначала вам дается восьмой кю (уровень мастерства). Добравшись до первого кю, вы достигнете вершины мастерства.

Читать еще:  Подоконники Moeller

Вывод

Программируйте ежедневно, уделяйте этому много времени. Используйте приведенные выше сайты с упражнениями. Иногда изучайте теорию. Задавайте много вопросов. Начинайте программировать! Даже не сомневайтесь.

Программист Java

Программист Java — специалист, который создает приложения разной сложности, используя старейший язык программирования. Он не только пишет программный код, но и занимается внедрением, тестированием, русификацией программ, модификацией кода. Профессия подходит тем, кого интересует информатика (см. выбор профессии по интересу к школьным предметам).

Краткое описание

Мир увидел язык программирования Java в 1995 году, в конце XX века он был очень популярен, хотя и сегодня его используют более 9 млн. разработчиков. На этом языке написаны следующие продукты:

  • видеоигры;
  • приложения для «Андроид»;
  • клиент-серверные приложения и другие.

IT-специальности сегодня по праву могут считаться самым перспективным направлением, но этот сегмент никогда не испытывает дефицит кадров. И, несмотря на это, программисты Java были и будут востребованы на рынке труда, ведь на долю этих сотрудников приходится около 14% всех IT-вакансий.

Описание профессии

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

Работа программиста, выбравшего язык Java, состоит из таких этапов:

  • работа с заказчиком;
  • разработка архитектуры, программных модулей, Enterprise Application Integration;
  • тестирование и внедрение;
  • исправление ошибок, если они были замечены во время работы с продуктом;
  • дальнейшая техническая поддержка.

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

Классификация

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

  • молодые специалисты, которые знают основы языка программирования, но пока не умеют применять их на практике. Могут работать помощниками или принимать участие в проектах с малым бюджетом и низким уровнем ответственности;
  • младший разработчик (Junior). Имеет минимальный опыт работы, умеет исправлять небольшие ошибки, его работу проверяют коллеги, ведь в случае упущений именно они будут отвечать перед начальством;
  • разработчик (Java Middle). Этот специалист уже имеет опыт работы, он может самостоятельно писать код, который не нуждается в проверке, работает с заданиями средней сложности;
  • старший разработчик (Senior). Легко справляется с любыми задачами, несет полную ответственность за сроки, написанный код, внесенные изменения и т. д.;
  • руководитель группы (Teach Lead). Специалист высокого уровня, который не только занимается написанием кода, но и раздает ТЗ, контролирует работу младших сотрудников;
  • архитектор (Architect). Самый высокооплачиваемый специалист, занимающийся проектированием, который может самостоятельно вытянуть весь проект.

Наиболее востребованы на рынке труда разработчики и старшие разработчики, труд которых могут оплатить небольшие компании. Руководители и архитекторы — штучные специалисты, которых берут в штат представители среднего и крупного бизнеса.

Плюсы и минусы профессии

Плюсы

  1. Вакансий действительно много, поэтому найти работу — не проблема.
  2. Удаленная работа.
  3. Перспективное направление.
  4. Работа в творческой команде.
  5. Если специалист работает в офисе, то для него создаются лучшие условия: бесплатное питание, кондиционер, хороший ПК и т. д.

Минусы

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

Важные личные качества

  1. Целеустремленность.
  2. Способности к точным наукам.
  3. Сосредоточенность.
  4. Умение руководить рабочей группой.
  5. Аккуратность.
  6. Пунктуальность.
  7. Лингвистические способности.
  8. Желание самообучаться.

Обучение на программиста Java

В конце прошлого века более 60% программистов были самоучками, на что работодатели закрывали глаза. Но сегодня все изменилось, поэтому первое, что необходимо предъявить во время трудоустройства — это портфолио и диплом о высшем образовании. Изначально необходимо получить специальность, связанную IT-направлением (информатика, вычислительная техника, математика, программная инженерия и другие). Заметим, что для поступления в вуз необходимо сдать 4 экзамена по ЕГЭ: русский язык, ИКТ, информатика, математика. Успешное прохождение тестов — гарантия поступления на бюджет!

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

Как стать Java программистом и связать свою жизнь с IT?

Дата публикации: 2016-10-10

От автора: на этом языке программирования работает примерно 3 миллиарда смартфонов, 125 миллионов телевизоров и все до единого Blu-Ray проигрыватели в мире. Этот язык регулярно занимает призовые места в рейтингах разработчиков ПО и является самым востребованным среди крупнейших IT-компаний. Он является техническим феноменом и работает абсолютно на любом устройстве, что соответствует его принципу «написал один раз — запускай везде» (WORA — «write once, run anywhere»). Кто догадался, поднимите руки! Конечно же, это язык Java. И сегодня я раскрою вам все карты и расскажу всю правду о том, как стать Java программистом с нуля! Устраивайтесь поудобнее!

Несколько фактов о Java

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

Читать еще:  Сколько ребёнок должен спать в 7 месяцев

Java — это «модный» и кроссплатформенный язык программирования. Он работает на любом устройстве с любой операционкой. На нем написаны все Google и Android-приложения. Ни по одному другому языку вы не найдете столько информации и обучающих материалов;

официальная дата выпуска языка — 23 мая 1995 г. Изначально он задумывался для интерактивного кабельного телевидения, но «не срослось». Изобретателем Java является компания Sun Microsystems, которую в 2010 г. выкупила Oracle;

многие путают Java и JavaScript. Если вы хотите заниматься front-end разработкой (веб-сайты, веб-приложения), то выбирайте второй вариант. Java — это back-end, т. е. разработка начинки приложений;

JavaScript. Быстрый старт

Изучите основы JavaScript на практическом примере по созданию веб-приложения

это объектно-ориентированный язык программирования, код которого выполняется специальной виртуальной java-машиной (JVM). В США примерно на 9 из 10 компьютеров установлена эта самая JVM;

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

Вы все еще здесь или побежали сделать себе чашку ароматного кофе? Тогда продолжим разговор о том, как стать Java программистом.

Установка программной среды

Как ни странно, у некоторых возникают проблемы уже на этапе установки программной среды Java. Для этого нужно перейти на официальный сайт компании-разработчика — Oracle. Ссылку на актуальную версию вы увидите в самом верху сайта. Вам нужны Java SE (Standard Edition) и Java Development Kit — набор инструментов для разработки. Обратите внимание, что существуют разные дистрибутивы под разные операционные системы.

Допустим, у нас Windows. Заходим в «Свойства системы» и смотрим, какая у нас система — 32-разрядная или 64-разрядная. Скачиваем файл, который подходит нам по разрядности. Если выберете неправильный дистрибутив, то при компиляции кода получите ошибку. После подтверждения Accept License Agreement нажимаем кнопку скачивания.

Каков инструментарий Java-разработчика?

Большую часть времени программист проводит в IDE (IntelliJ IDEA, Eclipse, WebStorm, NetBeans). IDE — это интегрированная среда разработки, специальный интерфейс для программирования. Он не только помогает при написании кода, но и упрощает использование других инструментов программирования. Некоторые советуют тем, кто хочет стать Java программистом с нуля, первые свои программы писать в обычном блокноте или Notepad++.

Может, элементарные программы и стоит писать в редакторе. Но в дальнейшем все-таки настоятельно рекомендую использовать IDE. У нее есть функции автодополнения кода, контроля синтаксиса, перехода к определению метода и многие другие. А интеллектуальные подсказки избавят вас от необходимости помнить все названия функций и их параметры, что просто физически невозможно.

При командной работе, когда над одной программой работает сразу несколько человек, нужно обязательно использовать, так называемую, систему контроля версий (Perforce, Git, Subversion и т. д.). Впрочем, системы контроля версий очень удобны и при работе в одиночку.

Примерный алгоритм изучения Java

Изучение основ языка Java. Первый шаг — это развитие в себе навыков логического мышления и изучение фундаментальных понятий синтаксиса языка программирования. Вооружившись книгой, статьей или обучающим видео, научитесь создавать с помощью IDE или текстового редактора простые Java-объекты, в которых заложены различные варианты поведения, в зависимости от входных данных.

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

JavaScript. Быстрый старт

Изучите основы JavaScript на практическом примере по созданию веб-приложения

Тонкости программирования. Ни в коем случае не брезгуйте тщательным изучением документации и жаргона Java-программирования. На этом этапе вы уже должны «мутировать» в зрелого программиста. Общайтесь с Java-гуру, которых вы найдете в тематических форумах и прочих средах, где собираются программисты. Показывайте им свой код, советуйтесь и советуйте другим — «накапливайте карму». Можете даже завести свой блог, публиковать на нем отрывки собственного кода и смотреть, что говорят о нем более опытные программисты.

Как начать программировать?

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

Источники:

http://medium.com/nuances-of-programming/%D0%BA%D0%B0%D0%BA-%D0%BF%D1%80%D0%B0%D0%B2%D0%B8%D0%BB%D1%8C%D0%BD%D0%BE-%D1%83%D1%87%D0%B8%D1%82%D1%8C%D1%81%D1%8F-java-%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8E-%D0%B8%D1%81%D1%82%D0%BE%D1%80%D0%B8%D1%8F-%D0%BE%D0%B4%D0%BD%D0%BE%D0%B3%D0%BE-%D1%82%D1%8C%D1%8E%D1%82%D0%BE%D1%80%D0%B0-feafd31941c3
http://www.profguide.io/professions/java_programmer.html
http://webformyself.com/kak-stat-java-programmistom-i-svyazat-svoyu-zhizn-s-it/

голоса
Рейтинг статьи
Ссылка на основную публикацию
Статьи c упоминанием слов: