Читайте также:
|
|
Основные особенности (характеристики) языка Java, отличающие его от других языков программирования:
1) Кросс-платформенность – это главное свойство языка Java, которым объясняются все остальные особенности данного языка: с технической точки зрения, Java — это язык, который работает на виртуальной машине. В принципе можно создать архитектуру, которая будет непосредственно выполнять код Java, однако в стандартной среде, такой как Windows или UNIX, установка Java на компьютере означает, что установлена виртуальная машина. Когда программы работают, считается, что они функционируют на виртуальной машине. В других языках, таких как С или C++, в результате компиляции получается выполняемый файл, который содержит машинные команды для той архитектуры, для которой был создан компилятор (т.е. откомпилированный код программы привязан к операционной системе). Для языка Java этот процесс также называется компиляцией, но он не является компиляцией в буквальном смысле слова. В результате компиляции кода для Java создается код на языке Byte-code (байт-код ), т. е. код, который работает в виртуальной Java-машине (стандарт байт-кода близок к машинным кодам). Байт-код не привязан ни к языку программирования, ни к операционной системе. А сама виртуальная Java-машина ориентирована на определенную ОС (операционную систему).
Язык программирования такого типа является просто еще одним слоем программного обеспечения и не зависит от основных характеристик архитектуры компьютера. Поэтому, по крайней мере в теории, Java является потенциально "универсальным" языком программирования. Версии Java-машин существуют для различных операционных систем, механизм их действия отличается друг от друга. Однако результат работы кода Java, запущенного в разных операционных системах, будет один и тот же. Таким образом, программы Java должны быть свободно переносимы между ними. Если программа написана в одной среде, то нет необходимости производить какие-либо изменения в исходном коде, чтобы скомпилировать или напрямую запустить ее в другой среде. В идеале, это можно выразить следующим образом: "Написал один раз, работает везде". Однако на практике тонкие различия в осуществлении механизма Java приводят к проблемам, которые заключаются во фразе: "Написал один раз, находишь ошибки везде".
2) Язык Java ориентирован на программирование для Internet. Но по данному вопросу в Java существует большой компромисс (как и во всех системных и программных продуктах).
С одной стороны, если существует "универсальный" язык программирования, то программы могут быть установлены и будут работать на машинах пользователей независимо от характеристик платформы. Поэтому с помощью Java создаются апплеты — программы, которые могут быть загружены из Интернета. Не имеет значения, из-под какой операционной системы происходит подключение к Интернету: если в ней установлен Java, то она будет работать с апплетами, которые доступны во Всемирной сети.
С другой стороны, программы, написанные на Java, работают значительно медленнее, чем программы, которые скомпилированы для конкретной архитектуры (из-за наличия виртуальной машины). В среднем код Java будет работать в 10 раз медленнее чем, например программа, написанная на языке С++. Но по мере того как процессоры становятся все быстрее, а Интернет становится средой распространения программ, недостаток в скорости, за счет которого достигается универсальность, выглядит все более приемлемым компромиссом.
3) Java не дает возможность написать код, который напрямую обращается к адресам в памяти компьютера, как в некоторых языках, таких как С и C++ (путем использования указателей). Эта характеристика языка Java поддерживает безопасность программ. Программисты знают, что программы, которые напрямую имеют доступ к памяти, могут, преднамеренно или случайно, навредить системе. По этой причине прямой доступ к памяти нежелателен в Java. Когда пользователи запускают программы, они хотят быть уверенными, что эти программы не будут разрушать их системы из-за прямого доступа к памяти.
4) Java — это объектно-ориентированный язык программирования. Он создан для того, чтобы разрабатывать графические приложения с управлением событиями (т.е. для создания графического пользовательского интерфейса, который поддерживает действия по типу "укажи и щелкни" (point and click). Такие приложения могут быть самостоятельными программами (Application) или апплетами (Applet), загружаемыми из Интернета. Java обладает основными синтаксическими особенностями структурированных языков программирования: последовательным (линейным), условным (ветвление) и повторяющимся (циклы) выполнением блоков кода.
5) Недостаток языка Java – он не рассчитан для обучения программированию, а предназначен для построения сложных приложений. В дополнение ко многим свойствам в самом языке, он имеет библиотеки готовых компонентов кода, которые можно использовать вместо самостоятельного написания компонентов с нуля. Ни полностью синтаксис, ни библиотеки невозможно изучить за короткий срок. Многое из того, что изучается на первом этапе, может показаться не слишком полезным. Необходимо рассмотреть основы объектно-ориентированного программирования прежде, чем станет возможным создание интересных приложений, включающих интерактивные графические свойства.
6) Java сразу был создан как объектно-ориентированный язык в отличие от языка C++, который является объектно-ориентированной эволюцией языка С (в этом преимущество языка Java перед C++). Поэтому Java позволяет создавать графические приложения, которые невозможно написать на таких языках программирования, как С. Кроме того, код, написанный на Java, может быть значительно проще, чем код, который написан на C++, чтобы выполнить ту же задачу. В заключение нужно сказать, что язык С# был создан для той же самой цели, что и язык Java, поэтому С# является его прямым конкурентом, который по своим характеристикам может быть не хуже или даже способен превосходить Java в некоторых аспектах.
Выводы
1. Язык Java интерпретируется на виртуальной Java-машине.
2. Исходный код и код заданий Java легко переносятся с компьютера на компьютер.
3. Существует возможность загружать код Java из Интернета, несмотря на то, что программы будут не так быстро работать.
4. Java не использует доступ напрямую к памяти для обеспечения безопасности загруженной программы.
5. Java—это объектно-ориентированный язык, имеющий свойства, необходимые для того, чтобы написать графические приложения с управлением событиями.
6. Java предназначен для программирования, но не обучения языку. Он обладает многими свойствами и содержит много библиотек.
7. В Java можно создавать такие программы, которые невозможно или трудно написать на других языках.
Дата добавления: 2015-04-20; просмотров: 155 | Поможем написать вашу работу | Нарушение авторских прав |