RSS    

   Реферат: Из опыта создания универсальных тестовых редакторов

Реферат: Из опыта создания универсальных тестовых редакторов

Предисловие.

   Как известно, в настоящее время наиболее распространенными алгоритмическими языками являются Паскаль и Си. Именно эти языки используются практически на всех действующих вычислительных системах- от супер-ЭВМ до персональных компьютеров. Что касается ПЭВМ, то лидером семейства языков Паскаль для них, без сомнения, является Турбо Паскаль 7.0, разработанный фирмой Borland. Эта последняя версия позволила объединить в рамках единой системы мощный алгоритмический потенциал языка, методы объектно-ориентированного программирования, современную графику, удобные средства тестирования и отладки программ, а также обеспечить дружественный интерфейс с пользователями.[1] Поэтому я выбрал этот язык программирования как основу для создания тестового редактора.

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

   Разрабатывая программу шаг за шагом, я выделил основные функции, присутствующие в любом редакторе и, конечно, в моем, а именно:

1.   создание нового файла теста

2.   открытие теста и тестирование

3.   редактирование теста

4.   просмотр результатов

5.   печать файла

6.   выход из программы.

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

   Начнем исследование со статьи о конструировании программ.

Конструирование программ.

   Конструирование программ - один из важнейших разделов современной информатики. Бурное развитие программно-аппаратных средств, появление новых стилей и технологий программирования, как ни парадоксально, не снижают, а повышают уровень требований к массовой алгоритмической культуре. Практически все диалоговые системы являются программируемыми. Методика конструирования программ легко переносится на другие процедурные языки программирования, в том числе и объектно-ориентированные.[2]

   В соответствии с технологией конструирования программ построена программа тестового редактора. Я разделил ее на этапы:

1.   Создание структурной программы, во многом неудобной в использовании из-за отсутствия диалога, упорядоченного ввода и вывода информации и многого другого. Исходная программа имела лишь основные функции. Она была «ядром», осуществлявшим  все процессы и функции редактора. В следующей главе в точности приведен текст структурной программы.

2.   Разбиение сплошного текста программы на процедуры. Таким образом, текст стал занимать не так много места, исчез оператор варианта, многие метки, ссылки и т. п. Надо сказать, многие программисты предпочитают вводить процедуры в программу. Это значительно упрощает ее.

3.   Введение оконной системы с помощью доступных возможностей языка (оператор Window). Это позволило значительно упростить работу, создать диалог пользователя с программой, уменьшить количество информации, поступающей к пользователю и количество ее «потоков».

4.   Введение объекта- панели управления. Вы можете видеть ее внизу экрана. Она взяла на себя управление функциями редактора. Причем введение объекта значительно упростило программу. Методы работы с объектами вы можете прочитать в главе «Объектное программирование».

5.   Оформление работы

Структурное программирование.

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

   Турбо Паскаль способствует внедрению современной технологии программирования, основанной на принципах структурного программирования и пошаговом методе проектирования программ. Основные операторы языка являются хорошей иллюстрацией базовых управляющих конструкций структурного программирования. Их использование позволяет записывать сложные алгоритмы обработки данных в компактной форме.[3]

   Хотя Бейсик не является полностью структурным языком, в нем отражены основные концепции структурного программирования. рассмотрим их подробнее.

Бейсик- язык программирования ПЭВМ.

   Бейсик - диалоговый язык высокого уровня, ориентированный на пользователей ПЭВМ, непрофессионалов в области вычислительной техники. Бейсик - преимущественно интерпретирующая программа, позволяющая производить построчную отладку текстов программ. Данный способ гораздо удобнее для начинающих программистов, нежели компилирование (компилятор производит отладку только целой программы, а не по частям), и широко используется в Паскале. Отличительной чертой структурных языков являются краткие однозначные операторы (в отличие от длиннейших команд объектного программирования)*.

   В некоторых версиях Бейсика имеется встроенный редактор программ, позволяющий работать с текстом программы из командного окна. Работа с программой осуществляется в трех различных режимах:

·     Непосредственное общение

·     Ввод программ

·     Вычисление по введенной в ОЗУ программе

   В основном, Паскаль выполняет те же функции что и Бейсик. Однако Паскаль имеет больший потенциал в областях програмимирования, работы с «компьютерным железом», создания собственных модулей и систем.

  

Структурная программа.

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

   Ниже приведена схема структурной программы тестового редактора, объясняющая соответствующий подход к программированию. Основной список операторов вырезан и заменен на <набор операторов>. Конечный вид программы будет приведен в главе “Объектное программирование” объектов.

Program redactor;

uses crt,printer; {подключение модулей}

label l1,l2,l3,l4; {метки}

  Var a,f,f1,a2:string;      {раздел описаний}

      b,k:char;

      c,u,y,a1,b1:text;

      d,e,i,j,p,z:integer;

      c1:boolean;

  Procedure oform;       {процедура оформления начала программы}

    Begin

    <набор операторов>

    End;

    Begin

    oform;  {оформление начала программы}

    <набор операторов>

Writeln('Новый файл(New),Открыть файл(Open),Редактирование(Redact),');  {вывод                    

                                                                                                                             альтернативных функций}

    Writeln('Просмотр результатов(Search),Выход(Any key)');

    b:=readkey;  {выбор нужной функции}

    case b of   {оператор варианта}

По нажатию соответствующей клавиши происходит выбор функции.

'n','в':Begin

     l1:<набор операторов>  {выполнение функции}

        End;

'o','й':Begin

     l2:<набор операторов>  {выполнение функции}

        End;

'r','Є':Begin

     l3:<набор операторов>  {выполнение функции}

        End;

    's','ы':Begin

         l4:<набор операторов>  {выполнение функции}

             End;

    End;

    <набор опреаторов>

    Writeln('Новый файл(New),)Открыть файл(Open),Редактировать(Redact)');  {запрос о выборе перед

                                                                                                                                                             выходом}

    Writeln('Просмотр результатов(Search),Выход(Any key)');

    b:=readkey;  {выбор варианта}

    <набор операторов>

    case b of  {оператор варианта}

    'n','т':GoTo l1;  {ссылка на метку}

    'o','щ':GoTo l2;

    'r','к':GoTo l3;

    's','ы':GoTo l4;

    End;

Набор операторов безусловного перехода для возвращения к той или иной функции.

    <набор операторов>

    End.


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

Страницы: 1, 2, 3, 4, 5, 6


Новости


Быстрый поиск

Группа вКонтакте: новости

Пока нет

Новости в Twitter и Facebook

                   

Новости

© 2010.