Что такого в этом javascript, почему javascript, и что есть еще полезного кроме него?
Что такое javascript?
Javascript - скриптовый язык, предназначенный для создания интерактивных веб-страниц.
Javascript не требуется компилировать, он подключается к HTML-странице и работает "как есть".
Javascript - НЕ java, а совсем другой язык. Он похоже называется, но не более того. У javascript есть свой стандарт: ECMAScript, спецификация которого находится на сайте в разделе стандарт языка.
Кто-то говорит, что javascript похож на Python, кто-то говорит о схожести с языками Ruby, Self. Правда заключается в том, что javascript сам по себе. Это действительно особенный язык.
Что умеет javascript?
Изменять страницу, писать на ней текст, добавлять и удалять теги, менять стили элементов.
Реагировать на события: скрипт может ждать, когда что-нибудь случится (клик мыши, окончание загрузки страницы) и реагировать на это выполнением функции.
Выполнять запросы к серверу и загружать данные без перезагрузки страницы. Это иногда называют "AJAX".
Устанавливать и считывать cookie, валидировать данные, выводить сообщения и многое другое.
Уникальность javascript
Прелесть и соль Javascript заключаются всего в нескольких пунктах.
Полная интеграция с браузером
Простые вещи делаются просто
Поддерживается почти везде
Этот компот преимуществ нельзя найти ни в одной из других технологий.
Например, такие технологии как ActiveX, VBScript, XUL - поддерживаются не в каждом браузере (не кросс-браузерны). Такие технологии как Flash, Silverlight, Java - не полностью интегрированы с браузером, работают в своем окружении.
Поэтому Javascript - уникальная технология, и таковой останется. Сейчас она развивается, создается язык Javascript 2 и новый интерпретатор.
Учите javascript.
Другие технологии. Альтернативы javascript.
Возможности javascript в некоторых областях, к сожалению, ограничены.
Поэтому используются альтернативные технологии.
Java
Java - по сравнению с javascript, java-applet'ы тяжелые, долго загружаются, но могут все. Они, как правило, используются там, где требуется почти-десктоп приложение. Очень сильно java'у потеснила технология Flash.
Java - один из наиболее распространенных в мире языков. На нем существует громадное количество библиотек, с помощью которых можно описывать сложные интерфейсы и алгоритмы. Но на интернет-сайтах это нужно редко.
Flash
Flash изначально появился как кроссбраузерная платформа и язык для мультимедии, для оживления веба красочной анимацией, аудио и видео. Но не только это вкусно в технологии Flash.
Мощные средства для создания сетевых соединений(сокеты)
Объекты для работы с мультимедиа: изображениями, аудио, видео
Внутреннее хранилище объектов, которые не посылаются на сервер при каждом запросе, как куки.
Удобные графические средства разработки для Flash
Ну и для баланса - недостатки, по сравнению с javascript.
Отдельный контейнер. Например, нельзя выделить участок текста, частично находящегося в контейнере Flash.
Плохо индексируется поисковиками. Поисковики ходят по HTML-ссылкам, но(пока?) не кликают по ссылкам внутри Flash-приложения.
Из Flash можно легко вызвать javascript. Наоборот - сложнее, но тоже возможно, поэтому целесообразно знать обе технологии и применять их вместе.
JavaFX, Silverlight, XUL, vbscript
Эти технологии призваны дополнять javascript в области коммуникации и построения интерфейсов.
Пока они все далеки по распространенности от javascript и flash.
JavaFX - "легкая" надстройка над Java, будет работать только с Java на компьютере клиента.
XUL - язык описания интерфейсов, удобен если писать планируете только под Mozilla. Также используется для написания десктоп-приложений.
Silverlight - конкурент Flash от Microsoft на основе .NET. Другими OS, кроме Windows, поддерживается слабо. Не имеет широкого распространения.
vbscript - попытка Microsoft сделать подобие javascript на основе Visual Basic. Не развивается, сильно уступает по возможностям, и, как следствие - практически не используется в современном веб-программировании.