26.09.2020

Выпуск интегрированной среды разработки Apache NetBeans 12.0


Организации Apache Software Foundation представила интегрированную среду разработки Apache NetBeans 12.0. Это шестой релиз, подготовленный Фондом Apache после передачи кода NetBeans компанией Oracle и первый выпуск после перевода проекта из инкубатора в разряд первичных проектов Apache. Выпуск Apache NetBeans 12 будет сопровождаться в рамках расширенного цикла поддержки (LTS).

Среда разработки предооставляет поддержку языков программирования Java SE, Java EE, PHP, JavaScript и Groovy. Интеграция поддержки языков C/C++ в очередной раз перенесена на следующий выпуск. Отмечается, что передача компанией Oracle кода, связанного с разработкой проектов на C и C++, была завершена ещё при подготовке прошлого выпуска, но интеграция этого кода в Apache NetBeans потребовала больше времени, чем ожидалось. В частности, кроме рецензирования лицензионной чистоты кода и чистки от элементов, являющихся интеллектуальной собственностью, потребовалось внесение изменений в код, так как некоторые возможности компания Oracle не смогла передать фонду Apache. До появления встроенной поддержки разработчики могут установить через Plugin Manager модули для разработки на C/C++, ранее выпущенные для NetBeans IDE 8.2.

Основные новшества NetBeans 12.0:

  • Добавлена поддержка платформы Java SE 14. В том числе обеспечены подсветка синтаксиса и форматирование кода для конструкций с новым ключевым словом «record», предоставляющим компактную форму для определения классов, позволяющую обойтись без явного определения различных низкоуровневых методов, таких как equals(), hashCode() и toString().

    Продолжено тестирование поддержки сопоставления c образцом в операторе «instanceof», которая позволяет сразу определить локальную переменную для обращения к проверенному значению. Например, можно сразу писать «if (obj instanceof String s && s.length() > 5) {.. s.contains(..) ..}» без явного определения «String s = (String) obj». В NetBeans при указании «if (obj instanceof String) {» будет выведена подсказка, позволяющая преобразовать код в новую форму.

  • Из возможностей Java 13 отмечена поддержка преобразования многострочных текстовых блоков, оформляемых без экранирования символов. В редакторе кода набор строй теперь можно превращать в подобные текстовые блоки и обратно.
  • Из Java 12 представлена поддержка использования «switch» в форме выражения, а не оператора.
  • Из возможностей Java 11 отмечена поддержка режима запуска программ, поставляемых в форме одного файла с исходным кодом (класс можно запустить напрямую из файла с кодом, без создания class-файлов, JAR-архивов и модулей). В NetBeans подобные однофайловые программы можно создавать вне проектов в окне Favorite, запускать и отлаживать.
  • Код поддержки JavaFX расширен регистрацией артефактов OpenJFX Gluon Maven — в диалоге управления проектом появились элементы «FXML JavaFX Maven Archetype (Gluon)» и «Simple JavaFX Maven Archetype (Gluon)» для которых предложены готовые файлы nbactions.xml, позволяющие сразу запускать и отлаживать проекты без дополнительных изменений в конфигурации.
  • Добавлена поддержка Java EE 8 с возможностью сборки web-приложений при помощи Maven или Gradle. Поддержка Jakarta EE 8 пока недоступна. Созданные в NetBeans приложения Java EE 8 можно развёртывать в контейнере Java EE 8 при помощи нового шаблона «webapp-javaee8» в Maven, созданного для использования с NetBeans. Обеспечена поддержка спецификации JSF 2.3, в том числе обеспечено автодополнение таких конструкций, как «f:websocket» и подстановка артефактов CDI. Реализована интеграция с сервером приложений Payara (ответвление от GlassFish), GlassFish 5.0.1, Tomcat и WildFly.
  • Улучшена поддержка систем сборки Maven и Gradle. Для Maven налажена интеграция с библиотекой JaCoCo и обеспечена возможность передачи аргументов компилятора Java из Maven в редактор кода Java. Для Gradle добавлена поддержка модульных java-проектов и поддержка JavaEE. Gradle Tooling API обновлён до версии 6.3. Предложен новый мастер создания Java-приложений (Java Frontend Application) для Gradle. Добавлена поддержка отладки проектов Gradle Web. Добавлена поддержка Gradle-проектов на языке Kotlin. Обеспечена возможность принудительной перезагрузки Gradle-проектов.
  • Добавлена поддержка новых возможностей PHP 7.4.
  • В редактор кода добавлена поддержка языка TypeScript (расширяет возможности JavaScript, оставаясь полностью обратно совместимым).
  • Добавлены дополнительные тёмные режимы отображения интерфейса — Dark Metal и Dark Nimbus.
  • Предложена новая тема оформления FlatLaf.
  • Улучшена поддержка экранов с высокой плотностью пикселей (HiDPI) и добавлен упрощённый виджет HeapView.

Напомним, что проект NetBeans был основан в 1996 году чешскими студентами с целью создания аналога Delphi для Java. В 1999 году проект был куплен компанией Sun Microsystems, а в 2000 году опубликован в исходных текстах и переведён в разряд свободных проектов. В 2010 году NetBeans перешёл в руки компании Oracle, поглотившей Sun Microsystems. Все эти годы NetBeans развивался в качестве основной среды для разработчиков на языке Java, конкурируя с Eclipse и IntelliJ IDEA, но последнее время стал продвигаться и для языков JavaScript, PHP и C/C++. Активная пользовательская база NetBeans оценивается в 1.5 млн разработчиков.

Источник: https://www.opennet.ru/opennews/art.shtml?num=53132

Добавить комментарий