Карты Google были запущены пару недель назад, и это еще одна драматическая победа для динамических веб-приложений. Если вы еще не видели его, посмотрите его (IE / Windows или Firefox / Mozilla только на данный момент, но поддержка Safari «скоро»). Это действительно впечатляющая работа, с основным фактором «вау», возникающим при динамическом панорамировании — просто перетаскивайте, чтобы перемещаться по карте, с новыми плитками карты, плавно загружающимися в фоновом режиме.
Другие функции включают в себя умную прокладку маршрута (например, поиск Вашингтона, округ Колумбия, Чикаго ), навигацию с помощью клавиатуры и интегрированные результаты поиска из Google Local . Это уже дает признанным картографическим сайтам пробежку за их деньги, единственная реальная слабость — полное отсутствие зон за пределами Северной Америки.
Но как это работает? Загляните под капот, и вы найдете удивительное сочетание технологий. Удаленный сценарий (общение с сервером без перезагрузки страницы) достигается с помощью XMLHttpRequest и невидимых iframes с использованием iframes, поскольку в отличие от XMLHttpRequest они разумно интегрируются с кнопкой возврата пользователя. Добавьте к этому и XSLT, и VML (альтернативу Microsoft SVG, представленную до стандартизации SVG), и вы получите одно из самых совершенных веб-приложений, которое я когда-либо видел в общедоступном Интернете.
У jgwebber есть превосходный анализ клиентской части, и в моем другом блоге есть нить, в которой обсуждаются некоторые внутренние аспекты.
Выяснение того, как это работает, — только половина этого; Есть растущая коллекция хаков для сервиса . Джон Уделл указал на скрытый XML-интерфейс с базовыми данными, который сейчас не поддерживается. Более того, проект libgmail опубликовал несколько букмарклетов, которые непосредственно управляют Google Картами, включая некоторые, которые могут анимировать маршруты, предлагаемые сервисом (см. Скриншот Джона Уделла ). С ними очень весело играть и рассказывать еще больше о JavaScript API. Захватывать плитки Google Карт также весело.
Это все захватывающие вещи, но я не могу не чувствовать себя немного обеспокоенным. Google Maps по всем параметрам напоминает GMail в том, что он остается полностью недоступным без современного настольного браузера с поддержкой JavaScript. Построение таких приложений, которые изящно ухудшаются, может быть сложнее, но это, безусловно, не невозможно, как наглядно демонстрирует map.search.ch . Я надеюсь, что в захватывающей новой золотой лихорадке к действительно динамичным веб-приложениям не будут забыты последние достижения в области доступности (как для пользователей, так и для платформ).