Для более удобного выполнения работы, а также во избежание возможных проблем, связанных с работой с текстовыми файлами в разных системах, была написана программа-генератор лабораторных работ. Скриншот готовой программы представлен на рисунке 1.
Рис. 1. Главное окно программы-генератора лабораторных работ
Данная программа написана на языке высокого уровня Python, что даёт возможность применять её на любых системах под любыми операционными системами. По сути программа является высокоуровневой надстройкой над стандартной библиотекой String.Template. Кроме того программа использует модуль makeHTML для создания чистого HTML-кода с нуля. Листинг программы будет представлен в приложении 1.
Особенности программы:
· Кроссплатформенность
· Отсутствие необходимости несколько раз вводить один и тот же набор данных
· Низкие требования к производительности системы
· Все величины, которые предлагаются к выбору, действительно случайны (написаны функции генерации случайного цвета, случайных размеров текста и т. п.)
· Для файлов Text.htm и ListTable.htm, где предлагается выделять цветом и жирностью в зависимости от веса и массы, считается реальный коэффициент массы тела, к которому присвоены реальные табличные значения.
Ниже представлен листинг кода-примера, который служит шаблонов для замены.
Текст, не отформатированный никаким стилем (т.е. формат по умолчанию).<BR>
<P style="text-indent: 0;font-size: $sz0; font-style: italic; color: $clr5"> Для этого
абзаца использован собственный (inline) стиль.</p>
<P>Это стиль, назначенный в элементе STYLE, для абзацев P всей страницы. В частности,
выбран отступ первой строки.</p>
<CODE background="red"> Свойства элемента CODE можно переопределить, например, задать фон</code>
<P>
<P><CODE> А этот стиль действует, если элемент CODE вложен в элемент P </code></p>
<HR>
</body>
</html>
Листинг 1.Пример страницы для шаблона замен
Как видно из кода, шаблон представлен в виде переменной $templateName. Синтаксис переменных шаблона аналогичен принятому в языке PHP.
Далее в работе будут представлены скриншоты и листинги файлов, сгенерированных данной программой. Так как методические указания не перерабатывались достаточно давно, то никаких попыток писать по современному стандарту не было, но перевод данного кода на современный стандарт будет заключаться только в переводе шаблонов в стандарт HTML5.