Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
686.docx
Скачиваний:
85
Добавлен:
24.04.2019
Размер:
6.68 Mб
Скачать

3.2.10.3 Платформа Java

Java ("Ява", произносится "Джава") – объектно-ориентированный язык

программирования, разрабатываемый компанией Sun Microsystems с 1991 года

и официально выпущенный 23 мая 1995 года. Изначально новый язык

программирования назывался Oak (James Gosling) и разрабатывался для

бытовой электроники, но впоследствии был переименован в Java и стал

использоваться

для

написания

апплетов,

приложений

и

серверного

программного обеспечения.

Программы на Java могут быть транслированы в байт-код, выполняемый

на виртуальной джава-машине (JVM) – программе, обрабатывающей байтовый

код и передающей инструкции оборудованию, как интерпретатор, но с тем

отличием, что байтовый код в отличие от текста обрабатывается значительно

быстрее.

Достоинство подобного способа выполнения программ – в полной

независимости байт-кода от ОС и оборудования, что позволяет выполнять Java

приложения на любом устройстве, которое поддерживает виртуальную

машину. Другой важной особенностью технологии Java является гибкая

система безопасности, благодаря тому, что исполнение программы полностью

контролируется виртуальной машиной. Любые операции, которые превышают

установленные

полномочия

программы

(например,

попытка

несанкционированного

доступа

к

данным

или

соединения

с

другим

компьютером)

вызывают

немедленное

прерывание.

Это

позволяет

пользователям загружать программы, написанные на Java, на их компьютеры

(или другие устройства, например, мобильные телефоны) из неизвестных

источников, при этом не опасаясь заражения вирусами, пропажи ценной

информации, и т. п.

Часто к недостаткам этого подхода относят то, что исполнение байт-кода

виртуальной машиной может снижать производительность программ и

алгоритмов, реализованных на языке Java. Данное утверждение справедливо

для первых версий виртуальной машины Java, однако в последнее время оно

практически

потеряло

актуальность.

Этому

способствовал

ряд

усовершенствований: применение технологии JITs (Just-In-Time compiler),

позволяющей переводить байт-код в машинный код во время исполнения

программы с возможностью сохранения версий класса в машинном коде,

широкое использование native-кода в стандартных библиотеках, а также

аппаратные средства, обеспечивающие ускоренную обработку байт-кода

(например, технология Jazelle, поддерживаемая некоторыми процессорами

фирмы ARM).

Внутри Java существуют 3 основных семейства технологий:

148

 J2EE или Java EE (начиная с v1.5) – Java Enterprise Editon, для создания

программного обеспечения уровня предприятия;

 J2SE или Java SE (начиная с v1.5) – Java Standard Editon, для создания

пользовательских приложений, в первую очередь – для настольных

систем;

 J2ME, Java ME или Java Micro Edition, для использования в

устройствах, ограниченных по вычислительной мощности, в том числе

мобильных телефонах, PDA, встроенных системах.

Прежняя версия JVM от Microsoft (аналог SUN JVM v.1.1.3) во многом

отступает от стандартов языка, предложенных Sun Microsystems, с целью

проприетарной поддержки платформы Windows. Впоследствии это явилось

поводом для судебных исков со стороны Sun Microsystems к Microsoft. В

настоящее время между двумя компаниями достигнуты договорённости вплоть

до снятия взаимных судебных претензий и произведено взаимное кросс-

лицензирование технологий. По версии Microsoft будет поддерживаться

спецификация MS-J# соответствующая спецификации SUN-JVM J2SE.

Java 2 Micro Edition

Java 2 Micro Edition (J2ME) – подмножество технологий фирмы Sun

Microsystems, основанное на концепции Java-платформы и предназначенное

для выполнения приложений, написанных на языке Java на устройствах

бытовой

электроники,

например

мобильных

телефонах,

персональных

органайзерах, цифровых телевизионных ресиверах и т. п. Основой J2ME

является виртуальная машина, способная исполнять байт-код языка Java.

J2ME задумана для того, чтобы обеспечить эффективное исполнение Java-

приложений

на

устройствах

бытовой

электроники,

отличительной

особенностью которых является ограниченная вычислительная мощность,

ограниченный объём памяти, малый размер дисплея, питание от портативной

батареи,

а

также

низкоскоростные

и

недостаточно

надёжные

коммуникационные возможности. Типичный современный мобильный телефон

содержит внутри 32-разрядный RISC-процессор с тактовой частотой 50 МГц,

имеет объём оперативной памяти около 4 Мб, цветной дисплей размером 2

дюйма и имеет возможность GPRS-соединения с Интернетом со скоростью до

172 Кб/с, которое при этом фундаментально ненадёжно, поскольку скорость

передачи данных может неожиданно упасть, или соединение может быть

вообще полностью потеряно.

J2ME специфицирует две базовые конфигурации, которые определяют

требования

к

виртуальной

машине

или,

иначе

говоря,

определяют

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

выполнять, а также минимальный набор базовых классов: CLDC (Connected

Limited Device Configuration – конфигурация устройства с ограниченными

коммуникационными возможностями) и CDC (Connected Device Configuration –

149

конфигурация

устройства

с

нормальными

коммуникационными

возможностями).

J2ME также определяет несколько так называемых профилей (profiles),

которые дополняют и расширяют упомянутые выше конфигурации, в частности

определяют модель приложения, возможности графического интерфейса, а

также коммуникационные функции (например доступ к Интернету) и др.

В настоящее время самой распространённой конфигурацией является

CLDC, для которого разработан профиль MIDP (Mobile Information Device

Profile – профиль для мобильного устройства с информационными функциями).

MIDP определяет понятие мидлета (MIDlet) – компактного Java-приложения,

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

устройстве. Другим популярным профилем для J2ME/CLDC является DoJa,

разработанный фирмой NTT DoCoMo для её собственного сервиса iMode.

iMode весьма распространён в Японии, и в меньшей степени в Европе и на

Дальнем Востоке.

Конфигурация CLDC успешно используется в большинстве современных

мобильных телефонов и портативных органайзеров. По данным компании Sun

Microsystems к концу 2004 года в мире было выпущено более 570 миллионов

мобильных устройств с поддержкой этой конфигурации Java. Это делает J2ME

доминирующей технологией Java в мире. Объёмы производства мобильных

телефонов

значительно

превышают

количество

других

компьютерных

устройств, способных исполнять приложения на Java (например, персональных

компьютеров).

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]