Согласно индексу TIOBE сейчас Java – наиболее популярный язык программирования. Этот индекс показывает, насколько часто в поисковых системах появляются вопросы о конкретном языке. И хоть этот индекс не дает четкого представления о реальном количестве кода, написанного на конкретном языке, он показывает популярность языка в мире.
Язык и платформа
В корпоративном секторе Java занимает лидирующее положение по сравнению со своим основным конкурентом C# за счет своих основных преимуществ - кроссплатформенности, обилия мощных фреймворков (Spring, Hibernate, Apache), широкой поддержки со стороны сообщества. Также стоит отметить, что Java - это не столько язык, сколько платформа. Одно и то же приложение, написанное на Java, будет успешно работать на различных ОС без внесения изменений в код.
Обратная сторона популярности языка - это его "неповоротливость", изменения в нём не могут быть слишком частыми и революционными, они должны быть эволюционными и не заставлять разработчика каждый раз переписывать код с нуля, т.е. обеспечивать обратную совместимость. Это поспособствовало появлению новых языков, таких как Scala, Groovy, Kotlin, Go, которые, несмотря на внешнюю независимость, используют в качестве среды выполнения JVM (Java Virtual Machine).
За эту неторопливость Java часто ругали ранее, но начиная с 2018 года Oracle изменила цикл выпуска версий Java на полугодовой, когда новая версия выходит каждые полгода и привносит различные новшества.
Новые версии, новые функции?
С новыми версиями Java всё больше приближается к актуальным запросам и трендам современной разработки – в новых версиях появляются новые конструкции, паттерны (var, pattern matching, легковесные потоки, аналогичные JS «обещания» и т.д.). Например, в 12 и 13 версиях добавлены:
- текстовые блоки
- Dynamic CDS Archive (ускорение запуска приложения)
- улучшенный алгоритм сборки мусора