Студопедия  
Главная страница | Контакты | Случайная страница

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Особенности языка Java

Читайте также:
  1. I. ФИЗИОЛОГИЧЕСКИЕ ОСОБЕННОСТИ
  2. II. Архитектурные особенности китайского дома.
  3. II. Климат, климатические особенности, климатические пояса, зоны.
  4. II. ОСОБЕННОСТИ РАЗВИТИЯ ПСИХИЧЕСКИ ПРОЦЕССОВ
  5. III РЕСПУБЛИКА ВО ФРАНЦИИ: ОСОБЕННОСТИ СТАНОВЛЕНИЯ, ПОЛИТИЧЕСКОГО И СОЦИАЛЬНОГО РАЗВИТИЯ
  6. IV. Особенности возникновения и развития «паблик рилейшнз» (управления общественными отношениями) в Европе и России
  7. IV. Особенности привлечения сил и средств пожарной охраны, гарнизонов пожарной охраны для тушения пожаров и проведения аварийно-спасательных работ
  8. V2: Болезни губ, языка, полости рта
  9. Windows. Особенности ОС Windows.
  10. Абсолютная монархия в Англии. Особенности английского абсолютизма.

Основные особенности (характеристики) языка 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 | Поможем написать вашу работу | Нарушение авторских прав

<== 1 ==> | 2 |


lektsii.net - Лекции.Нет - 2014-2024 год. (0.007 сек.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав