
- •Глава 2: «Методика разработки обучающей программы.»
- •2.1. Структура обучающей программы.
- •2.2. Библиотека графических функций.
- •2.3. Генератор графических интерфейсов.
- •2.4. Библиотека математических функций.
- •2.5. Библиотека функций мыши.
- •2.6. Используемые стандартные библиотеки.
- •2.7. Нестандартные приемы.
- •2.8. Работа с программой Depos.
- •2.8.1. Микроморфология аэс.
- •2.8.2. Термодинамический анализ системы
- •2.8.3. Автолегирование.
- •2.8.4. Локальная эпитаксия.
- •Выводы.
2.6. Используемые стандартные библиотеки.
При разработке программы были использованы также стандартные библиотеки языка, написанные разработчиками фирмы Borland. Это библиотека, отвечающая за работу с дисками (модуль DOS.tpu), за стандартные операции ввода-вывода (Crt.tpu), за операции ввода-вывода в графическом режиме (Graph.tpu). Описывать функции этих библиотек не стоит, описания их можно найти в комплекте документации на язык и в файлах подсказки в стандартной поставке языка Borland Pascal. Без этих библиотек разработка программы стала бы практически невозможной.
2.7. Нестандартные приемы.
Несмотря на усилия фирмы Borland как можно больше приблизить свой продукт к человеческому языку, выполнение сложных графических решений на BP остается сложным. Самым большим недостатком является то, что процесс отслеживания результата изменения в программе занимает много времени (надо исправить код, заново скомпилировать программу, если при этом нужный экран является вторым или третьим по счету, то пройти экраны, предшествующие ему, и только после этого можно посмотреть на результаты изменения, которые могут оказаться не всегда правильными).
Более эффективно использовать пиксельный графический редактор и вставлять в программу уже готовые картинки, необходимые для оформления экрана. Однако это связано с рядом проблем: для использования стандартных форматов графических файлов нужно написать программу - перекодировщик. Но скорость работы такой программы окажется невысокой, в идеале требуется добиться настолько быстрой смены кадров, чтобы человеческий глаз не успевал реагировать на процесс изменения экрана. Поэтому было найдено компромиссное решение - рисовать картинки в графическом редакторе, на этапе разработки программы открывать их (скорость, в данном случае, не сильно критична) и сохранять на диске точный образ того, как эта картинка расположена в области видеопамяти (аналогично .com-файлу). Далее можно использовать получившийся файл для перемещения его содержимого с диска в память, где картинка будет хранится до того момента, когда возникнет необходимость в ее использовании. Скорость при таком способе открытия получается намного выше, ведь цепочка винчестер®память ... память®видеопамять (в которой, к тому же скорость первой стадии роли не играет, а скорость второй поистине впечатляюща) короче цепочки винчестер®память® перекодировщик®видеопамять, которая к тому же не имеет подготовительной фазы, а выполняется «в один присест».
Именно по такому принципу были оформлены модули программы Depos, в том числе модуль Photo, так как именно таким способом был сформирован банк микрофотографий поверхности, перенесенный в цифровой вариант при помощи сканера и переведенный в описанный выше формат. Этот формат имеет расширение .img (image) и хранится в каталоге .../IMG программы.
2.8. Работа с программой Depos.
Программа Depos представляет собой интерактивную оболочку, управляемую мышью (поэтому она необходима). Она довольно проста в управлении и снабжена динамической подсказкой (в каждом модуле, окно внизу экрана), поясняющей значение объекта, находящегося под курсором мыши, краткими теоретическими сведениями (в каждом модуле, кнопка «теория» в служебном поле) и экранными комментариями к полученным результатам.
Как было описано выше, все четыре модуля объединены одним общим меню, из которого они вызываются по желанию пользователя. Внешний вид этого меню представлен на рисунке 2.3.
Чтобы попасть в модуль, соответствующий определенному вопросу газофазной эпитаксии кремния, нужно подвести курсор мыши к нужную пункту меню и нажать левую клавишу мыши, после чего дождаться загрузки соответствующего модуля. Пункт меню «выход» соответствует выходу из программы в операционную среду.