Java как учить: С чего начать изучение Java программирования
Как правильно учиться Java-программированию: история одного тьютора | by Вероника | NOP::Nuances of Programming
Моя история
Все началось больше десяти лет назад. Решив стать программистом, я начал изучать несколько языков, чтобы в конечном итоге найти «свой» язык.
В 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-программистов. Здесь вы найдете сложные задачи, а не уроки.
Сначала вам дается восьмой кю (уровень мастерства). Добравшись до первого кю, вы достигнете вершины мастерства.
Вывод
Программируйте ежедневно, уделяйте этому много времени. Используйте приведенные выше сайты с упражнениями. Иногда изучайте теорию. Задавайте много вопросов. Начинайте программировать! Даже не сомневайтесь.
Перевод статьи John Selawsky: How to fix your Java learning: a story of one tutor
Материалы для изучения Java
Не секрет, что Java сейчас является одним из самых популярных и востребованных языков. Редакция tproger подготовила для вас подборку материалов, по которым вы сможете с легкостью овладеть этим языком программирования.
Oracle Java Docs
Официальная документация от Oracle. Написана немного сухим языком и рассчитана на тех, кто уже умеет программировать, поэтому не особо подходит для новичков. Тем не менее, эта документация является полным справочником по Java, поэтому если вам что-то нужно узнать — будьте уверены, вы найдете это здесь.
Javarush
Сайт для изучения Java на практических задачах на определенные темы. Подходит как матерым профессионалам, так и самым новичкам. А весь секрет в игровой подаче материала — в процессе обучения вы будете наблюдать за развитием сюжета очень необычной истории 🙂 Единственный недостаток — после прохождения первых нескольких уроков сайт начинает требовать оплату, которая, впрочем не является такой уж и большой.
eax.me
Блог программиста, который пишет о Java и не только. Особенно интересной является эта статья, в которой собран список задач и программ, которые надо написать разработчику, начинающему изучать какой-либо язык, чтобы полностью освоиться с ним.
LearnJava Reddit
Подраздел Reddit, посвященный изучению Java. Там вы можете спокойно задавать вопросы и получать на них ответы, не боясь, что вас посчитают невеждой 🙂
1000+ часов видео по Java
Огромная подборка обучающих видео по Java, опубликованная на известном сайте habrahabr.ru.
Head First in Java
Мировой бестселлер из серии Head First от O’Reilly. Эта книга поможет вам отлично овладеть Java, начиная с нуля, не заскучав в процессе 🙂
Блог plumbr.eu
Блог, посвященный проблемам производительности Java. Здесь новички смогут узнать о многих подводных камнях языка.
Stepic
Сайт с онлайн-курсами по программированию и не только. В частности, есть уже прошедший базовый (несмотря на название, там учат не только примитивным вещам) курс по Java.
tproger
Большое количество интересных и полезных статей про Java на русском языке.
Лучший Способ Начать Изучать Java с Нуля
Разработка и программирование программного обеспечения стало основой множества привычных на сегодня нам вещей. Без программистов большая часть современных технологий попросту бы не существовала. Программисты важны и Java является одним из самых гибких и распространенных языков программирования в мире – фактически, большая часть приложений в вашем смартфоне (если вы используете Android) скорее всего создавалось именно с помощью Java. Как вы понимаете, это указывает на огромный спрос на Java-разработчиков, а также на обучающие материалы, позволяющие освоить Java с нуля.
Это руководство является одним из таких материалов, которое поможет вам узнать о Java, его использовании, причинах его популярности и способах изучения. Мы рассмотрим лучший способ пройти обучение Java, а также расскажем об основных источниках информации, которые будут невероятно полезны новичкам.
Итак, без лишних слов давайте найдём лучший способ освоить Java с нуля.
Что Такое Java?
Java является одним из самых популярных языков программирования в мире. Это низкоуровневый язык, который может использоваться для различных платформ, но имеет множество функций высокоуровневого языка. Разработчики на Java используют его для целого ряда различных вещей, включая создание приложений, программирование бэкенд части сайта и даже разработки игр.
В сравнении с другими языками программирования, Java имеет целый набор особенностей, которые выделяют его на фоне других:
- Он независим от платформы. Это означает, что в отличие от большинства других языков, он может быть использован практически на любой платформе или операционной системе. Именно по этой причине он получил такое широкое распространение в индустрии программирования. Это также означает, что освоить Java программирование будет полезно не только для одной сферы или области применения, но и для всей индустрии в целом.
- Он легко читается. Это делает его невероятно понятным даже для новичков в сфере программирования. Множество других старых языков – вроде C или Perl – имеют довольно сложный синтаксис, в котором очень непросто разобраться. С Java всё обстоит с точностью до наоборот.
- Java невероятно мощный. Несмотря на свою простоту, Java используется для целого ряда различных сложных переменных и функций, доступ к которым можно получить через внешние библиотеки и программы, вроде Java API.
Он не только гибкий, распространённый и простой – для него также существует множество обучающих материалов. Это и онлайн-курсы, книги, мобильные приложения, однако, обучение Java мы затронем немного позже.
Кстати, не путайте Java с JavaScript, так как он требует специальных плагинов для работы, тогда как JavaScript может читаться браузерами напрямую без каких-либо плагинов.
Самые Полюбившиеся Статьи
Ищете более подробную информацию по какой-либо связанной теме? Мы собрали похожие статьи специально, чтобы вы провели время с пользой. Взгляните!
Для Чего Используется Java?
Теперь, когда мы поняли важность программирования и узнали особенности Java, самое время взглянуть на области его применения. Как упоминалось ранее, Java невероятно гибкий язык, который используется для огромного спектра различных вещей. Некоторые из них встречаются повсеместно, другие довольно редки.
Фактически к концу 2017 году насчитывалось порядка 3 миллиардов устройств, использующих Java в какой-либо форме. Почти каждая крупная компания использует его в какой-то степени, что создаёт определённый спрос на разработчиков знакомых с Java. Давайте рассмотрим несколько главных направлений использования Java:
- Разработка Веб-Приложений
Java является самым предпочтительным языком для бэкенд разработчиков, если дело касается создания новых веб-приложений. Он гибкий, и это позволяет разработчикам создавать приложения с возможностью простого масштабирования и обслуживания. Если вы не совсем знакомы со сферой веб-приложений, то не стоит беспокоиться – ведь это целая отдельная тема для обсуждения.
- Создание Приложений Для Android
Несмотря на то, что в последнее время в среде Android-разработки широкое распространение получили несколько других языков, Java до сих пор сохраняет лидирующее положение. В прошлом разработка приложений для Android велась эксклюзивно на Java, поэтому даже по сей день спрос на Java-разработчиков держится на высоком уровне.
- Научные Приложения
Java также используется в научной сфере для создания программ и приложений для анализа данных. Конечно, он не настолько популярен в этой области как Python, но всё равно иногда используется.
- Торговые Боты
Если вы когда-либо занимались торговлей криптовалютой, трейдингом или посещали биржи, то вы скорее всего слышали о торговых ботах. Это автоматические программы, которые торгуют для вас с высокой частотой, позволяя вам со временем получать небольшую прибыль – если они правильно созданы конечно. Вы должны знать, что множество подобных ботов создаётся именно на Java.
Как вы видите, Java имеет широкий спектр применений. Наш список — это лишь малая их часть – существуют сотни различных вещей, которые вы можете сделать с помощью Java.
Что же, настало время назвать причины, чтобы вы получили заряд мотивации освоить Java программирование и рассмотреть лучшие способы освоить Java с нуля.
Мы уже определили Java как: (1) невероятно гибкий язык, который имеет много сфер применения; (2) низкоуровневый язык с характеристиками высокоуровневых, что означает совокупность удобства и мощности; и (3) язык независимый от платформы, используемый практически на любой платформе или операционной системе.
Если даже это не пробудило в вас желание узнать, как изучить Java с нуля, то вот ещё несколько причин для этого:
- Обучение Java сделает вас более конкурентным. Даже если вы не работаете в той сфере, где программирование и информатика важны, знания Java могут открыть для вас множество других возможностей.
- У вас будет больше уверенности в себе. Сейчас существует огромный спрос на Java-разработчиков и программистов. Если вы сможете выучить язык и освоить его эффективное использование, то поймёте, что проблем с поиском работы у вас точно не будет.
- Он прост в изучении. Существует множество способов освоить Java с нуля. Это популярный язык с огромным сообществом. Вы легко сможете найти необходимую вам информацию, а также при необходимости получить помощь от более опытных специалистов. Несмотря на то, что существуют разные мнения относительно лучшего способа начать обучение Java с нуля – вы явно сможете найти подходящий именно для вас.
Итак, давайте наконец перейдём к главной теме нашего руководства и узнаем лучшие способы изучения.
Лучший Способ Освоить Java с Нуля?
Java, как и любой другой язык программирования с огромным сообществом, имеет множество источников для получения знаний. Некоторые люди выбирают более традиционные способы – курсы в университете на факультете информационных технологий – однако большая часть людей, обучающихся программированию, делает это с помощью мобильных приложений, онлайн-курсов и других открытых источников информации.
Опять же, очень важно отметить, что не существует идеального способа освоить Java программирование. Для кого-то легче всего воспринимать информацию посредством книжных изданий, для других при помощи визуального восприятия информации. Однако любой выбранный вами способ обучения должен следовать подобной логике:
Изучение Терминологии
Первый шаг при изучении любого языка программирования — это освоение терминологии и общих правил синтаксиса. К счастью для вас, Java имеет довольно простой базовый синтаксис, который легко освоить. Сделать это вы можете с помощью различных источников, включая:
- Книги. Убедитесь, что нашли новое издание книги, содержащее самую актуальную информацию, иначе вы можете попросту потратить время на изучение того, что сейчас работает совсем по-другому.
- Курсы Java. С помощью интерактивных онлайн-курсов, например от BitDegree. Большая часть онлайн-курсов обучает вас базовым аспектам выбранного вами языка программирования, а также позволяет получить некоторый практический опыт написания кода.
- Использование мобильного приложения. Несомненно, одним из самых интересных способов изучения терминологии Java можно назвать мобильное обучение. Существует множество различных приложений как для iOS, так и для Android устройств, которые созданы специально для этих целей. Загрузите одно из таких приложений и уделяйте ему немного внимания в ваше свободное время!
Как только вы освоите терминологию, настанет время перейти к практике. Всё правильно, вам нужна:
Практика Написания Простого Кода
Если вы действительно хотите начать эффективно изучать Java с нуля, то вам нужно практиковаться. Просто подумайте, возможно ли выучить какой-либо иностранный язык и начать на нём свободно разговаривать только лишь с помощью онлайн-курса, даже без какой-либо практики? Это невозможно.
Это касается и языков программирования. Возможно они не настолько сложны, как некоторые иностранные языки, но практика является важной частью. Есть множество способов практики написания кода. Одним из лучших способов выработать понимание написания кода Java с нуля, можно назвать каждодневное использование обычного редактора на вашем смартфоне, ноутбуке или ПК.
Присоединитесь к сообществу или форуму, чтобы делиться своим кодом и спрашивать совета или рекомендации – вы будете удивлены количеством людей, которые могут предложить вам различные варианты изменить и улучшить ваш код. Как только вы получите советы, продолжайте практиковаться и совершенствуйте свои навыки
Продолжение Практики
Мы уже знаем важность практики Java, настало время перейти к следующему этапу – и это ещё больше практики!
Всё правильно, одни лишь книги, видео и курсы Java вам не помогут. Большую часть времени обучения вы будете тратить на практику. По сути, вы будете продолжать практиковаться в Java до тех пор, пока вы его используете. Как только вы получите работу и начнёте писать приложения или программы на Java, вы всё равно будете практиковаться. Вам будет необходимо постоянно учиться чему-то новому, только так вы сможете научиться создавать более сложные программы.
Игнорируйте Негатив
В последнее время часто можно увидеть людей, которые любят говорить о бесполезности изучения Java. Почему? Они просто это делают.
Люди часто говорят, что Java был создан очень давно и по этой причине безнадёжно устарел. Они упоминают такие языки как Ruby или Golang в качестве более “трендовой” замены. Тем не менее, факты говорят сами за себя. Правда в том, что:
- Java является одним из самых распространённых языков программирования в мире.
- На Java работает огромное количество приложений для Android.
- Java масштабируем, легко обслуживается и прост в использовании.
Только одни лишь этих причин достаточно, чтобы доказать важность Java в мире программирования. В течение последних нескольких лет он поддерживал стабильный уровень своей популярности, если судить по поисковым трендам Google.
Просто старайтесь избегать навязывания себе чужого мнения и сосредоточьтесь на обучении новым аспектам языка и практике.
Какие Источники Использовать Для Изучения Java?
Количество доступных для людей источников информации в последние несколько лет значительно увеличилось. Причиной этому стал своеобразный спрос на подобного рода материалы. Люди, желающие начать изучать Java, сегодня имеют огромный выбор курсов и других обучающих материалов.
Некоторые из них бесплатны, за другие придётся заплатить деньги. Многие из них нацелены на самообучение и позволяют осваивать материал в своём собственном ритме, тогда как другие имеют чёткую структуру и мотивируют вас к эффективному и быстрому обучению. Как вы понимаете, существует множество способов начать изучение Java с нуля, но здесь всё зависит от ваших предпочтений, целей и доступного времени.
Вот некоторые лишь некоторые популярные способы:
Онлайн-Курсы
Многие люди считают, что онлайн курсы Java стали самым популярным методом обучения в последнее время. Мы не будем заходить настолько далеко, но скажем – что подобные курсы оказали серьёзное влияние на всю сферу онлайн-образования в целом.
Вместо посещения университета и наличия строго графика, онлайн-курсы позволяют вам учиться в вашем собственном ритме в любое удобное для вас время. Вот лишь самые важные преимущества изучения Java с помощью курсов:
- Вы можете учиться, когда захотите. Большая часть людей, желающих начать изучать программирование, продолжают работать на своей текущей работе. Это не позволяет им уделять достаточно времени для полноценного обучения. Однако, онлайн курсы Java позволят вам осваивать этот язык, когда вы захотите и где вы захотите. Представьте – если вы будете проводить за обучением по часу перед сном, то сможете освоить Java с нуля всего за несколько месяцев!
- Вы можете повторить материал в любой момент. Обучение Java с помощью онлайн-курсов дает вам свободу и гибкость в процессе обучения. Вместо посещения лекций в определённое время, вы просто можете повторить сложный материал в любое удобное для вас время.
- Программирование проходит с помощью компьютеров. Это звучит очевидно, но тогда зачем обучаться с помощью ручки и бумаги? Если вы хотите освоить Java с нуля, то лучше всего делать это за компьютером.
Как вы понимаете, есть множество причин, по которым люди считают онлайн-обучение более удобным, чем традиционное. Если вы тоже придерживаетесь такого мнения, то попробуйте особый курс по Java на платформе BitDegree.
Данный курс был разработан специально для новичков, поэтому поможет вам познакомиться с основами программирования на Java. Он научит вас базовому синтаксису, его написанию, расскажет о возможностях Java и их реализации.
Совет: Вы можете попробовать получить особый купон BitDegree, чтобы сэкономить на ваших первых курсах по Java.
Приложения
Мобильные приложения являются отличным способом научиться программированию, особенно, если вы делаете это в своё удовольствие. Большая часть подобных приложений обучает либо языку Java, либо Python и рекомендуется для детей.
Однако не стоит сбрасывать этот вариант со счётов – обучение с помощью элементов игрофикации всегда проходит эффективнее других способов. Вы будете получать удовольствие от обучения и обретёте мотивацию перейти к более сложным вещам.
Книги и Другие Офлайн Источники
Конечно, ранее мы говорили, что обучение программированию не должно проходить с бумагой и ручкой в руке, но офлайн источники могут быть полезны. Справочные книги и учебники могут быть отличным дополнительным источником информации, ведь всё же нельзя недооценивать обучающий потенциал печатных изданий.
Это же применимо и для различных курсов в университете. Подобные курсы при правильном подходе могут помочь вам заложить прочный фундамент для вашего будущего самостоятельного обучения. Если вы серьёзно настроены на карьеру программиста, то рассмотрите возможность посещения дополнительных офлайн курсов.
Видео
Если вы хотите выучить Java, но у вас не так много времени или денег для полноценного обучения, то можете начать с просмотра видео на YouTube или других ресурсах. Ищете видео с основами Java и используйте их вместе с другими бесплатными источниками информации.
Стоит отметить, что этот метод обучения наиболее эффективен в связке с другими методами. Несмотря на то, что видео могут предоставить много полезной информации, не все люди находят мотивацию просмотреть какое-либо видео до конца.
Самые Популярные Статьи
Взгляните на нашу коллекцию руководств, статей и уроков про платформы для онлайн обучения и массовые открытые онлайн курсы. Всегда будьте в курсе и принимайте взвешенные решения!
Заключение
Являясь одним из самых популярных и распространённых языков программирования в мире, Java можно назвать отличным вариантом для тех, кто хочет научиться создавать свои собственные приложения или программы. Ведь Java:
- Очень популярен, что означает большое количество доступной информации.
- Относительно прост в изучении, так как его синтаксис простой и понятный.
- Очень гибкий, так как используется для разработки мобильных приложений и бэкенда многих сайтов.
- Отличный выбор для тех, кто только начинает своё знакомство с программированием.
Если – после того как вы узнали о Java и его использовании – вы решили начать свой путь к становлению специалистом в этой сфере, то у вас есть множество способов и источников информации для этого. Лучшим способом для изучения Java с нуля для вас станет именно тот, который будет удовлетворять вашим потребностям. Уделите время начальным аспектам, практикуйте написание кода и продолжайте учиться чему-то новому с помощью:
- Онлайн-курсов.
- Мобильных приложений.
- Книг и других офлайн источников.
- Видео и других материалов в сети.
Чтобы научиться программированию на Java, нужно начать это делать. Выберите способ, изучите основы и практикуйтесь!
Оставьте ваше честное мнение
Оставьте ваше честное мнение и помогите тысячам людей выбрать лучшую платформу для онлайн обучения. Все отзывы, позитивные или негативные, будут приниматься, если они честны. Мы не публикуем предвзятые отзывы и спам. Поэтому, если вы хотите поделиться вашим опытом, мнением или дать совет — у вас есть всё необходимое!
Сколько времени требуется, чтобы выучить Java для полного новичка?
У меня нет абсолютно никакого опыта программирования, но мне нужно выучить Java — достаточно, чтобы пройти курс J2ME fasttrack. У меня всего 10 недель. Могу ли я это сделать? Каков ваш совет относительно лучших ресурсов, которые я могу использовать ?(в настоящее время использует учебники Sun Java).
java
java-me
Поделиться
Источник
Unknown
14 мая 2009 в 17:26
24 ответа
- Зная C++, сколько времени нужно, чтобы выучить Java?
Я компетентный разработчик C++. Я понимаю и использую полиморфизм, шаблоны, STL, и у меня есть твердое понимание того, как работают потоки. Для всех практических целей я не занимался разработкой Java. Я уверен, что некоторые из вас были в подобной ситуации в какой-то момент, когда вам пришлось…
- Сколько свободы я должен оставить себе, чтобы выучить новый язык?
Я относительно недавно нанят и начинаю работать над небольшим, довольно простым проектом. Язык, на котором будет реализован этот проект, еще предстоит определить. Вопрос в основном сводится к — Java или Python? Вот дилемма: мой менеджер предпочел бы, чтобы это было сделано в Python. Я не возражаю…
56
10 недель? По-видимому, вы можете сделать это за 24 часа!
EDIT:
Итак, только 1 человек нашел мой ответ забавным, но не настолько забавным, чтобы поднять голос. Реальный вопрос заключается в том, насколько хорошо вы должны быть через 10 недель?
Если вы купите себе хорошую книгу (Та, что связана выше, имеет несколько хороших отзывов о Amazon), то через 10 недель вы можете быть достаточно опытны, чтобы сделать что-то полезное в Java, но для того, чтобы стать экспертом, требуются годы. Любое время, проведенное между 10 неделями и несколькими годами, продвинет вас от новичка к эксперту.
Да и читай, Научись программировать за десять лет .
Поделиться
Patrick McDonald
14 мая 2009 в 17:50
29
Хорошо, основываясь на некоторых предыдущих ответах, я ожидаю, что меня понизят за это, но я думаю, что вы бредите, думая, что можете самостоятельно научиться программировать в Java за 10 недель без какого-либо опыта программирования. Ни один человек с опытом программирования NO, кроме какого-то вундеркинда, не научится программировать на Java или почти на любом языке за 10 недель.
Для ясности, копирование и запуск hello world из книги не делает вас программистом. Черт возьми, скорее всего, потребуется несколько дней, чтобы заставить это работать в каком-нибудь IDE.
Итак, можете ли вы учиться и потенциально пройти какой-то тест? Возможно, но это зависит от глубины и формата теста.
Если бы я спросил, Могу ли я стать врачом через 10 недель, меня бы высмеяли за этот вопрос, поэтому я несколько удивлен ответами, которые указывают на то, что это возможно. Теперь я могу наложить пластырь на свою дочь, но это вряд ли делает меня медицинским профессионалом, это просто означает, что я управлял их версией hello world .
Поделиться
Robin
14 мая 2009 в 18:37
24
Главный вопрос заключается в том, занимались ли вы программированием в прошлом, поскольку это может быть главным усилием. Я подозреваю, что если бы вы этого не сделали, вы могли бы выжить, но не обязательно преуспеть. Вы указываете, что у вас не было никакого опыта программирования, поэтому именно здесь у вас будет больше всего проблем и вы проведете большую часть своего времени. Java не обязательно будет быстрее или медленнее учиться, чем другие подобные языки.
Учебники Sun Java великолепны, но, к сожалению, программирование-это одна из тех вещей, где необходима практика, и это зависит от вашего свободного времени. Также необходимо часто останавливаться и практиковаться, а не после прочтения половины книги. Если вы посвятили этому 10 недель полного рабочего дня-да, это вполне выполнимо для некоторых людей . В конце концов, студенты колледжа становятся сносными разработчиками за один учебный год, когда они проходят другие несвязанные курсы.
Я бы сосредоточился на том, чтобы сначала полностью выяснить Java, не пытаясь использовать J2ME. Тогда вы можете переключиться.
Кроме того, поймите, что существует большая разница между языком и стандартной библиотекой. Главное-выучить язык. Существуют определенные стандартные вызовы библиотек, которые все используют и которые очень важны для изучения, но они не являются частью языка. Тем не менее, вы никогда не будете действительно знать всю библиотеку (хотя вы узнаете из опыта). Гораздо важнее узнать, как найти функциональность, которую вы ищете , а затем точно знать, что это такое или где ее найти. Главное-не изобретать велосипед заново.
Кроме того, поймите, что вы можете быть только сносным разработчиком в конце. Опыт требует времени и часто не может быть ускорен.
Кроме того, даже если вы научитесь программировать, вам будет не хватать некоторых важных общих знаний, таких как структуры данных и алгоритмы. Книги по программированию редко учат этому, Вам придется учиться этому самому (см., например, учебники TopCoder).
Поделиться
Uri
14 мая 2009 в 17:31
- сколько времени вам нужно, чтобы научиться backbone. js
Я просто решаю выучить backbone.js. Я являюсь разработчиком front-end между младшим и средним уровнем. моя нынешняя работа связана с html, css и jQuery. Мой босс попросил меня выучить этот backbone.js и хотел бы знать, сколько времени мне потребуется, чтобы выучить его. так может ли кто-нибудь,…
- Сколько времени потребуется программисту, чтобы выучить ruby?
Сколько времени потребуется разработчику, чтобы выучить ruby. И разработать производственный веб-сайт, такой как stackoverflow ? Обычно. Если у разработчика есть опыт .NET, но нет опыта ruby и MYSQL или PostgreSQL.
16
Хорошо, здесь много людей говорят: «yes» и «yes, but it will be hard», так что я буду отличаться.
Нет.
Проблема не в «learning Java» через 10 недель, потому что я думаю, что к тому времени, когда пройдет 10 недель, вы сможете запрограммировать некоторые вещи и иметь представление о том, что делать, чтобы решить некоторые простые вещи.
Но это не сделает вас готовыми к ускоренному курсу J2ME. Ускоренные курсы, как правило, предназначены для людей, которые имеют сильный опыт в предварительных условиях. Возможно, вы сможете делать многие вещи по ходу дела, но без фона, чтобы понять, почему вы это делаете, это будет казаться большим количеством полуслучайных вещей, которые нужно запоминать наизусть, и, скорее всего, быстро исчезнет.
В принципе, я думаю, что это просто требует времени: время, чтобы позволить урокам впитаться, время, чтобы поэкспериментировать и потерпеть неудачу несколько раз, чтобы «почему» внезапно выскочило на вас…
В конечном счете, я подозреваю, что вы могли бы пройти через это, но что вы в конечном итоге не будете очень опытны. (последние два абзаца поста Uri говорят сами за себя.)
Я не хочу быть полным неудачником, и я определенно надеюсь , что у вас все получится, и мне бы не хотелось ставить на это деньги.
(Поймите, я не знаю вас по Adam. ..so я делаю заявления, основанные на моем опыте того, как это было для меня и людей, с которыми я работал with…so это не пренебрежение к you…just замечанию, что это очень большая еда, которую вы садитесь есть.)
Поделиться
Beska
14 мая 2009 в 18:17
7
Обучение программированию в первый раз похоже на изучение иностранного языка. Вы легко сможете воссоздать фразы, которым вас учили, но вам будет не хватать понимания контекста, почему это делается таким образом, и, таким образом, вы не сможете эффективно решать новые проблемы. Это просто требует времени.
Если вы начинающий программист, я действительно не могу рекомендовать Java. Python было бы намного лучше (отказ от ответственности: Python fan-boy, но по уважительным причинам).
Тем не менее, я не думаю, что Новичок мог бы сделать намного лучше, чем Head First Java
Поделиться
ShawnMilo
14 мая 2009 в 18:00
4
Основная проблема, с которой вы столкнулись, заключается в том, что вы впервые изучаете Программирование с помощью Java, и я думаю, что Java-не лучший язык для начала.
Я полагаю, что вы обращаетесь к рабочему проекту, не так ли? Это давление может ухудшить ситуацию. В зависимости от того, насколько сложен проект, вы можете добиться успеха, но изучение Java за 10 недель без фоновых знаний-это еще одна проблема.
Поделиться
ivmos
14 мая 2009 в 17:38
4
Я преподаю Программирование Java в средней школе, и наш курс длится 14 недель. Этого времени достаточно, чтобы дать студентам прочную основу в объектно-ориентированном программировании, но студенты недостаточно опытны для разработки и крупных проектов или чего-то слишком сложного.
Многие школы используют учебник Ламберта & Осборна:
Lambert, K. & Osborne, M. Fundamentals of Java: AP Computer Science Essentials for the AP Exam. 3-е изд. 2006. Технологии, Конечно, Томсон.
Поделиться
bestattendance
30 июля 2009 в 18:14
Поделиться
Johannes
14 мая 2009 в 19:15
2
Я должен сказать, что вы многое берете на себя всего за 10 недель, я только что закончил семестр программирования Java в Юго-Восточном университете Индианы, и я не думаю, что еще начал царапать поверхность. Java-очень строгий язык в том смысле, что его синтаксис очень трудно понять, если у вас вообще нет опыта программирования. Я предложу эти советы перейти к www.bluej.org и вниз загрузить там компилятор Java, с которым, как говорят, легче всего работать, и что большинство колледжей используют его. Кроме того, то, что мы узнали, и из того, что я знаю сейчас, я могу сказать, что они правы. Java-это объектно-ориентированный язык, и Bluej дает вам отличное понимание объектов. Они также показывают вам, как проектировать, классы, методы, массив, список массивов, карты hash, все это есть на этом сайте, и это бесплатно. Я надеюсь, что это поможет и удачи вам в вашей задаче.
Поделиться
kennethfsk
16 мая 2009 в 16:16
2
Мой опыт в программировании Java для начинающих несложен в освоении, однако он действительно зависит от того, насколько развиты ваши навыки объектно-ориентированного программирования. Поскольку вы утверждаете , что у вас нет опыта программирования, я думаю , что рекомендую веб-сайт http://www.exampledepot.com/ и введите любое ключевое слово java, такое как Swing, FileInputStream, это дает много практических примеров, которые вы можете применить в проекте.
Пожалуйста, купите книгу java (Sams ‘ java 6 in 24 hours) в качестве ссылки. Это даст вам действительно базовые навыки для java в течение короткого времени. и я уверен, что у вас будет достаточно времени, чтобы узнать о java и J2ME в течение 10 недель. удачи.
Тигр
Поделиться
Tiger
15 мая 2009 в 01:53
2
Это зависит от того, насколько усердно вы хотите работать, но да, это возможно. Проблема, с которой вы столкнетесь, заключается в том, что вы должны научиться программировать вместе с обучением java. Это две совершенно разные вещи. Программирование-это умение читать и писать логику, а Java-это язык, на котором вы ее пишете. Если у вас есть математический или физический опыт, это будет намного проще, так как вы уже подвержены такому мышлению.
Если у вас нет книг по началу 30-х годов, я бы пошел и купил одну из них.
Я бы также взял код книги (я бы попытался пройти через это через несколько дней, если бы не в выходные, если это возможно). На самом деле с 10 неделями я бы сделал это в первую очередь, так как это будет основой для того, что вам нужно будет знать, чтобы запрограммировать Java.
Через 10 недель вам придется почти каждый вечер заниматься, чтобы освоиться к тому времени, когда вы пойдете на занятия. Мой лучший совет заключается в том, что, когда вы берете урок, делайте много заметок и не ожидайте, что поймете все. Большая часть того, что бросают в вас там, вероятно, сначала пройдет через вашу голову, и вы забудете. Все в порядке. После того, как урок закончится, вернитесь назад и просмотрите заметки и т. д., Пока это не начнет иметь смысл.
Поделиться
kemiller2002
14 мая 2009 в 17:32
2
Существуют различные школы мышления относительно того, сколько времени вам нужно, чтобы стать экспертом в программировании. Я не собираюсь ничего добавлять.
Я предлагаю, если у вас нет абсолютно никакого опыта программирования, сначала изучить C. Затем перейдите к Java.
Следующий сайт очень хорош для изучения java.
http://www.javapassion.com
Поделиться
Christy John
30 июля 2009 в 18:07
1
10 недель? Ты с ума сошел? Java API-это массивно, не говоря уже о Java EE, как можно было бы пройти через это за 10 недель? возможно, вы могли бы пройти через 5% из этого за пару месяцев. Я бы сказал,что для новичка потребуется не менее года, чтобы опереться на основы Java. Я имею в виду, что вы не можете просто прочитать главу на тему, а затем думать, что вы ее понимаете. Вы должны потратить много времени, используя эту концепцию или часть API, чтобы, по крайней мере, зафиксировать ее в памяти, не говоря уже о том, чтобы действительно хорошо ее понять.
Реально я бы сказал, что по крайней мере 2, может быть, три года программирования, чтобы достичь отраслевого стандарта начального уровня. И это если вы действительно приложите себя.
Поделиться
ally
31 марта 2011 в 18:45
1
Я работал с некоторыми программистами-самоучками, которые читали такие вещи, как»выучите javascript за 0.01 дней». Каждый день стоил своей доли thedailywtf.com .
Кроме того, на собеседовании вас спрашивают: «сколько у вас javascript опыта?», ваш ответ «0.01 дней».
так что удачи, но я надеюсь, что наш путь не пересечется раньше, чем через несколько лет
Поделиться
Eric
14 мая 2009 в 21:53
1
Я бы не сказал, что у меня было «no programming experience», но до изучения J2ME большая часть того, что я делал, была на ассемблере более 10 лет назад.
Я пропустил изучение «JAVA» и изучил J2ME, который, по-видимому, является небольшим подмножеством java. Он достаточно мал (если вы игнорируете расширения), что он очень удобоварим и легко объясним в книге среднего размера. С этой точки зрения это было немного похоже на ассемблер (несколько ограниченное количество вещей, которые нужно знать), хотя мне действительно нужно было узнать о OOP.
Я купил несколько книг J2ME, но одна из них показалась мне наиболее полезной: «Programming Wireless Devices with the Java 2 Platform» by Riggs, et al.
Я не помню точно, сколько времени это заняло у меня, но я почти уверен, что писал развертываемый код (это было мобильное приложение табеля учета рабочего времени) примерно за 12 недель.
Поделиться
Unknown
20 мая 2009 в 19:27
1
Выполнимо, да. Но вы упускаете из виду много теории программирования, так что даже если вы знаете язык достаточно хорошо, чтобы кодировать на нем, вы не будете знать, как хорошо программировать. Я бы посоветовал вам взять несколько книг для начинающих по объектно-ориентированному дизайну, пока вы этим занимаетесь. Лучшие (по крайней мере для меня) обучающие и помогающие инструменты для нового языка-это учебники и форумы, подобные этому (не забудьте сначала погуглить, хотя есть много вопросов для начинающих, на которые можно ответить простым поиском).
Удачи!
Поделиться
Fry
14 мая 2009 в 17:36
1
Вы определенно можете получить хорошее понимание Java за 10 недель, но, как уже упоминалось ранее, практика делает вас совершенным (или, по крайней мере, лучше…).:
Java API будет вашим другом:
http://java.sun.com/в J2SE/1.5.0/документы/api/
Java имеет много встроенных функций, поэтому старайтесь не дублировать его (строковые функции и тому подобное).
Кроме того, IDE может сделать некоторые вещи немного сложнее, но это также поможет вам найти свой путь вокруг API. Eclipse-это хорошее место для начала (и это бесплатно)
http://www.eclipse.org/
Надеюсь, это немного поможет..
Поделиться
newfie_coder
14 мая 2009 в 17:40
1
Можете ли вы научиться рисовать, лепить или рисовать за десять недель? Любой может научиться бить по клавишам программы, так же как любой может взять в руки кисть, но для развития артистизма требуется время и талант . Сделайте себе одолжение и потратьте время и силы на обучение, а не на зубрежку . Уроки, которые вы извлекаете, прилагая согласованные усилия, чтобы знать, как развиваться , будут служить вам гораздо лучше, чем цепляться за него, чтобы встретить какую-то произвольную дату.
Поделиться
Wayne Hartman
14 мая 2009 в 17:41
1
Я могу посочувствовать. .. когда-то я был в таком же затруднительном положении, хотя у меня, по крайней мере, была некоторая предыстория. Я согласен с @ShawnMilo относительно головного кулака Java . Также рекомендую Sams Teach Yourself Java in 21 Days и, учитывая, что вы говорите, что у вас нет опыта программирования, я настоятельно призываю вас взглянуть на проектно-ориентированный мыслительный процесс Мэтта Вайсфельда. Я также согласен со всеми людьми в этой теме, которые говорят, что в программировании есть WAY больше, чем ‘simply’ изучение одного языка (особенно если это Java). Сказав Это, желаю удачи и Божьей скорости.
PS Я бы +1 @Patrick McDonald за чувство юмора, но мне не хватает репутации!
PPS и еще один виртуальный +1 для @Robin. мне было интересно, когда четверо йоркширцев войдут в эту тему…
Поделиться
avstrallen
14 мая 2009 в 18:16
1
Для java вам также нужно научиться использовать IDE и настроить свою среду и все такое, чтобы заставить java работать. ..
Тогда для J2ME вам нужно будет кое-что знать о встроенных/мобильных системах….
10 недель с учебниками было бы хорошо, но это также зависит от того, что вы собираетесь делать в своем курсе j2me…
Я бы пошел головой вперед в учебник j2me (предполагая, что вы знаете минимум о переменных функциях и OO)…
удачи…
Поделиться
LB40
14 мая 2009 в 21:20
1
Лучший совет для обучения программированию в основном таков: пишите много программ.
Проект Эйлера содержит множество задач, хорошо подходящих для этой цели, так как результирующие программы являются управляемыми по размеру, в то же время фактически позволяя вам решить явную задачу.
http://projecteuler.net/index.php
Поделиться
Thorbjørn Ravn Andersen
14 мая 2009 в 21:34
1
У меня не было опыта программирования, и я хотел выучить PHP. Мне потребовалось около 6 месяцев практики помимо моей обычной работы, чтобы развить свои навыки достаточно, чтобы написать несколько простых приложений для веб-сайта. Java немного сложнее…
Поделиться
Dan
10 января 2012 в 07:44
0
Как уже упоминали другие,10 недель должно быть достаточно, если у вас есть опыт программирования.
Ближе к 28 неделям, если вы Джефф Этвуд.
Поделиться
Jack Leow
15 мая 2009 в 01:59
0
Я не понимаю, почему ты не можешь этого сделать. Я книжный человек, так что выбери книгу и беги по ней. Создайте несколько небольших проектов и завершите их. 10 недель-это больше, чем обычно, чтобы выучить новый язык.
Получайте удовольствие и надеюсь, что вы многому научитесь.
Я бы отправил книги, которые выучил java, но они дома, а я нет.
Поделиться
Primetime
14 мая 2009 в 17:31
Похожие вопросы:
Сколько времени требуется SHA-1 для создания хэшей?
Примерно сколько времени и сколько вычислительной мощности требуется для создания SHA-1 хэшей данных? Сильно ли это отличается в зависимости от исходного размера данных? Будет ли генерация hash…
Сколько времени требуется для выполнения цикла?
Есть ли какой-нибудь способ узнать, сколько секунд требуется циклу для выполнения в java? Например: for(int i=0; i < 1000000; i++) { //Do some difficult task goes in here } Это не обязательно…
Сколько времени мне нужно, чтобы выучить LabVIEW
Я знаю, что этот вопрос слишком абстрактен. Но. Сколько времени мне нужно, чтобы выучить LabVIEW, чтобы стать средним разработчиком LabVIEW? Например, если я куплю хорошую книгу о LabVIEW и у меня…
Зная C++, сколько времени нужно, чтобы выучить Java?
Я компетентный разработчик C++. Я понимаю и использую полиморфизм, шаблоны, STL, и у меня есть твердое понимание того, как работают потоки. Для всех практических целей я не занимался разработкой…
Сколько свободы я должен оставить себе, чтобы выучить новый язык?
Я относительно недавно нанят и начинаю работать над небольшим, довольно простым проектом. Язык, на котором будет реализован этот проект, еще предстоит определить. Вопрос в основном сводится к — Java…
сколько времени вам нужно, чтобы научиться backbone.js
Я просто решаю выучить backbone.js. Я являюсь разработчиком front-end между младшим и средним уровнем. моя нынешняя работа связана с html, css и jQuery. Мой босс попросил меня выучить этот…
Сколько времени потребуется программисту, чтобы выучить ruby?
Сколько времени потребуется разработчику, чтобы выучить ruby. И разработать производственный веб-сайт, такой как stackoverflow ? Обычно. Если у разработчика есть опыт .NET, но нет опыта ruby и MYSQL…
Сколько времени требуется для выделения массива (в Java)
Просто общий вопрос о распределении массивов, в первую очередь в Java, но я думаю, что он имеет отношение ко всем языкам программирования: Сколько времени требуется для выделения памяти для массива…
Какова какая-то интуиция за тем, сколько времени требуется для запуска моего фрагмента кода?
Какова некоторая интуиция за тем, сколько времени требуется для запуска моего фрагмента кода? (т. е. сколько времени требуется, чтобы добавить 100 объектов в ArrayList в java?) Чтобы уточнить, я не…
Сколько времени потребуется, чтобы выучить ionic framework?
Я уже знаю html,css, javascript сколько времени потребуется, чтобы выучить ionic framework и чем он отличается от angularjs?
5 способов выучить Java — JuJa
Совсем недавно мы проводили вебинар и нас, как владельцев онлайн курсов по Java, попросили рассказать, каким же образом можно выучить Java самостоятельно. Мы решили написать несколько проверенных способов, как выучить Java или вообще, как выучить программирование с нуля.
Итак, ты твердо решил стать Java-программистом. И сразу у тебя возникает куча вопросов: “С чего начать обучение Java? Как правильно выбрать программу обучения? Как выучить Java и получить опыт работы?”.
Сегодня есть множество способов научиться чему-либо, и программирование не исключение. Помимо классических методов — самостоятельного обучения и офлайн-курсов программирования — в настоящее время существует множество онлайн-курсов по Java, тренингов, как платных, так и бесплатных.
Мы выделили самые популярные способы выучить программирование самостоятельно.
Итак, несколько способов выучить Java:
1. Самостоятельное обучение.
Преимуществом такого способа обучения является то, что ты сам можешь планировать абсолютно все аспекты своего тренинга — что, где, как и когда тебе учить.
Недостатком же является то, что не у каждого хватит силы воли самостоятельно освоить огромное количество материала, прочитать кучу книг, получить достаточно практического опыта и не бросить все в начале пути. Кроме того, у каждого будут сомнения: “А верной ли дорогой я иду, все ли делаю как надо?”.
2. Бесплатный онлайн-курс.
Преимуществом данного способа обучения является, конечно, стоимость — её просто нет, все материалы бесплатны и это огромный плюс.
Единственное — количество людей, способных поделиться действительно ценным контентом, ничтожно мало. Ну и в последнее время технологии развиваются довольно быстро, поэтому сложно представить, чтобы у человека хватало времени обновлять контент.
Недостаток заключается еще в том, что, как показывает практика, далеко не у каждого хватит мотивации закончить онлайн-курс по Java или любому другому языку, и многие бросают, по сути даже не начав учиться.
3. Офлайн-тренинг.
Преимуществом такого изучения программирования на Java будет то, что можно общаться с преподавателем вживую, кроме того, здесь уже будет небольшое комьюнити твоих коллег, с которыми ты можешь обсуждать возникшие вопросы и их решение.
Недостаток — это то, что, как правило, проходят такие курсы не в самое удобное для усвоения материала время — по вечерам, да и затраты времени на дорогу туда-сюда могут быть весьма значительны. Вдобавок в стоимость курса включается стоимость аренды помещения, оборудования и материалов для проведения занятий.
4. Персональный коучинг/менторство.
Преимущество данного способа выучить Java или другой язык программирования — это то, что можно найти себе опытного ментора-наставника, который будет работать лично с тобой, готовить специально для тебя индивидуальные задания, делать код-ревью твоего кода и указывать именно на твои ошибки и пробелы в знаниях.
Единственным недостатком будет то, что время опытного наставника стоит немало, да и найти человека, который согласится уделить тебе столько внимания, не всегда просто.
5. Ну и наконец тренинг в компании.
Есть вариант устроиться на какие-либо учебные курсы в IT-компанию, где, скорее всего, ты будешь работать на проекте, достаточно приближенном к реальным условиям, плюс есть большая вероятность после успешного окончания курса устроиться на работу в эту компанию. Однако, конкурс на такие тренинги зачастую очень высок и нужно уже обладать уверенными знаниями, чтобы тебя взяли.
В любом случае выучить 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-программистов. Здесь вы найдете сложные задачи, а не уроки.
Сначала вам дается восьмой кю (уровень мастерства). Добравшись до первого кю, вы достигнете вершины мастерства.
Вывод
Программируйте ежедневно, уделяйте этому много времени. Используйте приведенные выше сайты с упражнениями. Иногда изучайте теорию. Задавайте много вопросов. Начинайте программировать! Даже не сомневайтесь.
Перевод статьи John Selawsky: How to fix your Java learning: a story of one tutor
Как выучить Java с нуля: рецепты успеха от экспертов NIX
18 октября 2019
Существуют десятки мнений о том, с чего лучше начать изучение Java. Одни говорят о курсах, другие тянутся к книжной полке за бессмертным Эккелем, а третьи начинают вбивать запросы в Google. Мы решили сэкономить твое время, посовещались с нашими гуру Java-разработки, посетили десятки крутейших мировых конференций, и теперь готовы поделиться рекомендациями, как реально выучить Java с нуля, чтобы потом сразу взяли на работу.
Правильный старт
Этап подготовки очень важен — от него будет зависеть скорость и качество твоего дальнейшего обучения. Поэтому первым делом установи JDK и одну из последних версий IDE.
Остановимся немного на IDE. Рекомендуем на старте познакомиться с IntelliJ IDEA. Здесь ты найдешь встраиваемый в IDE плагин с интерактивными упражнениями, которые позволят в легкой и понятной форме изучать основы Java. Усилить плагин поможет правильно подобранная литература. После этого можно считать, что база у тебя уже есть.
В ожидании инсталляции плагина, займись поиском книг. Переходить к классике и бросаться за чтение Б. Эккеля и Дж. Блоха новичкам мы не рекомендуем. А вот «Head First Java» будет то, что нужно. Эта понятная и легкая для восприятия литература станет для вас ступенькой, с которой вам будет гораздо проще “прыгнуть” к изучению Эккеля.
Сразу раскроем важный лайфхак — Java можно учить даже по книгам о других объектно-ориентированных языках для новичков. Поэтому заливай в свою электронную библиотеку «Java for C/C++ Developers» от Michael C. Daconta, чтобы сразу расставить все точки над “i” и понять основные отличия одной технологии от другой.
И обязательно заведи себе отдельную заметку в телефоне (или даже целый блокнот со стильной обложкой). Сюда записывай все вопросы, возникающие по ходу чтения, которым нужно будет уделить больше внимания в будущем — и ответы на которые можно будет как самостоятельно поискать на просторах интернета, так и обсудить на специализированных форумах, Java-митапах в твоем городе или на собеседовании при поступлении на курс обучения, чтобы сразу зарекомендовать себя хорошим студентом ;).
Комбинируем теорию и практическое тестирование
Можно прочитать десятки книг, написать столько же программ или пройти все обучающие курсы Java в Харькове, а завтра выйдет новое обновление, которое ну просто вау какое крутое, и тебе придется заново его учить. А еще через день, возможно, ты сам придумаешь новую фишку и начнешь ее апгрейдить и совершенствовать. И так по кругу.
Будь готов к тому, чтобы превратить Java в стиль жизни. Выделяй определенное количество свободного времени в день (помимо основных занятий, конечно же), которое ты будешь посвящать Java. Читай все, что будет попадать в поле зрения, и обязательно записывай и бери на заметку все, что будет казаться непонятным.
После знакомства со “вступительной” литературой, можешь приступать к изучению фундаментальных книг. Дополнительно возьми на вооружение специальные подборки материалов по Java — здесь найдется над чем подумать.
И не забывай отслеживать свой прогресс. Заведи для этого специальную систему метрик, проходи Java тесты, которые сейчас достаточно легко найти в интернете для любого уровня знаний, и смотри на полученный результат. Все вопросы, которые вызывают недопонимание, выписывай, гугли и запоминай. Не забывай возвращаться к своему старому коду, и когда спустя время он окажутся не такими уж и блистательными, можешь быть уверен — ты становишься лучше как Java-разработчик.
Как выбрать направление в Java
Прежде, чем с головой уйти в Java, новичкам нужно понимать, что стек этого языка для web-приложений включает в себя множество направлений. Поэтому в самом начале важно изучить некоторые смежные технологии. Для этого разберемся со всем по порядку.
Типовая архитектура работы web-разработчика
Любой сайт и приложение имеет внешнюю (frontend) и внутреннюю (backend) составляющую. Frontend визуализирует серверную работу backend’а.
Вы можете сразу начать двигаться в сторону web разработки, минуя Servlets/JSP (технология используется как база для современных подходов), использовать стек Spring/Hibernate. Этот стек требуется в 90% случаев. Он является альтернативой JavaEE и фактически стандартом в современном Java мире.
Для того, чтобы расшифровать то, что ты прочел выше, нужно изучить следующие темы:
— СУБД и SQL, которые отвечают за реляционное и нереляционное хранение данных. В изучении опирайся на книгу «Head First SQL», загляни на полезные online-сервисы и почитай вводные статьи по NoSQL.
— Протокол HTTP и передача данных. Здесь базовой литературой считают книгу «Компьютерные сети» Эндрю Таненбаума. Для более глубокого понимания темы можно прочитать вводные главы любой книги Дмитрия Котерова по PHP. Языки, конечно, разные, но автор дает доступное объяснение, как взаимодействует клиент и сервер.
— JSON и XML. Здесь можно ограничиться Википедией.
— JavaScript и HTML. Хорошим путеводителем станет статья “Лайфхак: в какой последовательности изучать JavaScript”.
Мы привели базовые вещи, которые максимально широко и доступным языком охватывают основные аспекты Java, помогают понять и разобраться в работе девелопера, а также в реализации твоего первого собственного pet-проекта.
Pet project
Теоретическое изучение Java может быть полезно только в период знакомства с языком. Продвинуться дальше можно только при условии написания собственного проекта. Писать его нужно так же постепенно, как и изучать сам язык. Лучше, если это будет происходить параллельно.
Поэтому в период первого знакомства с Java подумай над идеей проекта. Каждый раз после прохождения новой темы пробуй закреплять ее практикой в своем проекте. В качестве стартового web-сервиса может быть:
— ToDo List;
— каталог прослушанных аудиокниг;
— простой движок форума.
Будь готов к тому, что тебе придется много раз переписывать (а иногда и начинать с нуля) свой код. Это станет показателем того, что ты прогрессируешь и совершенствуешься в своих знаниях.
При написании первого проекта запрети себе пользоваться дополнительными библиотеками и фреймворками. Для этого тебе придется познакомиться с рефлексией и базовыми паттернами. Здесь рекомендуем обратиться за помощью к GoF — книге по шаблонам.
Поверь, на выходе ты увидишь отвратительный код, который захочется сразу же удалить :). Но наша задача — не получить идеальный код, а выявить проблемы и решить их фреймворком.
Ошибки, которые выйдут на свет при написании проекта, покажут твои слабые стороны. Запомни их, выпиши и приступай к изучению. Вот увидишь, после этого изучение Java станет максимально простым.
О чем еще нужно знать
Во время обучения ты обязательно столкнешься с Java Enterprise Edition и фреймворком Spring. Java EE является спецификацией языка, с помощью которой разработчики могут описать серверную часть проекта. А вот Spring — это один из фреймворков.
Java EE изначально отвечала за стандартизацию, но со временем стало ясно, что она слишком тяжелая. Особенно в сравнении с более упрощенной альтернативой Spring, который сегодня разросся настолько, что теперь у него есть фреймворк над фреймворком – Spring Boot.
Чтобы глубже понять тонкости и отличия обеих платформ, изучи обе. «Head First Servlets and JSP» и «Программирование web-приложений на языке Java» Буди Курняван используй для знакомства с Java EE. А вот со Spring все несколько сложнее, так как он состоит из множества модулей. Мы рекомендуем начать с книги «Spring в действии» Крейга Уоллса и особое внимание уделить Core, MVC и Web-MVC и Security.
Что дальше?
Обычно после прочтения нескольких книг и небольшой практики, возникает потребность углубиться в материал. И вот на этом этапе можно смело подавать заявку на бесплатный курс обучения Java от NIX. Дальнейшее самостоятельное изучение огромного разнообразия тем и направлений Java может привести тебя в замешательство.
В NIX тебя будут направлять опытные менторы, помогать в освоении теории, подсказывать подходящие способы реализации знаний в реальных проектах, а после удачного прохождения обучения могут пригласить стать частью огромной команды со своей историей и традициями.
А когда ты услышишь от хейтеров, что Java устарел, и нужно выбирать что-то более модное, напомни им о Google, Netflix, Airbnb и Uber, использующих Java в своих продуктах. Это лучшее доказательство того, что Java живее всех живых и что это все еще самый популярный язык в мире, продолжающий активно развиваться.
Как вы могли бы изучить Java самостоятельно и с чего начать
Как репетитор по Java, я видел множество причин, по которым люди начинают изучать программирование. Огромная страсть — одна из главных причин, но это еще не все.
Иногда у людей разных возрастов и профессий возникает то раздражающее ощущение, что они все время переминаются с одной ноги на другую. Например, вы чувствуете, что вся «образовательная эпопея» в университете закончилась, но вы не в своей профессии.Или вы любите свою работу, но она дает вам гораздо меньше перспектив, чем вы предполагали с самого начала. Или вы просто хотите выйти из зоны комфорта и считаете, что лучший способ сделать это — овладеть чрезвычайно сложным навыком, например программированием.
Время — это, прежде всего, главное препятствие в обучении. Время, а точнее его отсутствие. Выделение определенного количества часов в определенное количество дней для учебы просто не работает для многих людей из-за темпа жизни. И тогда на сцену выходит самообразование, концепция, когда вы просто учитесь на ходу и корректируете свой собственный график.
И что более важно, я могу сказать вам по собственному опыту, что это очень эффективно при изучении программирования на Java. Но обо всем по порядку…
Почему я должен изучать программирование на Java?
Разве это не многолюдный рынок? Разве Java не теряет популярность / умирает / не слишком ли трудна для изучения в качестве первого языка и так далее? Ответ — нет. 🙂
Java входит (и будет в ближайшие годы) среди небольшого числа преобладающих языков программирования, согласно таким глобальным рейтингам, как TIOBE , PYPL, GitHub’s Octoverse и т. Д.
СМОТРИ ТАКЖЕ: Разговор о разнообразии: «Вы не можете бояться неудач. Если вы не попытаетесь, у вас никогда не получится ».
Это кроссплатформенный гибкий язык программирования с большим количеством библиотек, который поможет вам написать краткие решения практически для всех задач для предприятий, малых и средних компаний, больших данных, научных разработок, мобильного программирования, разработки игр, и многое другое. Java постоянно обновляется и предлагает новые функции для разработчиков. В этом марше была представлена новейшая версия Java , и создатели не собираются останавливаться на достигнутом. 🙂
Проще говоря, Java — зрелый современный язык программирования. Возможно, это не язык с низкой кривой обучения (хотя вам не нужно быть математическим гением, чтобы начать с ним), но как только вы овладеете им, вы будете очень востребованы.
Хорошо, звучит неплохо, но разве я не слишком стар для этого?
В общем, это разумный вопрос, особенно если оценить риски.Вы, наверное, сейчас не знаете:
- сколько времени вы сможете посвятить обучению;
- , насколько сложно вам будет освоить программирование
- , какие источники для обучения будут эффективными, а какие нет
Кто захочет тратить от шести месяцев до полутора лет (или даже больше) на что-то недостижимое, особенно если вам 30, 40… 50?
Ну, хотите верьте, хотите нет, но возраст не проблема в обучении. Отсутствие мотивации есть.И недоверие к себе. Попробуйте поискать истории успеха крутых Java-программистов, которые начали с нуля в возрасте 30-40 лет, и вы будете поражены. Я не хочу показаться глупым, я действительно знаю этих ребят и недавно написал пост о том, почему никогда не бывает слишком стар, чтобы изучать Java. Вы можете прочитать это, чтобы получить вдохновение.
Как сделать самообразование успешным?
Ваша успеваемость в изучении Java зависит от многих переменных. Например, ваше предыдущее образование и программирование, количество времени, которое вы готовы посвятить обучению, ваши дальнейшие карьерные планы (мобильные или веб-разработки? Автоматизация контроля качества? Карьера на предприятии или в стартапе? И т. Д.).
Нет предопределенного срока обучения, я сожалею об этом. 🙂 Но, судя по опыту моих коллег-программистов и студентов, на освоение программирования на Java уходит от 3-6 месяцев до 1-1,5 лет. Попробуйте следовать этим основным правилам:
Правило № 1
Сделайте свои цели в программировании кристально ясными. Это поможет вам быстро перейти от знакомства с основами изучения передового набора технологий.
Правило № 2
Измените программу обучения в соответствии с вашими целями.Как правило, вам следует начать с установки основных инструментов разработки (JDK и JRE — IntelliJ IDEA, Eclipse или NetBeans), освоения синтаксиса Java, ядра Java, изучения наиболее популярных коллекций и понимания основ многопоточности. Позже — изучите часто используемые API, такие как сервлеты, JSP, JDBC, JUnit; обратите внимание на шаблоны проектирования, базы данных, структуры данных и алгоритмы, популярные инструменты, такие как Git и Maven, и так далее.
СМОТРИ ТАКЖЕ: что следует учитывать перед тем, как приступить к веб-разработке
Правило № 3
Баланс теории и практики.Может показаться, что у вас будет масса исследований (да, будет), но смиритесь с фактом, что вам потребуется как минимум в три или четыре раза больше практики. Воспринимайте это как самый важный совет: вы должны кодировать каждый день .
Где я должен изучить основы Java?
Читайте, смотрите, Google все, что вы не понимаете. Среди десятков книг по общему программированию и особенно по Java я бы рекомендовал:
- Head First Java от Кэти Сьерра и Берта Бейтса.Это, вероятно, лучшее руководство для самообучения по Java, потому что оно действительно простое и помогает понять логику (и основы) программирования на Java;
- Java: Руководство для начинающих Герберта Шильдта. Эта книга для вас, если вы предпочитаете традиционный подход к объяснению предмета;
- Core Java Volume I и Core Java Volume II Кей С. Хорстманн. На мой взгляд, это отличный источник для студентов, как в начале, так и в середине процесса обучения.И у него есть все шансы стать вашей настольной книгой даже после того, как вы освоите программирование на Java.
Попробуйте видеоуроки и посмотрите, подходят ли они вам (лично я не фанат и предпочитаю практику). На EdX есть отличный набор видеокурсов по Java, от введения в программирование на Java до продвинутых предметов. Вы также можете выполнить поиск руководств по Java на YouTube. Вот свежий учебник по Java freeCodeCamp.
Где я могу попрактиковаться в программировании на Java?
Я всегда советую своим студентам как можно больше писать код каждый день.Итак, вот три лучших источника неограниченного программирования, которые я обнаружил.
- CodeGym — игровой онлайн-курс по программированию на Java, который на 80% основан на практике. Курс адаптирован для изучения Java с нуля и включает в себя задачи по программированию с первых уроков.
- CodeCademy — этот курс поможет вам получить полезные технические навыки для реальной работы по программированию, а также состоит из большого количества практики.
- Codewars — это источник для продвинутой практики программирования и оттачивания ваших навыков программирования, когда вы изучаете основы Java и приобретаете необходимый минимум опыта программирования.
Заключение
Хотя массовая культура часто изображает программистов как сварливых парней с бородой лесорубов, которые будут делать почти все, кроме взаимодействия с другими, это не так. По крайней мере, это не совсем так. 🙂 Вы не пройдете через обучение, если не пообщаетесь с другими студентами и опытными программистами.
Чтобы получить некоторую помощь и советы по улучшению навыков программирования, я советую вам использовать субреддиты Java и программирования на Reddit.com, StackOverflow и справочные разделы CodeGym.
Не стесняйтесь задавать вопросы — общение — ключ к вашему успеху.
Изучите Java — за 5 простых шагов
Каждый месяц многие мои посетители ( в основном новички, конечно, ) задают мне один и тот же вопрос: , как изучить java . А также, если я найду время, чтобы научить концепциям Java , начиная с основных концепций , например. объектно-ориентированные принципы , ключевые слова и синтаксис языка, до продвинутых концепций, таких как многопоточность или даже Spring и hibernate тоже. При всем уважении к моим коллегам-друзьям, позвольте мне сказать, что я уже перегружен своими лично-профессиональными обязательствами. Я действительно хочу помочь вам, ребята, а также я хочу научиться программированию на Java у вас, ребята, но дело в том, что у меня очень ограниченное время после рабочего дня, которым я не могу пожертвовать, так как у меня сладкая объединенная семья провести некоторое время с. Помимо семейного времени, я провожу остальное время, чтобы писать в этом блоге, который для меня как страсть и сильное средство связи с большой группой единомышленников.
При этом я пишу этот пост, посвященный всем моим молодым ( или я должен сказать новичку ) стипендиатам, которые хотят достичь определенного уровня владения java-технологиями и где-то хотели бы воспользоваться моим советом по этому поводу. Имейте в виду, что если вам не нравится способ изучения java, который я предлагаю в этом посте, просто игнорируйте меня. Период. ИЛИ лучше, предложите мне, что вы думаете, лучший способ быстро или легко изучить Java .
Здесь я предполагаю, что этот пост будут читать люди, которые очень плохо знакомы с языком, поэтому я начну с перечисления в первую очередь.Убедитесь, что вы подготовили свою среду разработки Java, т.е. вы установили JDK / JRE и у вас есть IDE, такая как Eclipse.
1) Изучите основы языка
Это первый шаг по очень очевидной причине. Если вы не знаете основ, вы никогда не узнаете, что делать дальше или что вы делаете не так. Изначально я не ожидаю, что вы станете мастером всех базовых вещей Java, таких как ключевые слова, основные концепции или базовые методы кодирования. На самом деле я ожидаю от вас просто прочитать весь текст, доступный в ссылках ниже, даже если он просто не имеет для вас смысла с первой попытки.Просто продолжай читать.
- http://docs.oracle.com/javase/tutorial/java/nutsandbolts/
- https://www.ibm.com/developerworks/java/tutorials/j-introtojava1/
Имейте в виду что две приведенные выше ссылки — не единственные ссылки для получения базовых знаний. Вы можете выполнить быстрый поиск в Google и найти много похожих ссылок.
Когда вы закончите с несколькими ссылками, как две указанные выше, перечитайте их еще раз . Не пропускайте ни одной его части.На этот раз все станет для вас более осмысленным, и вы сможете самостоятельно связывать различные концепции. Если вы все еще не можете связать фрагменты информации, разбросанные в нескольких местах, тогда продолжайте повторять этот шаг, пока вы действительно не начнете связывать основные концепции . Не беспокойтесь о том, что вы правы или правы, просто свяжите их и сделайте заметки. Примечания помогут вам измерить вашу кривую для изучения Java .
Внимательно изучите концепции объектно-ориентированного программирования .Как и другие популярных языков программирования , Java также является объектно-ориентированным языком программирования.
2) Создайте несколько небольших программ
Если вы уверены, что очень хорошо знакомы с большинством основных вещей / ключевых слов и концепций и действительно можете как-то связать их, вы можете перейти ко второму шагу, где вам нужно будет начать создавать некоторые очень очень простые программы Java например привет мир, простое сложение и вычитание и т. д.
Когда вы пишете программы, имейте в виду, что первая пара программ будет для вас очень сложной.Но как только вы закончите с ними, вы не столкнетесь с аналогичным уровнем сложности в следующем наборе программ.
Вы можете столкнуться с такими трудностями, что не сможете самостоятельно набрать свою программу hello world. Не сомневайтесь, откройте Google и найдите похожую программу. Не копируйте его с помощью CTRL + C. Здесь просто прочтите программу и введите в свою IDE (интегрированная среда разработки ) (я предлагаю использовать eclipse, поскольку я считаю это очень простым) и устраните ошибку компиляции, вызванную неправильным синтаксисом, который вы получили при наборе текста (в основном я предполагаю, что вы будете делать ошибки в нижнем / верхнем регистре).Если вы все еще не можете это сделать, снова воспользуйтесь помощью Google. Google — ваш друг, просто запомните.
Сделайте это для пары программ и помните, что всегда старайтесь сначала создать программу самостоятельно, а затем использовать Google. Ниже я привожу список основных java-программ, которые вы можете рассмотреть для начала.
- Показать текстовое сообщение.
- Отобразить список чисел (от 1 до 50) в каждой новой строке.
- Найдите максимальное и минимальное значение между двумя числами.
- Переключение между двумя числами с помощью любой известной вам техники.
- Создайте программу-калькулятор, способную складывать / вычитать / умножать и делить числа.
- Создайте два класса (суперкласс / подкласс) и отработайте концепции перегрузки и переопределения методов.
- Создайте несколько программ с использованием массива, например вывод вывода на печать в формате массива в консоли.
- И так далее…
Вышеупомянутые программы предназначены только для того, чтобы вы могли понять, что я имел в виду под базовыми программами.Список может быть длиннее, и я предлагаю вам добавить в этот список больше элементов и создать для них программы. И помните, Google — ваш друг 🙂
Также используйте IDE
3) Создавайте расширенные программы с использованием Java API
Теперь, когда вы закончили создание большинства базовых программ, и, что наиболее важно, вам удобно создавать такие базовые программы. программы, переходите к этому шагу. Здесь я предлагаю вам усердно поработать , изучая API-интерфейсы Java внутри коллекций Java и IO Java.Просто начните исследовать различные классы и интерфейсы, задействованные в этих API, и начните создавать для них программы. Обратите внимание, что всегда следует пытаться найти уже существующий API и метод для выполнения определенной задачи, а вы не должны создавать здесь свою собственную логику . Ваша цель — познакомиться с этими API, поэтому всегда ищите решение только в этих API.
Опять же, я предлагаю несколько базовых программ, с которыми вы можете начать работать. Позже вы можете включить больше API и больше таких программ, сколько сможете.
- Получение ввода с консоли и его печать
- Чтение файла из файловой системы и печать его содержимого в консоли
- Создание нового файла и запись в него некоторых данных
- Чтение данных из URL-адреса и поиск его содержимого
- Сохранение элементов в списке, а затем итерация по нему.
- Используйте HashMap для хранения случайных пар ключ-значение и итерацию по нему разными способами.
- Создайте несколько программ для поиска и сортировки по элементам коллекции.
Чем больше и больше программ вы создадите на этом этапе, тем больше у вас будет уверенности.Как только вы научитесь использовать эти API, переходите к наиболее важной и сложной задаче в следующем разделе.
4) Создайте хотя бы одно настольное приложение и одно веб-приложение.
Этот шаг придаст вам уверенности, которая необходима для прохождения любого собеседования java и подтверждения вашего таланта в обсуждениях, связанных с java. Идея проста. Вам просто нужно выбрать , по крайней мере, одно настольное приложение Java / GUI (например, настольный калькулятор), а затем одно веб-приложение (например, управление больницей) .И теперь, когда у вас есть самые базовые знания, начните изучать все, что вам понадобится для создания двух ваших приложений.
Обратитесь за помощью к экспертам (я тоже сделаю все, что в моих силах, чтобы помочь вам), к вашим опытным друзьям, коллегам и всем, кого вы знаете и кто может вам помочь. Прочтите все доступные хорошие материалы, которые встречаются на вашем пути при поиске решений и простом изучении концепций. Купите несколько книг, которые связаны с концепциями, которые вас интересуют. Сделайте все необходимое для создания этого приложения.Сделайте их единственной целью на несколько дней (или недель, или даже месяцев).
Позвольте мне заверить вас, что к тому времени, когда вы в конечном итоге выполните оба упражнения, вы будете намного увереннее, чем когда-либо прежде, когда дело доходит до java. И что еще более важно, это помогает вам выработать привычку добиваться результатов любой ценой. Такое отношение очень важно в долгосрочной перспективе вашей карьеры.
5) Читайте и участвуйте в некоторых хороших блогах / форумах java.
После того, как ваши четыре шага будут выполнены, вы станете более уверенным в себе человеком, который также сможет помочь другим, как вы были несколько месяцев назад. Найдите людей, которые знают меньше, и помогут им в решении проблем , даже если это потребует и от вас некоторого количества времени. Хорошим местом для этих занятий могут быть форумы, например,
stackoverflow.com
. Когда вы начинаете узнавать об ошибках, которые делают другие, это просто открывает ваш разум в различных направлениях и улучшает ваши возможности обработки мыслей.Фактически, последний шаг похож на бесконечный цикл, и вы должны продолжать его, когда позволяет время. Вы действительно оцените результаты, когда поймете, насколько вы стали зрелыми.
Это все, что я думаю о , лучший способ изучить Java . Если вы согласны со мной, оставьте комментарий. Если вы не согласны со мной, оставьте свое предложение. Я включу вашу мысль в основную статью, если она действительно хороша.
Счастливого обучения !!
Был ли этот пост полезным?
Сообщите нам, понравился ли вам пост. Это единственный способ стать лучше.
Зачем изучать Java? | КодированиеNomads
Ким Десмонд и Кейден Маккензи, CodingNomads
Эта статья была первоначально опубликована в 2017 году, последние обновления — в 2021 году.
«Какой язык программирования лучший» — одна из самых жарких дискуссий в индустрии разработки программного обеспечения. У каждого свое мнение, и, честно говоря, все это полностью субъективно, исходя из того кодирования, которое ему нравится.
Если вы планируете научиться программировать, чтобы расширить свои карьерные возможности и доходы, важно определить, какой тип разработки программного обеспечения вам нравится. Веб-разработчики, использующие такие языки, как JavaScript, преуспевают, когда веб-сайт выглядит и ощущается потрясающе, но съеживаются при мысли о бесконечных часах работы над кодом на сервере.Однако серверные разработчики, использующие такие языки, как Java и C, меньше озабочены тем, как выглядит веб-сайт — вместо этого они преуспевают в логике серверной части и решении проблем, чтобы заставить программные приложения работать.
Если вы не уверены, вы можете бесплатно попробовать кодирование на обучающей платформе CodingNomads, чтобы попробовать разные языки. Вы также можете рассмотреть типы компаний, в которых вы хотите работать, и изучить, какие языки они используют.
В CodingNomads, где сегодня используется более 250 языков программирования, и на курсах для начинающих по программированию, где преподается более 100 человек, мы преподаем Java, потому что мы воочию убедились, насколько универсальна, переносима и востребована Java во всем мире.Изучение Java изменило нашу жизнь к лучшему, и мы стремимся делиться этими ценными навыками с нашими учениками. Продолжайте читать, чтобы узнать, почему изучение Java может быть одним из лучших решений, которые вы когда-либо принимали.
1. Java — самый востребованный язык программирования
На графике ниже мы собрали 10 лучших языков программирования на основе количества объявлений о вакансиях на Indeed.com, крупнейшем в мире агрегаторе вакансий. В соответствии с рейтингом Java №1, полученным CodingDojo в 2016 и 2017 годах, Java остается самым востребованным языком программирования в 2018 и 2019 годах.
вакансии разработчика Android также входят в десятку лучших, при этом Java является основным языком, используемым для нативных приложений Android. На этом графике не включен SQL, поскольку технически это не язык программирования, а язык запросов к базе данных. SQL также входит в учебную программу CodingNomads. На сайте Indeed.com размещено более 102 416 объявлений о вакансиях, и это необходимый навык для любого инженера-программиста.
Эти статистические данные относятся только к рынку США, и, несомненно, по всему миру доступны еще десятки тысяч рабочих мест Java и SQL.Изучая сочетание Java и SQL на наших учебных курсах, студенты CodingNomads из года в год получают навыки, которые наиболее востребованы в любом другом языке.
2. Нет предела тому, что можно создать с помощью Java
Java была создана в 1995 году компанией Sun Microsystems как платформенно-независимый язык с открытым исходным кодом, встроенный в различную бытовую электронику. В конце концов, Sun Microsystems была приобретена Oracle, а Java стала главным владением. Известная своей безопасностью, универсальностью и портативностью для работы в любой операционной системе, Java быстро стала (и осталась) технологией, меняющей правила игры, используемой на различных устройствах и в различных секторах.
Какие типы компаний используют Java?
Java используется компаниями в сфере технологий, правительства, финансов, здравоохранения, страхования, образования, производства, обороны и других сферах. 90% компаний из списка Fortune 500 используют Java в качестве серверной архитектуры. Тем не менее, из-за его скорости и масштабируемости многие стартапы, сталкивающиеся с быстрым ростом, также используют Java для работы своих инструментов. По данным iDataLabs, 70% компаний, использующих Java, являются небольшими (<50 млн долларов дохода в год), 8% - средними (50–1000 долларов США) и 15% - крупными (> 1000 млн долларов США).
По оценкам Oracle, Java работает на более чем 3 миллиардах устройств по всему миру — больше, чем на любом другом языке. Практически вездесущий язык, он используется в таких устройствах, как смартфоны, автомобили, медицинские устройства и электронные книги, а также на многих самых известных мировых веб-сайтах, таких как eBay, Linkedin, Amazon, Facebook и Google.
Для чего используется Java?
Java используется для Интернета вещей и API-интерфейсов, в технологиях больших данных, на веб-сайтах электронной коммерции, платформах высокочастотной торговли для финансовых операций и в научных приложениях.Как уже упоминалось, Java работает на Android, которая является наиболее широко используемой операционной системой в мире. Это мозг Gmail, и он есть даже в марсоходе Curiosity Rover.
Java настолько широко используется, что была создана пародия на видео, изображающую сценарий конца света того, каким был бы мир без Java. Это немного глупо, но демонстрирует глубину и масштаб влияния Java на наш мир.
youtube.com/embed/E3418SeWZfQ?enablejsapi=1&autoplay=0&cc_load_policy=0&cc_lang_pref=&iv_load_policy=1&loop=0&modestbranding=1&rel=0&fs=1&playsinline=0&autohide=2&theme=dark&color=red&controls=1&» title=»YouTube player» allow=»autoplay; encrypted-media» allowfullscreen=»» data-no-lazy=»1″ data-skipgform_ajax_framebjll=»»/>
3. Java-разработчики зарабатывают большие деньги
Согласно Payscale.com, средняя зарплата для Java-разработчиков начального уровня составляет 59 053 долларов. Имея несколько лет опыта, разработчики Java могут рассчитывать на получение более 100 000 долларов в год. Заработная плата варьируется в зависимости от компании и местоположения, но зарплата Java-разработчиков постоянно конкурирует с зарплатой других общеязыковых разработчиков.
4. Java имеет глубокую поддержку сообщества
По оценкам Oracle, во всем мире насчитывается более 9 миллионов разработчиков Java. Любой разработчик может сказать вам, какую огромную роль играет сообщество программистов в своем непрерывном образовании.Когда вы застряли, вы обращаетесь к Stack Overflow, платформе вопросов и ответов по программированию. Когда вам интересно, вы просматриваете репозитории кода на Github. Рост и успех любого языка программирования зависит от сообщества разработчиков, готовых делиться знаниями. Без этой системы поддержки язык просто не выжил бы.
Насколько активно Java-сообщество?
Индекс TIOBE
Индекс TIOBE Index оценивает популярность языков программирования на основе количества поисковых запросов в 25 поисковых системах. Год за годом Java является языком программирования №1, который чаще всего ищут, , демонстрируя неизменную популярность и интерес во всем мире.
Индекс самых популярных языков программирования TIOBE — июнь 2019
Источник изображения: TIOBE
GitHub
GitHub — это место, где разработчики хранят код проекта и сотрудничают с другими разработчиками. Java имеет самые активные репозитории и разработчиков из всех языков программирования. : более 1 миллиона репозиториев GitHub, связанных с Java, и 99 000 активных разработчиков Java.
Переполнение стека
Согласно ежегодному опросу разработчиков программного обеспечения Stack Overflow, Java в этом году занимает пятое место в списке самых обсуждаемых технологий. Термин «Java» отмечен в 1 555 951 вопросе по Stack Overflow, что свидетельствует о невероятно сильном и активном сообществе нынешних и начинающих Java-разработчиков.
Самые популярные языки программирования Stack Overflow в 2019 году
Источник изображения: Stack Overflow
Если вы хотите построить карьеру в крупной корпоративной фирме или в новом интересном новом предприятии, сообщество Java-разработчиков будет играть решающую роль в вашем профессиональном росте.С Java у вас будут тысячи обученных и опытных наставников всего в одном клике.
5. У Java выносливость
Многие честолюбивые разработчики программного обеспечения хотят изучать новейшие, самые современные технологии. Однако в такой быстро развивающейся отрасли вы не хотите тратить время и деньги на изучение языка, который устареет через несколько лет. Благодаря более чем 20-летнему опыту использования Java, несомненно, останется востребованным для будущих поколений.
Кроме того, после изучения Java изучение других языков становится намного быстрее и проще.Вот почему Java часто является основным языком программирования, преподаваемым во многих университетских программах по компьютерным наукам (CS) по всему миру. Хотя первый язык, который вы выбираете для изучения, не обязательно определяет язык, на котором вы будете специализироваться навсегда, принятие осознанного и стратегического решения настроит вас на немедленный и долгосрочный успех.
Изучение такого универсального языка, как Java, открывает двери для работы во всех областях быстро развивающейся технологической экономики. Понимая, что не все студенты знают, какую работу они хотят получить по завершении нашего учебного курса по программированию на Java, мы готовим студентов на прочной основе, которая открывает путь к широким возможностям работы по окончании обучения.
Выпускники учебных курсов по Java CodingNomads работают на великие компании
6. Java для начинающих
Java произошла от языков C и C ++, которые также широко используются сегодня. Хотя Java имеет некоторые общие функции с C и C ++, он превратился в язык, гораздо более удобный для начинающих. Например, Java обрабатывает многие утомительные и сложные задачи, такие как управление памятью и указатели, что упрощает написание и выполнение для начинающих программистов.
Java предлагает объектно-ориентированный подход к программированию, который позволяет даже новейшим разработчикам Java начать моделировать окружающий мир в коде и думать как разработчик.
Объектно-ориентированное программирование также упрощает обслуживание и изменение существующего кода, а это означает, что даже начинающие программы могут начать работать над корпоративными проектами.
Хотя Java иногда критикуют за многословность и негибкость, эти черты действительно могут принести пользу начинающим программистам. Поскольку Java проверяется на наличие ошибок перед запуском, новые разработчики с меньшей вероятностью столкнутся с неизвестными ошибками времени выполнения. Кроме того, Java заставляет разработчиков тщательно определять все аспекты своего кода, оставляя меньше места для ошибок по мере роста программ.
7. Java дает вам конкурентное преимущество
Согласно отраслевому исследованию учебных курсов по кодированию, проведенному отчетом о курсе, только 12% курсов по программированию преподают Java. 67% изучают «клиентские» языки или языки веб-приложений, такие как JavaScript и Ruby, а некоторые выпускники учебных курсов жаловались, что отрасль наводнена выпускниками учебных курсов по веб-разработке.
Для начинающих разработчиков программного обеспечения, которые хотят выделиться среди остальных, изучение серверного языка программирования, такого как Java, поможет вам выделиться и даст вам право на десятки тысяч заданий по программированию на стороне сервера.
Учебный лагерь
по Java и университетская степень
Так разве это не означает, что выпускники учебных курсов по Java сейчас конкурируют с выпускниками университетов по информатике? Короче да. Однако наша учебная программа выходит далеко за рамки того, что вы изучаете в университете.
Хотя университетский диплом всегда является преимуществом для поиска работы, к сожалению, сегодня университетские программы не обеспечивают своих выпускников необходимыми повседневными навыками, необходимыми для работы в качестве инженера-программиста.
Когда соучредитель CodingNomads и разработчик учебных программ по Java Райан Десмонд получил свою первую работу после получения степени CS, ему пришлось решать практические задачи разработки программного обеспечения на работе и на ходу.Поскольку сегодня работодатели ценят работу, которую вы можете выполнять, а не имеющуюся у вас квалификацию, наша учебная программа, ориентированная на работу, помогает успешным студентам учебного курса Java оставаться конкурентоспособными, даже с выпускниками университетов.
Заинтересованы в изучении Java?
Наша учебная программа глубоко изучает Java, SQL, объектно-ориентированное программирование, структуры данных и алгоритмы, управление базами данных и многое другое. За годы работы в профессиональной команде мы не понаслышке знаем, что это всестороннее сочетание навыков необходимо работодателям сегодня и будет отличать студентов CodingNomads от остальных.
ЧИТАЙТЕ СЛЕДУЮЩИЙ : Как найти работу после учебного курса по кодированию
Полное руководство по Java для начинающих
Java выросла и стала одним из самых популярных языков программирования в мире. . Это универсальный , относительно простой в использовании и имеет широкий спектр вариантов использования . Это делает отличным языком для изучения — как для начинающих, так и для опытных программистов — и привело к тому, что большое количество людей спрашивают, как писать код на Java.
Цель этого учебного курса — предоставить введение в основы Java и программирование на Java. Мы рассмотрим , почему вам нужно изучать Java, инструменты, , которые вам нужны, чтобы начать использовать Java, и несколько простых вещей, которые помогут вам изучить его.
Без лишних слов , давайте прямо в дело!
Зачем мне использовать Java?
Как отмечалось выше, Java — один из самых универсальных языков программирования на планете.Он основан на объектно-ориентированном программировании и является языком выбора для многих вещей, в том числе:
Последний найденный купон Udacity:
Выбор проверенного персонала
ЭКСКЛЮЗИВНО: СКИДКА 50%
На программы Udacity Nanodegree
Начните год с новых навыков — поторопитесь и выберите программу Udacity Nanodegree своей мечты с огромной скидкой 50%! Этот эксклюзивный код купона Udacity активен в течение ограниченного времени.
Срок годности: 03.03.2021
Использовано 2948 человек
Осталось всего 37
×
ЭКСКЛЮЗИВНО: 50% СКИДКА
На программы Udacity Nanodegree
Начните свой год с новыми навыками — торопитесь и выбирайте Программа Udacity Nanodegree вашей мечты с огромной скидкой 50%! Этот эксклюзивный код купона Udacity активен в течение ограниченного времени.
Идите и делайте покупки со скидкой!
REDEEM DEAL
Срок годности: 03.03.2021
2948 Пользователей
Только 37 Осталось
Разработка приложений для Android
Хотя некоторые команды программистов начинают использовать другие языки, почти каждое отдельное приложение, когда-либо созданное для операционных систем Android, построено на Java .
Совершенно верно — почти все приложения, которые вы используете на своем телефоне Android , работают на Java .Это означает, что знание того, как программировать на Java, приведет вас к тысячам вакансий только в этой области.
Внутренняя веб-разработка
Java чрезвычайно масштабируема и относительно проста в обслуживании . Это привело к массовому внедрению серверными веб-разработчиками, создающими веб-приложения для крупных веб-сайтов. Было подсчитано, что около 80% крупнейших веб-сайтов в мире используют серверные веб-приложения, созданные с помощью Java.
Java также использовалась для новых технологий, таких как robotics , но два указанных выше использования являются основными.Есть много причин, по которым Java стала языком выбора для этих случаев использования, в том числе:
- Используя программу виртуальной машины Java, Java может работать практически на любой платформе или операционной системе . Это известно как « независимость от платформы », и это означает, что программы, написанные с использованием Java, должны быть написаны только один раз.
- Java является супер-масштабируемой , а это означает, что по мере роста компании и усложнения веб-приложений очень легко поддерживать бесперебойную работу кода и без ошибок.
- Java довольно легко выучить, и читается как английский . Это означает, что это язык, который предпочитают новички. прост в использовании и при необходимости легко отлаживать.
- Он предлагает из коробки управление памятью . Это устраняет необходимость в сторонних библиотеках, упрощая процесс программирования.
Как видите, существует множество причин, по которым вам следует научиться программировать на Java. В следующем разделе мы рассмотрим инструменты, которые вам понадобятся, чтобы начать узнавать, как использовать Java.
Самые популярные результаты
Ищете более подробную информацию по связанным темам? Мы собрали похожие статьи, чтобы вы сэкономили время. Взглянуть!
Хотя многие онлайн-курсы позволяют писать код Java прямо в редакторе кода, в реальной жизни это не так. Если вы серьезно относитесь к обучению правильному программированию на Java, вам нужно привыкнуть к использованию правильных инструментов с самого начала .
Ниже мы рассмотрим , как загрузить и установить два наиболее важных инструмента, необходимых для начала работы.
Сюда входят:
Комплект для разработки Java
Java Development Kit , или JDK, представляет собой программу , которая позволяет вам писать код Java, не выходя из рабочего стола .
Он содержит множество инструментов, которые очень полезны для создания, запуска и оптимизации вашего Java-кода . Его можно использовать с чем-то вроде интегрированной среды разработки (IDE) Eclipse , чтобы сделать написание кода проще, чем когда-либо прежде.
Прежде чем вы сможете использовать JDK, вам необходимо загрузить и установить его на свой компьютер . Это жизненно важная часть обучения программированию на Java.
Начало:
- Перейдите на страницу Java SE Downloads и щелкните последнюю версию JDK. Следуйте инструкциям, чтобы начать загрузку пакета, подходящего для вашей операционной системы.
- После завершения загрузки вам нужно запустить его . Лучший способ сделать это будет зависеть от того, используете ли вы Windows или Mac, но он не будет отличаться от установки любого другого программного обеспечения.
- Следуйте инструкциям по установке программы и дождитесь ее завершения.
Отлично, теперь мы готовы перейти к Eclipse IDE — второму важному инструменту для людей, изучающих программирование на Java.
Eclipse IDE
Eclipse IDE — это чрезвычайно популярный инструмент , который используется вместе с JDK.
Это помогает упростить базовые задачи , такие как отладка и компиляция кода, освобождая вас, чтобы больше сосредоточиться на процессах написания и тестирования.Eclipse также полезен для организации и хранения файлов кода , позволяя компилировать и тестировать их по мере необходимости, но мы еще не до этого.
Начнем с установки Eclipse:
- Перейдите на страницу загрузки Eclipse и выберите Eclipse IDE для разработчиков Java EE.
- Загрузите файл, сохраните его на жесткий диск и установите на , как и любую другую новую программу.
Отлично, теперь у вас есть и JDK, и Eclipse IDE на вашем компьютере — вы на пути к эффективному программированию на Java! Затем нам нужно связать JDK и Eclipse IDE:
- Откройте программу Eclipse и выберите рабочее пространство по умолчанию, когда будет предложено .
- Как только вы войдете в Eclipse, перейдите к Preferences, выберите Java , а затем выберите Installed JREs .
- Теперь вам нужно выбрать JRE (среда выполнения Java), которая соответствует загруженному вами JDK.Если ваш компьютер не подхватывает его автоматически, вам нужно будет добавить его вручную с помощью кнопки Добавить .
- Для этого нажмите Добавить, выберите вариант Standard VM и нажмите Next . Сообщите программе, где найти JDK (каталог файлов), и нажмите Finish . Нажмите ОК , и все готово!
Молодец. Теперь у вас есть все инструменты, необходимые для обучения программированию на Java! Далее, , мы познакомимся с Eclipse IDE.
Использование Eclipse IDE
Теперь, прежде чем мы начнем, вы должны понять, что Eclipse IDE — это чрезвычайно мощный инструмент , который поможет вам изучить основы Java . Он состоит из четырех отдельных областей:
- Перспективы
- Рабочее пространство
- Просмотры
- Проектов
На данный момент мы не будем об этом беспокоиться. Вы узнаете больше о них и о том, как они помогут вам научиться программировать на Java в процессе работы, но пока давайте сосредоточимся на , чтобы запустить ваш первый проект!
Начало нового проекта
После того, как вы ознакомитесь с IDE Eclipse, мы перейдем к созданию новых проектов Java.Сначала выберите File , затем New, , затем Java Project. Это не так уж сложно, правда? Назовите свой проект и используйте остальные настройки по умолчанию. Нажмите Finish и посмотрите результат.
Поздравляем, вы только что создали свой первый Java-проект! Теперь давайте узнаем немного о языке и о том, как мы можем использовать его для создания наших программ.
Введение в язык Java
Итак, как мы уже отмечали ранее, Java — это относительно простой язык для изучения с точки зрения языков программирования. Однако это не значит, что он не такой уж сложный .
Несмотря на то, что я старался сделать следующее простым (в соответствии с темой «Java для начинающих»), не ожидает, что сразу все поймет . Даже изучение основ Java требует времени, а потребует много тяжелой работы и приверженности , прежде чем вы поймете, как эффективно кодировать на Java.
Начнем с одной из главных особенностей языка — его объектно-ориентированной природы .Обратите внимание, что для описания всех возможностей объектно-ориентированного языка потребуется целая статья, поэтому нижеследующее является не более чем кратким введением.
Хотя сначала это может показаться довольно сложным, синтаксис Java довольно прост . Он включает в себя несколько различных типов: , , операторы , классы , переменные и другие вещи . Давайте рассмотрим некоторые из них более подробно:
Ключевые слова — чтобы понять, как кодировать на Java, вам необходимо знать короткий список слов, которые распознаются программой чтения кода как специальные .Это означает, что у них есть особая функция и они будут выполнять определенные действия при использовании в вашем коде.
Некоторые общие ключевые слова включают if, for, else и float . Если вы используете редактор кода, такой как JDK, с установленной Eclipse IDE, вы заметите, что ключевых слов имеют другой цвет по сравнению с другими элементами вашего кода.
Литералы — Как и ключевые слова, литералы имеют специальные функции, которые они задействуют , когда они включены в ваш код.Есть три литерала: true, false и null .
Классы — Классы являются одной из основных функций языка программирования Java . Они используются как чертежи, позволяющие создавать объекты. Они определяют общую структуру объекта , границу объекта и его состояние .
Классы определены в соответствии с очень строгим набором правил, которые вы обнаружите, когда начнете изучать Java.
Строки — Строки — очень важная часть знания синтаксиса Java. Это первоклассных объектов, которые содержат определенное значение (обычно это «строка» текста).
Операторы — Как и многие другие языки программирования, Java использует операторы . Они используются для выполнения арифметических операций и для присвоения значений переменным .
В языке Java есть два типа операторов: Унарные операторы , для которых требуется только один операнд (например, = или +), и Бинарные операторы , для которых требуются два операнда (например, ++ или + =). .Существует широкий спектр различных операторов , которые имеют разные функции. Вы откроете для себя это, когда начнете изучать Java.
Оператор IF — Опять же, Java имеет общую для многих языков функцию — оператор IF . Этот оператор принимает входные данные, определяет, истинно оно или ложно, и выдает заранее определенный вывод в соответствии с результатом.
Оператор ELSE — Оператор ELSE используется аналогично оператору IF. Однако разница в том, что оператор ELSE вступает в игру, только если оператор IF ложен.
Например, мы вводим что-то в оператор IF, который дает ложное значение. Затем оператор ELSE выполняет свой код . Если оператор IF истинен, оператор ELSE игнорируется.
Циклы – Циклы — это конструкции , которые позволяют выполнять или перебирать один и тот же блок кода несколько раз при соблюдении определенных условий.
Существует три различных типа конструкций цикла — для циклов, циклов while и do … while, циклов . Вы узнаете больше о том, как они работают и как их использовать, когда начнете изучать Java.
Комментарии — Комментарии — это небольшие фрагменты текста, которые записываются между строками кода , чтобы объяснить, что это за код и что он должен делать . Они чрезвычайно полезны, когда вам придется вернуться к своему коду позже, и это очень хорошая идея, чтобы выработать привычку использовать описательные комментарии!
Как мне научиться правильно писать код на Java?
Если у вас нет опыта программирования и вы никогда раньше не изучали язык программирования, вам может быть интересно, , как все, через что мы прошли, связано с обучением программированию на Java.
Что ж, к счастью для вас, мы собираемся облегчить ситуацию и коснуться некоторых из лучших способов научиться основам программирования на Java. Во-первых, я должен подчеркнуть, насколько важно для вас привыкнуть к JDK.
Научиться писать код с помощью интерактивных программ и онлайн-курсов — которые мы собираемся рассмотреть — хорошо для начинающих , но это не так, как в реальном мире. Имея это в виду, вот несколько лучших способов изучить основы программирования на Java:
Использование онлайн-курсов
Онлайн-курсы — отличный способ научиться программировать .Языки программирования сложны, они требуют много времени и усилий, чтобы изучить , и может быть очень сложно разобраться в синтаксисе.
Если вы решили изучить основы Java, ознакомьтесь с широким спектром курсов, предлагаемых на платформе Udacity .
Этот курс — один из лучших способов научиться программировать на Java. Этот курс, разработанный для начинающих, не имеющих опыта программирования, содержит не только теорию , но и редактор, в котором вам нужно будет выполнять практические упражнения .
Он познакомит вас и расширит базовый синтаксис, используемый для программирования на Java. Вы узнаете, как писать свои программы в редакторе кода JDK , который мы скачали ранее, и научитесь основам внутренней веб-разработки с использованием Java.
Использование мобильных приложений
В качестве альтернативы вы можете решить изучить Java для начинающих с помощью мобильного приложения. С развитием программирования и растущим спросом на опытных программистов появился ряд мобильных приложений, которые предназначены для обучения обычного человека программированию.
Хотя многие из них предназначены для детей и подростков , средний человек может их использовать в качестве дополнения к другим ресурсам.
Просмотр видеоуроков
Перейдите на YouTube, введите что-то вроде «как писать код на Java», и вы обнаружите, что предлагает целый ряд доступных видеоуроков, которые призваны помочь обычному человеку начать работу.
Эти учебные пособия помогут вам получить базовое представление об основных концепциях Java , одновременно позволяя попрактиковаться в написании кода в недавно загруженном редакторе кода.
Взаимодействие с другими учащимися
Еще один отличный метод — это выйти и начать работу в сети с другими единомышленниками, которые также изучают Java.
Присоединяйтесь к группе онлайн-чата или форуму , поделитесь своим кодом и прокомментируйте код, написанный другими учащимися. Вы обнаружите, что общение с группой людей, имеющих схожие цели, поможет вам. сохранять мотивацию. , даже когда дела идут тяжело — и так оно и будет!
Советы по написанию хорошего кода Java для новичков
Как новичку, практически не имеющему знаний в программировании, может быть очень сложно научиться правильно писать код на Java. Проблемы будут появляться и дальше (поверьте мне, я знаю, на что это похоже!), И вы, вероятно, в конечном итоге будете довольно разочарованы временами . Вот несколько полезных привычек, которые помогут упростить процесс написания кода:
- Сборка малых классов . Это гарантирует, что ваш код останется читаемым, поддерживаемым и доступным для других разработчиков, которые должны будут работать с ним после вас.
- Используйте комментарии! Комментарии — это короткие письменные утверждения, которые рассказывают другим людям (и вам), что такое ваш код и что он должен делать.
- Назовите свои методы. Это поможет избежать путаницы, особенно когда вы пишете сложные программы с тысячами строк кода.
Это лишь некоторые из вещей, которые вы можете сделать, чтобы с самого начала писать хороший код. Самое важное на этом этапе — это выйти и начать работу.
Самые популярные результаты
Просмотрите нашу коллекцию наиболее подробных статей, руководств и учебных пособий, связанных с платформой онлайн-обучения.Всегда будьте в курсе и принимайте взвешенные решения!
Заключение
Так чего же вы ждете? Теперь вы знаете все о том, как научиться программировать на Java . Хотя это относительно простой язык (по сравнению с чем-то вроде C или C #), все же потребует много времени и усилий, прежде чем вы научитесь свободно писать даже базовые программы на Java.
Используйте онлайн-ресурсов , выделяйте определенное количество времени каждую неделю на учебу, а убедитесь, что вы практикуетесь в написании программ .Свободно владейте синтаксисом Java, общайтесь с другими учащимися и, прежде всего, убедитесь, что никогда не прекращает учиться!
Поздравляю, вы знаете все, что вам нужно, чтобы начать писать код на Java. Теперь вам решать, что вы будете делать с этими знаниями . Собираетесь ли вы упустить возможность или ухватитесь за нее обеими руками, и сделает Java первым шагом на вашем пути к карьере программиста?
Теперь начните учиться на некоторых из самых уважаемых платформ, таких как edX, Udacity или Coursera!
Оставьте честный отзыв
Оставьте свое искреннее мнение и помогите тысячам людей выбрать лучшую платформу для онлайн-обучения.Все отзывы, как положительные, так и отрицательные, принимаются, если они честны. Мы не публикуем предвзятые отзывы или спам. Так что если вы хотите поделиться своим опытом, мнением или дать совет — сцена ваша!
Изучите Java с нуля с помощью этих простых шагов
Java решает реальные проблемы
Java известна своими возможностями «написать один раз, запустить где угодно».Это означает, что код, скомпилированный на Java, может работать на любой платформе без необходимости повторной компиляции. Вот почему Java используется во всех видах распределенных сред. Фактически, по оценкам Oracle, Java используется более чем в 3 миллиардах устройств по всему миру, таких как проигрыватели Blu-ray, игровые консоли и телефоны Android. Java даже используется индустрией финансовых услуг и НАСА. Для реального применения Java нет предела.
Java повысит вашу карьеру
Поскольку Java помогает нам решать проблемы реального мира, для Java-программистов есть много возможностей трудоустройства.Это востребованный язык для компаний любого размера и масштаба. Java продолжает оставаться одним из самых востребованных языков программирования работодателями как в сфере высоких технологий, так и за ее пределами. По отраслевым оценкам, примерно 90% компаний из списка Fortune 500 в той или иной мере используют Java.
Навыки Java можно передавать
Java — это язык объектно-ориентированного программирования (ООП), синтаксис которого основан на C. Эти концепции распространены и во многих других языках программирования, поэтому, изучая и осваивая Java, вы также готовитесь к решению других задач. языки в будущем.JavaScript, C # и C ++ стали намного проще.
Я хочу изучить Java. С чего мне начать?
Давайте разберем шесть умных шагов к изучению Java и разберемся с базовым словарным запасом, чтобы вы начали.
1. Сделайте вашу мотивацию ощутимой
Java может быть проще выучить другие языки, но это не значит, что это не будет сложно. Чтобы овладеть Java, вам нужно учиться и практиковаться ежедневно. Это будет сложнее, если у вас нет цели, стоящей за ваш тяжелый труд.
Наличие четкой мотивации поможет вам справиться с трудностями и позволит сосредоточиться на обучении. Вы хотите создать игру? Вы хотите карьеру Java-разработчика на полную ставку? Ставьте эти цели заранее!
2. Составьте учебный план
Дисциплина — ваш новый лучший друг. Составление плана вашего обучения поможет вам как новичку в изучении Java или сломает его. Имея образовательный план, вы будете знать, когда и что изучать.
Установите еженедельный учебный план, начиная с основ.Многие спрашивают, сколько времени нужно на освоение Java, и, конечно же, нет однозначного ответа. Но целеустремленный, организованный ученик наверняка будет учиться быстрее и умнее, чем тот, кто этого не планирует.
Если вы серьезно относитесь к изучению Java, мы рекомендуем выделить 2 часа в будний день и 4 часа в день в выходные для изучения. Если вы будете придерживаться этого плана, вам, вероятно, понадобится 4-7 месяцев, прежде чем вы будете готовы подать заявку на работу в качестве младшего разработчика Java.
Вот общая последовательность тем, которые вам необходимо изучить:
- Синтаксис Java (правила написания программы)
- Концепции объектно-ориентированного программирования
- Core Java (как вы разрабатываете Java-приложение)
- Коллекции Java (архитектура для хранения групп объектов)
- Библиотеки и фреймворки (большие коллекции предварительно написанного кода)
- API (протоколы и инструменты, используемые для создания приложений)
- Git (широко используемая система управления)
Составьте учебный план по этим темам.Помните, что ваше время будет зависеть как от вашего знания других языков программирования, так и от вашего личного стиля обучения.
3. Загрузить Java Development Kit (JDK)
Java Development Kit — это среда разработки, в которой вы можете документировать и компилировать приложения Java. Он включает в себя все основные инструменты, необходимые для написания и разработки Java. Этот пакет включает среду выполнения Java (JRE) и виртуальную машину Java (JVM). JRE предоставляет библиотеки и компоненты для фактического выполнения вашего кода и приложений.
JVM — это то, что запускает ваши байт-коды Java и реализует ваш код на любой платформе. Вы можете скачать JDK из Oracle.
Если вы все еще не уверены в Java, не беспокойтесь об этом шаге. Вам не обязательно сразу брать на себя обязательства, и вы можете начать с курсов, которые предлагают встроенную среду.
4. Начните с основ
Даже если вы знакомы с другими языками программирования, основательное введение в Java имеет решающее значение для создания основы и обеспечения успеха.Как только вы поймете, как компилировать код и исправлять ошибки, вы можете переходить к следующему этапу обучения. Итак, для начала давайте рассмотрим несколько ключевых терминов и понятий.
Что такое синтаксис Java?
Как и любой язык, в языке программирования есть набор терминов и правил, которые определяют смысл и порядок. У Java есть собственный синтаксис, которому вам нужно научиться писать код. В Java учитывается регистр, поэтому заглавные буквы имеют значение. Например,endLoop
иEndloop
будут иметь разное использование и значение.Все, от объявления типов данных, объявления переменных и использования операторов, будет использовать синтаксис.Что такое идентификаторы? Идентификаторы — это имена, которые мы используем для создания всех наших элементов Java. Вы можете использовать идентификатор для ссылки на элемент позже в вашей программе. Вот правила синтаксиса для всех идентификаторов:
- Идентификаторы чувствительны к регистру
- Идентификаторы начинаются с буквы (от A до Z или от a до z), символа подчеркивания (_) или символа валюты ($)
- Идентификатор не может быть ключевым словом
- Примеры:
возраст
,_number
,_1_value
Что такое операторы? Операторы — это символы, которые выполняют определенные операции или функции.Думайте об этом как о знаках препинания в предложении или символах алгебраической формулы. В Java есть несколько типов операторов.
Арифметические операторы: используются в математических выражениях. Они действуют так же, как в алгебре. Примеры включают: +, -, *, /.
Операторы отношения: есть шесть операторов отношения, которые сравнивают два числа и возвращают логическое значение. Шесть операторов: <,>, <=,> =,! =, ==.
Логические операторы: они возвращают логический результат, основанный на логическом результате других выражений.Примеры включают: &&, ||,!.
Побитовые операторы: они выполняют операции с отдельными битами числа и могут применяться к целочисленным типам
long
,int
,short
,char
иbyte
.Операторы присваивания: они присваивают значения справа переменным слева. Например,
age = 5
определяет значение5
переменнойage
.Разные операторы: они не входят ни в одну из этих категорий, например условный оператор и оператор instanceof.
Продолжайте обучение.
Изучите Java бесплатно , не просматривая видео или документацию. Текстовые курсы Educative легко бегло просматривать и содержат среду программирования в реальном времени, что делает обучение быстрым и эффективным.
Изучение Java с нуля
Что такое ключевые слова?
Ключевые слова — это слова, зарезервированные для заранее определенных значений или функций.Существует определенный список ключевых слов, которые вам необходимо выучить. Например, ключевое словоnew
создает новый объект. Взгляните на ключевые слова Java ниже.Как научиться программировать на Java?
Как выучить Java
Java — один из наиболее широко известных языков программирования в мире. Если вы научитесь программировать на Java, вам откроется широкий спектр возможностей.
Java — это универсальный и широко поддерживаемый язык программирования, используемый для всего, от разработки программного обеспечения до разработки мобильных приложений.Фактически, по состоянию на 2019 год 88% доли рынка смартфонов принадлежало Android, а Android написан с использованием Java.
Но как научиться программировать на Java? Это вопрос, которым мы займемся в этой статье. Мы разберем наши главные советы о том, как вы можете начать свое путешествие по Java. Мы также предоставим вам список действенных рекомендаций по темам, которые вы можете изучить. К концу чтения этой статьи у вас будет четкая дорожная карта, которая поможет вам в изучении Java.
Зачем изучать Java?
Широко используется Java .Ваши навыки в Java помогут вам в карьере. Это потому, что компании любого размера, даже такие, как Netflix, отчитываются с использованием Java. Указание Java как навыка в вашем резюме — хороший способ попасть на собеседование по разработке программного обеспечения.
Java считается относительно простым языком для изучения для начинающих . Это потому, что Java имеет простой синтаксис. Если вы вложите нужное количество времени и усилий. Если вы новичок в программировании или уже кое-что знаете, Java может быть отличным местом для начала.
В Интернете нет недостатка в ресурсах, которые помогут вам изучить Java . В Интернете существует множество сообществ, посвященных разработке Java, что позволяет невероятно легко найти качественную помощь, если вы застряли на своем пути. Помимо сообществ, вы найдете исчерпывающие руководства и учебные пособия, которые помогут вам освоить основы и отладить ошибки.
Трудно ли выучить Java?
Изучение Java может быть непростым, в зависимости от вашего опыта.На этом пути вы столкнетесь с множеством проблем, но ни одну из них нельзя будет преодолеть. Если у вас есть опыт программирования, вам будет легче изучить Java.
Программирование — это сложный навык, требующий от вас очень тщательного обдумывания инструкций, которые вы хотите дать компьютеру. Несмотря на всю свою ослепительную изощренность, компьютеры на самом деле просто выполняют простые шаги снова и снова очень быстро.
Не похоже на то, чтобы разбить проблему на маленькие шаги, но это возможно.Как и во всем остальном, вам, вероятно, будет легче изучить Java, если у вас будут некоторые контекстные знания о программировании.
Для чего используется Java?
Java — это язык общего назначения. Это означает, что у него есть ряд потенциальных вариантов использования. Java обычно используется в корпоративных средах, например в финансовой индустрии. Он также используется для разработки приложений для устройств Android.
Поскольку операционная система Android была создана с использованием Java, вы обнаружите, что миллионы мобильных приложений по всему миру используют Java.
Java широко используется в веб-разработке в качестве внутреннего сервера. Это связано с тем, что в Java есть ряд фреймворков, таких как Spring и Struts, которые были разработаны для упрощения внутренней веб-разработки.
Многие современные настольные приложения были написаны на Java. Например, видеоигра Minecraft была написана с использованием Java. Доступно множество fameworks, расширяющих функции Java для настольных приложений.
Сколько времени нужно, чтобы изучить Java?
При правильном количестве практики и самоотверженности вы сможете изучить основы Java примерно за три месяца.Ожидайте, что вы потратите как минимум год на полное знакомство с языком.
Конечно, эта оценка зависит от того, сколько времени вы посвящаете изучению Java. Если вы учитесь несколько часов в неделю, изучение Java за три месяца — хорошая оценка.
Те, кто записывается на курс кодирования, могут учиться быстрее в зависимости от темпа курса. Очевидно, что тот, кто учится неполный или полный рабочий день, будет учиться быстрее, чем тот, кто учится в свободное время.
Как изучить Java в Интернете
Теперь мы можем углубиться в шаги, которые необходимо выполнить, чтобы изучить Java онлайн бесплатно.Вот пять шагов, которые мы обсудим более подробно ниже:
- Поразмышляйте над своей мотивацией. Поставить цель.
- Изучите основы Java.
- Создавайте собственные проекты.
- Просите о помощи и присоединяйтесь к сообществам.
- Практика, практика, практика.
Подумайте о своей мотивации. Поставить цель.
Перед тем, как начать любое новое образовательное путешествие, подумайте о том, чтобы подумать о своей мотивации к нему. В этом случае задайте себе вопрос:
Почему я хочу изучать Java?
Если подумать над этим вопросом заранее, у вас будет Полярная звезда, на которую вы сможете смотреть на своем пути.Таким образом, если вы когда-нибудь застрянете, у вас будет причина (или причины) продолжить.
Кроме того, подумайте о том, чтобы поставить четкую цель того, чего вы хотите достичь. Вы заинтересованы в карьере в области разработки программного обеспечения? Большой! В этом случае вам следует сосредоточиться на Java и программном обеспечении. Вы хотите создавать мобильные приложения на стороне? Если да, то вы захотите освоить основы Java, а затем изучить Java и разработку мобильных приложений.
Изучите основы Java.
Одна ошибка, которую допускают многие начинающие разработчики, — это с головой погрузиться в изучение языка программирования.Это проблема. Игнорирование основ может означать, что вам может не хватать знаний, необходимых для дальнейшего изучения более сложных тем.
Вы можете изучить основы Java с помощью структурированного онлайн-курса Java, книг или руководств по Java.
Язык программирования Java включает в себя широкий спектр концепций, и даже опытные Java-разработчики все еще изучают, как лучше всего использовать этот язык. С учетом сказанного, есть несколько ключевых тем, которые вы должны освоить в начале своего пути.Давайте изучим их один за другим.
Синтаксис
Первым шагом в изучении любого языка программирования является овладение синтаксисом языка. Разработчики используют слово «синтаксис» для описания способа написания кода. Синтаксис относится, помимо прочего, к тому, как написан код, какие символы используются и где, а также как добавлять комментарии к файлу.
Вот основы синтаксиса Java, которые вам необходимо изучить, прежде чем двигаться дальше:
- Как работают программы Java
- Типы данных, используемые в Java
- Операторы Java
- Выражения Java
- Как писать комментарии в Java
Как только вы разовьете их фундаментальное понимание, вы будете лучше подготовлены для понимания элементов синтаксиса Java, включая условные выражения, циклы, массивы и другие.
Условные обозначения
Условные обозначения
Условные выражения выполняют определенные действия в зависимости от того, выполняется ли конкретное условие или набор условий.
Циклы
При программировании вы можете решить, что хотите запустить блок кода несколько раз. Вот тут-то и пригодятся циклы. Циклы позволяют автоматизировать повторяющиеся задачи. Они уменьшают потребность в дублировании кода.
Массивы
Массив — это тип данных, в котором хранится несколько значений. Эти значения должны быть одного типа данных.Например, массив может содержать список имен студентов или список адресов электронной почты сотрудников.
Основные подтемы массивов Java для изучения:
- Объявление массива
- Индексируемые массивы
- Управление данными в массивах
- Объявление многомерных массивов
- Копирование массива
Классы и объекты
Java — это объект -ориентированный язык программирования. В Java классы и объекты используются для разбиения сложных проблем на более простые компоненты.
Классы — это чертежи объектов. Например, в классе может храниться подробная информация об автомобиле, например, тип его шины и т. Д.
Объекты используют схему класса для создания отдельного элемента. Например, объект может хранить сведения о конкретном автомобиле, таком как Lotus 72 или Porsche 959.
Основные темы, которые вам необходимо изучить в этой области:
Наследование, полиморфизм и инкапсуляция
Объектно-ориентированное программирование такие языки, как Java, имеют множество функций, которые позволяют разработчикам повысить эффективность кода и уменьшить его повторение.
В Java, когда вы узнаете о классах, вам необходимо знать три основных объектно-ориентированных концепции. Это:
- Наследование: описывает, как вы можете определить новый класс, используя свойства существующего класса.
- Полиморфизм: описывает, как объект может принимать различные формы в программе.
- Инкапсуляция: метод, используемый для объединения полей и методов в класс.
Кроме того, потратьте время на изучение переопределения методов и ключевого слова super, которые связаны с наследованием Java.
Структуры данных
Структуры данных относятся к системам, которые позволяют хранить информацию определенным образом. Массив, который мы обсуждали ранее в этом руководстве, является одним из примеров структуры данных Java. Java предлагает широкий спектр других структур данных, которые вы также можете использовать.
Вот несколько наиболее распространенных структур данных, которые вам следует изучить:
Отладка
Даже лучшие программисты в какой-то момент делают ошибки. Программисты используют отладку для выявления и исправления ошибок в своем коде.Возможность эффективно отлаживать программу снижает влияние ошибок в коде.
Чтобы лучше понять отладку в Java, изучите следующие темы:
В конечном счете, освоение основ даст вам лучшее понимание того, как работает язык программирования Java. Итак, если кто-то спросит: «Что такое инкапсуляция?», Вы сможете эффективно ответить на него. Кроме того, освоив основы, вы будете готовы сделать следующий шаг на пути к изучению Java: создание проектов.
Изучите Java онлайн бесплатно
Нет необходимости тратить деньги, чтобы научиться программировать на Java. Существует множество бесплатных онлайн-ресурсов, которые можно использовать для овладения языком программирования Java.
Чтобы помочь вам приступить к обучению, ознакомьтесь со следующими ресурсами, которые рекомендуются новичкам:
Онлайн-курсы Java
Изучите Java с помощью Codecademy
- Стоимость: бесплатно
- Аудитория: новички
Это онлайн Курс охватывает основы Java и объектно-ориентированного программирования.Изучение Java занимает 25 часов. За это время вы создадите семь проектов, которые помогут вам попрактиковаться в своих навыках.
Основы программирования на Java и программной инженерии, Университет Дьюка
- Стоимость: бесплатно
- Аудитория: новички
Этот курс охватывает основы программирования на Java. На протяжении всего курса вы будете работать над целым рядом проектов, чтобы лучше понять основные идеи программирования. Затем вы будете работать над завершающим проектом, чтобы применить на практике все, что вы узнали в ходе курса.
Учебное пособие по Java для начинающих
- Стоимость: бесплатно
- Аудитория: новички
Это руководство содержит более 16 часов материала по языку программирования Java. Вы расскажете об основах Java и о том, как работают типы данных коллекций Java.
Интернет-книги по Java
Head First Java Кэти Сьерра и Берт Бейтс
Head First Java делает то, что написано на обложке: она предоставляет подробное введение в Java для начинающих программистов.Вы охватите все, от основ программирования до входов и выходов.
Java: Основы программирования для начинающих, Натан Кларк
Эта книга представляет собой пошаговое руководство по программированию на Java. С помощью 57 практических примеров вы перейдете от очень небольшого или почти нулевого знания Java к твердому пониманию основ. В этой книге рассказывается о переменных, Java Development Kit, принятии решений и многом другом.
Java: Руководство для начинающих
Java: Руководство для начинающих начинается с основ Java и написания программы.Затем вы перейдете к обсуждению промежуточных и продвинутых концепций. Это поможет вам развить всесторонние знания Java.
Книга содержит ряд практических упражнений для проверки ваших навыков. Вы также найдете аннотированный пример синтаксиса, который иллюстрирует, как работают определенные концепции.
Интернет-ресурсы Java
Домашняя страница и изучайте Java
Это бесплатное интерактивное руководство предназначено для начинающих, которые хотят начать программировать на Java. В этом руководстве вы познакомитесь со всеми концепциями, необходимыми для освоения основ Java.
Java Code Geeks
На этом веб-сайте есть широкий спектр руководств и фрагментов кода, которые охватывают концепции для начинающих, среднего и продвинутого уровней.
Java 101
Java 101 — это бесплатный онлайн-курс, который дает вам представление о программировании на Java. Этот курс хорош, если вы только начинаете. Есть множество примеров, на которые вы можете ссылаться, развивая свои знания.
Oracle Tutorials
Oracle предлагает бесплатное онлайн-руководство по Java, охватывающее как основы, так и более сложные концепции.Эти руководства хороши, если вы готовы попрактиковать свои навыки Java или если вам нужно справочное руководство по определенной концепции.
Вам следует изучить несколько различных вариантов, прежде чем выбирать один, чтобы сосредоточить свое внимание на учебном пособии, отвечающем вашим потребностям. При таком большом количестве вариантов у вас не должно возникнуть проблем с поиском учебного пособия, которое подойдет вам.
Лучшие способы изучения Java
Создавайте свои собственные проекты.
Хотя изучение теории важно, ничто не заменит создание собственных проектов.Это укрепит навыки, которые вы развиваете. Создание собственных проектов побуждает вас глубоко задуматься над проблемой. Вы научитесь использовать аналитическое мышление, чтобы находить решение стоящей перед вами проблемы.
Лучший способ изучить Java — это после овладения теорией перейти к созданию практических проектов. Даже работа над небольшими и простыми проектами может дать вам новый взгляд на изученную теорию. Это позволит вам улучшить свои знания о том, как работает язык программирования Java.
Вот еще несколько идей того, что вы могли бы построить:
- Онлайн-игра для программистов
- Инструмент, отслеживающий ваши любимые книги
- Простое приложение для онлайн-чата, которое позволяет вам общаться с друзьями
- A мобильное приложение для конвертации валют
- Инструмент для карточек, который поможет вам улучшить свои знания Java
Но пусть наши предложения не ограничивают вас. Если у вас есть идея, попробуйте воплотить ее в жизнь! Когда вы начинаете, вам следует начинать с малого, чтобы убедиться, что вы работаете над достижением целей, которые можете достичь.Затем, когда вы приобретете уверенность в Java, вы сможете решать новые задачи.
Обращайтесь за помощью и присоединяйтесь к сообществам.
Другая распространенная ошибка начинающих программистов — это кодирование изолированно. «Я научусь этому сам, а когда закончу, поделюсь своими навыками с другими». это распространенный рефрен.
Одно только обучение помогает вам чувствовать себя более комфортно, но это также означает, что вам будет сложно найти поддержку, как только она вам понадобится.
Важно, чтобы вы сами контролировали свое обучение, но вы не должны бояться просить о помощи, когда она вам нужна.Очень вероятно, что другой программист в какой-то момент столкнулся с проблемой, с которой вы столкнулись! Обращение к людям за помощью — отличный способ найти решение стоящих перед вами проблем.
Вы можете спросить: «Где я могу найти людей, которые могут помочь мне в моем путешествии?» Что ж, к счастью для вас, в Интернете полно сообществ программистов всех способностей — от новичков до экспертов.
Как начинающий разработчик Java, вы можете присоединиться к таким сообществам, как Dev.to, CodeGym Help и Stack Overflow, у всех из которых есть разделы, посвященные разработке на Java.Вы даже можете подписаться на обучающий субреддит java на Reddit. Эти сообщества — отличное место для встреч с коллегами-разработчиками, которые могут помочь вам в освоении Java.
Практика, практика, практика.
Практика — ключ к овладению любым навыком, но это особенно важно при изучении такого языка программирования, как Java. Если вы не уверены, вот несколько причин, почему практика так важна при изучении Java:
- Практика помогает легко находить ошибки.По мере накопления опыта вам будет легче выявлять и исправлять свои прошлые ошибки.
- Практика побуждает продолжать идти вперед. Чем больше вы практикуетесь, тем больше у вас шансов продолжить свой путь к изучению Java.
- Практика поможет вам освоить передовой опыт. Единственный способ узнать, как написать эффективный код Java, — это попробовать написать код по-своему. Затем вы можете обновить свою работу, узнав о новых методах и передовых методах.
Как гласит пословица: практика ведет к совершенству.Если вам сложно составить расписание, есть одно правило, которое может помочь: кодируйте каждый день. Постарайтесь как можно больше практиковаться, чтобы у вас часто была возможность поиграть мышцами кодирования.
Заключение
Java — отличный язык программирования для изучения, независимо от того, новичок ли вы в программировании или уже являетесь опытным программистом.
В начале пути вам следует сосредоточиться на освоении основ: синтаксиса, условных выражений, циклов, отладки и так далее.После того, как вы познакомитесь с основными концепциями Java, вы можете начать работу над несколькими проектами.
Преимущества изучения Java очевидны. Вы получите новый навык, который поможет вам начать карьеру в сфере технологий. Вы также можете использовать Java для решения ваших проблем с кодом. С советами, которые мы рассмотрели в этом руководстве, вы готовы начать свой путь к изучению программирования на Java.
Карьера Компания Karma создала каталог ресурсов Java, которые помогут вам начать свой путь.Эти ресурсы можно найти в блоге Career Karma здесь.
Настройте среду разработки Java и изучите основные принципы объектно-ориентированного программирования — IBM Developer
Прежде чем начать
Это руководство является частью серии Введение в программирование на Java ™ серии .
Хотя концепции, обсуждаемые в отдельных руководствах, являются автономными по своей природе, практический компонент строится по мере продвижения по серии. Я рекомендую вам ознакомиться с предварительными условиями, настройкой и сведениями о серии, прежде чем продолжить.
Цели
В этом руководстве:
- Понимать функции каждого из составляющих компонентов платформы Java
- Узнайте, как устроен язык Java.
- Ознакомьтесь с навигацией по документации Java API
- Загрузите и установите JDK и Eclipse IDE
- Настройте среду разработки Eclipse
- Понимание основных компонентов Eclipse и их использования для разработки Java
- Создайте новый проект Java в Eclipse
- Поймите, чем объектно-ориентированная парадигма отличается от парадигмы структурного программирования.
- Знать основные характеристики объекта
- Понимать преимущества, вытекающие из определяющих принципов объектно-ориентированного программирования (ООП)
Обзор платформы Java
Технология Java используется для разработки приложений для широкого диапазона сред, от потребительских устройств до разнородных корпоративных систем.В этом разделе вы получите общее представление о платформе Java и ее компонентах.
Язык Java
Как и любой язык программирования, язык Java имеет свою собственную структуру, синтаксические правила и парадигму программирования. Парадигма программирования языка Java основана на концепции объектно-ориентированного программирования (ООП), которую поддерживают функции языка.
Язык Java является производным от языка Си, поэтому его синтаксические правила очень похожи на Си. Например, блоки кода разделены на методы и разделены фигурными скобками (
{
и}
), а переменные объявляются перед их использованием.Структурно язык Java начинается с пакетов . Пакет — это механизм пространства имен языка Java. Внутри пакетов есть классы, а внутри классов — методы, переменные, константы и многое другое. Узнайте больше о частях языка Java в учебнике «Основы языка Java».
Компилятор Java
Когда вы программируете для платформы Java, вы пишете исходный код в файлах .java, а затем компилируете их. Компилятор проверяет ваш код на соответствие правилам синтаксиса языка, затем записывает байт-код в.файлы классов. Байт-код — это набор инструкций, предназначенных для запуска на виртуальной машине Java (JVM). Добавляя этот уровень абстракции, компилятор Java отличается от компиляторов других языков, которые записывают инструкции на языке ассемблера, подходящие для набора микросхем ЦП, на котором будет выполняться программа.
JVM
Во время выполнения JVM читает и интерпретирует файлы .class и выполняет инструкции программы на собственной аппаратной платформе, для которой была написана JVM. JVM интерпретирует байт-код так же, как процессор интерпретирует инструкции на языке ассемблера.Разница в том, что JVM — это программа, написанная специально для конкретной платформы. JVM — это основа принципа языка Java «один раз записывай, запускай везде». Ваш код может работать на любом наборе микросхем, для которого доступна подходящая реализация JVM. JVM доступны для основных платформ, таких как Linux ™ и Windows®, а подмножества языка Java были реализованы в JVM для мобильных телефонов и микросхем для любителей.
Сборщик мусора
Вместо того, чтобы заставлять вас следить за распределением памяти (или использовать для этого стороннюю библиотеку), платформа Java обеспечивает управление памятью из коробки.Когда ваше приложение Java создает экземпляр объекта во время выполнения, JVM автоматически выделяет пространство памяти для этого объекта из кучи — пула памяти, выделенного для использования вашей программой. Сборщик мусора Java работает в фоновом режиме, отслеживая, какие объекты больше не нужны приложению, и освобождая от них память. Такой подход к обработке памяти называется неявным управлением памятью , потому что он не требует от вас написания какого-либо кода обработки памяти.Сборка мусора — одна из важнейших функций производительности платформы Java.
Комплект для разработки Java
Когда вы загружаете Java Development Kit (JDK), вы получаете — в дополнение к компилятору и другим инструментам — полную библиотеку классов готовых утилит, которые помогут вам выполнять наиболее распространенные задачи разработки приложений. Лучший способ получить представление об объеме пакетов и библиотек JDK — это ознакомиться с официальной онлайн-документацией по Java API, также называемой Javadoc.Посмотрите следующую короткую демонстрацию, чтобы узнать, как работать с Javadoc.
Среда выполнения Java
Среда выполнения Java (JRE; также известная как среда выполнения Java) включает JVM, библиотеки кода и компоненты, необходимые для выполнения программ, написанных на языке Java. JRE доступен для нескольких платформ. Вы можете свободно распространять JRE вместе со своими приложениями в соответствии с условиями лицензии JRE, чтобы предоставить пользователям приложения платформу для запуска вашего программного обеспечения.JRE включен в JDK.
Настройка среды разработки Java
В этом разделе вы загрузите и установите JDK и текущий выпуск Eclipse IDE, а также настроите среду разработки Eclipse.
Ваша среда разработки
JDK включает набор инструментов командной строки для компиляции и выполнения кода Java, включая полную копию JRE. Хотя вы можете использовать эти инструменты для разработки своих приложений, IDE предоставляет вам дополнительные функции, а также управление задачами и визуальный интерфейс.
В этой серии статей вы используете Eclipse, популярную IDE с открытым исходным кодом. Eclipse выполняет основные задачи, такие как компиляция и отладка кода, поэтому вы можете сосредоточиться на написании и тестировании кода. Кроме того, вы можете использовать Eclipse для организации файлов исходного кода в проекты, компиляции и тестирования этих проектов, а также для хранения файлов проектов в любом количестве исходных репозиториев. Для использования Eclipse для разработки Java необходим установленный JDK.
Установите JDK
Выполните следующие действия, чтобы загрузить и установить AdoptOpenJDK:
- Перейдите на сайт AdoptOpenJDK.
- Выберите OpenJDK 11 (LTS) в качестве версии.
- Выберите OpenJ9 в качестве JVM.
Нажмите кнопку загрузки Последний выпуск , чтобы загрузить пакет.
Если вам нужно выбрать другую платформу, нажмите кнопку Другие платформы , затем перейдите на свою платформу и загрузите связанный пакет.
Следуйте инструкциям для своей платформы (они будут немного отличаться для каждой платформы).
Теперь на вашем компьютере есть среда Java. Затем вы установите Eclipse IDE и создадите проект Java в Eclipse.
Установить и настроить Eclipse
Следуйте этой видеодемоверсии, чтобы загрузить и установить Eclipse в своей системе, просмотрите краткий обзор Eclipse и создайте проект Java.
Обзор
: Среда разработки Eclipse
Eclipse — это больше, чем IDE; это целая экосистема разработки. Этот раздел представляет собой краткое практическое введение в использование Eclipse для разработки на Java.
Среда разработки Eclipse состоит из четырех основных компонентов:
- Рабочее пространство
- Проектов
- Перспективы
- Просмотры
Основной структурной единицей в Eclipse является рабочее пространство . Рабочее пространство содержит все ваши проектов . Перспектива — это способ взглянуть на каждый проект (отсюда и название), а в перспективе — один или несколько видов .
На следующем рисунке показана перспектива Java, которая является перспективой по умолчанию для Eclipse.Вы видите эту перспективу, когда запускаете Eclipse.
Перспектива Java содержит инструменты, необходимые для начала написания приложений Java. Каждое окно с вкладками, показанное на Рисунке 1, представляет собой перспективу Java. Два особенно полезных представления — Package Explorer и Outline.
Среда Eclipse легко настраивается. Каждое представление можно закрепить, поэтому вы можете перемещать его в перспективе Java и размещать там, где хотите. А пока придерживайтесь настроек перспективы и вида по умолчанию.
Теперь, когда вы создали новый проект Eclipse Java и исходную папку, ваша среда разработки готова к работе. Однако понимание парадигмы ООП, о которой идет речь в следующем разделе, необходимо, прежде чем вы начнете кодировать на Java.
Концепции и принципы объектно-ориентированного программирования
Язык Java (в основном) объектно-ориентированный. Этот раздел представляет собой введение в концепции языка объектно-ориентированного программирования (ООП), в котором структурное программирование используется в качестве контраста.
Что такое объект?
Объектно-ориентированные языки следуют шаблону программирования, отличному от языков структурированного программирования, таких как C и COBOL. Парадигма структурного программирования сильно ориентирована на данные: у вас есть структуры данных, а затем программные инструкции действуют с этими данными. Объектно-ориентированные языки, такие как язык Java, объединяют данные и программные инструкции в объектов .
Объект — это автономная сущность, которая содержит атрибуты и поведение, и ничего более.Вместо того, чтобы иметь структуру данных с полями (атрибутами) и передавать эту структуру всей логике программы, которая воздействует на нее (поведение), в объектно-ориентированном языке данные и логика программы объединяются. Эта комбинация может происходить на самых разных уровнях детализации, от мелкозернистых объектов, таких как
Number
, до крупнозернистых объектов, таких как службаFundsTransfer
в крупном банковском приложении.Родительские и дочерние объекты
Родительский объект — это объект, который служит структурной основой для получения более сложных дочерних объектов .Дочерний объект похож на своего родителя, но более специализирован. В объектно-ориентированной парадигме вы можете повторно использовать общие атрибуты и поведение родительского объекта, добавляя к его дочерним объектам атрибуты и поведение, которые отличаются.
Связь и согласование объектов
Объекты общаются с другими объектами, отправляя сообщения ( вызывает метод на языке Java). Кроме того, в объектно-ориентированном приложении программный код координирует действия между объектами для выполнения задач в контексте конкретной области приложения.
Описание объекта
Хорошо написанный объект:
- Имеет четко определенные границы
- Выполняет ограниченный набор действий
- Знает только о своих данных и любых других объектах, которые необходимы ему для выполнения своей деятельности
По сути, объект — это дискретная сущность, которая имеет только необходимые зависимости от других объектов для выполнения своих задач.
Пришло время посмотреть, как выглядит объект Java.
Пример: объект «Человек»
Мой первый пример основан на общем сценарии разработки приложений: индивидуум представлен объектом
Person
.Из определения объекта вы знаете, что объект имеет два основных элемента: атрибуты и поведение. Вот как эти элементы применяются к объекту
Person
.Как правило, атрибуты объекта можно представить как существительных , а поведение — как глаголов .
Атрибуты (существительные)
Какие качества могут быть у человека? Вот некоторые общие:
- Имя
- Возраст
- Высота
- Масса
- Цвет глаз
- Пол
Вероятно, вы можете придумать больше (и вы всегда можете добавить больше атрибутов позже), но этот список — хорошее начало.
Поведение (глаголы)
Реальный человек может делать все, что угодно, но поведение объектов обычно связано с тем или иным контекстом приложения. Например, в контексте бизнес-приложения вы можете спросить свой объект
Person
: «Каков ваш индекс массы тела (ИМТ)?» В ответЧеловек
будет использовать значения своих атрибутов роста и веса для расчета ИМТ.Более сложная логика может быть скрыта внутри объекта
Person
, но пока предположим, чтоPerson
имеет следующее поведение:- Рассчитать ИМТ
- Распечатать все атрибуты
Состояние и строка
Состояние — важное понятие в ООП.Состояние объекта представлено в любой момент времени значениями его атрибутов.
В случае
Person
его состояние определяется такими атрибутами, как имя, возраст, рост и вес. Если вы хотите представить список из нескольких из этих атрибутов, вы можете сделать это с помощью классаString
, о котором вы узнаете больше позже.Используя вместе концепции состояния и строки, вы можете сказать
Человеку
: «Расскажите мне все о себе, предоставив мне список (илиString
) ваших атрибутов.”Принципы ООП
Если вы имеете опыт структурного программирования, то ценностное предложение ООП может быть еще неясным. В конце концов, атрибуты человека и любая логика для извлечения (и преобразования) этих значений могут быть записаны на C или COBOL. Преимущества парадигмы ООП станут яснее, если вы поймете ее определяющие принципы: инкапсуляция , наследование и полиморфизм .
Инкапсуляция
Напомним, что объект прежде всего дискретен или самодостаточен.Эта характеристика является принципом инкапсуляции в действии. Скрытие — еще один термин, который иногда используется для обозначения замкнутой, защищенной природы объектов.
Независимо от терминологии, важно то, что объект поддерживает границу между своим состоянием и поведением и внешним миром. Подобно объектам в реальном мире, объекты, используемые в компьютерном программировании, имеют различные типы отношений с различными категориями объектов в приложениях, которые их используют.
На платформе Java вы можете использовать модификаторы доступа (о которых вы узнаете позже), чтобы изменить характер объектных отношений от общедоступных до частных . Открытый доступ широко открыт, тогда как частный доступ означает, что атрибуты объекта доступны только внутри самого объекта.
Граница публичного / частного доступа обеспечивает объектно-ориентированный принцип инкапсуляции. На платформе Java вы можете изменять силу этой границы для каждого объекта.Инкапсуляция — это мощная функция языка Java.
Наследование
В структурированном программировании обычно копируют структуру, дают ей новое имя и добавляют или изменяют атрибуты, которые делают новую сущность (например, запись
Учетной записи
) отличной от ее исходного источника. Со временем такой подход приводит к возникновению большого количества дублированного кода, что может создать проблемы с обслуживанием.ООП вводит концепцию наследования , в соответствии с которой специализированные классы — без дополнительного кода — могут «копировать» атрибуты и поведение исходных классов, на которых они специализируются.Если некоторые из этих атрибутов или поведения нужно изменить, вы их отменяете. Единственный исходный код, который вы изменяете, — это код, необходимый для создания специализированных классов. Исходный объект называется родительским , а новая специализация называется дочерним — термины, с которыми вы уже познакомились.
Предположим, вы пишете приложение для управления персоналом и хотите использовать класс
Person
в качестве основы (также называемый суперклассом ) для нового класса с именемEmployee
.Будучи потомкомPerson
,Employee
будет иметь все атрибуты классаPerson
, а также дополнительные атрибуты, например:- Идентификационный номер налогоплательщика
- Рабочий номер
- Заработная плата
Наследование упрощает создание нового класса
Employee
без необходимости вручную копировать весь кодPerson
.Полиморфизм
Полиморфизм — более сложное понятие для понимания, чем инкапсуляция и наследование.По сути, полиморфизм означает, что объекты, принадлежащие к одной ветви иерархии, при отправке одного и того же сообщения (т. Е. Когда им приказывают сделать одно и то же) могут проявлять это поведение по-разному.
Чтобы понять, как полиморфизм применяется к контексту бизнес-приложения, вернитесь к примеру
Person
. Помните, какPerson
отформатировал свои атрибуты в строкуString
? Полиморфизм позволяет объектуPerson
представлять свои атрибуты различными способами в зависимости от типа объектаPerson
.Полиморфизм, одна из наиболее сложных концепций, с которыми вы столкнетесь в ООП на платформе Java, выходит за рамки этого вводного курса. Вы изучите инкапсуляцию и наследование более подробно в последующих руководствах.
Не чисто объектно-ориентированный язык
Два качества отличают язык Java от чисто объектно-ориентированных языков, таких как Smalltalk. Во-первых, язык Java представляет собой смесь объектов и примитивных типов. Примитивные типы — это самые основные типы данных языка — строительные блоки для манипулирования данными.Во-вторых, с помощью Java вы можете написать код, который раскрывает внутреннюю работу одного объекта любому другому объекту, который его использует.
Язык Java действительно дает вам инструменты, необходимые для следования здравым принципам ООП и создания надежного объектно-ориентированного кода. Поскольку Java не является чисто объектно-ориентированной, вы должны соблюдать дисциплину при написании кода — язык не заставляет вас поступать правильно, поэтому вы должны делать это самостоятельно. Вы можете найти советы в учебнике «Написание хорошего кода Java».
Заключение
В этом руководстве вы узнали об объектно-ориентированном программировании и познакомились с IDE, которая помогает вам контролировать среду разработки.
Что дальше?
Следующий учебник из этой серии посвящен основам языка, предоставляя вам достаточно знаний и практики для написания простых программ.