23 мая 1995 года — дата официального выпуска Java. Язык Java и сегодня остается одним из самых востребованных языков программирования в IT. По данным индекса TIOBE, ранжирующего языки программирования на основе поисковых запросов о них, Java стабильно занимает третье место по популярности в мире с момента запуска рейтинга.

Сегодня с помощью языка решаются тысячи задач — от написания мобильных игр и приложений до разработки в финтехе и работы с big data. Вместе с Даниилом Пилипенко, программным директором факультета backend-разработки направления «Программирование» Skillbox, директором центра подбора IT-специалистов SymbioWay рассказываем, зачем был создан Java, как он повлиял на развитие IT-отрасли и насколько востребовано владеть Java сегодня. Для затравки –– фрагмент кода, который выведет возраст языка в консоли :)

public class JavaAge {

   public static void main(String[] args) {

       LocalDateTime javaBirthday =

           LocalDateTime.of(1995, 5, 23, 0, 0, 0);

       long age = calculateAge(javaBirthday);

       System.out.println("Возраст языка Java: " + age);
   }

   public static long calculateAge(LocalDateTime birthday) {

       LocalDateTime now = LocalDateTime.now();

       return birthday.until(now, ChronoUnit.YEARS);
   }
}

Как появился Java и причём тут дуб

История Java началась в 1991 году, когда группа разработчиков компании Sun Microsystems (которая впоследствии присоединится к Oracle) под руководством Джеймса Гослинга приступила к созданию языка Oak («Дуб») для использования в цифровых бытовых устройствах. Oak должен был стать альтернативой C/C++ как более простой и кроссплатформенный язык. Поскольку язык программирования с таким названием уже существовал, в 1995-м его переименовали в Java – в честь одной из марок кофе – неизменного спутника любого кодера. 

Как Java повлиял на развитие IT

В том же 1995 году Java получила широкую известность благодаря включению виртуальной машины Java Virtual Machine (JVM) в культовый браузер Netscape. Java позволял работать на разных аппаратных платформах вне зависимости от используемой на них машинной архитектуры. Главный конкурент Java — C — к тому времени уже изрядно надоел разработчикам. 

Огромное количество инструкций, которое нужно было вводить для выполнения простейших задач, и большая совместимость с разными платформами предопределила успех Java. Ключевой мантрой Java того времени стала фраза: «Напиши один раз и запускай с чего хочешь». Пускай изначально всё было не так просто, со временем эти слова стали реальностью, и Java начал стремительно покорять рынок бизнес-программ, где кроссплатформенность ценилась особенно высоко. После того, как в 1998 году компания IBM написала на Java весь свой нашумевший Project San Francisco, этот язык стал своего рода отраслевым стандартом. 

Жизнь в окружении Java

Java стал ежедневным спутником человека – на нём работают компьютеры, телефоны, плееры и даже SIM-карты. Гибкость языка позволяет применять его и для большой науки: на Java написаны программы для адронного коллайдера и марсоходов NASA. 

Больше всего Java востребован в сфере финансов, где нужны надежные веб-сайты, устойчивые к высокому трафику, программы электронного документооборота (ЭДО) и собственные платформы для управления рисками. На Java разрабатывают серверные приложения для обработки данных, его используют при создании визуального облика веб-сайтов с помощью специальных шаблонов (фреймворков), а еще на нем пишут игры. Кстати, культовая 3D-песочница Minecraft от компании Mojang Studios написана именно на Java.

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

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

Вот лишь небольшой список известных продуктов, написанных на Java:

  • социальные сети Twitter, LinkedIn;

  • видеосервисы Netflix и Spotify;

  • Яндекс.Маркет и КиноПоиск;

  • приложения для банкинга и биржевые продукты Альфа-Банка;

  • серверная часть портала Госуслуг.

Главные особенности Java

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

  • С одной стороны, Java задумывался как простой язык. Действительно, благодаря простым командам Java легко освоить и понять даже тем, кто его не знает. С другой стороны, простота оборачивается громоздким кодом — там, где C++ обойдётся парой строк, Java потребуется десять.

Инструкция к выводу строчки Hello World! на Java | Источник

  • Обратной стороной медали стала низкая производительность языка — Java Virtual Machine, которая обеспечивает кроссплатформенность языка, одновременно и «тормозит» его, в результате программы запускаются медленнее.

  • За использование Java компаниям сегодня придётся платить: с 2019 года введена плата за коммерческое использование языка. Тем не менее, для больших клиентов это вряд ли стало преградой: крупный бизнес, ценящий надёжность, стабильность и безопасность, всё равно выбирает этот язык для решения своих задач.

Востребован ли Java сегодня

Несмотря на свои не юношеские 27 лет на рынке, Java по-прежнему пользуется популярностью в IT-индустрии. Согласно опросам специалистов по всему миру, 35,4% разработчиков используют Java в своей работе. Многие организации предпочитают Java для разработки собственного программного обеспечения, благодаря чему специалисты, работающие с этим языком, востребованы по всему миру.

Зарплата программистов, работающих с Java, зависит от сложности выполняемых задач, опыта работы, уровня компании-работодателя и страны. Тем не менее, любые инвестиции в изучение языка Java окупаются в среднем за несколько месяцев:

  • согласно отчету Recruitment Centre Innopolis за 2021 год, зарплаты программистов, работающих с Java, одни из самых высоких в России: junior-специалист может рассчитывать на 100-180 тысяч рублей, middle — на 180-350 тысяч, senior — на 350-450 тысяч, lead — на 450-500+ тысяч рублей;

  • средняя зарплата Java-разработчика в США на 2021 год составляет $78,5 тысяч в год: на старте карьеры специалисты получают $62 тысяч, спустя 6-9 лет в индустрии — порядка $88 тысяч, наиболее опытные — $102-11 тысяч. 

Напоследок вот вам забавный кусок кода на парсинг ;) Как думаете, что он выведет?

int i = (byte) + (char) - (int) + (long) - 1;

System.out.println(i);

Комментарии (16)


  1. c_kotik
    31.05.2022 17:44
    +2

    Вот откуда взялось это "для домохозяек"....


  1. globeit
    31.05.2022 18:50
    +4

    А в июне Java исполняется 27 лет и 1 месяц! Готовлю пост


  1. MechanicZelenyy
    31.05.2022 19:40
    +12

    Ещё бы в статье не распространяли бы откровенные мифы.


  1. Schokn-Itrch
    31.05.2022 20:01

    С другой стороны, простота оборачивается громоздким кодом — там, где C++ обойдётся парой строк, Java потребуется десять.

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


    1. nikolas78
      01.06.2022 10:05

      Речь наверное про то, что есть «лишний» код.


  1. mrise
    01.06.2022 02:03
    +1

    [Javа] используют при создании визуального облика веб-сайтов с помощью специальных шаблонов (фреймворков)

    ... мне кажется, или товарищ копирайтер перепутал Java и JS?

    (Да, я знаю про Vaadin, но называть его шаблоном для сайтов не стал бы)


    1. Lezenford
      01.06.2022 11:10
      +1

      Подозреваю, в данном случае речь про thymeleaf, mustache или jsp. Я бы не назвал это прямо фреймворками, скорее библиотеками, но это действительно шаблонизаторы. Впрочем статью явно писал маркетолог, а не разработчик, это чувствуется по стилю.


  1. tooler
    01.06.2022 06:30
    +1

    А в соседней статье про Python утверждается, что "видеосервисы Netflix и Spotify" написаны на нём.)


    1. Lezenford
      01.06.2022 11:12
      +2

      как минимум часть Netflix использует Java - их разработки вошли в Spring Cloud. Речь как минимум про Eureka


  1. i-am-sergey
    01.06.2022 10:05
    +3

    За использование Java компаниям сегодня придётся платить: с 2019 года введена плата за коммерческое использование языка

    А источником не поделитесь? А то весь мир-то и не знает


    1. Lee_Fun
      01.06.2022 13:18

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


      1. Lezenford
        01.06.2022 13:45

        Ну если еще точнее - то за oracle jdk теперь просят. считай за поддержку, да. За остальные дистрибутивы, например open jdk - не просят.



  1. javax
    02.06.2022 09:00

    Начинал с версии 1.0.0 бета 4 в 1995, сейчас перешел на Котлин и доволен как слон :)


  1. SimSonic
    02.06.2022 11:03

    Прочитал Java 27 ... подумал о версии.

    В каком году версия языка при текущей скорости выпуска релизов сравняется с возрастом?


  1. Alphacanalya
    03.06.2022 09:19

    Зашел почитать историю про java, а почитал рекламу