Тайны и секреты компьютера - Антон Орлов
Шрифт:
Интервал:
Закладка:
Если страница большая, со множеством элементов, то ориентироваться в ней непросто. Желательно было бы представить ее в виде некоей структуры, «карты». И это позволяет делать Script Editor! Открыв окно "View-OtherWindow-DocumentOutline", можно получить подробнейшую схему страницы (рис. 18.6), со всеми ее иерархическими связями и компонентами. И если надо быстро перейти к какому-либо компоненту страницы, то рыться в тоннах кода нет необходимости — пара кликов на его имени в схеме, и курсор — уже на этом элементе.
Рис. 18.6. Схема web-страницы — просто подарок для дизайнера, который уже запутался в переплетениях таблиц, ссылок, рисунков…
В окне Project Explorer, которое можно вызвать из меню View, отображаются все открываемые ранее для редактирования файлы. Любой из них можно загрузить для работы двумя кликами мыши. Тоже — удобно: открыл единожды все файлы в папке с сайтом и загружай любой без поисков в диалоговых окнах или "Проводнике".
Все панели инструментов и окна являются свободно перемещаемыми по экрану. Их можно расположить как в окне Script Editor, так и в любом другом месте. Но особенно привлекает интересное техническое решение в Script Editor из Microsoft Office 2000, предложенное разработчиками редактора и помогающее быстро и удобно организовать для себя оптимальную рабочую среду. На одной из панелей инструментов (а посмотреть их список и отобразить любую можно так же, как и в Word — просто щелкнув правой кнопкой мыши в любом месте серого поля вверху окна, рядом с панелями инструментов), Windows UI, есть выпадающее меню, содержащее перечень возможных состояний рабочей среды — Debug, Design, Edit Html и др. Если выбрать какое-нибудь из них, то Script Editor само примет соответствующее состояние — будут отображены нужные и закрыты ненужные панели и окна, компоненты редактора выстроятся около краев. К примеру, при выборе состояния Edit Html отобразятся главное окно с кодом, окна Document Outline, Properties и Project Explorer — все, что нужно для полноценной работы с кодом. К сожалению, из следующей версии Script Editor'а данное меню разработчики почему-то убрали.
Всего вышеизложенного хватило бы на приличный редактор web-страниц, который занял бы достойное место на рынке. Но рассказанное — лишь малая часть возможностей этого поистине уникального инструмента для создания страниц Интернет-ресурса любой сложности, поставляемого вместе с пакетами Microsoft Office 2000 и Microsoft Office XP и, к сожалению, так мало описанного в руководствах. Особую уникальность Script Editor придает то, что помимо web-редактора он представляет из себя еще и среду программирования, по набору функций похожую на среду Visual Basic for Applications. Рассчитана эта среда на два языка — JavaScript, VBScript, а также на использование технологии Active Server Pages, которая позволяет выполнять сценарии на скриптовых языках на стороне web-сервера. С технологией ASP большинству пользователей вряд ли придется столкнуться, она используется сейчас нечасто, а вот первые два языка сценариев позволяют украсить и сделать удобной любую страницу, где бы она ни была расположена.
Те, кто уже писал макросы для Microsoft Word, найдут в Script Editor много общего с встроенным в Word редактором Visual Basic for Applications. И это понятно — Microsoft стремится создать единую среду программирования для разработки приложений на любых языках, включая в новые редакции своих продуктов лучшее из предыдущих версий. Кроме того, web-сценарии фактически представляют собой "макросы для браузера", так как они не компилируются заранее, а интерпретируются браузерами после загрузки web-страницы.
Чтобы добавить на страницу сценарий, даже не надо самому писать тэги. Можно просто кликнуть правой кнопкой мыши на нужном месте и из контекстного меню выбрать Script Block-Client (второй вариант этого меню, Server, относится к возможности реализации технологии ASP). Для более легкой ориентировки на странице, где имеется множество скриптов, очень хорошо использовать окно Script Outline (в Microsoft Office 2000 вызывается из меню View-Other Window-Script Outline, а в Microsoft Office XP — кнопкой в заголовке вышеописанного окна Document Outline), в котором перечислены все скрипты, находящиеся в документе. Чтобы перейти к нужному, достаточно пары кликов мыши (рис. 18.7), при этом курсор в окне Source установится на его начало.
Рис. 18.7. Карта сценариев web-страницы. Все четко структурировано
Если в документе есть обьекты Dynamic HTML (то есть поименованные компоненты — любому элементу web-страницы можно дать имя, включив в его тэг выражение "id=уникальное_имя" и впоследствии обращаться к этому элементу из сценариев[51]), то окно Script Outline в Script Editor из Microsoft Office 2000 дает возможность быстро создавать заготовки обработчиков событий (то есть сценариев, описывающих какие-либо действия при наступлении какого-либо состояния страницы, браузера или обьектов — компонентов документа). Имена всех таких обьектов отображаются в Script Outline, и при необходимости создать сценарий-реакцию на какое-либо событие достаточно щелкнуть на имени нужного обьекта и выбрать нужное событие (заодно можно узнать, какие вообще события могут происходить с этим обьектом). В документ, в его раздел <head> будет вставлена заготовка скрипта-обработчика. Имена уже существующих обработчиков выделяются жирным шрифтом и, нажав на какое-нибудь из них, можно переместиться к его коду. К сожалению, в Microsoft Office XP из Script Editor'а была убрана и эта возможность.
(Технология Dynamic Html неразрывно связана с технологиями JavaScript и VBScript. Иными словами, можно сказать, что Dynamic Html позволяет обратиться к любому обьекту на странице, а VBScript и JavaScript — что-нибудь с этим обьектом сделать. Поэтому сценарии на VBScript и JavaScript часто включают в себя элементы Dynamic Html — обращения к поименованным элементам страницы.)
В списке обьектов окна Script Outline всегда присутствуют обьекты window (то есть окно браузера) и document — сама web-страница и, соответственно, их события — загрузка, выгрузка, прокрутка и др. Само это окно доступно, разумеется, только в режиме просмотра кода.
При написании самого текста сценария Script Editor как бы «ведет» программиста по программе, подсказывая ему возможные продолжения команд. Подобная система используется в большинстве современных средств разработки приложений, так что те, кто ранее программировал на других языках, окажутся в своей привычной среде, а те, кто ранее не занимался созданием программ, получат возможность познакомиться с настоящей средой программирования.
Если программист, создавая текст сценария (то есть вводя команды в текст страницы между тэгами <script…> и </script>, напишет имя какого-либо обьекта, то Script Editor выдаст ему список возможных действий с этим обьектом (рис. 18.8).
Рис. 18.8. Создавая сценарий, думай только об алгоритме — остальное редактор тебе подскажет: и возможные продолжения команды….
Если же будет написано имя команды, то разработчику будет предоставлена краткая всплывающая справка о ее синтаксисе (рис. 18.9).
Рис. 18.9.…и ее необходимые параметры…
Сценарий — это самая настоящая программа, и, к сожалению, при ее написании ошибки практически неизбежны. В Script Editor есть мощная система отладки сценариев, мало чем уступающая аналогичным системам других сред программирования. Для того, чтобы установить местонахождение ошибки, используются "точки останова" и контрольные значения, а чтобы разобраться в сложной странице, где есть несколько скриптов, вызывающих один другой — окно стека вызова — "Call Stack". В окне редактора можно пометить с помощью мыши на сером поле у левого края окна определенные строки сценария (поставить "точку останова"), и в этом случае при загрузке страницы с этим сценарием в браузер из среды Script Editor (это можно сделать, нажав клавишу F5) в момент, когда выполнение сценария дойдет до отмеченной строки, его работа остановится и активируется окно редактора кода. Задержав в этот момент курсор мыши над какой-нибудь переменной из кода сценария, во всплывающей подсказке можно увидеть ее значение. Также значение любой переменной показывается в окне контрольных значений ("Locals").
Система отладки сценариев Script Editor очень похожа на аналигичную систему редактора Visual Basic for Applications, описанную в первой части книги.
Все имеющиеся в Script Editor из Microsoft Office 2000 окна, предназначенные для web-программирования, показаны на рис. 18.10. Отличия в Microsoft Office XP несущественны.
Рис. 18.10. Все, что нужно для полноценного программирования.
Выполнять сценарий по строкам, чтобы поточнее определить место ошибки, труда не составит — богатые возможности меню Debug (т. е. "Отладка") всегда к вашим услугам.
Всех перечисленных возможностей Script Editor с лихвой хватит подавляющему большинству разработчиков web-страниц. Те же, кто занимается web-программированием профессионально, найдут в этом редакторе практически все необходимые инструменты для создания мощных web-приложений, не описанные здесь за недостатком места, — такие, как окно просмотра процессов системы и т. д. Если пожелаете, то можете попробовать самостоятельно разобраться с возможностями Script Editor в облсти программирования, однако вам будет это гораздо проще сделать, если вы сначала познакомитесь с какой-либо средой программирования, например, редактором Visual Basic for Applications, описанным в первой части книги. В противном случае выяснить назначение некоторых инструментов будет не очень просто.