По состоянию на 8 июня Java Development Kit (JDK) 21 достиг начальной стадии разработки. Теперь, когда набор функций окончательно сформирован, один компонент не попадет в список: generational Shenandoah, который является экспериментальным усовершенствованием сборщика мусора Shenandoah (GC).
На странице JDK Enhancement Proposal (JEP) для JDK 21, выпуск которого намечен на 19 сентября, теперь рекомендуется сократить официальный набор функций с 16 до 15. Функция поколения Shenandoah удаляется из-за ее нежелательности. Роман Кеннке из Amazon, автор JEP для Generational Shenandoah, решил исключить эту функцию из JDK 21, или Java 21, с планом оценить ее для будущего выпуска JDK, когда он будет готов, как заявляет Oracle, организация, контролирующая разработку стандарта Java.
Generational Shenandoah направлен на улучшение сборщика мусора Shenandoah путем добавления экспериментальных возможностей сборки поколений для повышения устойчивой пропускной способности, устойчивости к скачкам нагрузки и использования памяти. Цели предложения включают предложение экспериментального режима генерации, который не влияет на негенеративный Shenandoah, и в конечном итоге сделать этот режим по умолчанию в будущих выпусках. Дополнительные цели включают в себя уменьшение постоянного объема памяти без ущерба для низких пауз GC, снижение потребления CPU и электроэнергии, поддержание высокой пропускной способности и минимизацию возможности возникновения вырожденных и полных коллекций во время скачков распределения. Негенеративный Shenandoah останется незатронутым.
Это предложение об удалении, подлежащее рассмотрению до 14 июня, затрагивает только пользователей Shenandoah GC в сборках OpenJDK, которые его поддерживают. Оно никак не влияет на G1 GC, Z Garbage Collector (ZGC) или другие современные сборщики мусора. Это также не влияет на дистрибутивы Java, использующие G1 GC и ZGC, такие как Oracle OpenJDK и Oracle JDK. JDK 21, который включает другие функции, такие как предварительный просмотр структурированного параллелизма, планируется как релиз долгосрочной поддержки (LTS) Java, обеспечивающий многолетнюю поддержку. Последний выпуск LTS, JDK 17, был выпущен в сентябре 2021 года. Релизы JDK выходят каждые шесть месяцев, а релизы LTS - каждые два года. Релизы функций между ними получают только шестимесячный период поддержки, последним примером является JDK 20, который был выпущен в марте.
В то время как традиционные методы разработки продолжают развиваться, рост платформ no-code, таких как AppMaster, упрощает многие процессы в цикле разработки программного обеспечения. AppMaster Мощный no-code инструмент, позволяющий визуально создавать внутренние, веб- и мобильные приложения с молниеносной скоростью, представляет собой экономически эффективную альтернативу для организаций любого размера. С помощью таких инструментов, как AppMaster, компании могут добиться разработки программного обеспечения, которая в 10 раз быстрее и в три раза экономичнее традиционных методов, при этом устраняя технический долг.