LINUX.ORG.RU

JDK 12

 , , , ,


1

2

Стала публично доступной образцовая реализация Java 12 — JDK 12. С момента выпуска сборки №33 (три недели назад) не замечено ошибок уровня P1; таким образом, она становится официальным публичным выпуском, готовым к промышленному использованию.

Сборки OpenJDK от Oracle с лицензией GPL доступны здесь. Скоро, несомненно, появятся сборки других реализаций.

В этот выпуск включено 8 предложений по улучшению (JEP):

  1. 189: Shenandoah: экспериментальный сборщик мусора с малым временем прерывания;
  2. 230: набор миниатюрных эталонных тестов.
  3. 325: switch-выражения (предварительно);
  4. 334: API констант JVM;
  5. 340: один порт на AArch64 вместо двух;
  6. 341: архив обмена данными классов (CDS) из классов по умолчанию;
  7. 344: прерываемые смешанные сборки мусора в G1;
  8. 346: быстрый возврат неиспользуемой памяти операционной системе в G1.

А также, как обычно — сотни мелких улучшений и тысячи исправлений.

>>> Источник

Ответ на: комментарий от Yilativs

В эпоху расцвета чего? ))) https://www.tiobe.com/tiobe-index/

Судя по индекусу - Visual Basic .NET !!!!

Охренеть.
Кто-то ещё меряет популярность ЯП по тиобе, который меряет шум.

web сдал позиции мобильным приложениям (читай Android) - то угадай, агонию какого языка мы наблюдаем?

Конечно же JS так как половина приложений для Андроида на нем.

А жабобыдлокодерам не стоит переживать что без работы останемся.

Ведь в корпорациях столько софта на 6й Жабе, который всенепременно проведут на 20ю Жабу.

До пенсии хватит.

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

Возможно потому, что по сути там изменений на новую мажорную версию не наберётся.
Но нынче все повелись на модные гонки мажорных версий, начатых людьми альтернативной сексуальной и социальной ориентации из Гугла.

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

Факт чего?

Я в одном проекте не смог смигрировать с java 5 на java 6 из-за https://www.oracle.com/technetwork/java/javase/compatibility-137541.html#inco....

А другой проект на java 5 собрался на java 11 без правок.

И вносил правки в третий из-за https://www.oracle.com/technetwork/java/javase/compatibility-417013.html#inco..., чтобы переехать с 6-ой на 7-ую java se.

И мне повезло, что я нигде не натолкнулся на https://www.oracle.com/technetwork/java/javase/8-compatibility-guide-2156366.....

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

В java 11 javax.annotation вынести из java se (что в некотором роде правильно). Но таком может случиться при любом релизе.

ma1uta ()
Ответ на: комментарий от anonymous

русифицировать язык программирования...

Точно. Даешь импортозамещение языков программирования! А также линухов, максов, виндусей и гуглей. Глядишь, и жизнь не даром прожил.

anonymous ()
Ответ на: комментарий от foror

Смотрел и ни один раз. Умных людей я там не наблюдаю.

«Ни один раз» значит «ни разу». «Не один раз» значит «много раз». Судя по контексту, подразумевалось последнее. Много раз заглядываться на предполагаемое дерьмо не значит быть умным.

anonymous ()
Ответ на: комментарий от ma1uta

Народ не слышит тебя. Они свято веруют, что в отличие от Питона Ява абсолютно переносима и идеальна. Два знакомых жависта до сих пор начинают все проекты на 6-ке. Потому что она всем понятна. Надо их спросить, как они будут выкручиваться.

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

Два знакомых жависта до сих пор начинают все проекты на 6-ке. Потому что она всем понятна.

Может быть, ещё и потому, что потом мигрировать на более новые версии будет легче, чем наоборот? (Ну по крайней мере, я это надеюсь, так-то я в яве мимокрокодил.)

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

Тебе не надо мигрировать 6 -> 8 -> 11, если ты будешь сразу писать под 11. Особенно сейчас, когда spring (и boot в том числе), j2ee и большая часть используемых библиотек уже мигрировали на 9+.

ma1uta ()
Ответ на: комментарий от Vudod

И тем не менее java более переносима, чем python. Всё дело в затратах переносимости, для java миграция решалась переписыванием максимум пары классов (да, да, я видел такое, что проще выкинуть, чем мигрировать, но это уже вопрос не к java, а к людям, которое это писали). А для python ты придётся переписывать кучу всего.

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

Что придётся переписывать? Валидный для 2 код валиден для 3 в 99% случаев. B до по-моему 3.4 запускается на 2.7 с six. Это сколько лет прошло? А жаба каждые 2 месяца ломает совместимость. У дотнета местами получше, но всё ещё далеко до питона.

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

Ага, каждые два месяца, учитывая, что релизы выходят раз в полгода.

То-то я смотрю, что mercurial уже смигрировали с 2.7 на 3.x (там же валиден для python 3 в 99% случаев). И twisted для миграции пришлось переписывать эти 1%, которые растянулись не на один месяц...

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

Это потому, что в Питоне слишком много возможностей. Если писать на нём, как на Яве, то при миграции внутри третей ветки ты ничего не заметишь.

Я больших проектов не писал, но обратно несовместимые проблемы у меня лезли только из сторонних модулей типа numpy, где раньше len работал как аналог фортрановского size, выдавая общее число элементов в массиве, а теперь работает по-сишному, как shape[0].

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

вот я набираю hello world, потом javac hello.java получается hello.class. так вот «node hello.js» отрабатывает моментально а «java hello» с заметной задержкой. ваша тормоджава тормознутее джаваскрипта даже.

iluha16 ()
Ответ на: комментарий от iluha16
➜ time java App
hello world
java App  0.06s user 0.02s system 117% cpu 0.068 total
➜ time node app.js
Hello
node app.js  0.07s user 0.02s system 96% cpu 0.084 total
➜ java -version
openjdk version "12" 2019-03-19
OpenJDK Runtime Environment Zulu12.1+3-CA (build 12+33)
OpenJDK 64-Bit Server VM Zulu12.1+3-CA (build 12+33, mixed mode, sharing)
➜ node -v
v11.12.0
slyjoeh ★★ ()
Ответ на: комментарий от Vudod

Вот только полной реализации Алгола 68 так и не появилось.

Когда в товарищах согласья нет
На лад их дело не пойдет.
И выйдет из него не дело - только мука,
Однажды, Лебедь, Рак и Щука
Задумали переписать Алгол...
LongLiveUbuntu ★★★★★ ()
Последнее исправление: LongLiveUbuntu (всего исправлений: 1)
Ответ на: комментарий от LongLiveUbuntu

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

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

Не очень ясно как связана разрядность с аппаратными возможностями конкретного ядра. Cortex-M0 как бы тоже arm32, только на нем не поднимешь даже голое ядро linux, потому что оно опирается на определенные аппаратные средства, которых у данного ядра нет (вроде MPU с виртуальной памятью). Поэтому то что jdk 9 поддерживает arm32 это то же самое что сказать что некий софт работает на смартфоне, не уточнив на кокой ос и какой версии.

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

И говорят ява, подразумевают кривожопый спринг, ага. А потом веб сервис все равно тормозит, потому что в итоге он просто делает запросы в БД через 5 слоев абстракции и где-то в районе 3-го кто то вставил foreach, в котором 1000 записей через хибернейт тащится по одной.

Лучше б на пхп писали...

vitalif ★★★★ ()

Кстати таки да, C# как язык поприличнее джаббы. По крайней мере, выразительнее и не нужно г@вно типа спринга, чтобы хоть как то выразительности добавлять

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

Ява подразумевает среду выполнения и не более. А если люди пытаются лепить распределенные микросервисы на стеке времен win98, то это ФГМ в последней стадии, и характеризует только данных товарищей а не платформу в целом. Вот кстати из-за таких вот вещей вроде спринга и страдает ее репутация...

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

В любой иде выставляешь компилятором 11lts а уровнем языка 8 - полный профит - иде следит чтоб пользовался только доступное в 8ке а при сборке проверяется работоспособность на последнем рабочем lts релизе. Для поделок можно и 12ой собирать но нафига если 13 на подходе

anonymous ()