Технология Java

Материал из ПИЭ.Wiki

(Перенаправлено с Java)
Перейти к: навигация, поиск

Содержание

Что такое технология Java

Технология Java была создана как инструмент программирования в компании Sun Microsystems в 1991 г. в рамках небольшого закрытого исследовательского проекта, получившего кодовое название «Green» («Зеленый проект»). «Зеленая команда» из 13 инженеров и разработчиков под руководством Джеймса Гослинга (James Gosling) в течение полутора лет работала сутками напролет в отдельном офисе на Sand Hill Road в г. Менло Парк (Калифорния, Силиконовая долина), не информируя о своей работе компанию Sun.

Инженеры «Зеленой команды» старались предвосхитить грядущую «новую волну» в программировании и подготовиться к ней. Первоначально они исходили из предположения, что одной из основных тенденций развития будет сближение между цифровой потребительской техникой и компьютерами. Результатом этой работы стал машинно-независимый язык программирования, получивший кодовое название «Oak» (Дуб).

Чтобы продемонстрировать, как новый язык программирования может в будущем использоваться в цифровой технике, «Зеленая команда» создала домашний портативный интерактивный контроллер для цифрового кабельного телевидения. Но тогда эта идея была слишком новаторской, и цифровое кабельное телевидение не было готово к тому резкому прорыву, который предлагала технология Java.

Однако новаторство технологии Java оказалось востребованным для Интернета, и на первой официальной презентации технологии Java в 1995 г. команда Гослинга смогла объявить, что технология Java будет использована в интернет-обозревателе Netscape Navigator.

Ныне платформу Java используют более 4 млн. разработчиков программного обеспечения. Она используется во всех основных сферах деятельности по всему миру и применяется в самых различных устройствах, компьютерах и сетях во всех технологиях программирования.

В целом универсальность, эффективность, безопасность и совместимость с разными платформами делают технологию Java идеальным инструментом для сетевых технологий. Поэтому сегодня она используется более чем в 2,5 млрд. устройств, среди которых:

  • более 700 млн. ПК;
  • более 1 млрд. мобильных телефонов и других портативных устройств;
  • 1,25 млрд. смарт-карт;
  • а также телеприставки, принтеры, веб-камеры, игры, автомобильные системы навигации, игровые автоматы, медицинское оборудование, парковочные автоматы и т. д.

В настоящее время технологию Java можно встретить практически в любых сетях и устройствах – от Интернета и суперкомпьютеров до портативных компьютеров и мобильных телефонов, от устройств моделирования биржевых торгов до домашних игровых приставок и кредитных карт.

Преимущества Java

Язык программирования Java всесторонне дорабатывали, расширяли, тестировали и проверяли на практике более 4 млн. разработчиков программного обеспечения.

Законченная, чрезвычайно надежная и универсальная технология Java неоценима для разработчиков программного обеспечения тем, что она позволяет им:

  • писать программное обеспечение на одной платформе и запускать его практически на любой другой;
  • создавать программы для работы в веб-обозревателях и веб-службах;
  • разрабатывать серверные приложения для интернет-форумов, магазинов, опросов, обработки HTML-форм и др.;
  • создавать максимально приспособленные для требований пользователя приложения и службы, комбинируя различные Java-модули;
  • писать мощные и эффективные приложения для мобильных телефонов, удаленных процессоров, недорогих потребительских товаров и практически для любых цифровых устройств.

Что такое Java Virtual Machine

Java Virtual Machine (Java VM, JVM) – виртуальная машина Java – основная часть исполняющей системы Java, так называемой Java Runtime Environment (JRE). Виртуальная машина Java интерпретирует и исполняет байт-код Java, предварительно созданный из исходного текста Java-программы компилятором Java.

В 1996 г. компания Sun выпустила первую версию документа «Голубая книга JVM», в котором описана спецификация виртуальной машины Java, ставшего де-факто отраслевым стандартом платформы Java. Благодаря этому документу появились альтернативные реализации JVM, являющиеся «разработками с чистого листа» (англ. clean room design). В качестве примера можно привести Kaffe.

Начиная с версии J2SE 5.0 изменения в спецификации JVM вырабатываются в соответствии с формализованными пожеланиями заинтересованных сторон. Процесс внесения изменений в спецификации JVM называется Java Community Process.

Краткая Java-терминология

Виртуальная машина (virtual machine) – абстрактное вычислительное устройство, которое может быть реализовано разными способами: аппаратно или программно. Компиляция в набор команд виртуальной машины происходит почти так же, как и компиляция в набор команд микропроцессора.

Java-платформа (Java Platform) – виртуальная машина Java и стандартные классы составляют Java-платформу. Java-платформа предоставляет программам унифицированный интерфейс независимо от операционной системы, на которой они работают.

Java Remote Method Invocation (JRMI) – интерфейс вызова удаленных методов. Распределенная объектная модель, определяющая, каким образом производится вызов удаленных методов, работающих на другой виртуальной машине Java.

Java Runtime Environment (JRE) – среда исполнения Java. Подмножество Java Development Kit, предназначенное для конечных пользователей. JRE состоит из виртуальной машины Java (JVM), стандартных классов Java и вспомогательных файлов.

Java Virtual Machine (JVM) – виртуальная машина Java, часть среды исполнения Java, выполняющая интерпретацию Java байт-кода. Java Virtual Machine специфицируется набором команд байт-кода, набором регистров, стеком, сборщиком мусора и пространством хранения методов.

Java байт-код (Java bytecode) – машинно-независимый код, который генерирует Java-компилятор. Байт-код выполняется Java-интерпретатором. Виртуальная машина Java полностью стековая: не требуется сложная адресация ячеек памяти и большое количество регистров. Поэтому команды JVM короткие, большинство из них имеет длину 1 байт, отчего команды JVM называют байт-кодами (bytecodes), хотя имеются команды длиной 2 и 3 байта (средняя длина команды составляет 1,8 байта).

Программа, написанная на языке Java, переводится компилятором в байт-код. Байт-код записывается в одном или нескольких файлах, может храниться во внешней памяти или передаваться по сети. Это особенно удобно благодаря небольшому размеру файлов с байт-кодом. Полученный в результате компиляции байт-код можно выполнять на любом компьютере, имеющем систему, реализующую JVM (в не зависимости от типа какого-либо конкретного процессора и архитектуры ПК). Так реализуется принцип Java: «Write once, run anywhere» – «Написано однажды, выполняется где угодно».

Java-апплеты (Java applets) – Java-приложения, доступ к которым можно получить из веб-браузера.

Концепция и особенности создания Java-программы, JVM

Исходный текст программы, написанный на языке Java проходит все обычные этапы до создания выполняемого файла, но тут есть одна особенность, присущая только Java-программам: при компиляции программа компилируется не в команды какого-то конкретного процессора, а в команды, т.н. виртуальной машины Java (JVM, Java Virtual Machine).

Она (виртуальная машина) представляет собой совокупность команд вместе с системой их выполнения. JVM полностью стековая, так что не требуется сложная адресация ячеек памяти и большое количество регистров. Поэтому команды JVM короткие, большинство из них имеет длину 1 байт, отчего команды JVM называют байт-кодами (bytecodes), хотя имеются команды длиной 2 и 3 байта. Полное описание команд и всей архитектуры JVM можно прочесть в спецификации виртуальной машины Java (VMS, Virtual Machine Specification).

Еще одна особенность Java - все стандартные функции, вызываемые в программе, подключаются к ней только на этапе выполнения, а не включаются в байт-коды. Происходит динамическая компоновка (dynamic binding). Это достаточно сильно уменьшает объем откомпилированной программы.

Компиляция Java-программы не зависит от типа какого-либо конкретного компьютера. Она (компиляция) может выполниться один раз после написания программы. Таким образом для запуска Java-программы на компьютере только должна быть установлена JVM. При этом не важен ни тип процессора, ни конфигурация системы. Так реализуется принцип Java "Write once, run anywhere" - "Написано однажды, выполняется где угодно".

Просмотры
Инструменты

Besucherzahler russian mail order brides
счетчик посещений
Rambler's Top100
Лингафонные кабинеты  Интерактивные доски  Интерактивная приставка Mimio Teach