- •1. Специальная часть 6
- •2. Технологическая часть. Особенности разработки программ на скриптовом языке Perl с использованием интерфейса cgi 60
- •3. Организационно-экономическая часть. Особенности сегментации рынка программного продукта 76
- •4. Производственная и экологическая безопасность. Организация рабочего места программиста и пользователя эвм 88
- •Введение
- •1. Специальная часть
- •Введение
- •1.1. Анализ системы орокс
- •1.1.2. Состав индивидуального учебного плана пользователя
- •1.1.1. Организация обучения на базе системы орокс
- •1.1.3. Процесс взаимодействия обучаемого с учебным заведением
- •1.1.4. Анализ существующих функций администрирования процесса обучения
- •1.1.5. Постановка задачи
- •1.1.5.1. Требования к информационной и программной совместимости
- •1.1.5.2. Основные элементы интерфейса, предоставляемые технологией www
- •1.2. Проектирование подсистемы статистического учёта успеваемости студентов
- •1.2.1. Язык моделирования, используемый при проектировании подсистемы
- •1.2.2. Разработка общей структурной схемы подсистемы.
- •1.2.3. Структура данных, используемых подсистемой
- •1.2.4. Проектирование и реализация компонентов подсистемы
- •1.2.4.1. Учебная карточка студента
- •1.2.4.2. Передача работ преподавателю
- •1.2.4.3. Текущая успеваемость
- •1.2.4.4. Статистика по студентам
- •1.3. Особенности реализации подсистемы
- •1.3.1. Взаимодействие с базой данных
- •1.3.2. Передача значений между формами
- •1.3.3. Особенности, связанные с подготовкой отчётов для печати
- •1.3.4. Сортировка массивов
- •1.4. Методика испытаний
- •2. Технологическая часть. Особенности разработки программ на скриптовом языке Perl с использованием интерфейса cgi
- •Введение
- •2.1. Интерфейс cgi. Вопросы взаимодействия внешних прикладных программ с информационным сервером http
- •2.1.1. Введение в технологию www
- •2.1.2. Common Gateway Interface как средство расширения возможностей World Wide Web технологии
- •2.2. Особенности языка Perl
- •2.2.1. История создания языка
- •2.2.2. Синтаксис языка
- •2.3. Особенности отладки cgi-программ
- •2.2.1. Ошибки в Perl-программе
- •2.2.2. Отладка шаблонов
- •2.2.3. Использование ModPerl
- •2.2.4. Ошибки при настройке www-сервера
- •2.2.5. Ошибки при выполнении sql-выражений
- •2.4. Диаграммы uml, используемые при проектировании подсистемы
- •2.4.1. Введение
- •2.4.2. Диаграммы вариантов использования
- •2.4.3. Диаграммы деятельности
- •2.4.4. Диаграммы последовательностей
- •3. Организационно-экономическая часть. Особенности сегментации рынка программного продукта
- •Введение
- •3.1. Принципы сегментации с учётом специфики продукта
- •3.2. Методика расчёта сегментации рынка
- •3.3. Поиск сегментов рынка для подсистемы статистического учёта успеваемости студентов
- •3.5. Оценка затрат на создание программного продукта и определение точки безубыточности
- •3.6. Вывод
- •4. Производственная и экологическая безопасность. Организация рабочего места программиста и пользователя эвм
- •Введение
- •4.1. Вредные факторы на рабочем месте программиста и пользователя эвм
- •Излучения экрана монитора.
- •Физические перегрузки (статические);
- •4.1.1. Излучения экрана монитора
- •4.1.2. Микроклимат помещения
- •4.1.3. Требования к уровням шума
- •4.1.4. Психофизиологические факторы
- •4.1.4.1. Физические перегрузки (статические)
- •4.1.4.2. Монотонность труда
- •4.1.4.3. Описание зрительной работы оператора
- •Заключение
- •Список литературы
- •Приложения Фрагмент текста программы
2.2.2. Синтаксис языка
Perl – это язык со свободным форматом записи программ (вроде языка С) – пробельные символы, включаемые между лексемами (элементами программы), не обязательны, если две рядом стоящие лексемы невозможно принять за какую-то третью лексему (К пробельным символам относятся пробелы, знаки табуляции, символы новой строки, символы возврата каретки, символы перехода на новую страницу). Тип и количество пробельных символов между лексемами могут быть произвольными.
Хотя почти каждую Perl-программу можно записать в одну строку, эти программы обычно пишут с отступами, как С-программы, причем вложенные операторы записывают с большим отступом, чем охватывающие.
Perl-программа состоит из всех операторов Perl, имеющихся в файле и рассматриваемых в совокупности как одна большая программа, подлежащая выполнению. Понятия «основной» (main) программы, как в С, здесь нет.
Комментарием является все, что следует за незаключенным в кавычки знаком # вплоть до конца строки. Многострочных комментариев, к сожалению здесь нет. Многострочные комментарии были бы очень удобны в случаях, когда программисты на высоком уровне описывают какие-либо сложные функции или, например, что делают несколько последующих строк кода. Если комментарии будут попадаться через строчку, то это резко снизит и так очень непростую читаемость Perl-программ. Это будет похоже на чтение двух книг одновременно, причем по строке из каждой поочередно. Многострочные комментарии во многих языках программирования также активно используются при отладке программ.
Изначально Perl являлся интерпретируемым языком. Интерпретатор языка Perl перед выполнением программы полностью разбирает ее и компилирует в свой внутренний формат. Таким образом, Perl работает и как компилятор, и как интерпретатор. С одной стороны, это компилятор, потому что перед выполнением первого оператора программы она полностью считывается и разбирается. С другой стороны, Perl – интерпретатор, потому что никакого объектного кода, занимающего место на диске в ожидании исполнения нет.
Но процедура компиляции все же требует времени, и применение большой Perl-программы, которая быстро выполняет одну маленькую задачу (из множества тех, которые она способна выполнить), а затем заканчивает свою работу, не будет эффективным, ибо время ее выполнения окажется ничтожно малым по сравнению со временем компиляции.
Поэтому в настоящее время разработан также компилятор Perl, позволяющий производить кэширование компилированного объектного кода между вызовами. Использование компилятора позволяет существенно увеличить производительность WWW-серверов, использующих CGI-скрипты, написанные на языке Perl.
2.3. Особенности отладки cgi-программ
CGI-программы - не самые простые в отладке. По сложности отладки они способны сравнится лишь с отладкой драйверов. Вся сложность заключается в том, что скрипт выполняется не как обычная программа. Он выполняется в специальной среде сервера, которая создается при клиентском запросе на непривилегированном уровне.
Потенциальные ошибки, возникающие при написании CGI-программ на языке Perl и взаимодействующие с базой данных, приведены на pис. 34.
Рис. 34. Потенциальные источники ошибок
