URL: https://www.opennet.dev/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 116871
[ Назад ]

Исходное сообщение
"Компания Oracle опубликовала Java SE 12"

Отправлено opennews , 20-Мрт-19 10:39 
После шести месяцев разработки компания Oracle выпустила (http://mail.openjdk.java.net/pipermail/announce/2019-March/0...) платформу Java SE 12 (http://www.oracle.com/technetwork/java/javase/downloads/inde...) (Java Platform, Standard Edition 12), в качестве эталонной реализации которой используется открытый проект OpenJDK. В Java SE 12 сохранена  обратная совместимость с прошлыми выпусками платформы Java, все ранее написанные Java-проекты без изменений будут работоспособны при запуске под управлением новой версии.  Готовые для установки сборки Java SE 12 (JDK, JRE и Server JRE) подготовлены (http://jdk.java.net/12) для Linux (x86_64), Solaris (SPARC), Windows и macOS. Разработанная в рамках проекта OpenJDK эталонная реализация Java 12 (http://openjdk.java.net/projects/jdk/12/) полностью открыта под лицензией GPLv2 с исключениями GNU ClassPath, разрешающими динамическое связывание с коммерческими продуктами.

Java SE 12 отнесён к категории выпусков с обычным сроком поддержки,  обновления для которого будут выпускаться до следующего релиза. В качестве ветки с длительным сроком поддержки (LTS) следует использовать Java SE 11,  обновления для которого будут выпускаться до 2026 года. Прошлая LTS-ветка Java 8 будет поддерживаться до декабря 2020 года. Следующий LTS-релиз намечен на сентябрь 2021 года. Напомним, что начиная с  выпуска Java 10 проект перешёл на новый процесс разработки, подразумевающий более  короткий цикл формирования новых релизов. Новая функциональность теперь развивается в одной постоянно обновляемой master-ветке, в которую включаются уже готовые изменения и от которой раз в шесть месяцев ответвляются ветки для стабилизации новых выпусков.


Из новшеств (http://openjdk.java.net/projects/jdk/12/) Java 12 (https://www.oracle.com/technetwork/java/javase/12-relnote-is...) можно отметить (https://jdk.java.net/12/release-notes#newfeatures):

-  Добавлена (http://openjdk.java.net/jeps/189) экспериментальная поддержка сборщика мусора Shenandoah (http://openjdk.java.net/projects/shenandoah/), работающего с минимальными приостановками (Low-Pause-Time Garbage Collector). Планировщик развивается компанией Red Hat и примечателен использованием алгоритма,  сокращающего время остановок во время сборки мусора за счёт проведения чистки параллельно с выполнением  Java-приложений. Размер вносимых сборщиком мусора задержек предсказуем и не зависит от размера кучи, т.е. для куч в 200 MB и 200 GB задержки будут идентичны (не выходят (https://wiki.openjdk.java.net/display/shenandoah/Main) за пределы 50 мс  и обычно укладываются в 10 мс);

-  В состав включён (http://openjdk.java.net/jeps/230) набор для проведения точечных тестов производительности (microbenchmark), позволяющий организовать непрерывное тестирование производительности различных компонентов кодовой базы и упрощающий добавление собственных тестов;

-  Обеспечена (http://openjdk.java.net/jeps/325) предварительная поддержка новой формы выражений "switch", не требующей использования оператора "break" и позволяющей объединять повторяющиеся метки. Например, вместо

   switch (day1) {
       case MONDAY:
       case FRIDAY:
       case SUNDAY:
           System.out.println(6);
           break;
   ...
   int numLetters;
   switch (day2) {
       case MONDAY:
       case FRIDAY:
       case SUNDAY:
           numLetters = 6;
           break;
   ...

новые выражения позволяют указать

   switch (day1) {
       case MONDAY, FRIDAY, SUNDAY -> System.out.println(6);
   ...
   int numLetters = switch (day2) {
    case MONDAY, FRIDAY, SUNDAY -> 6;
   ...

-  Представлен API JVM Constants (http://openjdk.java.net/jeps/334) (java.lang.invoke.constant), позволяющий описать все типы загружаемых констант, используемых в файлах с Java-классами и в компонентах runtime;

-  Предложен один унифицированный порт для архитектуры AArch64 (ранее развивалось два порта aarch64 и arm64, теперь оставлен только порт aarch64);
-  По умолчанию на основе предлагаемого по умолчанию списка классов в процессе сборки JDK обеспечена (http://openjdk.java.net/jeps/341) генерация архивов  CDS (Class-Data Sharing), обеспечивающих совместный доступ приложений к общим классам. При помощи CDS общие классы могут размещаться в отдельном совместно используемом архиве, что позволяет ускорить запуск приложений и снизить накладные расходы. Предоставление архивов CDS сокращает время запуска и позволяет избавить пользователей от выполнения "-Xshare:dump" для создания CDS;

-  В сборщик мусора G1 добавлена поддержка отменяемой (http://openjdk.java.net/jeps/344) чистки смешанных коллекций (Abortable Mixed Collections), позволяющая оборвать процесс необязательной стадии чистки, если превышено максимальное время приостановки на сборку мусора;

-   В сборщике мусора G1 реализована (http://openjdk.java.net/jeps/346) возможность возвращения операционной системе неиспользуемых областей памяти при неактивности приложения.


URL: http://mail.openjdk.java.net/pipermail/announce/2019-March/0...
Новость: https://www.opennet.dev/opennews/art.shtml?num=50356


Содержание

Сообщения в этом обсуждении
"Компания Oracle опубликовала Java SE 12"
Отправлено Аноним , 20-Мрт-19 10:40 
Что то мне этот switch напоминает... Где же они его идею позаимствовали...

"Компания Oracle опубликовала Java SE 12"
Отправлено Попугай Кеша , 20-Мрт-19 10:43 
Ха-ха! Инновации...

"Компания Oracle опубликовала Java SE 12"
Отправлено Аноним , 20-Мрт-19 10:47 
Именно, с учетом того что прошло уеву тучу лет с момента появления такого синтаксиса)

"Компания Oracle опубликовала Java SE 12"
Отправлено Дядя , 20-Мрт-19 13:05 
жаберам ссышь в глаза - всё божья роса

"Компания Oracle опубликовала Java SE 12"
Отправлено йййй , 20-Мрт-19 11:17 
Для общего развития - а откуда?

"Компания Oracle опубликовала Java SE 12"
Отправлено Oleg Khlystov , 20-Мрт-19 11:32 
из kotlin

"Компания Oracle опубликовала Java SE 12"
Отправлено max , 20-Мрт-19 11:41 
это фиаско :-/

"Компания Oracle опубликовала Java SE 12"
Отправлено анон , 20-Мрт-19 18:21 
это нормально когда язык развивается и наполняется новыми улучшениями. Ждем := сахарок

"Компания Oracle опубликовала Java SE 12"
Отправлено Илья , 20-Мрт-19 20:29 
Таким образом в c# напихали огромную кучу не всем нужного синтаксиса.
Например геттер можно написать 4 разными способами:
int GetAge() {return _age; };
int GetAge() =>_age;
int GetAge { get { return _age; } }
int GetAge =>_age;

Встроили linq с sql подобным синтаксисом:
var query = from word in words  
            group word.ToUpper() by word.Length into gr  
            orderby gr.Key  
            select new { Length = gr.Key, Words = gr };  

Когда все пользуются простыми цепочками методов:
var query2 = words.GroupBy(w => w.Length, w => w.ToUpper()).  
    Select(g => new { Length = g.Key, Words = g }).  
    OrderBy(o => o.Length);  

Попытались сделать жалкую породию Pattern Matching.

Короче, пытаются реализовать в языке все современные фишки. А джава в этом плане просто неторопясь собирает проверенные временем решения.


"Компания Oracle опубликовала Java SE 12"
Отправлено Онаним , 21-Мрт-19 09:06 
> Например геттер можно написать 4 разными способами:
> int GetAge() {return _age; };
> int GetAge() =>_age;
> int GetAge { get { return _age; } }
> int GetAge =>_age;

Только первые два - это методы, а собственно геттеры - последние два (полная и упрощенная записи). Два способа - не так уж много для запоминания.

> Встроили linq с sql подобным синтаксисом:

Когда был жив Linq-to-SQL, было по-своему удобно. Но в целом да, не особо оправданная фича.

> А джава в этом плане просто неторопясь собирает проверенные временем решения.

Ключевое слово - "не торопясь" ) Сколько лет джаве потребовалось, чтобы реализовать свой Linq под названием Stream API? И получилось как-то так себе (спасибо кривой реализации дженериков).


"Компания Oracle опубликовала Java SE 12"
Отправлено Илья , 21-Мрт-19 23:04 
> Два способа - не так уж много для запоминания.

Зато это отличное подспорье для вкусовщины, которой хотелось бы вообще не видеть


"Компания Oracle опубликовала Java SE 12"
Отправлено НяшМяш , 20-Мрт-19 19:25 
Из JavaScript же )

"Компания Oracle опубликовала Java SE 12"
Отправлено user124 , 21-Мрт-19 01:54 
Может наоборот, бесполезный kotlin позаимствовал многое из java?

"Компания Oracle опубликовала Java SE 12"
Отправлено Аноним , 20-Мрт-19 12:12 
Большинство фич приходит в жаву из скалы. Это второй по популярности жвм язык после самой жавы. Которому внезапно уже 15 лет от роду.

"Компания Oracle опубликовала Java SE 12"
Отправлено Аноним , 20-Мрт-19 13:56 
Уже третий

"Компания Oracle опубликовала Java SE 12"
Отправлено Аноним , 20-Мрт-19 19:39 
Попрошу заметить, что Скала уже прекратила развитие. А новая компания Одерского не выпустила ни одного релиза с момента прекращения существования предыдущей компании.

"Компания Oracle опубликовала Java SE 12"
Отправлено Борщдрайвен бигдата , 20-Мрт-19 22:52 
https://github.com/scala/scala/pulse/monthly
https://www.scala-lang.org/events/
https://github.com/scala/scala/releases
https://contributors.scala-lang.org/
http://dotty.epfl.ch/

"Компания Oracle опубликовала Java SE 12"
Отправлено Аноним , 20-Мрт-19 23:14 
И что?


Scala 2.12.0
@adriaanm adriaanm released this on Nov 3, 2016


С тех пор даже 2.13 не вышла. Прошло 3 года.


"Компания Oracle опубликовала Java SE 12"
Отправлено Junior frontend developer , 23-Мрт-19 07:08 
Что вы несете? 2.13 на подходе и третья готовится

"Компания Oracle опубликовала Java SE 12"
Отправлено Аноним , 23-Мрт-19 09:22 
> 2.13 на подходе

уже 3 года....

> третья готовится

И, скорее всего, в состоянии готовки и останется.....

> Что вы несете?

Факты и ничего личного. Новая компания Одерского была создана под обслуживания корпоративных клиентов на Java. Предыдущая - занималась развитием Scala. Вот и вся разница. В настоящее время Scala - не более чем закрытый академический проект без реальной коммерческой поддержки, с проблемами миграции на JDK12.


"Компания Oracle опубликовала Java SE 12"
Отправлено shjfbg , 20-Мрт-19 12:42 
https://doc.rust-lang.org/book/match.html

"Компания Oracle опубликовала Java SE 12"
Отправлено YetAnotherOnanym , 20-Мрт-19 14:36 
Наверное, синтаксис гардов где-то подсмотрел.

"Компания Oracle опубликовала Java SE 12"
Отправлено пгуыыцрщ , 20-Мрт-19 11:55 
Это больше похоже на внедрение аргументов в защиту от миграции на котлин (что происходит массово). "Зачем котлин, если эти фичи есть в ява?"

Только не взлетит, ибо сахара в котлине гораздо больше, а все фичи из него запилить неполучится.


"Компания Oracle опубликовала Java SE 12"
Отправлено Jh , 20-Мрт-19 14:38 
а тот вообще из Си позаимствовали. какой ужас

"Компания Oracle опубликовала Java SE 12"
Отправлено Аноним84701 , 20-Мрт-19 16:16 
> а тот вообще из Си позаимствовали. какой ужас

Учитывая, что тот же паскалевский намного меньше напоминал "таблицу прыжков":


   CASE foo of
       -1: bar:=0;
      0..99 : bar:=50;
      100..999 : bar:=100;
      ELSE bar:=150;
   END;

действительно ужас.


"Компания Oracle опубликовала Java SE 12"
Отправлено Аноним , 20-Мрт-19 15:26 
Неужели из C?

"Компания Oracle опубликовала Java SE 12"
Отправлено Аноним , 20-Мрт-19 10:45 
опять занялись ненужными улучшениями!!

алиасы на название типов (и генериков) - когда?

юникс-сокеты (именованные каналы, если windows) -- когда? я как должен писать две программы общающиеся друг с дружкой -- через СЕТЕВЫЕ сокеты (на ::1) чтоль гонять данные от одной ко второй?

обработка юникс-сигналов -- когда?

общая память и общие системные очереди между разными процессами -- когда?

как мне вообще писать на ява, если оно ничего не умеет? на jni чтоль половину кода писать?

яже не прошу чего-то неординарного типа возможность компилирования и загрузки ebpf-фрагментов в ядро!! я же про базовые вещи


"Компания Oracle опубликовала Java SE 12"
Отправлено Я , 20-Мрт-19 10:59 
А какие альтернативы? Питон -- не умеет в многопоточность, кресты -- стрельба по ногам, новомодные штуки типа go или js вообще ад.

"Компания Oracle опубликовала Java SE 12"
Отправлено имя , 20-Мрт-19 11:16 
а что не так с Go ?

"Компания Oracle опубликовала Java SE 12"
Отправлено Я , 20-Мрт-19 11:30 
А что там? Область применения неясна, спроса на него ирл я не видел, как и крупных проектов на нём.

"Компания Oracle опубликовала Java SE 12"
Отправлено Лапчатый девляпс бубунтёнак , 20-Мрт-19 11:43 
> Область применения неясна, спроса на него ирл я не видел, как и крупных проектов на нём.

Ой! Ты меня таки смог удивить.


"Компания Oracle опубликовала Java SE 12"
Отправлено Djam , 20-Мрт-19 11:44 
k8s например, ну очень маленький малыш....

"Компания Oracle опубликовала Java SE 12"
Отправлено Я , 20-Мрт-19 19:41 
Нишевый серверный проект можно хоть на асме написать. В то время как пишут один кубернетес, пишется пара тысяч джава-проектов.

Вот syncthing -- более живой пример, но у него благодаря go куча проблем -- то они не могли с inotify нормально работать, то адовые тормоза при передаче (не процессора, а просто скорость намного ниже реального соединения).


"Компания Oracle опубликовала Java SE 12"
Отправлено лалик , 20-Мрт-19 15:32 
ну есть там один такой маленький, Docker

"Компания Oracle опубликовала Java SE 12"
Отправлено Александр Сербул , 20-Мрт-19 21:54 
InfluxDB не маленькая

"Компания Oracle опубликовала Java SE 12"
Отправлено Аноним , 21-Мрт-19 00:33 
Область применения сервер приложений для API. Спрос есть в развитых компаниях где у руля стоят технические специалисты, а не менеджер с курсов менеджера. Крупные проекты начиная от всяких DigitalOcean закансичвая российским Ozon.

"Компания Oracle опубликовала Java SE 12"
Отправлено InuYasha , 20-Мрт-19 12:08 
А что не так с Си++? Рукопопие в 21ом веке же излечимо.

"Компания Oracle опубликовала Java SE 12"
Отправлено Аноним , 21-Мрт-19 00:35 
Менеджера пакетов и системы сборок штатной нет, а так нормальный такой язык.
Хотя вроде претендует сейчас Конан и СиМайк, но опять таки половина так половина сяк половина под линух половина под венду.

"Компания Oracle опубликовала Java SE 12"
Отправлено НяшМяш , 20-Мрт-19 19:27 
> новомодные штуки типа ... js

простите, посмеялся


"Компания Oracle опубликовала Java SE 12"
Отправлено receipt , 20-Мрт-19 11:14 
"алиасы на название типов (и генериков) - когда?" - а разве можно добавить алиас на дженерике при стирании? Или вам не нужна обратная совместимость?

"общая память и общие системные очереди между разными процессами -- когда?" - java не на столько низкоуровневый язык.


"Компания Oracle опубликовала Java SE 12"
Отправлено onekosha , 20-Мрт-19 11:16 
Смотрел новый стандарт С++. "опять занялись ненужными улучшениями!!" Сборщика мусора нет. Когда? Свойств нет. Когда? Сравнение с образцом нет. Когда? Диапазоны? ...

Выше был тролинг. (По функционалу С++ могу ошибаться, не пользуюсь). Язык программирования подбирается под конкретно рещаемую задачу. Если таких нужных Вам вещей нет в Java, может поискать другой язык, где это есть, и реализовать задачу.


"Компания Oracle опубликовала Java SE 12"
Отправлено Урри , 20-Мрт-19 11:54 
Вы путаете библиотеки, фичи и синтаксический сахар. Если меня, например, задолбало писать тонну текста, заворачивая переменные в геттеры/сеттеры (на самом деле уже нет, я написал свой транслятор) и я хочу эту фичу в языке - почему надо искать другой язык, вместо улучшения этого?

"Компания Oracle опубликовала Java SE 12"
Отправлено лютый жабист___ , 20-Мрт-19 13:00 
>юникс-сокеты (именованные каналы, если windows) -- когда? я как должен писать две программы общающиеся друг с дружкой -- через СЕТЕВЫЕ сокеты (на ::1) чтоль гонять данные от одной ко второй?

сколько лет JNDI ? Странно, что ты про это не слышал.

>как мне вообще писать на ява, если оно ничего не умеет?

Не пиши.


"Компания Oracle опубликовала Java SE 12"
Отправлено Аноним , 20-Мрт-19 14:07 
> я как должен писать две программы общающиеся друг с дружкой -- через СЕТЕВЫЕ сокеты (на ::1) чтоль гонять данные от одной ко второй?

loopback-интерфейс в ядре давно работает через memcpy


"Компания Oracle опубликовала Java SE 12"
Отправлено Xasd5 , 21-Мрт-19 01:05 
а setfacl как делать на этот твой localhost?

или ты один из тех кто решает все проблемы в линуксе через sudo chmod 777 ? :-)


"Компания Oracle опубликовала Java SE 12"
Отправлено YetAnotherOnanym , 20-Мрт-19 14:34 
> общая память и общие системные очереди между разными процессами -- когда?

Джо Армстронг смотрит на тебя с любопытством и сочувствием.


"Компания Oracle опубликовала Java SE 12"
Отправлено Аноним , 20-Мрт-19 15:18 
Успешно общался по юникс сокетам при помощи netty. А так да, Ява позиционирует себя как кроссплатформенную платформу (извиняюсь за каламбур), поэтому юникс сокетов в Ява se нет

"Компания Oracle опубликовала Java SE 12"
Отправлено X4asd , 20-Мрт-19 20:34 
> Ява позиционирует себя как кроссплатформенную платформу (извиняюсь за каламбур), поэтому юникс сокетов в Ява se нет

и что не так с кросплатформенностью юникс-сокетов?

юникс-сокеты существуют ВО ВСЕХ платформах (кроме DOS/Windows). unix-сокеты охренительно кросплатформенны.

а вот тебе пример с уже существующими решениями связаными с DOS/Windows : https://docs.oracle.com/javase/8/docs/api/java/nio/file/attr... -- PosixFilePermissions выбрасывают ошибку на DOS/Windows, а почему точно также нельзя было сделать для unix-сокетов?


"Компания Oracle опубликовала Java SE 12"
Отправлено Аноним , 21-Мрт-19 00:38 
Слушайте напишите для себя один раз расширение работающее через UNIX сокеты и радуйтесь, а для Windows платформы найдите там специалиста по mailbox или pipe помоему так она там называлась и будет вам кросплатформенная абстракция. Для отладки можете взять какую-нибудь TCP реализацию на случай когда все пойдет не так. А вообще не пойму у вас с производительностью уперлось все уже? Масштабировались с самого начала или нет?

"Компания Oracle опубликовала Java SE 12"
Отправлено Илья , 20-Мрт-19 20:40 
> общая память и общие системные очереди между разными процессами -- когда?

Вы просто наверное не поняли еще, что процессы не должны шарить между собой память


"Компания Oracle опубликовала Java SE 12"
Отправлено Аноним , 20-Мрт-19 23:14 
Обработка сигналов есть в jvm около 20 лет, можете не ждать.
Для unix сокетов вы можете воспользоваться сторонней библиотекой
что такое системные очереди не знаю, возможно тоже доступно как и 2 предыдущих.

"Компания Oracle опубликовала Java SE 12"
Отправлено iZEN , 22-Мрт-19 09:08 
В Java для межпроцессного взаимодействия лет двадцать существует RMI/JRMP.

"Компания Oracle опубликовала Java SE 12"
Отправлено lsh , 20-Мрт-19 11:16 
Складывается впечатление, в Java в качестве улучшений языка в основную ветку попадают весьма странные вещи. Мне пока неизвестно, почему именно switch удостоился такого внимания, особенно в таком странном стрелочном синтаксисе вместо двоеточия, поэтому с JEP-ом ознакомлюсь позже. Кроме того, почему бы не добавить в язык реально более нужные вещи как async/await поверх CompletableFuture; генераторы вместо вручную зубодробительных Iterator и, может, Stream + если развить тему дальше, то и для InputStream/OutputStream/Reader/Writer; получение полноценной информации о типе (а не о загруженном классе); method-refs в текущем классе с помощью какого-нибудь class::doSomething, а не SomeLongVerboseClassName::doSomething; именованные параметры, чтобы избавиться от ненужных билдеров; неявная автогенерация кода для декораторов вместо тонн методов в абстрактных ForwardingClass; for-else и т.д. и т.п.

"Компания Oracle опубликовала Java SE 12"
Отправлено Я , 20-Мрт-19 11:33 
Возможно, объём работ. Тебе дают по плану 2 месяца и говорят -- выбирай фичу. А в этот период влазит только свич, ну или брать генераторы и сделать релиз в 3 раза позже.

"Компания Oracle опубликовала Java SE 12"
Отправлено max , 20-Мрт-19 11:40 
Долго расписывать не хочется, но приведу пару примеров. Async/Await не вводят, потому что планируют Fiber, который является более мощным инструментом -> смотрим проект Loom. По поводу switch и стрелок... это preview, детали -> смотрим проект Amber. Автогенерация кода (я так понимаю, getters/setters/hashCode/equals/toString) может не понадобится в виде a-la lombok -> смотрим проект Valhalla.
В итоге: если действительно интересно, то надо потратить немного времени на интернеты, многие вопросы не возникнут. Советую доклады JDK Language Summit.

"Компания Oracle опубликовала Java SE 12"
Отправлено Илья , 20-Мрт-19 20:58 
> именованные параметры, чтобы избавиться от ненужных билдеров

именованные параметры не помогут избавиться от билдеров.


"Компания Oracle опубликовала Java SE 12"
Отправлено Аноним , 20-Мрт-19 11:48 
> вместо 1000 может быть выведено "1K", а вместо 1000000 - "1M"

Ну наконец-то. Все же на дворе 2к19, как-никак.


"Компания Oracle опубликовала Java SE 12"
Отправлено microcoder , 20-Мрт-19 14:48 
> Все же на дворе 2к19

Что Вас заставляет писать 'k' вместо 0? Какие приемущества, что это даёт?


"Компания Oracle опубликовала Java SE 12"
Отправлено zomg , 20-Мрт-19 16:23 
кнопка k находится на home row при слепом наборе. удобнее набирать =)
ну и, конечно, 2 килогода звучит лучше, чем 2 тысячи лет. очевидно.

"Компания Oracle опубликовала Java SE 12"
Отправлено Andrey Mitrofanov , 20-Мрт-19 16:27 
> кнопка k находится на home row при слепом наборе. удобнее набирать =)

MMXIX !   Чтоб сифири не мешали.

> ну и, конечно, 2 килогода звучит лучше, чем 2 тысячи лет. очевидно.


"Компания Oracle опубликовала Java SE 12"
Отправлено Аноним , 20-Мрт-19 19:41 
2к года - это 2048 лет?

"Компания Oracle опубликовала Java SE 12"
Отправлено Аноним , 20-Мрт-19 16:51 
2к19 = 2019

"Компания Oracle опубликовала Java SE 12"
Отправлено Аноним , 20-Мрт-19 16:52 
edit:
2к19 = 2190

"Компания Oracle опубликовала Java SE 12"
Отправлено Аноним , 20-Мрт-19 11:48 
Смерть GO   - они так гордились своим GC

"Компания Oracle опубликовала Java SE 12"
Отправлено анон , 20-Мрт-19 18:25 
Вот это наброс! Браво.

"Компания Oracle опубликовала Java SE 12"
Отправлено leap42 , 21-Мрт-19 05:40 
Гошный gc какбе в 10-100 раз быстрее НОВОГО gc Java. Там есть чем гордиться.

"Компания Oracle опубликовала Java SE 12"
Отправлено Шерстяной , 21-Мрт-19 09:31 
http://gchandbook.org/
Мальчик, почитай умных дяденек, чтобы не позориться, неся ахинею про то, в чеи не разбираешься.

"Компания Oracle опубликовала Java SE 12"
Отправлено leap42 , 22-Мрт-19 05:23 
> http://gchandbook.org/
> Мальчик, почитай умных дяденек, чтобы не позориться, неся ахинею про то, в
> чеи не разбираешься.

по существу то есть что сказать? что я должен узнать из книжки 2011 года, когда нормальных GC ещё не существовало? средняя остановка GOGC измеряется микросекундами и она почти всегды быстрее одной милисекунды.

почитайте лучше как развивался GOGC после выхода вашей брошюрки:

https://blog.golang.org/ismmkeynote


"Компания Oracle опубликовала Java SE 12"
Отправлено лютый жабист___ , 22-Мрт-19 08:45 
>по существу то есть что сказать?

Проблемы нет сделать pauseless GC. Просто он будет съедать неадекватно много производительности и ОЗУ. Его вообще-то уже сделали, Azul называется.

Гошному ГЦ до жабкиного как до луны... в чём плюс жабки, для неинтерактивного приложения можно взять самый дубовый параллельный, он иногда будет STWшить минутами, но итоговые ресурсы, потраченные на ГЦ будут супернизкими. Для критичного к задержкам софта можно выбрать другой ГЦ.

А в ГО, как понимаю, гвоздями прибит один ГЦ, который ест до 80% проца и до 200% ОЗУ (от активной кучи). Ну его такого на....


"Компания Oracle опубликовала Java SE 12"
Отправлено leap42 , 22-Мрт-19 10:34 
за Azul спасибо, не знал, аж интересно стало

> А в ГО, как понимаю, гвоздями прибит один ГЦ, который ест до 80% проца и до 200% ОЗУ (от активной кучи). Ну его такого на....

мимо

https://golang.org/pkg/runtime
The GOGC variable sets the initial garbage collection target percentage. A collection is triggered when the ratio of freshly allocated data to live data remaining after the previous collection reaches this percentage. The default is GOGC=100. Setting GOGC=off disables the garbage collector entirely. The runtime/debug package's SetGCPercent function allows changing this percentage at run time. See https://golang.org/pkg/runtime/debug/#SetGCPercent.

https://benchmarksgame-team.pages.debian.net/benchmarksgame/...


"Компания Oracle опубликовала Java SE 12"
Отправлено лютый жабист__ , 22-Мрт-19 17:37 
>The GOGC variable sets the initial garbage collection target percentage

Ну причём тут это? В жабке штук 5 совершенно разных ГЦ со своими фичами и достоинствами. У всех есть по десятку крутилкок в духе "sets the initial garbage collection target percentage" и многого другого.

ГОшный ГЦ вроде как имеет дизайн УСТАРЕВШЕГО жабиного CMS (concurrent mark sweep), с отключенным STW. Жабин CMS делает долгий STW только когда совсем плохо, а ГО видимо говорит кря и жрёт оперативу и проц.

Бисер надоело метать... Безпаузовый ГЦ в 95% случаев не нужен. Например у сервера приложений wildfly вообще параллельный ГЦ по дефолту и никаких пауз никогда не замечал.


"Компания Oracle опубликовала Java SE 12"
Отправлено _ , 23-Мрт-19 05:23 
>Ну причём тут это? В жабке штук 5 совершенно разных ГЦ со своими фичами и достоинствами.

И все как один - лютое оно! :) Ни один не позволяет не отжирать жаве все корки и всю память + весь своп. А если залимитить, то на пистоне быстрее всё посчитается :)

А гошники - молодца, оно конечно гуголь подкидывал баблишка и спецов, но гЫцЫ сделали - конфетка!


"Компания Oracle опубликовала Java SE 12"
Отправлено лютый жабист__ , 23-Мрт-19 12:20 
>Ни один не позволяет не отжирать жаве все корки и всю память + весь своп

в из ж высунь


"Компания Oracle опубликовала Java SE 12"
Отправлено анонн , 22-Мрт-19 17:27 
>> http://gchandbook.org/
>> Мальчик, почитай умных дяденек, чтобы не позориться, неся ахинею про то, в
>> чеи не разбираешься.
> что я должен узнать из книжки
> 2011 года, когда нормальных GC ещё не существовало?

Деревянные были, на перфокартах, в то седой древности?


"Компания Oracle опубликовала Java SE 12"
Отправлено лютый жабист___ , 21-Мрт-19 11:32 
>Гошный gc какбе в 10-100 раз быстрее НОВОГО gc Java

Быстрее Epsilon GC в 100 раз? ))))

Вообще, в GO какой-то недоGC, деталей помню. Поэтому хоть в 1000 раз пусть будет быстрее.


"Компания Oracle опубликовала Java SE 12"
Отправлено _ , 23-Мрт-19 05:36 
>Вообще, в GO какой-то недоGC, деталей помню. Поэтому хоть в 1000 раз пусть будет быстрее.

Да просто ты понимаешь что жаба - всио! :-) Вот тебя и пучит. А GC гошники сделали весьма недурственный. Хотя какие в дупу гошники - гугель его сделал, ГУ-ГЕЛЬ! Для себя ... ну и нам перепало :)


"Компания Oracle опубликовала Java SE 12"
Отправлено Урри , 20-Мрт-19 11:52 
> все ранее написанные Java-проекты без изменений будут работоспособны при запуске под управлением новой версии

У меня gradle сломался.


"Компания Oracle опубликовала Java SE 12"
Отправлено Anonim , 20-Мрт-19 12:00 
Да он вообще вещь в себе. Сам сломался, сам костылей наставлял, сам заработал...

"Компания Oracle опубликовала Java SE 12"
Отправлено Аноним , 20-Мрт-19 12:02 
LTS не бывает в отрыве от вендора, а он в статье не указан. Лтс в сертифицированной жаве забесплатно собирается предоставлять только Амазон. Остальные вендоры - только за деньги. И у них собственные лтсы, не бывает просто "java lts". Опенждк в линуксах это несертифицированная жава, на свой страх и риск, независимо от лтсов.

"Компания Oracle опубликовала Java SE 12"
Отправлено Xasd5 , 21-Мрт-19 01:02 
> Опенждк в линуксах это несертифицированная жава

которая работает лучше чем сертифицированная -- особенно когда дело касается работы с графикой/шрифтами и как следствие динамической линковкой с новой порцией lib*.so :-)


"Компания Oracle опубликовала Java SE 12"
Отправлено Аноним , 21-Мрт-19 02:08 
> несертифицированная жава, на свой страх и риск

какой ужас


"Компания Oracle опубликовала Java SE 12"
Отправлено InuYasha , 20-Мрт-19 12:10 
Похоже, что люди вконец разучились соображать, что же, всё-таки, хорошо, а что - плохо. (

"Компания Oracle опубликовала Java SE 12"
Отправлено YetAnotherOnanym , 20-Мрт-19 14:47 
Осмелюсь высказать крамольное предположение, что люди - разные. Кому поп, кому попадья, а кому попова дочка. Кому арбуз, а кому свиной хрящик. И так далее. Что один считает остро-насущно необходимым, то другому - эталонно-ненужное ненужно.

"Компания Oracle опубликовала Java SE 12"
Отправлено Аноним , 20-Мрт-19 15:50 
Ну так заработай теперь на своей уникальности.

"Компания Oracle опубликовала Java SE 12"
Отправлено Аноним , 20-Мрт-19 14:25 
Привет, а async/await уже реализован в Java?

"Компания Oracle опубликовала Java SE 12"
Отправлено Аноним , 20-Мрт-19 15:50 
Нет потому что асинк авейт не нужен.

"Компания Oracle опубликовала Java SE 12"
Отправлено Аноним , 20-Мрт-19 17:01 
Корутины для жавы существуют как стороняя либа. Ну а в целом жава не нужна—есть котлин. В ещё более целом и котлин не нужен—есть раст.

"Компания Oracle опубликовала Java SE 12"
Отправлено анон , 20-Мрт-19 18:26 
И раст тоже не нужен поскольку есть Golang)

"Компания Oracle опубликовала Java SE 12"
Отправлено Аноним , 20-Мрт-19 21:19 
И все они не нужны, ибо есть божественный C.

"Компания Oracle опубликовала Java SE 12"
Отправлено Аноним , 21-Мрт-19 02:39 
Голанг — это который по дизайну языка застрял в 1960-ых? Не смешите.

"Компания Oracle опубликовала Java SE 12"
Отправлено Dmitry77 , 22-Мрт-19 08:27 
зато быстрый. как будто запускаешь программы 60-х на современном железе

"Компания Oracle опубликовала Java SE 12"
Отправлено Аноним , 21-Мрт-19 11:55 
Сравниваем количество написанного на Java/Kotlin (hint: Android) с растом и понимаем что нужно, а что - нет.

"Компания Oracle опубликовала Java SE 12"
Отправлено Попугай Кеша , 20-Мрт-19 16:05 
Чем оно лучше Clojure/Kotlin/Scala?

"Компания Oracle опубликовала Java SE 12"
Отправлено Аноним , 20-Мрт-19 19:45 
При всей странности вопроса, интересно, а запустятся ли на ней скала-продукты? Есть подозрение, что разработчики Скалы окончательно на неё забили. Про Clojure/Kotlin сомнений нет. Работоспособность обеспечат.

"Компания Oracle опубликовала Java SE 12"
Отправлено Попугай Кеша , 21-Мрт-19 09:41 
А что не так со Scala?

"Компания Oracle опубликовала Java SE 12"
Отправлено Аноним , 21-Мрт-19 11:22 
> А что не так со Scala?

Отмирает. А так - всё ок. Продукты, которые на Скале написаны, не могут сейчас быть запущены на JDK 12.


"Компания Oracle опубликовала Java SE 12"
Отправлено Попугай Кеша , 21-Мрт-19 17:23 
Не знал, спасибо. Я тогда уж Clojure для себя )

"Компания Oracle опубликовала Java SE 12"
Отправлено Andrey Mitrofanov , 22-Мрт-19 11:18 
> Не знал, спасибо. Я тогда уж Clojure для себя )

Осторожнее https://gist.github.com/richhickey/1563cddea1002958f96e7ba95... там.


"Компания Oracle опубликовала Java SE 12"
Отправлено Попугай Кеша , 22-Мрт-19 15:12 
>> Не знал, спасибо. Я тогда уж Clojure для себя )
> Осторожнее https://gist.github.com/richhickey/1563cddea1002958f96e7ba95...
> там.

Спасибо. Прочтем


"Компания Oracle опубликовала Java SE 12"
Отправлено Попугай Кеша , 22-Мрт-19 15:16 
>> Не знал, спасибо. Я тогда уж Clojure для себя )
> Осторожнее https://gist.github.com/richhickey/1563cddea1002958f96e7ba95...
> там.

Все по делу Рич говорит.


"Компания Oracle опубликовала Java SE 12"
Отправлено rex , 28-Мрт-19 12:00 
паника всё;
зачем ей на каждой мелкой версии запускаться

"Компания Oracle опубликовала Java SE 12"
Отправлено Аноним , 20-Мрт-19 18:57 
Лишь бы не дотнет, лишь бы не дотнет...

"Компания Oracle опубликовала Java SE 12"
Отправлено Аноним , 20-Мрт-19 21:29 
С дотнетом всё хорошо. Запилили кроссплатформенную замену WPF и WinForms и портируют на неё проги.

"Компания Oracle опубликовала Java SE 12"
Отправлено Попугай Кеша , 21-Мрт-19 09:41 
Чет давно не слежу. Что за замена WPF, да еще и кроссплатформенная?

"Компания Oracle опубликовала Java SE 12"
Отправлено КО , 22-Мрт-19 16:23 
Ну так - если есть две платформы (Винда 23 бит и Винда 64 бит, ну или Вида 7 и Винда 10, ну на крайняк Винда 1803 и 1809) то она уже кросс платформенная

"Компания Oracle опубликовала Java SE 12"
Отправлено Аноним , 20-Мрт-19 21:27 
>Напомним, что начиная с выпуска

Напоминаю, что начиная с какого-то выпуска, херакл дропнул 32
бита из вредности, а резервные копии официальных билдов выпилил по DMCA.

Также напоминаю - билды Java > 11 идут под проприетарной лицензией, требующей оплаты, свободные же либо ставьте из пакетов, либо (для винды) - собирайте из исходников.


"Компания Oracle опубликовала Java SE 12"
Отправлено Аноним , 20-Мрт-19 23:27 
> Также напоминаю - билды Java > 11 идут под проприетарной лицензией,

https://jdk.java.net/11/

GNU General Public License, version 2, with the Classpath Exception.


"Компания Oracle опубликовала Java SE 12"
Отправлено Аноним , 21-Мрт-19 22:35 
openjdk и Java SE - разные вещи. openjdk - спо, Java SE - проприетарь.

"Компания Oracle опубликовала Java SE 12"
Отправлено Аноним , 25-Мрт-19 12:21 
Чукча не читатель, чукча писатель?

По ссылке:
> production-ready open-source builds of the Java Development Kit, version 11.0.2, an implementation of the Java SE 11.0.2 Platform

Еще раз:
> implementation of the Java SE


"Компания Oracle опубликовала Java SE 12"
Отправлено max , 21-Мрт-19 17:24 
ну речь скорее о выходе java 12 - в частности openjdk;
oraclejdk базируется на openjdk, и действительно - за это хотят $$$;
если использовать openjdk - платить не надо (например, можно самому собрать; можно взять сборку у zulu или других товарищей);

"Компания Oracle опубликовала Java SE 12"
Отправлено Dmitry77 , 22-Мрт-19 08:30 
Чем хороша Java - у неё хорошая кросс-платформенность.
Но сейчас появилась платфома на которой она не работает - iOS

В перспективе Dart может работать на всех 5 платформах (наравне с js)


"Компания Oracle опубликовала Java SE 12"
Отправлено Junior frontend developer , 23-Мрт-19 07:14 
Переводчик новости совершенно не понял суть новых switch. Фокус в том, что они выражения (expressions), а не инструкции (statements).