Java технология.Основные черты и персрективи применения

Происхождение Java.

Язык программирования Java зародился в 1991р. в лабораториях компании Sun Microsystems inc. Как ни странно, толчком для создания Java стала совсем не Internet. Главным мотивом была потребность в языке программирования, который не зависел бы от платформы (то есть от архитектуры) и которую можно было бы использовать для создания программного обеспечения, которое встраивается в разнообразные бытовые электронные приборы, такие как мобильные средства связи, устройства дистанционного управления и тому подобное. Разработка первой рабочей версии заняла 18 месяцев и она имела название «Oak», но в 1995 г. проект был перйменований на «Java».

Период становления Java совпал по времени с расцветом международной информационной службы World Wide Web. Это обстоятельство сыграло решающую роль в иайбутнему Java, поскольку Web тоже требовала переносимых программ. Как следствие, были смещены акценты в разработке Sun из бытовой электроники на программирование для Internet.

Беспечность.

World Wide Web выдвинула Java на передний край программирования, и Java, в свою очередь, сильно повлияла и даже изменила лицо Internet, расширив спектр объектов, которые могут распространяться в киберпространстве. Программы новой формы - апплеты - загружаются из отдаленного сервера и могут запускаться динамически, то есть без участия пользователя. До появления Java такой подход был недопустимым по соображениям безопасности и переносимости. В архитектуре апплетов сделан ряд искусственных ограничений, которые делают их вполне безопасными.

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

Эффективность.

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

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

Речь Java является одним из самых молодых в семействе языков програмуваня и была разработана в расчете на то, чтобы профессиональный программист мог легко ею овладеть и эффективно использовать. За основу Java взят синтаксис С++ - несомненно одной из наиболее популярных словно программирование современности. Однако, Java - это вполне самостоятельный язык программирования, и при ее создании не речь шла о любой совместимости из С++. Потому некоторые механизмы реализованы в Java иначе, а некоторые совсем отсутствуют. Идеологически же Java построена несколько иначе чем С++. Разработчики Java основывались на опыте разработки программ на С++ и стремились лишиться возможностей, которые зарекомендовали себя неуверенными. Да, в Java отсутствует перегрузка операторы а также автоматическое приведение несовместимых типов - конструкции, которые при невнимательном использовании являются источником тяжелых для выявления ошибок.

Страницы: 1 2 3 4 5 6

Я вот себе задал вопрос, что такое автоломбард и с чем их едят! Пока не разобрался как следует.
]]> Рейтинг@Mail.ru ]]>