Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
кпп.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
238.24 Кб
Скачать

Преимущества языка Java.

 - JVM написаны под большинство имеющихся аппаратных платформ, поэтому программы на java могут быть запущены на великом множестве современных устройств от самых маленьких до самых больших.

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

- В языке java используется модель автоматической сборки мусора. Программы на java практически не подвержены проблемам «утечки памяти».

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

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

Недостатки java:

- Для каждой новой аппаратной платформы необходима разработка JVM. Сам код виртуальной машины достаточно объемный и обычным пользователям бывает довольно непросто понять, для чего нужно пожертвовать парой сотен мегабайт драгоценного места на системном диске, на котором свободное место (особенно на небольших устройствах) всегда бывает в большом дефиците.

Если для какой-то платформы отсутствует готовая JVM, использовать на ней java – программы становится невозможно.

- Большое количество разработанных библиотек означает, что существуют тысячи малоизученных функций и огромный объем кода, написанного непонятно кем.

И хотя для использования этих функций, вникать в их исходный код и изучать особенности функционирования совсем не обязательно, все же очевидно, что объем знаний, который необходим java – разработчику, чтобы использовать все это богатство, становится достаточно велик. Это ведет к дополнительным затратам времени и ресурсов на обучение.

Лекция 2. Этапы разработки java-приложений. Этапы разработки java-приложений.

Технологии java. JDK, SRE, JVM, Javac. Запуск java – приложений.

 Обычно процесс подготовки программы к выполнению включает несколько стандартных этапов.

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

На втором этапе программа – компоновщик добавляет перекрестные ссылки и ссылки между секциями и тем самым из объектного модуля создает работоспособный загрузочный модуль, который уже может непосредственно запускаться на выполнение.

 Если речь идет о программе, написанной на Java, то здесь программа сразу компилируется в обобщенные инструкции так называемой виртуальной машины Java (JVM), которая представляет собой по сути контейнер, который сам по себе является средой выполнения для кода программы и содержит инструкции для интерпретации обобщенных команд.

Эти обобщенные команды обычно короткие, в среднем по 1-2 байта, поэтому команды JVM называются байт-кодами.

 Поскольку JVM является виртуальной средой для программы, обеспечивать сложную адресацию памяти нет необходимости. Также не возникает надобности в специальном  вычислении ссылок, следовательно и этап линковки, который применяется для сборки загрузочного модуля программ на других языках, тоже отпадает.

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

 Байт – коды могут непосредственно выполняться на любой JVM а также на любой аппаратной платформе, для которой написана соответствующая JVM. Кроме того в настоящее время уже разработана целая линейка процессоров, которые на аппаратном уровне оптимизированы под выполнение байт – кода, имеют соответствующий набор процессорных команд и, таким образом, необходимости в написании JVM для таких процессоров уже нет. Но в любом случае JVM уже реализованы практически для всех существующих платформ. Вдобавок производители уже встроили свои реализации JVM во все современные браузеры, многие операционные системы, СУБД и т.д.

 Компания Oracle, которая является нынешним правообладателем технологии Java, свободно распространяет все необходимые инструменты для разработки программ на этом языке и этот набор разработчика называется JDK (Java Development Kit).

Последнюю версию JDK можно легко найти на официальном сайте:

http://www.oracle.com/technetwork/java/javase/downloads/index.html

 В состав пакета JDK входит:

- компилятор исходных текстов программ в байт-код javac;

- сама JVM, то есть программа – интерпретатор байт-кодов;

- отладчик программ jdb;

- программа – просмотрщик апплетов appletviewer

- программа автоматической генерации документации javadoc;

- каталог с документацией по всем исходным кодам docs

- библиотеки и заголовочные файлы для функций, встроенных в java;

- библиотека классов Java API (Application Programming Interface) ;

 А также некоторые другие полезные разработчику модули.

В частности в каждый JDK входит набор программ и классов JRE (Sun Java Runtime Environment, SRE), которые являются полной реализацией JVM, но без средств компиляции и отладки программ. То есть – это чистая виртуальная машина Java, которая может быть полезна тем пользователям, которые собираются только выполнять код Java, а не писать его. Кроме того JRE можно скачать с сайта Оракл отдельно от JDK.