Сборник тезисов докладов IX Международной молодежной научной конференции

Полярное сияние 2006

Ядерное будущее: безопасность, экономика и право

Содержание сборника

Секция «Молодежь и проблемы занятости в атомной отрасли»

Все доклады секции


СИСТЕМА АВТОМАТИЗАЦИИ ОБНОВЛЕНИЯ, СБОРКИ И ПУБЛИКАЦИИ ИНФОРМАЦИОННЫХ WEB-ПРОЕКТОВ В ВУЗАХ РОСАТОМА

Сафонов А.А.

Новоуральский государственный технологический институт

Практически каждый ВУЗ на сегодняшний день имеет свою информационную систему, значительная составляющая которой реализуется в виде единого web-проекта (сайта). Такую систему необходимо уметь гибко администрировать. Поэтому в процессе создании любого, даже небольшого web-проекта, всегда необходимо учитывать, что текущая информация, дизайн и система навигации в дальнейшем могут претерпеть значительные изменения. Для обеспечения web-проекта функциями обновления, используются различные средства проектирования, сборки и обновления web-страниц.

Как правило, самым распространенным решением является построение структуры сайта посредством серверных языков php или perl. Их использование значительно облегчает процесс разработки проекта web-программистом, однако имеет ряд минусов:

·         страницы с одного сервера одновременно могут запрашивать сотни пользователей; если каждая из них содержит сценарий, который должен выполняться сервером, то время загрузки этих страниц резко падает;

·         для создания структуры страницы использование средств серверных языков просто иррационально: на сервере тысячи раз выполняется один и тот же код для получения одного и того же результата;

·         для редактирования проекта необходим постоянный доступ в Интернет, либо на машину необходимо ставить эмулятор сервера (например, Деневр), что препятствует просмотру проекта в обычных условиях;

·         большинство бесплатных хостингов, на которые рассчитана большая часть web- проектов, не поддерживают использование серверных языков (даже SSI).

Для обхода этих проблем при создании web-части информационной системы НГТИ была спроектирована и программно реализована система автоматизации обновления, сборки и публикации web-проектов, в которой используется принципиально новая схема реализации процессов внедрения изменений. Система позволяет на любом этапе проектирования внедрить собственный сложный инструментарий (например, для генерации кода навигации, нумерации и перераспределения перекрестных ссылок).

Главным принципом разработанного подхода является отделение файлов, разрабатываемых web-программистом, от файлов, публикующихся на узле. Это позволяет на этапе подготовки конечных файлов совершать с исходными файлами дополнительные операции, добавление и разработка которых ограничивается только желаниями программиста. Кроме того, отдельно хранящийся проект web-сайта обеспечивает дополнительную надежность, так как при необходимости его можно будет восстановить заново.

Второй принцип технологии – разбиение всех страниц проекта на фрагменты, которые будут одинаковыми для определенного блока страниц и которые будут «прикреплены» к одной конкретной странице. Конечная страница собирается из исходных фрагментов по заранее заданной схеме. Особо стоит отметить, что «сборка» происходит до публикации web-ресурса.

Весь путь получения финального собранного сайта из файлов-заготовок можно разбить на 4 этапа: подготовка файлов-фрагментов для сборки страниц; сборка страниц с заданными параметрами; обработка файлов для получения заданных свойств; сборка проекта.

За каждым этапом стоит свое программное обеспечение, отвечающее за выполнение отведенных для каждого из этапа задач. Наличие отдельных программ на каждом из этапов позволяет в любой момент вмешаться web-разработчику в процесс или добавить инструментарий, разработанный специально для данного сайта.

Благодаря возможности удаления из html-кода комментариев, процесс создания сложного дизайна упрощается во много раз, потому что программист может без последствий (для размера конечной страницы) вставлять необходимые ему пояснения и логически разбивать код на части.

Особо стоит отметить, что использование данной системы при разработке web-проекта совсем не исключает использование серверных языков в коде страниц. Она просто даст возможность не использовать их для создания структуры страниц.