Разработка и применение программного инструмента для поддержки обучения формальным языкам
https://doi.org/10.21686/1818-4243-2021-4-13-22
Аннотация
Цель статьи представить результаты исследования по возможности применения дедуктивного подхода в изучении языков программирования (от теории формальных языков к конкретным языкам программирования) и разработке обучающей системы для реализации этого подхода. Вопрос подготовки специалистов в области информационных технологий по-прежнему остается актуальным, а разнообразие языков программирование настолько велико, что далеко не всегда удается угадать, какой из них будет востребован в профессиональной деятельности. По мнению авторов, применение указанного подхода позволит видеть общие элементы и находить синтаксические различия языков программирования, а следовательно, упростить и ускорить их освоение. В статье проанализированы методы обучения программированию, обоснована актуальность изучения формальных языков будущими ИТ-специалистами, сформулированы требования к программному инструменту для поддержки обучения формальным языкам, описана его реализация.
Материалы и методы: теория формальных языков, синтаксис и семантика языков программирования, лексический анализ, анализ различных источников информации по исследуемой тематике, систематизация собранных данных, технологии проектирования, реализации и тестирования программных продуктов, экспериментальные исследования.
Результаты. Предложена методика изучения языков программирования посредством формальных языков. Создана программная обучающая система, которая позволяет связать теорию формальных языков с языками высокого уровня за счёт соответствующих примеров. Разработан и реализован в указанной системе алгоритм проверки корректности выполнения задания посредством синтаксического анализа введенной обучающимся программы и имитации ее выполнения. Эксперименты показали целесообразность подхода и работоспособность программного продукта. В настоящее время разработанная система применяется в Вологодском государственном университете при преподавании дисциплин «Теория языков программирования и методы трансляции» и «Теория автоматов и формальных языков».
Заключение. Результаты исследования показывают приемлемость предложенного подхода и целесообразность применения разработанной программы при изучении языков программирования.
Об авторах
А. П. СергушичеваРоссия
Анна Павловна Сергушичева, к.т.н., доцент кафедры автоматики и вычислительной техники
Вологда
Е. Н. Давыдова
Россия
Елена Николаевна Давыдова, к.т.н., доцент кафедры автоматики и вычислительной техники
Вологда
Список литературы
1. Шефер О.Р., Носова Л.С., Лебедева Т.Н. Современная методология изучения программирования в вузе // Научно-техническая информация. Серия 1: Организация и методика информационной работы. 2018. № 5. С. 6–12.
2. Баженова И.В., Пак Н.И. Разработка электронного учебника-трансформера при обучении программированию на основе самопознавательной деятельности студента // Вестник Московского городского педагогического университета. Серия: Информатика и информатизация образования. 2019. № 1(47). С. 20–28.
3. Моглан Д.В. Дидактический потенциал использования систем визуализации алгоритмов в процессе обучения программированию // Открытое образование. 2019. Т. 23. № 2. С. 31–41.
4. Шарипов Ф.Ф., Мараджабов С.И. Теоретическая модель формирования алгоритмического мышления студентов вузов в процессе обучения объектно-ориентированному программированию // Балтийский гуманитарный журнал. 2017. Т. 6. № 3(20). С. 313–316.
5. Шкарбан Ф.В. Методика обучения основам объектно-ориентированного программирования бакалавров прикладной информатики с использованием визуальных учебных сред: диссертация кандидата педагогических наук: 13.00.02. Волгоград, 2018. 212 с.
6. Касьянов В.Н., Касьянова Е.В. Методы и средства обучения программированию в вузе // Информатика: проблемы, методы, технологии: материалы XX международной научно-методической конференции. 2020. С. 1989–1998.
7. Самбо Е. Какие языки программирования учить в 2021 (для начинающих) [Электрон. ресурс]. Режим доступа: https://videoinfographica.com/programming-languages/.
8. Милова Е.А. Методика обучения программированию [Электрон. ресурс]. Режим доступа: https://pandia.ru/text/79/134/22349.php.
9. Педагогика. Урок 4: традиционные методы обучения [Электрон. ресурс]. Режим доступа: https://4brain.ru/pedagogika/new-methods.php.
10. Методы обучения: понятие, виды и классификация в педагогике [Электрон. ресурс]. Режим доступа: https://nauka.club/podsovet/metody-obucheniya.html.
11. Юрьева Т.А., Чалкина Н.А., Лебедь О.А. Применение кейс-метода в обучении бакалавров основам программирования // Педагогические науки. 2016. № 7. С. 78–82.
12. Слинкин Д.А. Использование метода проектов при обучении программированию в курсе информатики: диссертация кандидата педагогических наук: 13.00.02. Екатеринбург, 2001 166 c.
13. Лебедева Т.Н. Метод проектов в обучении студентов // Актуальные проблемы развития среднего и высшего образования: XV межвузовский сборник научных трудов. Челябинск, 2019. С. 204–207.
14. Жемчужников Д.Г. Методика обучения программированию, основанная на создании школьниками динамических компьютерных игр: диссертация кандидата педагогических наук: 13.00.02. Москва, 2013. 230 с.
15. Сидорик В.В., Костина Е.Н. Метод открытых программ в изучении программирования // Наука – образованию, производству, экономике: материалы 11-й международной научно-технической конференции. Минск: БНТУ, 2013. Т. 4. С. 268.
16. Гладкий А.В. Формальные грамматики и языки. М.: Наука, 1973. 368 с.
17. Лаздин А.В. Формальные языки, грамматики, автоматы. СПб.: Университет ИТМО, 2019. 99 с.
18. H2 Database Engine [Электрон. ресурс]. Режим доступа: https://www.h2database.com/html/main.html.
Рецензия
Для цитирования:
Сергушичева А.П., Давыдова Е.Н. Разработка и применение программного инструмента для поддержки обучения формальным языкам. Открытое образование. 2021;25(4):13-22. https://doi.org/10.21686/1818-4243-2021-4-13-22
For citation:
Sergushicheva A.P., Davydova E.N. Development and Application of a Software Tool to Support the Teaching of Formal Languages. Open Education. 2021;25(4):13-22. (In Russ.) https://doi.org/10.21686/1818-4243-2021-4-13-22