У Java была репутация, которая была несколько пугающей для новых программистов, но с Java 25, выпущенной на этой неделе, Oracle может сказать об этом.
В то время как Python позволяет студентам писать свою первую программу в одной линии, Java традиционно вынуждала их через рукавицы с запутанным синтаксисом, просто для печати «Hello World». Java 25 от Oracle исправляет это.
Центральным предложением является предложение о улучшении JDK (JEP) 512 Компактные исходные файлы и основные методы экземпляракоторый устраняет пугающую статическую статическую void main (строка[] Args), который запутал новичков на протяжении десятилетий. Студенты теперь могут начать с:
Это не просто удаление персонажей. «Студенты могут писать свои первые программы в кратчайшие сроки, не понимая языковые функции, предназначенные для крупных программ», — сказал Оракул. Rémi Forax из Université Gustave Eiffel назвал JEP-изменение игры.
JEP 512 «резко упрощает Java для начинающих, позволяя им писать программы без традиционного кода шаблона», — сказал он в своем заявлении.
Oracle сделал важную корректировку из предварительной версии. Первоначально они автоматическими методами ввода-ввода-ввода, чтобы сделать вещи еще простыми, но оттянули это назад. Чад Аримура, вице -президент Oracle по связям с разработчиками Java, сказал новой стеке: «Мы чувствовали, что это сделало это неявное и скрывающее это, чтобы избавиться от этих паров персонажей, чтобы вам пришлось вернуться назад, когда вы хотели развивать свою программу».
Цель состоит в том, чтобы создать то, что Oracle называет «гладким OnRamp» — функциями, которые помогают начинающим начать, но не становятся препятствиями, поскольку их программы становятся более сложными.
«Идея JEP 512 заключается не только в сокращении шаблона, хотя это отличный побочный эффект, но и делает это так, что язык гораздо более краткий для людей, которые изучают Java, не так много накладных расходов с точки зрения концепций, которые кто -то должен научиться, чтобы добраться до первой строки кода, или, я должен сказать, их первый Hello World на экране», — сказал Аримура.
В дополнение к студентам, системным и ИТ -администраторам, которые не могут быть экспертами Java, могут сократить формальность написания небольших программ, таких как сценарии и коммунальные услуги командной строки, сообщила компания.
«Мне нравится, как Java 25 развивает язык более доступным и выразительным способом, отменяя некоторые из утомительных (например, пакет) аспектов языка», — сказал Брэд Шиммин, аналитик Futurum Group.
«Например, вам не нужно обернуть все в класс в исходных файлах, и вам не нужно включать вызовы Super () или This () функции в начале конструктора», — сказал он. «Это может показаться тривиальным, но с таким большим количеством систем, благоприятных для разработчиков и языками бэкэнд на выбор, Java необходимо развиваться, чтобы обеспечить новые функциональные возможности, не затягивая разработчиков в накладных расходах. Это сложная работа, но, как вы можете видеть из этих двух примеров, поддерживающие языки сосредоточены на том, чтобы сделать Java легко усыновить и наслаждаться использованием».
Поддержка учебной экосистемы
Тем временем Oracle подкрепил языковые изменения в образовательной инфраструктуре. Компания сотрудничала с Советом колледжа для обновления AP Computer Science A Courses, обеспечив, что старшеклассники изучают текущую Java вместо устаревших версий. По словам Аримура, многие школы все еще использовали Java 7 и 8 для обучения.
По его словам, компания также запустила Learn.java, специализированный сайт для начинающих программирования от своего портала Dev.java, ориентированного на разработчиков. Игровая площадка Java теперь включает в себя обмен фрагментами, позволяя инструкторам создавать упражнения по кодированию, которые студенты могут работать непосредственно в своих браузерах, не устанавливая ничего.
«Студенты теперь могут начать с простых программ и постепенно расширять свое понимание до более продвинутых концепций по мере их роста, создавая плавный путь обучения от основных концепций программирования до полного объектно-ориентированного программирования»,-отметил Forax.
Более того, Кей Хорстманн, почетный профессор в Университете Сан -Хосе, сказал, что видит более широкие выгоды.
«Мои любимые части Java 25-это компактные исходные файлы, основные методы экземпляра и объявления импорта модулей, так как эти функции создают низкую церемонию на Java для начинающих программистов»,-сказал он в заявлении. «Они также приносят пользу опытным программистам, расширяя охват Java до небольших повседневных задач».
Поскольку Java подходит к своему четвертому десятилетию, Oracle, похоже, признает, что принятие языка зависит от первого опыта программирования, как и от предприятий.
Создание навыков ИИ рано
Фокус Java 25 также распространяется на разработку искусственного интеллекта. В то время как Python доминирует в исследованиях машинного обучения (ML), Java остается решающим для производственных систем ИИ в масштабе Enterprise.
Во время брифинга с новым стеком Аримура рассказала о трех шаблонах, где Java пересекается с работой ИИ:
Во -первых, инструменты ИИ все чаще генерируют код Java. Такие услуги, как Code Assist Oracle и популярные редакторы с помощью искусственного искусственного искусства, помогают разработчикам писать Java быстрее. «Есть много кода Java, созданного и генерируемого ИИ», — сказал он. «Мы должны убедиться, что он продолжает быть первоклассным кодом».
Во -вторых, существующие приложения нуждаются в функциональности AI. «Может быть, ваш генеральный директор сказал, что нам нужно, чтобы все ваши приложения интегрировали ИИ сейчас», — пошутил Аримура. «Мы не незнакомые за этим здесь, в Oracle». Такие рамки, как Langchain4j и Spring AI, оба из которых недавно выпустили 1,0, облегчают эту интеграцию.
В -третьих, специализированные команды создают пользовательские системы ML в Java, используя свои характеристики производительности и экосистему.
Упрощенный синтаксис особенно помогает при сценариях ИИ и прототипировании. JEP 511 Модуль импорт объявлений Облегчает импорт целых модулей одновременно, что, как отметил Аримура, «полезен для простых приложений, которые объединяют выводы и рабочие процессы из популярных библиотек».
Кроме того, виртуальные потоки, представленные в Java 21, видят тяжелое принятие в рабочих нагрузках искусственного интеллекта, потому что вывод ML часто включает в себя множество одновременных операций, которые не нуждаются в полных темах ОС, сказал Аримура.
От класса до карьеры
Путь от Java, подходящей для начинающих, до Java, становясь яснее. Студенты, которые начинают с простого синтаксиса, могут постепенно изучать более продвинутые функции, такие как сопоставление рисунков — JEP 507 Примитивные типы в схемах, экземпляре и переключении расширяет это на примитивные типы в Java 25, и JEP 505 Структурированная параллелизм и JEP 508 Векторный API используются для оптимизированных вычислений, а также при выводе ИИ и вычислительных сценариев.
Кроме того, расширение Oracle против кода, которое приближается к 4 миллионам загрузок с рейтингом 5,0, заставляет этот пробел. Аримура отметила рост «Поскольку много новых разработчиков, есть много людей, изучая Java, но в пространстве ИИ происходит много работы.
Релиз также включает в себя улучшения производительности, которые имеют значение для рабочих нагрузок искусственного интеллекта. Project Project Leyden’s Features на предварительном времени (JEP 514 Вперед эргономика командной линии и дает 515 Задолго до профилирования метода) ускорить запуск приложения без изменений кода. JEP 519 Компактные заголовки объектов Уменьшает использование памяти, сокращая заголовки объектов. Эти оптимизации помогают Java -приложениям эффективно работать в облачных средах, где эффективность ресурсов напрямую влияет на затраты.
JDK 25, связанные с AI, включают в себя:
- Примитивные типы в схемах, экземпляре и переключении JEP 507, который облегчает интеграцию бизнес -логики с примитивными типами из вывода искусственного интеллекта.
- Модуль импорт объявлений JEP 511, чтобы легче интегрировать бизнес -логику с выводом искусственного интеллекта, библиотеками и/или сервисными вызовами.
- Векторный API JEP 508, часто используемый в выводе ИИ и вычислите сценарии.
- Структурированная параллелизм JEP 453, для развития ИИ, часто включающего в себя несколько задач параллельно.
- Обзорные значения JEP 506 обеспечивает обмен иммутируемыми данными внутри и по всему потоку с более низкими пространственными и временными затратами и нитью-локальными переменными.
Java Ecosystem выходит
Аримура отметила, что в экосистеме Java Plus AI было много прогресса, в том числе Langchain4J, достигнув его выпуска 1.0 GA, внедряя виртуальные потоки, расширение модели, агент, улучшенную поддержку мышления, мультимодальность и многое другое.
Кроме того, Spring AI достиг 1,0 GA с помощью расширения модели, интеграции протокола контекста модели (MCP), вызова инструментов и многого другого.
Кроме того, в мае была запущена Ambletic Framework Spring Creator Rod Johnson, запущенная в мае с целенаправленным планированием действий, бесшовной интеграцией LLM и многое другое.
«Мы можем видеть все большее использование ИИ для выхода за рамки только что на основе быстрого взаимодействия. Идея автономных агентов, которые учатся и адаптируются по мере изменения ситуаций, является одновременно интригующей (и немного страшной)»,-сказал Саймон Риттер, заместитель технического директора по провайдеру платформы Java Azul Systems, в новом стеке. «Нам нужно будет посмотреть, как такие инструменты, как этот прогресс в реальных приложениях и работают ли они так, как предполагалось».
Тем временем Жорж Сааб, старший вице -президент Platform Platform Oracle Java и председатель руководящего совета OpenJDK, сказал: «Java 25 подчеркивает постоянные инвестиции Oracle в функции и возможности, которые Power AI Solutions и упростить язык, облегчая Java для новых разработчиков и ИТ -команд для обучения».
Один из выдающихся отраслевых аналитиков сказал, что он видит, что Oracle продолжает предоставлять новые функции, которые будут держать Java в темпе с современным развитием.
«Поскольку Java вступает в свое четвертое десятилетие, она продолжает предоставлять функции, которые помогут обеспечить, чтобы приложения, в том числе и интегрированные с возможностями искусственного интеллекта, будут высокоэффективными и масштабируемыми по аппаратным платформам», — говорится в заявлении Arnal Dayaratna, вице -президента по разработке программного обеспечения в IDC. «Java хорошо расположена для обеспечения непрерывного потока современных функций, которые обращаются к разработке приложений на основе AI на основе AI».
Долгосрочные инвестиции
Java 25 является долгосрочной поддержкой (LTS) с бесплатными обновлениями до сентября 2028 года и коммерческой поддержкой как минимум до сентября 2033 года.
Это дает организациям гибкость для того, чтобы приложения в производстве дольше с минимальным обслуживанием и в конечном итоге мигрируют на своих условиях, сообщила компания. Oracle JDK 25 планируется получить ежеквартальные обновления безопасности и обновления производительности до сентября 2028 года в соответствии с условиями Oracle No-Fee (NFTC), а обновления JDK 25, опубликованные после этой даты, будут предложены в соответствии с лицензией Java SE Oracle Network (OTN), запланированной не менее сентября 2033 года, сказал Oracle.
Trending Stories youtube.com/thenewstack Tech движется быстро, не пропустите эпизод. Подпишитесь на наш канал YouTube, чтобы транслировать все наши подкасты, интервью, демонстрации и многое другое. Группа подпишитесь с эскизом. Дэррил К. Тафт охватывает DevOps, инструменты разработки программного обеспечения и проблемы, связанные с разработчиком из своего офиса в районе Балтимора. Он имеет более чем 25 -летний опыт работы в бизнесе и всегда ищет следующий совок. Он работал … читайте больше от Дэррила К. Тафта