«Стоит ли учить тот или иной язык программирования?». Этот вопрос в сети задают очень часто. Он вполне справедлив: технологий и платформ очень много, развиваются они с колоссальной скоростью, так что мы порой не успеваем уследить за изменениями. Так что в этом вопросе лучше довериться профессионалам! Ниже приводим обоснованное мнение о Java одного из таких профессионалов — Коди Вебера (Cody Weber). Он Software Engineer в американской компании Centene. Стоит ли учить Java в 2018 году? Отвечает Коди Вебер - 1Я считаю, что нужно изменить подход к этому вопросу. Является ли Java релевантной и полезной в 2018 году? Безусловно! Но, возможно, не по тем причинам, которые первыми приходят вам в голову. Обучение программированию в 2018 году — это горааааздо больше о том, «как решить проблему» и намного меньше о том «знаю ли я такой-то язык». Сосредоточьтесь на решении проблемы, выясните, с помощью чего её можно решить. Итак, вот несколько причин, по которым Java является хорошим, актуальным языком для изучения в 2018 году и позднее.
  1. Нужно учить язык, который решает проблемы

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

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

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

  3. Нужно учить язык, в котором приняты концепции хорошего программирования

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

  4. Нужно изучать язык, который достаточно распространён и не ограничен в инструментарии

    Java не ограничивается одним продуктом или незначительной горсткой последователей. Для этого языка существует множество IDE, бесплатных или платных, которые являются удивительно мощными (взять хотя бы «большую тройку» IDEA, Netbeans и Eclipse). Если вы решите, что вам они не нужны, пишите в текстовом редакторе, а затем компилируйте ваш код в командной строке/терминале. Мало того, сегодня есть веб-сайты, где вы можете скомпилировать свой код в режиме онлайн, если хотите поиграть с языком (например, JavaRush Web IDE, прим. перев.).

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

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

    • Каждая версия Java (в настоящее время выпущена 10 версия языка), меняет очень многое, оставляя при этом обратную совместимость со старым кодом. Так, Java 8 привнесла в мир Java концепцию функционального программирования. Оно добавило той самой гибкости, за отсутствие которой раньше критиковали этот язык. Также в восьмой версии были добавлены библиотеки, которые существенно упростили разработку некоторых вещей. Java 9 — это модульность в JRE, благодаря которой небольшие устройства могут использовать Java без особых расходов.

    • Язык Java просто отлично себя проявляет при обратной совместимости. При желании вы можете изучить древние библиотеки, и разобраться в самом запутанном legacy-коде. Или не делать этого, а писать программы сразу по-новому, благо, всё отлично задокументировано.

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