LINUX.ORG.RU

Oracle опубликовала планы по улучшению платформы Java

 , , , , ,


0

1

Компания Oracle обнародовала планы по совершенствованию платформы Java Platform, Standard Edition (Java SE) и ее оптимизации под новые модели приложений и типы оборудования, включая расширенную поддержку скриптовых языков, повышение производительности разработки и сокращение операционных затрат.

Представленные планы предусматривают выпуск новых версий OpenJDK в 2011 и в 2012 гг. Эти новые версии лежат в основе Oracle Java Development Kit (JDK) 7 и JDK 8. Решения о включении новых функций в выпуски JDK 7 и JDK 8 принимались при активном участии сообщества Java-разработчиков.

Проект OpenJDK продолжает успешно развиваться благодаря вкладу Oracle, а также других компаний, исследователей и разработчиков. Модель лицензирования OpenJDK остается неизменной.

В настоящее время Oracle работает над объединением Oracle Java HotSpot Java Virtual Machine (JVM) и Oracle JRockit JVM в единую виртуальную машину, в которой будут эффективно использоваться преимущества каждой из этих реализаций виртуальных машин.

Oracle JDK и Java Runtime Environment (JRE) будут по-прежнему доступны для бесплатной загрузки, без изменения существующих моделей лицензирования.

Дополнительные приложения, такие как JRockit Mission Control, JRockit Real Time, Java for Business и Enterprise Support, как и раньше, будут доступны за отдельную плату.

В выпуске JDK 7 запланированы:

  • Инструкция InvokeDynamic и вспомогательные функции для динамических языков программирования
  • Fork/Join Framework и дополнения к API параллелизма и поддержки коллекций для многопоточного Java-кода
  • Усовершенствования языка (большая часть результатов проекта Coin) для повышения производительности разработки, а также для создания более понятного и лаконичного Java-кода
  • Поддержка протоколов Session Description Protocol (SDP) и Stream Control Transport Protocol (SCTP)
  • Новые API ввода/вывода — гибкий API для работы с файловой системой и асинхронный ввод/вывод
  • Поддержка усовершенствованных стандартов — Unicode, локализация, безопасность, шифрование, XML и JDBC
  • Повышение производительности JVM

В выпуске JDK 8 запланированы:

  • Лямбда-выражения для повышения производительности разработки и более эффективного использования многоядерных процессоров
  • Усовершенствования языка (остальные результаты проекта Coin)
  • Реализация модульности (проект Jigsaw) для упрощения задач проектирования, сборки и развертывания приложений
  • Ускоренный запуск JVM и совершенствование эргономичности.

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



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

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

>Хотя зачем они нужны? Анонимные классы вполне устраивают.

А разве в анонимных класса свободные переменные замыкаются?

А полноценной поддержки генериков в яве не будет никогда. Слишком много заморочек нужно делать на уровне языка.

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

Ну ты даешь, этож биореактор, максимум на что он способен это уйти в себя.

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

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

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

> А разве в анонимных класса свободные переменные замыкаются?

Да, но только final переменные

maxcom ★★★★★
()

>У меня острая передозировка буквой J.

А теперь посмотри на питон

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

массивы генериков не бывают

А это что:

public class Test{

  public static void main(String args[]){
    String s[] = arr("1","atr");
    System.out.println(s);
    Class<? extends Object> cs[] = arr(String.class,Integer.class); 
    System.out.println(cs);
  }
  
  private static <T> T[] arr(T...o){
    return o;
  }
}

wfrr ★★☆
()

Оно конечно много вкусного, но я пока Ц# пофтыкаю. А к 2012 году как раз «новая» жаба подоспеет!

valich ★★★
()

Оракл? Улучшение жабы? Да Ларри всех разработчиков распугает, когда к ним подойдёт!

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

> С «повышением производительности разработки» соглашусь, отчасти, но как лямбды связаны с многоядерными процессорами?

Подозреваю что они имеют ввиду использование лямбд в fork-and-join и т.п.

maxcom ★★★★★
()

А кому какое дело, что ширинька на болтах ...

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

Дык, массив генериков создает? А изврат потому шо в яве иначе нельзя 8)

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

Кто бы сомневался :}

Откровенно говоря, я рассчитывал на более взрослые что ли комментарии, по сути вопросов, обдуманные головным мозгом, а не спинным, видящим только мой ник ;)

В общем... preload, модульность - будет ли это? Пытался писать простые программы на Java, но время старта и даже реакция приложения на перемещения по его главному меню меня весьма расстроили. И да, пробовал писать на Mono + GTK# - программы стартуют быстро и интерфейс не тормозит.

I-Love-Microsoft ★★★★★
()
Ответ на: комментарий от Quasar

> Оракл? Улучшение жабы? Да Ларри всех разработчиков распугает, когда к ним подойдёт!

Ларри покупал не Сан, Ларри покупал Жаву. И уж поверьте, он её улучшит.

bolmer
()
Ответ на: комментарий от I-Love-Microsoft

preload, модульность

реакция приложения на перемещения по его главному меню меня весьма расстроили

И кто тут говорил про спинной моск?

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

Главное чтобы она от улучшения не стала хуже.

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

И кто тут говорил про спинной моск?

Мля... Просто скачай себе netbeans и посмотри насколько там быстро работает самое примитивное что только можно придумать - менюшки, насколько медленно отображается когда ходишь по нему...

I-Love-Microsoft ★★★★★
()
Ответ на: комментарий от I-Love-Microsoft

Мля...

А я белка, ну что ты там расскажешь мне про модульность и ее воздействие на прорисовку меню? Когда закончишь посмотри на различие между winforms и swing в отрисовке, а когда твой спинной моск это переварить посмотри на swt

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

ну что ты там расскажешь мне про модульность и ее воздействие на прорисовку меню?

Лично я не вижу связи модульности и скорости отрисовки меню и даже не собираюсь изучать различия winforms и swing. Прорисовка меню это то, что берет на себя тулкит, программист его не рисует - с этим ты спорить не будешь? Меню - что может быть проще? Так вот swing умудряется тормозить даже в такой суперпримитивной задаче. На Qt отрисовка меню просто летает, пусть даже это и не самоцель, просто показательно. Не имею ничего против жабы как таковой, просто эта тормозность интерфейса меня убивает.

I-Love-Microsoft ★★★★★
()
Ответ на: комментарий от I-Love-Microsoft

Просто скачай себе netbeans и посмотри насколько там быстро работает самое примитивное что только можно придумать - менюшки, насколько медленно отображается когда ходишь по нему...


УМВ летает, ЧЯДНТ? У тебя что, линукс? Поставь opengl в свинге

Karapuz ★★★★★
()

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

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

Лично я не вижу связи модульности и скорости отрисовки меню и даже не собираюсь изучать различия winforms и swing.

Перевожу: я неграмотный члест, и это звучит гордо.

Прорисовка меню это то, что берет на себя тулкит, программист его не рисует - с этим ты спорить не будешь? Меню - что может быть проще? Так вот swing умудряется тормозить даже в такой суперпримитивной задаче.

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

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

но уже заводы на него подсаживаются.


Это же миллионы бабла!

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

> нет никакой возможности узанть какие параметры например у Map переданной в скрипт

Я начинаю потихонку экспериментировать с poor man runtime generic. То есть определяю внутри контейнера поле Class . Соответственно можно будет сгенерировать эксепшн в момент, когда попытаемся в контейнер добавить объект неправильного класса.

На например у нас Map<String,String> - записывает Class key = String.class, Class value = String.class. Все методы Map оборачиваем и делаем проверки key.isInstanceOf, value.isInstanceOf в момент вызова метода put. Понятно что эта проверка возможна только в runtime - но основное преимущество, что исключение будет в момент попытки помещения неправильного объекта в Map, а не через миллион лет, при попытке его прочесть.

Если у нас java 1.6 - то можем дополнительно использовать дженерики для статической проверки - но это не обязательно.

Проблема возникает, когда нужно помещать в Map более сложные объекты. Например, нам нужен Map<String,ArrayList<Integer>>. Что при этом должно быть в качестве Class? ArrayList будет недостаточно.

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

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

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

Смех продлевает жизнь, скажите спасибо, это раз :) Пишу на Qt - вижу что все летает, это два. И вообще у меня Ubuntu 10.10, менюшки тормозят как в Gnome-программах, как в swing, так и в eclipse на SWT, но только не в Qt-программах, это три =) Реально, не собираюсь выяснять причины тормозов, я на полном серьезе считаю что это задача разработчиков тулкита/платформы, если им вообще важна база разработчиков, считайте что я очень очень глуп.

I-Love-Microsoft ★★★★★
()
Ответ на: комментарий от I-Love-Microsoft

Пишу на Qt - вижу что все летает, это два. И вообще у меня Ubuntu 10.10, менюшки тормозят как в Gnome-программах, как в swing, так и в eclipse на SWT, но только не в Qt-программах, это три =) Реально, не собираюсь выяснять причины тормозов, я на полном серьезе считаю что это задача разработчиков тулкита/платформы, если им вообще важна база разработчиков, считайте что я очень очень глуп.

Считаю.

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

>На например у нас Map<String,String> - записывает Class key = String.class, Class value = String.class.

И чо в конструктор передавать String.class и String.class. Ибо T.class не работет.

Что при этом должно быть в качестве Class? ArrayList будет недостаточно.


отвечает александр друзь: http://download.oracle.com/javase/6/docs/api/java/lang/reflect/ParameterizedT...

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

Считаю.

Замечательно. У себя на работе я предлагал начальству переход на Java, но меня послали с пометкой «медленно стартуют программы», «даже интерфейс тормозит». И не важно что у меня тормозит, как я уже говорил у меня GTK тупит, главное чтобы те кто хотят начать писать на Java не видели недостатки. Знакомый чел пишет на winforms и WPF, попробовал работать с Java в среде netbeans. Не думаю что он будет продолжать, если и дальше будет наблюдать эти тормоза.

I-Love-Microsoft ★★★★★
()
Ответ на: комментарий от wfrr

>>Вокруг меня народ активно переходит на .NET. ока не все, но уже заводы на него подсаживаются. Жаба такими темпами сдохнет лет через десять, ежели не будет коренного улучшения дизайна.

Вы прослушали репортаж из биореактора.

Вижу тебя задели за живое.

pathfinder ★★★★
()

Инструкция InvokeDynamic и вспомогательные функции для динамических языков программирования

Fork/Join Framework и дополнения к API параллелизма

Лямбда-выражения

Жаба спешит за дотнетиком?

yaws
()

В общем, FAIL. Видимо, придется ждать JDK 8 [а потом, 9, 10, ...]...

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

толстовато.

Если вкратце:
По скорости jvm без бубна сливает mono. С бубном - нет. С большим бубном - даже быстрее, чем моно :)

yaws
()
Ответ на: комментарий от I-Love-Microsoft

Ты прекратишь мне жаловаться на то что у тебя тормозит? 8)

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

Это ты тот самый лоровский Trollus Vulgaris, которого тыт выращивают и откармливают, а потом выпускают в естественную среду наши зоологи?

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

>Это ты тот самый лоровский Trollus Vulgaris, которого тыт выращивают и откармливают, а потом выпускают в естественную среду наши зоологи?

Нет.

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

>Вокруг меня народ активно переходит на .NET. ока не все, но уже заводы на него подсаживаются. Жаба такими темпами сдохнет лет через десять, ежели не будет коренного улучшения дизайна.

Гыык. 4-й .NET уже догнал яву по количеству тормозов и раздутости. Скоро перегонит, вестимо.

Macil ★★★★★
()
Ответ на: комментарий от I-Love-Microsoft

И вообще у меня Ubuntu 10.10,


Бедненькие, ну почему у вас в этом сираном L1nyx-е все тормозит? В MacOS не тормозит, в Windows не тормозит, а в убунту всегда тормозит? Вот http://ubuntuforums.org/showthread.php?t=1129187 рецепт как перестать тормоза под убунтой и начать юзать NetBeans

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

Да-да, там кто-то высер что у него тест за 6 и 9 сек отрабатывает, но не ответил на каком железе. Тролль

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

По скорости jvm без бубна сливает mono. С бубном - нет. С большим бубном - даже быстрее, чем моно :)

Я согласен, факт что так, что jvm вполне быстра сама по себе. Но интерфейс, господа, про него не забываем. Скорость запуска программ... Ничего не толсто, наоборот, так сказать болею за судьбу java - успеет оно загнуться или все таки исправят недочеты. Даже три вопроса задал - в JDK8 планируют исправить то о чем я подумал или так и оставят в испачканных подгузниках.

I-Love-Microsoft ★★★★★
()
Ответ на: комментарий от Macil

Подтверждаю. Самый быстрый донет - 1.x при прочих равных.

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

С большим бубном - даже быстрее, чем моно :)


Ну дык! А почему это mono не пользуется популярностью? Я вот читал что умные головастые парни сделали серверное приложение в котором JVM отрабатывает транзакции с максимальной задержкой 1мс. А моно так может?

Karapuz ★★★★★
()
Ответ на: комментарий от I-Love-Microsoft

>наоборот, так сказать болею за судьбу java
Из ЯП под JVM я, наверное, больше всего волнуюсь (если так вообще можно выразиться) за scala и jruby.

yaws
()
Ответ на: комментарий от I-Love-Microsoft

> «Реализация модульности» - что это?

это java modules. помесь .Net сборок с maven и OSGi. Вещь клевая и нужная, но очень геморрная... из-за нее отложили properties и generics.

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