Создание обучающей программы по английскому языку в среде программирования Lazarus
Глава II. Создание обучающей программы по английскому языку в среде объектно-ориентированного программирования Lazarus
Следующей задачей моего исследовательского проекта "Технология создания обучающей программы в среде объектно-ориентированного программирования Lazarus" было придумать такую программу, которая имела бы практическую пользу.
Поразмыслив над этим вопросом, мы пришли к тому, что это будет программа-тренажёр для запоминания правописания английских слов.
Почему именно такая программа? Не секрет, что в наше время дети очень быстро знакомятся с новыми технологиями, и даже ученики начальной школы уже умело обращаются с компьютерами.
Также я узнал, что дети сейчас переходят на новые учебники иностранного языка – «Spotlight», поэтому я решил помочь детям в изучении иностранного языка.
Идея состоит в том, что в форме лёгких тестов дети постепенно будут запоминать написание и перевод иностранных слов, что несомненно поможет им в обучении.
Далее я начал придумывать, как примерно будет выглядеть моя программа.
Обязательно должно присутствовать главное окно с названием программы, выбор уровней, сами уровни и, конечно же, окно с описанием программы.
В итоге мой тренажёр будет состоять из девяти форм. Из них три формы содержащие слова разных блоков, три формы разных уровней сложности (лёгкий, средний, тяжёлый), главное окно, окно выбора уровня сложности и блока и окно с информацией о программе.
Следующим этапом стала разработка программы
Первой проблемой стала необходимость брать слова для заполнения программы из отдельного текстового файла, но мне хотелось, чтобы моё приложение не нуждалось в сопутствующих файлах и было самостоятельным.
Поразмыслив над этой проблемой, я пришёл к простому решению: создать отдельную форму, которая содержит на себе компонент Memo, в котором хранятся все текстовые данные программы (рис. 2).
То есть вместо того, чтобы обращаться к внешним источникам данных, программа обращается за этими данными в собственную библиотеку.
Стоит отметить, что, несмотря на то, что слова я размещаю на отдельных формах для каждого блока слов, обрабатываются они все одним программным кодом и в дальнейшем используются на одной форме задания.
Затем я стал продумывать, какие задания будут на разных уровнях сложности.
Самый лёгкий уровень представляет собой тест, в котором вам предлагается выбрать пропущенную букву в слове. Вы не сможете перейти к следующему слову, пока правильно не выберете букву к данному слову. Я думаю, это поможет детям запомнить написание слов, так как я пытался подобрать такие варианты букв, которые дети могли бы путать.
Средний уровень – это так же тест. Но в отличие от лёгкого уровня программа не скажет вам сразу, правильно вы ответили или нет. Также отличается и само задание. На этом уровне вам необходимо выбрать правильный перевод слова с русского на английский. По окончанию теста вы узнаете, насколько хорошо Вы справились с заданием.
Сложный уровень – это составление слова из предложенных букв. Вам предлагают самостоятельно вписать в поле ответа верное слово. Вы так же не сможете пройти дальше, пока слово не будет собрано верно.
По окончанию написания первой версии своей программы, я решил её протестировать. В результате в программе произошли следующие изменения:
- были добавлены новые блоки слов;
- исправлены орфографические ошибки, допущенные вследствие невнимательности;
- добавлено больше картинок (это важно, ведь программа разрабатывается специально для детей);
- изменён средний уровень.
Изначально средний уровень я планировал сделать несколько другим. Это должен был быть общий тест по блоку, в котором после ответа на все вопросы, вы узнали бы свою оценку.
Допускалось один раз исправить ответы. В ходе тестирования программы оказалось, что дети наугад выбирали ответы, что, конечно же, следовало предотвратить. Именно поэтому средний уровень сложности был видоизменён.
В ходе написания программы я столкнулся со следующей проблемой: программа не закрывалась окончательно (рис. 3). При обычном закрытии программы её процесс всё ещё оставался в диспетчере задач как активный. И таких процессов могло накапливаться очень много.
Поискав решение в интернете, я нашёл, что необходимо добавить действие на закрытие формы такое как «Application.Terminate». Что делает эта операция? Она окончательно прекращает работу приложения, таким образом, нет необходимости после работы с тренажёром отключать его через диспетчера задач.
В коде программы я использовал в основном условный оператор if и оператор выбора case. Оператор case я использовал для выбора между блоками слов, а оператор if лежит в основе всей программы (рис. 4).
Несмотря на то, что я проработал в СООП Lazarus сравнительно немного, я уже могу выделить некоторые достоинства и недостатки этой среды программирования
Достоинства среды ООП программирования Lazarus:
- Доступность;
- Распространённость языка программирования;
- Простота в освоении.
Недостатки среды ООП программирования Lazarus:
- Малый цветовой спектр шрифтов;
- Проблемы с самостоятельным закрытием программы;
- Не все объекты можно окрасить.
В СООП Lazarus в отличие от среды Delphi окрашивать можно далеко не все объекты, а если и можно, то цветов бывает недостаточно, чтобы сделать яркую программу, зато в среде Lazarus можно работать бесплатно.
Все изображения, которые присутствуют в моей работе, взяты из учебника для вторых классов «Spotlight» под авторством Н.И. Быковой и М.Д. Поспеловой, что не нарушает авторских прав.
В результате работы я получил обучающую программу-тренажёр по английскому языку, созданную в среде объектно-ориентированного программирования Lazarus, которую можно использовать как дома, так и на уроках.
Тренажер легко дополнять новыми блоками слов, что позволяет поддерживать актуальность программы в дальнейшем.