В 1999 году Sun Microsystems представила всему
миру новую программную технологию, предназначенную для создания приложений,
работающих на мобильных устройствах – сотовых телефонах, КПК и др. Технология
называлась Java 2 Micro Edition, или сокращенно J2ME. Строго говоря, технология
эта не совсем новая – она стала преемницей J2SE, которая используется для
создания «больших» приложений. Фактически J2SE несколько упростили, убрали
лишнее и добавили специфические, важные для мобильных устройств функции.
Особенностью Java-программ является то, что они выполняются на так называемой
виртуальной машине Java, а сама технология задумывалась как
платформонезависимая. Если мобильный телефон обладает поддержкой Java, на нем
должны запускаться любые Java-программы.
Но не все так просто –
виртуальная машина одна, а технические возможности мобильников разные. Да и на
телефонах разных производителей одна и та же программа вполне может не
запускаться – различаются реализации Java на разных аппаратных платформах, и
проблема совместимости программного обеспечения и устройств разных
производителей в Java-мире все еще актуальна. Поэтому в случае, например, с
играми можно видеть, как одну и ту же игру адаптируют для различных аппаратов.
Производители мобильных телефонов, понимая, что повышение уровня
совместимости Java-приложений с устройствами разных производителей очень важно,
делают определенные шаги в этом направлении. В частности, Nokia и Vodafone
занимаются разработкой новых спецификаций для Java-приложений, призванных
повысить совместимость программного обеспечения и аппаратов разных
производителей. В результате этого можно ждать еще более обширного
распространения Java в мире и снижения цен на программы. Помимо попыток
сторонних разработчиков улучшить положение дел, компания Sun тоже не прекращает
работы над этим стандартом. Например, сравнительно недавно было объявлено о
разработке новых API, реализующих поддержку Java-программами web-сервисов.