Главная » Статьи » JavaScript

Урок №1:Что такое JavaScript

Урок №1:Что такое JavaScript  
Введение

Большинство рядовых пользователей столкнулись с WWW в середине 90-х годов. Прошло еще совсем немного времени, и многие из них осознали тот, несомненно, приятный факт, что они могут создавать web-страницы самостоятельно!

Что же приятного в этой возможности? Давайте трезво взглянем на вещи. Для того, чтобы заявить о себе если не всему миру (будем скромнее), то определенному широкому кругу людей, можно воспользоваться либо радио, либо телевидением, либо прессой. В любом из вышеперечисленных случаев необходимо привлечь к решению задачи группу специалистов, обладающих необходимыми знаниями в выбранной области. Можно, конечно, обойтись и без специалистов, если вы сами специалист. Но есть и еще ряд "проблем": оборудование и система распространения. Сделаем один простой вывод: для создания и распространения информации с помощью вышеперечисленных средств необходимо как минимум очень много денег.

C внедрением www "в массы" ситуация на этом фронте кардинально изменилась. Изучение языка разметки, при помощи которого создавались web-страницы - HTML, оказалось по силам практически каждому. HTML поддерживается мощнейшей системой распространения - Internet. А для размещения страницы (сайта) в Internet в наше время денег или совсем не требуется, или их нужно сравнительно немного (в последнем случае возможности по созданию и обслуживанию web-страницы значительно расширяются).

Спустя еще некоторое время жестокая реальность расставила "все точки над ё". Оказалось, что для создания действительно привлекательного и часто посещаемого web-узла одних знаний HTML просто недостаточно. Кроме интересного, полезного содержания, узел должен обладать приятным оформлением, а для этого необходим неплохой художественный вкус, если не соответствующее образование. Но, как показывает практика, и этого недостаточно. Вам, наверняка, известен тот прискорбный факт, что одна и та же web-страница может по разному выглядеть в браузерах различных производителей и даже в различных версиях браузера одного и того же производителя. Таким образом, для создания полноценной страницы и обеспечения межбраузерной совместимости недостает еще одного звена. Именно этим звеном и является JavaScript.

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

Рождение JavaScript

Прообраз JavaScript - LiveScript был разработан компанией Netscape. Ожидалось, что LiveScript существенно расширит возможности HTML и станет частичной альтернативой CGI-сценариям (CGI - Common Gateway Interface - технология, позволяющая выполняемому на сервере программному модулю генерировать web-страницы, используя при этом внешние хранилища информации, например - базы данных или файлы). В дальнейшем компания Netscape начала работать с компанией Sun - создателем Java - над созданием нового языка сценариев, по синтаксису и семантике тесно связанным с Java. Отсюда и новое название - JavaScript.

С момента своего появления (декабрь 1995 г.) язык JavaScript имел существенную поддержку в лице ведущих производителей, в числе которых Apple, Borland, Sybase, Informix, Oracle. Digital, HP и IBM. JavaScript продолжает развиваться, внедряясь не только в современные браузеры, но и в приложения, созданные различными компаниями.

Немного позже, понимая всю важность создания Web-сценариев, Microsoft решила поддержать JavaScript. Однако компания Netscape предпочла передать Microsoft лишь только лицензию на право использования технологии. На основе общедоступной документации в Microsoft был создан "перепроектированый" JavaScript - JScript, поддерживаемый Internet Explorer 3.0 и выше. JScript 1.0 плохо совместим с JavaScript 1.1, используемым Netscape Navigator 3.0 и более поздними браузерами. В конечном итоге множество версий и различных хитростей, характерных для того или иного браузера, стали причиной головной боли для разработчиков Web-сайтов, использующих JavaScript.

К счастью, огорченные разработчики сценариев смогли вздохнуть свободно. Компании Netscape, Microsoft и другие производители решили подогнать язык под стандарты ЕСМА (European Computer Manufactureres Association). В тот период ЕСМА составила спецификацию языка - ECMAScript, что поддержали все производители. Хотя стандарты ЕСМА оказывают существенную помощь, все же компании Netscape и Microsoft продолжают развивать языки JavaScript и JScript, выходя при этом за пределы стандартов.

Помимо JScript, еще одним конкурентом JavaScript является VBScript, созданный с целью упрощения Web-разработок на Visual Basic (VB). VBScript является подмножеством языка Visual Basic. Из-за отсутствия поддержки со стороны Netscape, VBScript используется для интрасетей. Он пользуется большой популярностью у пользователей Microsoft Internet Explorer.

Несмотря на появление VBScript, JavaScript стал стандартным языком сценариев для Web (и не только клиентских).

Возможности JavaScript

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

Итак, что происходит, когда браузер загружает HTML страницу? В самом простом случае происходит простой процесс - построчное считывание файла, начиная с тэга <html> (обычно) в начале и заканчивая </html> в конце. Однако браузер может прервать этот процесс, в зависимости от содержания страницы. К примеру, если в теле страницы будет встречен элемент <img src="..." />, браузер отправит к серверу запрос на получение изображения, адрес которого указан атрибутом src.

Приблизительно то же самое происходит и в тех случаях, когда браузер сталкивается с командами клиентского сценария. JavaScript, как и все клиентские сценарии является интерпретируемым языком программирования. В отличии от C++, средствами которого можно написать программу, компилируемую в исполняемый файл, команды интерпретируемого языка выполняются другой программой (в нашем случае браузером). Текст сценария записывается непосредственно в HTML странице и отправляется вместе с ней на компьютер пользователя. При разборе страницы, браузер, встречая команды сценария, просто выполняет их. Этот принцип имеет множество достоинств и ряд ограничений, которые рассматриваются ниже.

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

Итак, какие основные цели преследует любой создатель web-страницы, внедряя в нее сценарии:

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

Однако, если говорить о возможностях того или иного инструмента, полезно сделать не только обзор того, "что можно сделать", но и обратной стороны медали - "чего нельзя сделать". Этим мы с вами и займемся.

При помощи JavaScript нельзя:

  • вызывать функции программного интерфейса приложений операционной системы - API;
  • управлять распределением оперативной памяти;
  • получать доступ к файлам и др. системным ресурсам сервера;
  • получать доступ к файлам (кроме файлов предпочтений - cookie, которые рассматриваются в курсе позже) и др. системным ресурсам клиента;
  • работать с базой данных;

Если трезво взглянуть на вещи, то некоторые ограничения JavaScript можно считать его достоинствами. К примеру, возьмем вопрос получения доступа к файлам и др. системным ресурсам клиента. Чувствовали бы вы себя уютно, понимая, что чуть ли не любая интернет-страница может "покопаться" у вас на жестком диске или в реестре? Не думаю... Так что ограничения описанные выше являются вполне обоснованными.

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


Категория: JavaScript | Добавил: Шаке (25.04.2012)
Просмотров: 1618 | Комментарии: 1 | Теги: для начинающих, www, джава скрипт, java script, Браузер, Javascript
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
/>meta http-equiv=