Секреты приложений Google
Шрифт:
Приятного вам чтения и отличных интернет-сервисов!
Сергей Гребенников,
заместитель исполнительного директора РОЦИТ
Введение
Что же это такое – веб-приложение?
Несмотря на то что многим кажется, будто компьютеры вокруг были всегда, широкое распространение эти персональные вычислительные машины получили лишь в последние 30 лет. Еще более юна Повсеместно Протянутая Паутина, или World Wide Web, – Интернету в его сегодняшнем понимании лишь недавно исполнилось 20. Кроха! Удивительно, но на протяжении этой эволюции компьютеры
Начало 80-х годов прошлого века. Персональных компьютеров еще очень-очень мало. Предпочтение отдается терминалам: простейшим машинам, основная задача которых состоит в том, чтобы передавать введенную пользователем информацию большому и умному серверу, отображая результаты решения задач на экране. Полная централизация. Удобно? Не очень. Компьютеры должны быть непрерывно объединены в общую сеть, мощности центрального сервера не хватает, а о какой-либо надежности и говорить не приходится. Сервер – вот узкое место!
Именно в это время настает эра персональных компьютеров. Оснащенные собственным мощным по тем временам процессором, они могут самостоятельно, независимо ни от кого решать задачи, поставленные перед ним пользователем. Полная самостоятельность!
Так начинается победное шествие персональных компьютеров по планете. Концепция личной вычислительной машины оказалась очень привлекательной в мире, где только-только появившиеся сети были еще слишком медленны и дороги. Знаменитый закон Мура, гласящий, что количество транзисторов (а значит, до некоторой степени и вычислительная мощность) процессора будет увеличиваться в два раза каждые 18 месяцев, обеспечил непрерывный прирост производительности компьютеров. Впрочем, ускорение весьма умело осваивалось программистами, создающими все более «навороченные» программы (игры!).
А тем временем как-то внезапно выяснилось, что людям не очень-то нужны «стопроцентно персональные» компьютеры. Они хотят делиться и обмениваться друг с другом текстами, музыкой, видео! Интернет здесь оказался весьма кстати – с ним можно было забыть о неудобных дискетах, дисках, винчестерах и других накопителях, которые использовались для обмена информацией между машинами. Все через сеть! Благо к началу XXI в. высокоскоростной доступ в Интернет в крупных городах сначала за рубежом, а затем и в России перестал быть дорогим удовольствием и постепенно превратился в нечто обязательное вроде водопровода, электричества или канализации.
Для доступа во Всемирную сеть не обойтись без браузера, специальной программы, предназначение которой – отображать на экране данные, полученные извне, и отправлять туда же информацию пользователя. Ничего не напоминает? Ну конечно – перед нами еще один терминал! Да, теперь это всего лишь одна из программ, запущенных на компьютере, она в разы умнее и мощнее своего прародителя, много чего умеет, но… Суть дела от этого не меняется. Браузер, как и терминал, практически ничего не знает об отображаемых данных. (Да простят меня знатоки апплетов за столь вольное обобщение.)
А что, если кроме показа веб-страниц с новостями, проигрывания музыки или видеороликов попытаться сделать кое-что необычное? Как насчет идеи превратить браузер в полноценное приложение, такое как почтовый клиент или текстовый редактор? Зачем? Да для того, чтобы использовать все плюсы, которые дает Интернет, – легкость обмена данными и совместной работы, возможность удаленного резервного копирования и простоту обновления кода работающей программы! Ах, мало? Как насчет этого: загрузка ресурсов удаленных машин (того самого центрального сервера, только теперь вместо одного их могут быть сотни и тысячи) вместо своего драгоценного компьютера, никаких проблем с администрированием и поддержкой «зоопарка» программ, а главное – доступ к своим данным с любого подключенного к Интернету компьютера. Теперь забыть взять с собой в командировку важные файлы просто не получится!
Однако не все так просто. У обычных программ главным преимуществом перед веб-приложениями до последнего времени была скорость реакции. Нажал на кнопку – немедленно получил результат. Сравните этот подход с обычным веб-сайтом, где каждый щелчок по ссылке вызывает перезагрузку страницы! Для того чтобы завоевать своего пользователя, веб-приложениям жизненно важно было стать интерактивными.
И тут появился AJAX. Перефразируя известное изречение, можно сказать, что если бы AJAX’а не было, то его следовало бы придумать. Я не буду рассказывать вам о том, что означает в русском переводе аббревиатура Asynchronous Javascript and XML, – в этом нет никакой надобности. Скажу лишь, что с помощью этой замечательной технологии, которая на данный момент поддерживается всеми современными браузерами, можно выполнять различные действия, загружать и отображать на веб-странице данные, не обновляя страницу целиком. Теперь ее можно словно набирать из кубиков, и все они будут работать независимо друг от друга.
Это изменило все. По уровню реакции на действия пользователя веб-приложения вплотную приблизились к приложениям обычным, вобрав в себя все их плюсы и умудрившись попутно избавиться от кучи минусов. Добрую службу веб-приложениям сослужила и легкость их графического оформления: создать привлекательную HTML-страницу дизайнеру оказалось гораздо проще, чем пытаться сделать нечто, ласкающее взгляд, из скучных окон привычных программ, где добавление графики или приятных глазу округлостей может превратиться в настоящее мучение для программиста. Да, с точки зрения эстетики веб-приложения уверенно побеждают своих «настольных» собратьев.
Компания Google не была первым создателем веб-приложений. Примеры реализации интерактивных сетевых сервисов существовали и до нее. Но пожалуй, именно благодаря поисковому гиганту весь мир узнал о том, что с их помощью действительно можно работать. Похоже, причина в том, что инженеры Google сумели избежать ошибки большинства первопроходцев, бодро принявшихся штамповать клоны привычных офисных пакетов и почтовых клиентов: в Cети, точно грибы после теплого дождичка, начали появляться близнецы навороченных текстовых редакторов, электронных таблиц и даже операционных систем, каждая из которых гордо называла себя WebOS, операционной системой Интернета. Программисты Google первыми поняли, что в новых условиях необходимо предлагать принципиально иные способы решения привычных задач. Их интернет-приложения ориентированы на легкий старт, лаконичность представления (а чего еще вы ждали от компании, главная страница которой – Google.com – до сих пор состоит лишь из логотипа, строки ввода и двух кнопок?), а также простоту совместной работы и публикации результатов в любом месте Сети, будь то персональный блог или популярный новостной ресурс. Все это щедро сдобрено первоклассным поиском Google, который научился искать и успешно находить информацию не только в сети Интернет, но и внутри ваших документов, почтовых сообщений и новостных лент. Неплохо, правда?
Google предлагает своим пользователям множество веб-приложений, и для описания работы с каждым из них не хватит, наверное, и десятка книг. Именно поэтому эта книга посвящена лишь наиболее популярным и полезным из них – тем, с которыми любой желающий может начать работу прямо сейчас.
Электронная почта недаром считается центром информационной вселенной. С помощью почты автор этой книги общается с друзьями, управляет деятельностью нескольких своих сайтов, а также хранит важные файлы и другую информацию, которая может пригодиться в любой момент. Речь о возможностях электронной почты «от Google» под названием Gmail пойдет не далее как в следующей главе.