LINUX.ORG.RU

Вышла Java 21 LTS

 , ,


0

7

Вышла общедоступная версия Java 21. Java 21 является LTS-релизом, а значит у него будут выходить обновления как минимум 5 лет с момента выхода.

Основные изменения:

  • String Templates (Preview)
  • Sequenced Collections
  • Generational ZGC
  • Record Patterns
  • Pattern Matching for switch
  • Foreign Function & Memory API (Third Preview)
  • Unnamed Patterns and Variables (Preview)
  • Virtual Threads
  • Unnamed Classes and Instance Main Methods (Preview)
  • Scoped Values (Preview)
  • Vector API (Sixth Incubator)
  • Deprecate the Windows 32-bit x86 Port for Removal
  • Prepare to Disallow the Dynamic Loading of Agents
  • Key Encapsulation Mechanism API
  • Structured Concurrency (Preview)

Examples at HowToDoInJava

Примеры на Хабре

>>> Подробности

★★★★

Проверено: hobbit ()
Последнее исправление: hobbit (всего исправлений: 3)

Ответ на: комментарий от X-Pilot

Вы плохо понимаете, что такое GIL. В питоне есть чему тормозить кроме GIL, и есть треды и асинхронщина, нормально работающие в том числе с GIL в несколько потоков

Shadow ★★★★★
()
Последнее исправление: Shadow (всего исправлений: 1)
Ответ на: комментарий от mx__

А есть кто юзает хоть одно приложение на сабже на компьютере ?

I2P же!

ratvier ★★
()
Ответ на: комментарий от Yilativs

Сейчас с снова стал шевелиться JavaFX - посмотрим, что из этого выйдет.

Ничего не выйдет, пока не перепишут на Java или не вернут в JRE.

ratvier ★★
()

Какие-то у них короткие сроки поддержки для LTS релизов. Там восьмую версию до сих пор много где используют.

Ghostwolf ★★★★★
()
Ответ на: комментарий от asdpm

В общем и целом если бы проверяемых исключений не было, я бы не расстроился - это точно. Собственно в моих проектах на жаве их по факту и так нет. Все адекватные библиотеки от них ушли. Это я пытаюсь уже найти им какое-то оправдание.

всё таки кто язык проектировал и это туда добавил и кто библиотеку писал - это один коллектив был, то есть это те же примерно люди.

У меня впечатление, что раньше проектированием занимались мало. Ранние части жавы очень плохо спроектированы. До того плохо, что в какой-то момент пришлось прямо брать и переделывать. StringBuilder вместо StringBuffer. Фактически депрекейтить Vector. Уродский java.util.Date, Calendar и иже с ними. В общем на раннем этапе, похоже, это выглядело как «х-кс х-кс и в продакшн». Фичи вроде генериков тупо отложили на несколько лет.

vbr ★★★
()
Последнее исправление: vbr (всего исправлений: 1)
Ответ на: комментарий от ratvier

Из непереносимого/плохо_переносимого там враппер над WebKit'ом и кодеки, поэтому это переписать практически невозможно (кодеки-то еще ладно): все проекты браузеров на Java загнулись.

X-Pilot ★★★★★
()
Ответ на: комментарий от ratvier

изначально джаву делали для управления кофемашинами.

язык не универсальный, поэтому там есть взаимодействие с низкоуровневым С

Foreign Function & Memory API опять же для лучшего взаимодействия с низкоуровневыми С и С++. джава не пытается их заменить

и это шикарно.

vstartsev
()
Ответ на: комментарий от MoldAndLimeHoney

Да, можно также бинари собирать как и в крестах, без прогрева на JIT. Либо использовать опцию JIT с кешированием скомпилированного байт-кода в openj9. Нормальные GC сделали с минимальными задержками.

foror ★★★★★
()
Последнее исправление: foror (всего исправлений: 1)
Ответ на: комментарий от flant

Вообще, в курсе за честный знак и современную розницу в РФ? Владеешь ИП с розницей или с дивана теоритезируешь?

foror ★★★★★
()
Последнее исправление: foror (всего исправлений: 1)
Ответ на: комментарий от foror

за рф не в курсе ни за что.

разговор о другом: историй таких масса, когда кому-то что-то нравится и он автоматически думает, что это обязательно понравится всему миру не меньше чем ему самому. но это не всегда так. точнее всегда не так.

flant ★★★
()
Ответ на: комментарий от flant

Речь не о поехавших живущих в своём манямирке, речь о бизнесе. Я в этом кручусь годами и на практике знаю что здесь к чему. А когда люди знают, что к чему, то у них как правило всё получается.

И моё бы программно-аппаратное решение на джаве в опенсорце «за бесплатно» микробизнес отрывал бы с руками. Но его для этого нужно доводить до ума, а мне сейчас некогда этим заниматься.

foror ★★★★★
()
Последнее исправление: foror (всего исправлений: 1)
Ответ на: комментарий от MOPKOBKA

Его же Microsoft на C++ переписал и после этого он перестал тормозить.

Версию для хомяков продающаюся миллионами назвали Minecraft Windows 10 Edition, а отстающую и тормозную версию для гиков с кучей плагинов, так уж и быть оставили на Java.

EXL ★★★★★
()
Последнее исправление: EXL (всего исправлений: 1)
Ответ на: комментарий от Skullnet

Была бы поддержка того же Qt на Java,

Она была – google://QtJambi, но такие как ты чесали языком на форумах, а не писали код, поэтому проект умер.

https://github.com/OmixVisualization/qtjambi

Умер настолько, что ты даже о нём не слышал.

И это кстати нагладная демонстрация того, как всем был нужен ваш Qt в Java.

EXL ★★★★★
()
Ответ на: комментарий от EXL

Его же Microsoft на C++ переписал и после этого он перестал тормозить.

Да он не особо то и тормозил.

отстающую и тормозную версию для гиков с кучей плагинов, так уж и быть оставили на Java.

Отстающая это Bedrock, я так понимаю Bedrock это порт с телефонов, и единственный смысл брать ее, это что бы играть НЕ на ПК. Давно уже смотрел состояние, но сомневаюсь что за последнее время она смогла догнать и перегнать Java версию.

MOPKOBKA ★★★
()
Последнее исправление: MOPKOBKA (всего исправлений: 1)
Ответ на: комментарий от MOPKOBKA

единственный смысл брать ее, это что бы играть НЕ на ПК

Как бы эта именно эта версия Minecraft на C++ продаётся в Windows Store и (возможно) Steam. А Microsoft в своей Windows 10 именно её агрессивно рекламирует.

EXL ★★★★★
()
Ответ на: комментарий от EXL

там интересный список «не написанных на джаве ни кому не нужных» приложений))

vstartsev
()
Ответ на: комментарий от ratvier

Так JavaFX выкинули из поставки JDK достаточно давно, ещё из 8’ки вроде как.

Да и не нужен он давно, какие проекты используют JavaFX в 2023 году? Вот Swing на стероидах и SWT дохрена кто использует.

EXL ★★★★★
()
Ответ на: комментарий от EXL

Из какой именно поставки? Азул собирает дистрибутивы с javafx. Тот же небезызвестный soapui только с таким и работает.

vbr ★★★
()
Ответ на: комментарий от EXL

В Steam ни одной из этих версий никогда было, в Windows Store она действительно продается, ну и что с того то, там и какие то игры от Microsoft в стиле Minecraft тоже продаются, это же не значит что они превосходят версию на Java.

MOPKOBKA ★★★
()
Ответ на: комментарий от MOPKOBKA

игры от Microsoft в стиле Minecraft тоже продаются

Так я про то и говорю – Microsoft развивает движок Minecraft на C++ и делает игры на нём которые ПРОДАЮТСЯ, то есть это дело имеет коммерческий успех, тогда как Java Edition давно уже оставлена на гиковской поддержке.

EXL ★★★★★
()
Ответ на: комментарий от MOPKOBKA

Если бы это было так, зачем бы им тогда понадобилось делать версию движка на C++ и продавать именно её в своём магазине?

EXL ★★★★★
()
Ответ на: комментарий от EXL

зачем бы им тогда понадобилось делать версию движка на C++

На телефонах невозможно было запустить нормальную версию (2011), сейчас может уже и можно, но когда Bedrock появлялся, это было C++ приложение для Android с очень ограниченным миром, в него стали играть, его перенесли на консоли и прочие убогие недокомпьютеры.

и продавать именно её в своём магазине?

https://www.xbox.com/ru-ru/games/store/minecraft-java-edition/9pj8266bhfwn

Если зайти на Twitch, то все с Java версией.

MOPKOBKA ★★★
()
Последнее исправление: MOPKOBKA (всего исправлений: 2)
Ответ на: комментарий от MOPKOBKA

прочие убогие недокомпьютеры

В том числе компьютеры с Windows 10, ведь именно эта версия продаётся в их магазине. И именно она достигла паритета с Java-версией по функциональности сегодня.

EXL ★★★★★
()
Ответ на: комментарий от EXL

И именно она достигла паритета с Java-версией по функциональности сегодня.

Модов нет до сих пор, какой паритет?

Midael ★★★★★
()
Ответ на: комментарий от EXL

и продавать именно её в своём магазине?

Зачем Quantum Break продавали только в ms сторе на релизе? Значит ли это, что он лучше стима?

Midael ★★★★★
()
Ответ на: комментарий от Midael

какой паритет?

По игровому процессу и механике мира.

Модов нет до сих пор

Моды – гиковская тема.

EXL ★★★★★
()
Ответ на: комментарий от Midael

А как твой вопрос отвечает на то почему в Windows «дефолтной» и навязываемой Microsoft’ом агрессивно посредством рекламы стала именно версия Minecraft на C++, а не на Java?

EXL ★★★★★
()
Ответ на: комментарий от MOPKOBKA

https://www.microsoft.com/ru-tm/p/minecraft-for-windows/9nblggh2jhxj?activetab=pivot:overviewtab

Вот правильная ссылка. Эта та версия что продаётся Microsoft’ом на самой популярной в мире игровой платформе – Windows 10.

И эта версия сегодня на C++

EXL ★★★★★
()
Ответ на: комментарий от EXL

Вот правильная ссылка.

Я что то не то кинул или ты рофлишь? Что значит неправильная ссылка?

Если набрать в YouTube как купить майнкрафт, то все говорят брать Java Edition а не Bedrock, TikTok не проверял, думаю там тоже самое, когда твой любимый летсплеер (или кто там теперь?) говорит брать Java Edition, это намного круче рекламы от Microsoft, о которой вообще люди могут особо и не знать подробно.

А уж рассудительные явно выберут нормальный вариант, если у них нету причин взять именно Bedrock.

MOPKOBKA ★★★
()
Последнее исправление: MOPKOBKA (всего исправлений: 1)
Ответ на: комментарий от EXL

Вопрос то был «зачем» а не «почему».

зачем бы им тогда понадобилось делать версию движка на C++ и продавать именно её в своём магазине?

Магазин у них шарится с xbox'ом. Java версия на консолях не работает. А сама по себе завязка на магазин - это попытка откусить кусочек рынка, как в свое время с эксклюзивами.

навязываемой Microsoft’ом агрессивно посредством рекламы

Плохо навязывают, ms стор это последнее место, где я буду искать вообще что-либо, это я как закоренелый виндузятник говорю

Midael ★★★★★
()
Последнее исправление: Midael (всего исправлений: 2)
Ответ на: комментарий от vbr

Аы так говорите, как будто это проблема.

Я вот отрефакторил перл код на джава в String Builder с помощью ChatGPT.

Живой пока

LinuxFromMachine
()
Ответ на: комментарий от EXL

Не показатель. Просто разработчики Qt носятся везде со своим С++. У них прибыль только от embedded. На десктоп они давно забили, и на мобилки забили. Qt на Rust тоже, как бы есть, но так себе.

Skullnet ★★★★★
()
Последнее исправление: Skullnet (всего исправлений: 1)
Ответ на: комментарий от EXL

C++ версия исходно для смартфонов, потому что Android был слишком слабый для Minecraft Java, а на iOS приложения с байткодом вообще запрещены правилами.

И это заметно, потому что, например, в Bedrock упрощённый расчёт физики, то есть игра изначально проектировалась под минимизацию потребления ресурсов в ущерб геймплею, а не просто 1-в-1 переписывание. Плюс прошло много лет, а в Java даже без модов до сих пор больше блоков. Плюс до сих пор 90% стримеров и ютуберов играют в Java. Так что Java редакция успешнее, а C++ пользуются в специальной нише (мобилки и консоли), либо для разнообразия, когда наигрался в Java (в Bedrock есть свои уникальные механики).

KivApple ★★★★★
()
Ответ на: комментарий от perl5_guy

Новье! Серьезный энтерпрайз до сих пор на 6й сидит.

Reset ★★★★★
()
Ответ на: комментарий от Reset

Там ещё рефлексию понерфили сильно в 11 по сравнению с 8.

KivApple ★★★★★
()
Ответ на: комментарий от Yilativs

Ничего даже близко похожего на Spring или Hibernate в C++ нет.

Слава богам, что это так!

Угадай почему все хорошие IDE пишут не на C++ а на Java? :-)

vscode разве на java написан?

вся Big Data -это тоже Java

Настоящая Big Data это C++ – https://ydb.tech/, https://ytsaurus.tech/

Reset ★★★★★
()
Ответ на: комментарий от Yilativs

DBeaver

У меня есть только вот это. Ну т.е. ещё где-то IDEA валяется, но я уже несколько лет не работаю, а для себя сижу под QtCreator, и с некоторых пор поймал себя на том, что всячески избегаю запускать этот DBeaver, т.к. реально противно: по сравнению со всем остальным софтом он запускается отвратительно долго. Есть ещё sqt на плюсях – этот пулей летает, но когда (давно) я его последний раз смотрел, меня заломало разбираться, как его под себя заточить.

Впрочем, есть у меня ещё одна софтина, которая тошнотворно долго стартует, тошнотворно медленно и глючно работает, и при этом – на плюсях: QUIK. Шланг в жопу её говнокодерам.

dimgel ★★★★★
()
Последнее исправление: dimgel (всего исправлений: 1)
Ответ на: комментарий от dimgel

Проблема жава софта в жава разработчиках.

Взять тот же dbeaver. У них там целая архитектура. OSGI-модули. Естественно он будет долго запускаться, это же всемогутор.

Причём я даже не берусь их критиковать. Это успешный коммерческий продукт. Они на основе его кодовой базы сделали cloudbeaver, это тот же dbeaver, только в браузере.

Взять любую Java-библиотеку - там абстракция на абстракции.

При этом сама по себе Java не обязательно тормоз. Там есть некоторые врожденные проблемы, к примеру верификация байткода перед его выполнением, но в целом оно на не-огромных программах даже и не заметно. Нет никаких проблем написать биндинги к winapi/gtk, и тупо написать gui приложение, так же, как это кто-то делал бы на C++. Не кросс-платформенное, без абстрактного тулкита, работающего поверх универсального слоя, рисующего хоть на винде, хоть в браузере, без системы модулей, позволяющей расширять приложение до бесконечности, с XML-дескрипторами и XSD-валидацией дескрипторов. А просто взять и написать тупо приложение без выпендрёжа. И оно будет вполне себе моментально запускаться. Можно и лаунчер свой написать, так, что без ковыряния в потрохах даже и не понять, что это жава. В последних версиях можно вообще полноценный бинарник скомпилить граалем.

Но - в жаве так не принято. В жаве принято абстрагироваться от тормозов. Кек. На сервере это в принципе даже как-то работает. По крайней мере там, где время старта не существенно.

vbr ★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.