JavaRush /Java блог /Java-університет /Підсумки Java в 2023: випуск версій, місце у рейтингах МП...
Yuliia Tunik
42 рівень
Киев

Підсумки Java в 2023: випуск версій, місце у рейтингах МП, популярність та тренди на майбутнє

Стаття з групи Java-університет
Час перед Новим роком саме для того, аби підбивати підсумки року, що минає. Екосистема Java у 2023 році розвивалась: вийшло дві нових версії мови, Oracle змінила правила ліцензування, відбулись релізи нових інструментів. Тож, поговоримо про це більш детально. Підсумки Java в 2023: випуск версій, місце у рейтингах МП, популярність та тренди на майбутнє - 1

Оновлення Java: версії 20 та 21

У році, що минає, вийшло два оновлення Java: 20 та 21. Версія 20 не отримала довготривалої підтримки, лише на 6 місяців, до випуску наступної версії. У цей реліз потрапило близько 1500 закритих завдань та 7 JEP'ів. В патерни записів, які з'явилися в Java 19 в режимі preview, було внесено три основні зміни. По-перше, додали підтримку виведення типів у записах-дженериках. По-друге паттерни записів тепер можуть бути присутніми в заголовку покращеного циклу for. По-третє, зникла підтримка іменованих патернів записів. Серед нововведень також можна відмітити попередню підтримку обмежених значень (Scoped Values), що дозволяють спільно використовувати незмінні дані в потоках та ефективно обмінюватися даними між дочірніми потоками (значення успадковуються). Головна відмінність Scoped Values від змінних локальних потоку в тому, що перші записуються один раз, надалі не можуть бути змінені і залишаються доступними лише на час виконання потоку. Також в 20 версію додали п'яту попередню реалізацію API Vector, що надає функції векторних обчислень, які дозволяють одночасно застосувати операції відразу до кількох значень. У вересні 2023 року вийшла загальнодоступна версія Java 21. У цей реліз потрапило близько 2500 закритих завдань та 15 JEP'ів. Java 21 входить до категорії випусків із розширеним терміном підтримки, оновлення для якого будуть випускатися до 2031 року. В цю версію ввійшли такі нововведення, як підтримка впорядкованих колекцій (SequencedCollection), стабілізація віртуальних потоків (Virtual Threads), генеративний варіант збирача сміття ZGC (Generational Z Garbage Collector), стабілізована реалізація шаблонів записів (record pattern), підтримка обмежених значень (Scoped Values), про які ми згадували вище та інші оновлення. “Java 21 є одним із найважливих випусків Java, оскільки віртуальні потоки впливатимуть на те, як ми розробляємо та розгортаємо асинхронні програми, від мікросервісів до корпоративних програм”, — сказав доктор Венкат Субраманіам, засновник Agile Developer, Inc.

Java у рейтингах: не піднялась, але й не просіла

Java стабільно займає місце у першій п’ятірці мов програмування. Згідно з індексом PYPL, Java перебуває на другому місці за популярністю серед розробників. Індекс TIOBE поміщає Java на 4 місце — так само, як і в минулому році. Проте, якщо подивитись на більш давню статистику, то Java поступово втрачає лідерство, адже у 2018 році вона була на першому місці цього рейтингу. Звісно, поточний результат все одно говорить про те, що Java ще не скоро втратить позиції. Популярність Java серед роботодавців укладачі рейтингу пояснюють великою кількістю додатків та сервісів, написаних цією мовою. У рейтингу найпопулярніших мов програмування, який провів сайт StackOverFlow Java посіла сьоме місце — її використовує 30,5% опитаних розробників. Варто сказати, що цей рейтинг включає мови програмування, як для фронтенду, так і бекенду. Серед мов фронтенду лише Python обігнав Java і зайняв четверте місце. Якщо в 2023 році Java не піднялася в рейтингах популярності, то принаймні й не просіла.

Які технології та інструменти використовували Java-розробники

Як і раніше, найбільш популярної версією мови лишається Java 8 — нею користуються близько 50% розробників на цій мові програмування, йдеться у цьогорічному дослідженні компанії JetBrains. Java 20, яка вийшла у 2023 році, користуються лише 11% розробників. Підсумки Java в 2023: випуск версій, місце у рейтингах МП, популярність та тренди на майбутнє - 2Серед фреймворків найбільш популярними протягом року були Spring — 72% розробників користувались ним, та Spring MVC — 39%. Підсумки Java в 2023: випуск версій, місце у рейтингах МП, популярність та тренди на майбутнє - 3Для збірки проєктів програмісти найчастіше обирали Maven (74% розробників), Gradle (46%), та Ant (6%). IntelliJ IDEA’s, VisualVM та JProfiler були найбільш популярними середовищами розробки для джавістів — відповідно 45%, 17% та 13% програмістів надавали їм перевагу. Найчастіше розробники на Java створювали веб-сайти, невеликі додатки, програмне забезпечення та бази даних. Підсумки Java в 2023: випуск версій, місце у рейтингах МП, популярність та тренди на майбутнє - 4JavaScript, SQL, Python і HTML та CSS найчастіше використовувались серед тих, хто використовує Java як одну з основних мов.

Java в новинах: Helidon 4 та зміни у ліцензуванні

Що ще відбувалось з Java в 2023 році? Ми зібрали підбірку важливих новин для Java-розробки.

Oracle змінила правила ліцензування Java

У січні компанія Oracle представила новий тарифний план Java, що базується на загальній кількості співробітників клієнта, а не на кількості співробітників, які використовують програмне забезпечення. Для організації це означає те, що незалежно від кількості користувачів Java або розміру сервера, вона повинна рахувати кожного співробітника, підрядника, консультанта та агента, щоб визначити свій рахунок за підписку на Java. За даними Oracle, ціна починається від 15 доларів за одного працівника на місяць для 999 співробітників і знижується до 5,25 доларів США на місяць для 40-49 тисяч користувачів. Різке зростання вартості ліцензій Oracle для більшості користувачів Java означатиме, що до 2026 року більше 80% Java-додатків будуть розгорнуті на сторонніх середовищах, порівняно з 65% у 2023 році. Клієнти переходять на сторонні середовища Java, такі як Azul, Amazon Coretto, Eclipse Temurin і IBM Semuru.

Oracle випустила робочу версію Helidon 4

Oracle випустила нову робочу версію Helidon 4, фреймворку мікросервісів для Java із серверною реалізацією, що використовує віртуальні потоки для підвищення продуктивності. Helidon 4 презентує сервер, що називається Nima, призначений для використання можливостей віртуальних потоків версії Java 21. Він призначений для зменшення зусиль, необхідних для написання та підтримки високопродуктивних одночасних програм.

У світ вийшла безсерверна технологія GraalOS

У 2023 році Oracle також представила GraalOS, високопродуктивну безсерверну технологію розгортання додатків на основі Java, яка обіцяє допомогти розробникам покращити швидкість реагування додатків і скоротити витрати на них. GraalOS використовує технологію GraalVM Native Image для компіляції коду Java в автономний виконуваний файл, використовуючи процесори x64 і AArch 64 на Oracle Cloud Infrastructure (OCI). Програми на базі GraalOS повинні вимагати значно менше пам’яті завдяки попередній компіляції Native Image і бути дешевшими в експлуатації, заявили в Oracle.

Прогноз на майбутнє: тренди у екосистемі Java

Чого чекати від екосистеми Java у 2024 році та загалом від світу програмування? Зупинимось на кількох найбільш очевидних трендах.

Хмарні обчислення

У найближчі 5-10 років хмарні технології стануть ще більш популярними, ніж сьогодні. Тому 2024 рік, ймовірно, стане початком серйозних змін. І саме тоді Java вийде на перший план (вона чудово підходить для використання в інфраструктурі хмарних обчислень). За даними опитування CloudFoundry, більш ніж 600 ІТ-професіоналів по всьому світу вважають Java найпопулярнішою для розробки корпоративних хмарних додатків. Її обрали 57% експертів, які у своїй роботі застосовують хмарні обчислення. Java популярна у хмарному середовищі завдяки простоті, адаптивністі, платформонезалежністі і надійності. Java-розробники користуються такими хмарними сервісами, як Google Cloud Platform, AWS (Amazon Web Services) і Azure,Google App Engine, Jelastic.

Штучний інтелект

Одна з технологій, що стрімко розвиваються — це штучний інтелект. Чого варті хоча б такі інструменти, як ChatGPT, Bard, ChatSonic, Poe, Rytr та інші. І це не враховуючи великий пул додатків та програм, що лише частково використовують штучний інтелект для вирішення задач бізнесу. Та чи допоможе Java у роботі з ШІ? У сфері ШІ використовується досить багато мов програмування, але Java безперечно одна з найпопулярніших. Зокрема, Java застосовують при створенні рішень для машинного навчання, нейронних мереж, алгоритмів пошуку, генетичного програмування та мульти-робототехнічних систем. Такі властивості, як об'єктно-орієнтованість і масштабованість, обов'язкові для ШІ-проєктів, а тому Java підходить їм якнайкраще.

Машинне навчання

Аспект, який робить Java однією з найбільш привабливих і унікальних мов програмування, полягає в тому, що вона, за своєю суттю, є мультипарадигмальною мовою програмування. Ця характеристика дозволила Java стати чудовою мовою програмування в машинному навчанні. Позаяк машинне навчання і розвиток штучного інтелекту невіддільні одне від одного, можна сміливо стверджувати, що ця технологія буде популярною ще дуже довго. Хоча деякі розробники надають перевагу Python порівняно з Java, ця мова є також хорошим варіантом для машинного навчання. Java має кілька бібліотек і фреймворків, які підтримують цю технологію. Бібліотека Weka, наприклад, є популярним інструментом для завдань машинного навчання, таких як попередня обробка даних, класифікація, регресія, кластеризація.

Інтернет речей

Інтернет речей (Internet of Things, IoT) як концепція на слуху вже давно — не перший рік він фігурує в списку трендових ніш, за якими майбутнє. Поряд з big data, AI та іншими популярними галузями, що бурхливо розвиваються. Проте останнім часом IoT почав активно проникати в наше повсякденне життя, а кількість розробок у цій сфері постійно зростає, що виявляється у появі все більшої кількості нових вакансій для IoT-девелоперів. Internet of Things — це концепція, в рамках якої безліч повсякденних приладів та предметів побутової електроніки, від пральної машини до чайника, комп'ютеризуються та підключаються до Інтернету. Це відкриває різні нові можливості: зокрема пристрої Інтернету речей дозволяють збирати і аналізувати величезні обсяги нових даних, адаптуючи роботу приладів під кожного користувача. Спочатку Java навіть створювався саме для цих цілей, тому не дивно, що вона так добре підходить для створення IoT-додатків. На початку дев'яностих Java з'явилася як мова для написання додатків для пристроїв PDA (personal digital assistant), предків сучасних смартфонів. Тому, знаючи Java, розробник може перейти у перспективну галузь IoT-розробки. Ось таким був рік, що минає, для Java. Що ви вважаєте головною подією для спільноти Java у 2023 році?
Коментарі
ЩОБ ПОДИВИТИСЯ ВСІ КОМЕНТАРІ АБО ЗАЛИШИТИ КОМЕНТАР,
ПЕРЕЙДІТЬ В ПОВНУ ВЕРСІЮ