18c0693f

Принципиальные особенности Web-программирования


Назову три момента, характерные для Web-программирования:

Что я имею в виду, когда говорю о "многомерности" кода? Дело в том, что код, создаваемый программистом, всегда представляет собой линейный текст. Однако исполнение написанного кода в Web-документе, чаще всего, будет разнесено в пространстве и времени. Как правило, у кода будет два исполнителя - Web-сервер на серверной стороне и Обозреватель на клиентской. Прежде чем страница документа будет послана обозревателю, ее текст читается Web-сервером, который находит относящиеся к нему части кода и выполняет его. Страница с результатами этой работы передается по сети клиенту, и там уже обозреватель, установленный на клиентском компьютере, выполняет свою часть работы, исполняя предназначенный ему код и отображая страницу на экране. После этого за дело берется пользователь, работающий за клиентским компьютером, - он выбирает нужные ему данные из списков, заносит требуемую информацию в поля ввода, нажимает командные кнопки и выполняет доступные команды меню. В ходе обработки возникающих событий обозреватель, как правило, обращается к серверу за получением очередной страницы документа, передавая ему одновременно информацию о том, какой должна быть эта страница в соответствии с запросами пользователя. Сервер находит нужную страницу, выполняет относящийся к нему код с учетом полученной им информации. Далее процесс повторяется. Напомню, что в роли Web-сервера я рассматриваю IIS, в роли обозревателя - Internet Explorer, а страницы, выполняемые на серверной стороне, являются ASP-страницами.

Сделаю еще несколько замечаний по поводу деталей этого процесса:


"Многомерный" характер программного кода, конечно, усложняет написание и понимание соответствующего текста. Другим фактором, усложняющим жизнь Web-программистов, является слабая структурированность программного кода. В языке VBScript нет модульности, присущей развитым языкам программирования. Программный код сервера не отделен от программного кода клиентской части. Теги "script" идут вперемешку с другими тегами. Объявления не отделены от исполняемого кода. Ну, уж конечно, нет, как в проектах на VBA, стандартных модулей, модулей - обработчиков событий. Поэтому ответственность за придание нужной структуры в полной мере ложится на программиста, который сам должен придать структуру своему проекту, чтобы ему самому легче было в нем ориентироваться и вносить необходимые изменения, которые не заставляют себя долго ждать. Чуть позже я приведу некоторый набор правил, которыми я пользуюсь в своей работе для придания коду определенной структуры.

Следствием первых двух факторов является и сложность отладки. ASP-страницы, содержащие серверный код отлаживать сложнее, чем HTML-страницы, содержащие только клиентский код. Скажу несколько слов о тех средствах отладки, которые предоставляет редактор VBScript Editor.



"Многомерный" характер программного кода, конечно, усложняет написание и понимание соответствующего текста. Другим фактором, усложняющим жизнь Web-программистов, является слабая структурированность программного кода. В языке VBScript нет модульности, присущей развитым языкам программирования. Программный код сервера не отделен от программного кода клиентской части. Теги "script" идут вперемешку с другими тегами. Объявления не отделены от исполняемого кода. Ну, уж конечно, нет, как в проектах на VBA, стандартных модулей, модулей - обработчиков событий. Поэтому ответственность за придание нужной структуры в полной мере ложится на программиста, который сам должен придать структуру своему проекту, чтобы ему самому легче было в нем ориентироваться и вносить необходимые изменения, которые не заставляют себя долго ждать. Чуть позже я приведу некоторый набор правил, которыми я пользуюсь в своей работе для придания коду определенной структуры.

Следствием первых двух факторов является и сложность отладки. ASP-страницы, содержащие серверный код отлаживать сложнее, чем HTML-страницы, содержащие только клиентский код. Скажу несколько слов о тех средствах отладки, которые предоставляет редактор VBScript Editor.




Все публикации раздела