|Учебный корпус| |Факультатив| |Общага| |Лавка| |Деканат| |Бухгалтерия| |Курилка| |Работа|
Рефераты Soft Обзор Приколы Soft Гостевая книга Банеро-обмен Форум Опрос

JAVA Программируем на Java
INTERNET Что такое Internet
C++
   
ВВЕДЕНИЕ.
Казалось бы, на сегодняшний день изобретены уже все языки программирования, какие только можно придумать. Но не появился еще один, с названием Java. Этот Язык сумел получить весьма заметную известность за последние несколько лет, так как он ориентирован на самую популярную компьютерную среду - сеть Internet и серверы Web.Персональные компьютеры сделали информационные технологии частью массовой культуры. И, тем не менее, уже довольно длительная история развития персональных
компьютеров не знала ничего, подобного феномену Java. Что изменилось в мире в последние годы, почему этот феномен стал возможен? Изменился Интернет. Он стал доступен миллионам людей, далеких от технических проблем. Число пользователей Интернет по порядку величины уже не отличается от числа пользователей персональных компьютеров и продолжает, взрывообразно расти. Одновременно Интернет обеспечил такую скорость распространения новинок информационных технологий, которую не могли и никогда не смогут дать традиционные каналы сбыта. Время спрессовалось. В Интернет, опоздав буквально на
день, компьютерная компания, даже крупная, рискует серьезно ослабить свои позиции сразу во всем мире. Язык Java произошел от языка программирования Oak (а не от C++, как думают многие). Oak был приспособлен для работы в Internet и затем переименован в Java.
Синтаксис Java близок к синтаксису языка C++. Унаследовав самое лучшее от языка программирования C++, язык Java при этом избавился от некоторых недостатков C++, в результате чего на нем стало проще программировать. В этом языке нет, например, указателей, которые сложны в использовании и потенциально могут послужить причиной доступа программы к непринадлежащей ей области памяти. Нет множественного наследования и шаблонов, хотя функциональные возможности языка Java от этого не пострадали. Огромное преимущество Java заключается в том, что на этом языке можно создавать приложения, способные работать на различных платформах. К сети Internet
подключены компьютеры самых разных типов - Pentium PC, Macintosh, рабочие станции Sun и так далее. Даже в рамках компьютеров, созданных на базе процессоров Intel, существует несколько платформ, например, Microsoft Windows версии 3.1, Windows 95, Windows NT, OS/2, Solaris, различные разновидности
операционной системы UNIX с графической оболочкой X-Windows. Между тем, создавая сервер Web в сети Internet, хотелось бы, чтобы им могло пользоваться как можно большее число людей. В этом случае выручают приложения Java, предназначенные для работы на различных платформах и не зависящие от конкретного типа процессора и операционной системы.Программы, составленные на языке программирования Java, можно разделить по своему назначению на две большие группы.К первой группе относятся приложения Java, предназначенные для автономной работы под управлением специальной интерпретирующей машины Java. Реализации этой машины созданы для всех основных компьютерных платформ.
Вторая группа - это так называемые атлеты (applets). Аплеты представляют собой разновидность приложений Java, которые интерпретируются виртуальной машиной Java, встроенной практически во все современные браузеры. Приложения, относящиеся к первой группе (будем называть их просто приложениями Java), - это обычные автономные программы. Так как они не содержат машинного кода и работают под управлением специального интерпретатора, их производительность заметно ниже, чем у обычных программ, составленных, например, на языке программирования C++. Однако, не следует забывать, что программы Java без перетрансляции способны работать на любой платформе, что само по себе имеет большое значение в плане разработок для Internet.Аплеты Java встраиваются в документы HTML, хранящиеся на сервере Web. С помощью аплетов можно сделать страницы сервера Web динамичными и интерактивными. Аплеты позволяют выполнять сложную локальную обработку данных, полученных от сервера Web или введенных пользователем с клавиатуры. Из соображений безопасности аплеты (в отличие от обычных приложений Java) не имеют никакого доступа к файловой
системе локального компьютера. Все данные для обработки они могут получить только от сервера Web. Более сложную обработку данных можно выполнять, организовав взаимодействие между аплетами и расширениями сервера Web - приложениями CGI и ISAPI. Для повышения производительности приложений Java в современных браузерах используется компиляция "на лету"- Just-In-Time compilation (JIT). При первой загрузке аплета его код транслируется в обычную исполнимую программу, которая
сохраняется на диске и запускается. В результате общая скорость выполнения аплета Java увеличивается в несколько раз.
Язык Java является объектно-ориентированным и поставляется с достаточно объемной библиотекой классов. Так же как и библиотеки классов систем разработки приложений на языке C++, библиотеки классов Java значительно упрощают разработку
приложений, представляя в распоряжение программиста мощные средства решения распространенных задач. Поэтому программист может больше внимания уделить решению прикладных задач, а не таких, как, например, организация динамических массивов, взаимодействие с операционной системой или реализация элементов пользовательского интерфейса.2. JAVA, JOE, NEO.
В узком смысле слова Java - это объектно-ориентированный язык, напоминающий C++, но более простой для освоения и использования. В более широком смысле Java - это
целая технология программирования, изначально рассчитанная на интеграцию с Web-сервисом, то есть на использование в сетевой среде, Поскольку Web-навигаторы существуют практически для всех аппаратно-программных платформ, Java-среда должна быть как можно более мобильной, в идеале полностью независимой от
платформы.С целью решения перечисленных проблем были приняты, помимо интеграции с Web-навигатором, два других важнейших постулата: T Была специфицирована виртуальная Java-машина, на которой должны выполняться (интерпретироваться) Java-программы. Определены ее архитектура, представление элементов данных и система команд. Исходные Java-тексты транслируются в коды этой машины. Тем самым, при появлении новой аппаратно-программной платформы в портировании будет нуждаться только Java-машина; все программы, написанные на Java, пойдут без изменений. T Определено, что при редактировании внешних связей Java-программы и при
работе Web-навигатора прозрачным для пользователя образом может осуществляться поиск необходимых объектов не только на локальной машине, но и на других компьютерах, доступных по сети (в частности, на WWW-сервере). Найденные объекты загружаются, а их методы выполняются затем на машине пользователя. Несомненно, между двумя сформулированными положениями существует тесная связь. В компилируемой среде трудно как дистанцироваться от аппаратных особенностей компьютера, так и реализовать прозрачную динамическую загрузку по сети. С другой
стороны, прием объектов извне требует повышенной осторожности при работе с ними, а, значит, и со всеми Java-программами. Принимать необходимые меры безопасности проще всего в интерпретируемой среде. Вообще, мобильность, динамизм и
безопасность - спутники интерпретатора, а не компилятора.
Принятые решения сделали Java-среду идеальным средством разработки клиентских компонентов Web-систем. Особо отметим прозрачную для пользователя динамическую загрузку объектов по сети. Из этого вытекает такое важнейшее достоинство, как нулевая стоимость администрирования клиентских систем, написанных на Java. Достаточно обновить версию объекта на сервере, после чего клиент автоматически получит именно ее, а не старый вариант. Без этого реальная работа с развитой сетевой инфраструктурой практически невозможна. С другой стороны, при наличии
динамической загрузки действительно возможно появление устройств класса Java-терминалов, изначально содержащих только WWW-навигатор, а все остальное (и программы, и данные) получающих по сети. Здесь уместно отметить замечательную точность в выборе основных посылок проекта Java. Из минимума предположений вытекает максимум новых возможностей при сохранении практичности реализации. В то же время, интеграция с WWW-навигаторомиинтерпретируемая природа Java-среды ставят вполне определенные рамки для реального использования
Java-программ (хотя, конечно же, язык Java не менее универсален, чем, скажем, C++). Например, известно, что интерпретация, по сравнению с прямым выполнением, на 1-2 порядка медленнее. Применение компиляции "на лету" и специализированных
Java-процессоров, несомненно, улучшит ситуацию, но пока использование Java на серверной стороне представляется проблематичным. Прямая связь между Java-клиентами и корпоративными серверами Хотя технология Internet, основанная на использовании Web-сервиса в качестве информационной основы организации, является огромным шагом вперед, существуют и другие сервисы, как унаследованные, так и современные (например, реляционные СУБД), которые обязательно должны входить в состав корпоративной системы.
Если вся связь между клиентами и упомянутыми серверами будет осуществляться через сервер WWW, последний станет узким местом, а решения Internet рискуют лишиться такого важнейшего достоинства, как масштабируемость. Значит, необходима
прямая связь между клиентскими системами, написанными на языке Java, и произвольными сервисами. Как реализовать такую связь? В общем, виде ответ очевиден - нужны средства для полноценной интеграции Java в распределенную объектную среду. На серверной стороне компания Sun Microsystems имеет соответствующую технологию - NEO (NEtworked Objects, сетевые объекты). технология NEO удовлетворяет спецификациям OMG (Object Management Group), являющимся промышленным стандартом. При реализации корпоративных информационных
систем с использованием NEO наиболее естественным представляется использование трехуровневой архитектуры с серверами приложений, построенными на объектных
принципах, на втором уровне и с базовыми и унаследованными серверами на третьем уровне. К сожалению, столь общий ответ никак не помогает осуществлять прямую связь между Java-клиентом и NEO-сервером. Конечно, можно воспользоваться стандартными
средствами программирования в сетевой среде (а Java допускает использование библиотек, написанных на C/C++, равно как и вставку машинных кодов), но если бы это было единственной возможностью, Java рисковала остаться на уровне " оживлялок".
В конце марта компания SunSoft объявила о появлении нового продукта с именем Joe, как раз и предназначенного для существенного облегчения встраивания Java-клиентов в информационные системы Internet, построенные в трехуровневой
архитектуре с использованием среды NEO. Таким образом, сложилась полная и изумительно красивая картина организации
современных Internet-систем. В этой части мы постарались дать общее представление о языке программирования Java

К моему сожалению из-за большого объема реферата опубликована только его вводная часть, если вы желаете получить полный текст реферата скачайте архив Zip 61 kb.
 
 

 
На сайте На Народ.Ру На Яндексе


 
Сайт создан в системе uCoz