Еще несколько бета-версий JDK 1.2 - и продукт приобретет необходимую завершенность, однако уже сейчас стоит испробовать его новые возможности.
Отделение JavaSoft компании Sun приурочило дебют первой общедоступной бета-версии JDK 1.2 к осенней выставке Internet World. Тогда же она попыталась внести ясность во все усложняющийся график выпуска отдельных Java-продуктов. Очевидно, что для отработки новых возможностей, которые несет JDK 1.2, потребуется выпустить хотя бы одну дополнительную бета-версию продукта, а возможно, и несколько.
В первом квартале 1998 г. Sun планирует доработать бета-версию JDK с учетом обнаруженных ранее недостатков, а также пожеланий разработчиков. Появление окончательной версии ожидается во втором квартале.
Если в первых выпусках документации и отзывах эта версия именовалась как JDK 1.2, то в пресс-релизах JavaSoft, посвященных новому JDK (см. "Источники") название JDK 1.2 не употребляется. Вероятно, это свидетельствует о внутренних дискуссиях по поводу технической обоснованности и маркетинговой целесообразности переименования продукта в JDK 2.0.
В связи с появлением большого числа не зависящих от JDK новых Java-технологий возникла необходимость обнародовать график выпуска продуктов. Наряду с первой общедоступной бета-версией JDK 1.2 компания Sun выпускает:
Более подробную информацию о выпуске этих продуктов можно найти в документах, перечисленных в разделе "Источники".
В приводимой таблице показано, какие продукты можно ожидать от Sun во втором квартале 1998 года.
График выпуска Java-технологий
Дата | Технология |
Декабрь 1997 | Первая общедоступная бета-версия JDK 1.2 |
JDK 1.1.5 (вариант с повышенной производительностью) | |
JFC 1.1 (окончательная версия компонентов Swing) | |
Общедоступные спецификации Enterprise JavaBeans | |
Первая предварительная версия Java Activator | |
Первый квартал 1998 | Вторая общедоступная бета-версия JDK 1.2 |
JDK 1.1.6 (дальнейшее повышение производительности) | |
Первая версия JVM HotSpot | |
Окончательный вариант спецификаций Enterprise JavaBeans | |
Вторая предварительная версия Java Activator | |
Окончательная версия Java Activator 1.1 (конец первого квартала) | |
Общедоступные спецификации Java Messaging Service (JMS) | |
Общедоступные спецификации Java Management API (JMAPI) | |
Окончательный вариант спецификаций Java Naming and Directory Interface (JNDI) | |
Второй квартал 1998 | Окончательный вариант JDK 1.2 (поставка - через Java Porting & Tuning Center) |
Окончательный вариант JFC, входящий в ядро Java | |
Внедряемый вариант JVM HotSpot | |
Предварительная версия Java Activator 1.2 | |
Окончательный вариант спецификаций Java Messaging Service (JMS) | |
Окончательный вариант спецификаций Java Transaction Service (JTS) | |
Окончательный вариант спецификаций Java Management API (JMAPI) | |
Окончательный вариант JVM HotSpot (лето, возможно, третий квартал) |
Любой разработчик может загрузить с Web-узла JavaSoft программное обеспечение JDK 1.2 и соответствующую документацию, зарегистрировавшись с помощью Java Developer Connection - бесплатной службы, предоставляющей доступ к предварительным выпускам программного обеспечения, к информации, пересылаемой по электронной почте, и к интерактивным дискуссионным группам.
Новые возможности: продвижение вперед
JDK 1.2 - это значительный шаг на пути совершенствования Java. Он обеспечивает около дюжины абсолютно новых областей применения и усовершенствование десятка имевшихся ранее возможностей. Первая общедоступная бета-версия еще не обладает всеми этими новшествами, поэтому необходимо подождать следующих выпусков.
Новые возможности, которые должны быть включены в JDK 1.2:
Существенную модернизацию претерпели:
Некоторые улучшения производительности:
В данную бета-версию не включены или не полностью включены следующие возможности:
Повышение производительности
Йон Каннегард, вице-президент JavaSoft по программным продуктам, считает, что при условии использования JVM-технологии HotSpot производительность JDK 1.2 может возрасти до уровня, сопоставимого с программами на С++. Новый JDK обеспечивает двоичную базу для будущей JVM HotSpot, которую можно будет загрузить с Web-узла Sun в первом квартале.
Повышение производительности JDK 1.2 обусловлено внесением ряда изменений в его архитектуру.
Ускорение распределения памяти и "сбора мусора" (garbage collection). Это достигается за счет использования поточно-локального динамического кэша, избавляющего от необходимости блокировать большинство областей динамически распределяемой памяти. Скорость распределения памяти значительно возросла, сократились и задержки при "сборе мусора". За счет совместного использования различными классами строковых констант уменьшился объем потребляемой памяти.
Собственные (native) библиотеки. Собственные библиотеки, поддерживающие базовые классы Java, такие как AWT, были переписаны с использованием Java Native Interface (JNI). Это более эффективный код, который можно без изменений запускать на различных виртуальных машинах Java.
"Родная" поддержка потоков для Solaris. За счет нее ядро ОС может лучше распределять потоки между параллельными процессорами там, где это возможно. Виртуальная машина (VM) "родных" потоков лучше интегрируется с "родным" кодом, чем используемая по умолчанию VM, и в ряде случаев способна предотвратить неэффективное переназначение обращений к системе ввода/вывода.
Совет напоследок
Данная версия JDK показывает разработчикам, каким путем идет Sun, развивая Java. Обобщая приведенные выше факты, можно сделать вывод, что JavaSoft двигает Java в направлении повышения производительности, ускорения создания и развертывания приложений (за счет поддержки "родных" библиотек и процессов, стандартизации архитектуры расширений, поддержки компонентов JavaBeans, а также улучшенного механизма сжатия памяти для загруженных классов).
Однако разработчикам необходимо учесть, что предварительная версия JDK 1.2 будет работать намного медленнее более поздних версий. Но, как показывает опыт работы с JDK 1.1, несколько итераций повышения производительности могут принести хороший результат.
Источники
http://www.javasoft.com/pr/1997/dec/pr971210-04.html
http://www.javasoft.com/pr/1997/dec/pr971210-01.html
http://java.sun.com/features/1997/dec/activator.html
http://java.sun.com/jdc
Гордон Спенсер - технический писатель и аналитик, около десяти лет освещающий темы открытых систем и сетевых технологий. С ним можно связаться по электронной почте: gordon.spencer@javaworld.com.