Почему Java?

Почему же Java хорошо подходит для обучения программированию и в качестве первого языка?

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

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

Это востребованный язык. На Java написано огромное количество софта. Причем сразу в двух нишах: это один из главных серверных языков в разработке веб-сервисов, и главный язык в Android.

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

Иногда обучение программированию рекомендуют начинать с особых "учебных" языков, часто вспоминают про Basic или Pascal. Возможно, кто-то из вас даже изучал их в школе. Однако вакансий на этих языках сейчас мало, изучив основы вам все равно потом придется переучиваться на более практически полезный ЯП. Так зачем тратить время, если можно сразу изучить этот самый востребованный и полезный ЯП. Который при этом будет не сильно сложнее учебного языка, зато намного полезнее.

Это не самый сложный язык. Да, вероятно Java не самый простой язык, есть и попроще. Но уж точно и не самый сложный. Долгие годы разработчики языка защищали его от излишнего раздувания фич и синтаксиса, что позволило ему сохранить изрядную долю лаконичности и логичности (в отличие от перегруженных нелогичными и сложными в понимании фичами языков типа С++ или Scala).

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

Это современный язык. Долгое время (в конце нулевых и в десятые годы) Java развивалась медленно. Новые фичи, которых желало сообщество, в ней не появлялись годами, что привело как к оттоку людей в другие языки, так и к появлению и популяризации новых языков, которые были "как Java, только лучше", например Scala, Kotlin (да и C# тогда часто сравнивали с Java, и сравнение было не в ее пользу).

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

Java - это не только язык, но и инфраструктура. Программы на Java компилируются в промежуточное представление - байт-код, который затем запускается виртуальной машиной JVM. JVM в целом - мощный отдельный проект, не привязанный к языку Java как таковому. За два десятилетия появился еще ряд языков, которые тоже компилируются в байт-код JVM, такие как Scala, Kotlin, Groovy, Clojure. Некоторые из них были созданы "как Java, только лучше", некоторые являются совсем непохожими на оригинал.

Работая в той же среде, программы на этих языках могут иметь доступ ко всему тому коду, который написан на Java. Это позволяет, например, изучить Kotlin (который Google недавно признал основным языком для Android разработки и чья популярность неуклонно растет) и на новом языке продолжать использовать привычные по Java библиотеки и фреймворки. Или написать часть кода программы на Kotlin, а часть оставить на Java.

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

Вывод

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

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

А если у вас возражений нет, и Java вас вполне устраивает - добро пожаловать дальше. В этом разделе книги вам будет предложен путь развития в junior-разработчика на Java в сфере Enterprise веб разработки.

Last updated