Какие
ошибки бывают в программах
Очень
часто только что написанная программа содержит ошибки. Более того, если она
имеет объем более десяти строк, будьте уверены — хоть одна ошибка там обязательно
присутствует. (Уж не говоря о более сложных программах...) Проистекает все это
из пресловутой "ненадежности" людей. В самом деле, компьютеры при
всех их недостатках никогда не ошибаются сами по себе. Все компьютерные ошибки
всегда обусловлены либо неблагоприятными внешними воздействиями (космическое
излучение, скачки напряжения в сети, отсутствие дискеты в дисководе и т. п.),
либо внутренними (ненадежная электроника, опять же, ошибки в программах). Только
люди ошибаются без всяких причин.
Ошибки
в программах бывают двух видов:
- Синтаксические
ошибки — это неточности в написании самого программного кода. В результате
синтаксической ошибки интерпретатор или компилятор не может правильно расшифровать
выражение. В этом случае он выдает сообщение о синтаксической ошибке. Например,
Internet Explorer огорошит нас таким сообщением — см. рис. 13.35.
Рис.
13.35. Сообщение о синтаксической ошибке Internet Explorer
- Логические
ошибки — это ошибки в логике работы программы. Программный код выглядит абсолютно
правильным, но работает неправильно. Такие ошибки выявить и исправить намного
сложнее.
Обычно
программист сразу же после написания программы обязательно ее проверит, "погоняет"
сам, чтобы прячущиеся в ней ошибки "вылезли" наружу, проявились. Этот
процесс и называется отладкой. За отладкой обычно следует исправление найденных
ошибок и новая отладка. И так повторяется довольно долго, пока программист не
будет уверен, что ошибок в его творении больше нет.
Не
всегда, правда, это бывает так. Очень часто уже готовые программы содержат ошибки.
Но разговор сейчас не об этом. Давайте поговорим, почему процесс отладки не
всегда позволяет выявить все ошибки.
Вообще-то
все ошибки в достаточно сложной, многокомпонентной программе выявить невозможно.
Дело в том, что программа может устанавливаться на компьютерах самых разных
конфигураций, и для того, чтобы быть уверенным, что программа действительно
будет на всех них работать, разработчик должен на всех них ее и проверить. Сами
понимаете, что это физически невозможно. Другое дело, что программист может
пропустить какую-то ошибку, не исправить ее. Здесь можно говорить как о его
невнимательности, так и о его ограниченности. С невнимательностью все понятно.
А вот с ограниченностью...
Программный
код на современных компьютерах выполняется с большой скоростью. Более того,
этот код зачастую представляет собой "вещь в себе"; разработчик не
может "влезть" внутрь его, посмотреть, что хранится в той или иной
переменной, хотя часто без этого не обойтись. В этом его ограниченность.
А
человек всегда преодолевает свою ограниченность посредством созданных им машин.
Поэтому были созданы специальные программы — отладчики, позволяющие "заглянуть"
в программный код и увидеть, как он работает. Сейчас все средства для разработки
программ имеют в своем составе такие отладчики.
Не
стал исключением и Dreamweaver. Он позволяет вам проверить программы, используемые
в Web-страницах, а именно Web-сценарии. Если вы пишете сценарии сами, без отладчика
вам будет трудно обойтись.
Какие
же возможности предлагают нам современные программы-отладчики?
- Установка
так называемых точек останова. Это особые метки в коде программы, на которых
выполнение приостанавливается, после чего программист может посмотреть на
результат работы своей программы. После этого выполнение программы может быть
продолжено до ее конца или до следующей точки останова. Точки останова применяются,
чтобы выяснить, что происходит в том или ином участке кода программы.
- Пошаговое выполнение
кода. Программист может выполнять программный код выражение за выражением
и наблюдать за результатами выполнения. Пошаговое выполнение позволит точно
узнать, как выполняется программа, и что происходит во время ее выполнения.
- Просмотр значений
переменных. Может пригодиться практически всегда.
Так,
с отладчиками вообще мы разобрались. Обратимся теперь к конкретному представителю
этого славного семейства - встроенному отладчику Dreamweaver.
Содержание раздела