Современные подходы в обучении программированию будущих учителей информатики

Бесплатный доступ

Постановка проблемы. В условиях цифровой трансформации образования сохраняется ряд системных проблем в предметной подготовке будущих учителей информатики по программированию. Среди них выделяются недостаточный уровень мотивации и алгоритмического мышления у абитуриентов, применение устаревших методов обучения, сосредоточенных на синтаксисе и вычислительных задачах, неоднозначный выбор языка программирования, а также дефицит педагогической интеграции, не позволяющий студентам научиться адаптировать материал и диагностировать ошибки школьников. Цель статьи заключается в анализе современных методических подходов к обучению программированию студентов педагогических вузов и описании подходов формирования их готовности к преподаванию программирования в школе. Методология (материалы и методы) исследования. В качестве методологии исследования применен анализ современных научных публикаций за последние шесть лет, посвященных практике обучения программированию в педагогических вузах. Также обобщен собственный опыт реализации образовательных программ в Красноярском государственном педагогическом университете. Результаты. На основе анализа успешных практик (сквозные проекты, итерационное, персонализированное, STEM-обучение и др.) синтезированы ключевые подходы в подготовке: предметно-методическая интеграция, практико-ориентированный и контекстный характер обучения, осознанное формирование педагогического инструментария и развитие метапредметных компетенций. Заключение. Установлено, что готовность будущего учителя к преподаванию программирования формируется в комплексной образовательной среде, обеспечивающей синергию глубоких предметных знаний (на базе школьно-релевантных технологий, таких как Python), инженерно-проектного мышления и педагогической компетентности. Ключевым фактором является не внедрение отдельных инноваций (в т.ч. ИИ), а их интеграция в образовательную экосистему под руководством критически мыслящего преподавателя. Перспективы видятся в углублении фундаментальной подготовки, усилении методической рефлексии и разработке моделей эффективного взаимодействия «педагог-технология-методология».

Еще

Обучение программированию, подготовка учителей информатики, педагогические подходы, Python, профессиональная готовность

Короткий адрес: https://sciup.org/144163625

IDR: 144163625   |   УДК: 378.147:004.42

Modern approaches to teaching programming to future computer science teachers

Statement of the problem. In the context of the digital transformation of education, a number of systemic problems persist in the subject-specific training of future computer science teachers in programming. These include insufficient levels of motivation and algorithmic thinking among applicants, the use of outdated teaching methods focused on syntax and computational tasks, ambiguous choice of programming language, and a lack of pedagogical integration, which prevents students from learning how to adapt material and diagnose school students’ errors. The purpose of the article is to analyze modern methodological approaches to teaching programming to students of pedagogical universities and to describe approaches to developing their readiness to teach programming at school. The research methodology (materials and methods). The research methodology involved the analysis of modern scientific publications from the last six years, devoted to the practice of teaching programming in pedagogical universities. The author’s own experience in implementing educational programs at the Krasnoyarsk State Pedagogical University is also generalized. Research results. Based on the analysis of successful practices (scaffolded projects, iterative, personalized, and STEM learning, etc.), key approaches in training are synthesized: subject-methodological integration, practice-oriented and contextual nature of learning, conscious formation of pedagogical tools, and the development of meta-subject competencies. Conclusion. It is established that the future teacher’s readiness to teach programming is formed in a comprehensive educational environment that ensures the synergy of deep subject knowledge (based on school-relevant technologies such as Python), engineering-project thinking, and pedagogical competence. The key factor is not the implementation of individual innovations (including AI), but their integration into the educational ecosystem under the guidance of a critically thinking teacher. Prospects are seen in deepening fundamental training, enhancing methodological reflection, and developing models of effective ‘teacher-technology-methodology’ interaction.

Еще

Текст научной статьи Современные подходы в обучении программированию будущих учителей информатики

Постановка проблемы. В современном мире информационно-коммуникационных технологий знание языка программирования является одной из базовых составляющих информационной культуры человека. Известная цитата академика Ершова о том, что «программирование – вторая грамотность», становится все более актуальной в наше время, тем более что информационные технологии проникли практически во все сферы деятельности человека. Особенно актуальным становится знание языка программирования, если человек желает связать свою деятельность с IT-индустрией [Мартынюк, 2018].

Основная задача учителя информатики в этом контексте – формирование ИКТ-компетентности обучающихся, включая тех, кто ориентирован на современные IT-профессии.

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

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

Анализ современных исследований [Пугач, Тюжина, Макарова, 2019; Розов, Подсадников, 2019; Гафуанов, Поднебесова, 2020; Круподеро-вы, 2020; Джураева, 2021; Сайфурова, Рагулина, Федорова, 2022] позволяет выделить следующие ключевые проблемы.

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

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

В-третьих, выбор языка программирования и среды разработки остается спорным вопросом, что может привести к проблемам технологического устаревания.

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

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

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

Методология (материалы и методы) исследования. В качестве основных методов исследования определен анализ научной психолого-педагогической литературы, обобщен собственный опыт реализации образовательных программ в Красноярском государственном педагогическом университете им. В.П. Астафьева. Синтез методических подходов обучения программированию в педагогических вузах позволил сформулировать обобщенные подходы к обучению и формированию готовности будущих учителей информатики к преподаванию программирования в школе.

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

В обучении программированию студентов в целом, а не только будущих учителей можно выделить следующие проблемы: высокая когнитивная нагрузка обучаемых, отрыв от практики, высокая нагрузка на преподавателей, проблема качественной и своевременной обратной связи, отставание образовательных программ от потребностей рынка труда [Telesko et al., 2023; Лавина, Ильина, 2025]. Пандемия COVID-19 заставила образовательные учреждения экстренно переходить на дистанционное обучение, что создало множество дополнительных проблем, но в то же время способствовало развитию дистанционных форм обучения и новых методических подходов в обучении.

Ответом на эти вызовы становятся новые методологии. Успешный опыт зарубежных авторов [Kularbphettong et al., 2024] по разработке

и апробации модели смешанного обучения заслуживает внимания. Ключевыми факторами успеха стали не технологии сами по себе, а методический подход, эффективность которого напрямую зависит от продуманности среды обучения, обеспечивающей синергию аудиторной работы и онлайн-компонентов. Подходы, подобные Model-based Agile Programming (MBAD) [Telesko et al., 2023], предлагают переосмыслить саму суть преподавания программирования – от натаскивания в синтаксисе к развитию компетенций в области анализа, проектирования и моделирования.

Одним из самых значимых современных трендов, трансформирующих образовательный процесс, является использование искусственного интеллекта (ИИ). Анализ научных исследований в области обучения программированию последних лет [Цепляев, 2023; Sheese et al., 2024; Budhiraja et al., 2024; Ahmed et al., 2025] показывает смещение научного интереса в сторону использования искусственного интеллекта в обучении. На наш взгляд, это обусловлено в первую очередь эффективным использованием ИИ-агентов в профессиональной разработке. Интеграция больших языковых моделей (LLM) в интегрированную среду разработки (IDE) представляет собой значительный шаг в эволюции инструментов разработки, предлагая существенные преимущества в автоматизации и качестве кода.

Использование ИИ-инструментов в обучении программированию носит двойственный характер. С одной стороны, они открывают новые педагогические возможности, смещая фокус на алгоритмическое мышление и анализ кода. С другой – требуют осторожного внедрения, чтобы не подменить глубокое обучение поверхностным использованием готовых решений. Будущее обучение, вероятно, будет делать больший акцент на чтении, оценке и модификации кода, чем на его написании с нуля [Цепляев, 2023].

ChatGPT стал неотъемлемой частью учебного процесса, выступая в роли помощника в программировании, «мозгового центра» и ре- петитора. Однако его широкое и долгосрочное использование сдерживается проблемами точности, юзабилити и этическими вопросами [Budhiraja et al., 2024]. Исследование [Ahmed et al., 2025] проверяет целесообразность использования LLM для ассистентов преподавателей в курсе программирования. Вместо того чтобы выдавать студентам готовые ответы ИИ, авторы предложили гибридную модель: ИИ генерирует черновик обратной связи, который человек-ассистент проверяет, редактирует и затем отправляет студенту. Гибридная модель для обратной связи в программировании технически возможна, но не привела к ожидаемому улучшению результатов. Основной проблемой оказалась пассивность людей, которые перестали критически проверять выводы ИИ. Авторы делают вывод, что ИИ должен не заменять человеческое участие, а интегрироваться в учебный процесс, чтобы реально поддерживать, а не подрывать работу педагогов.

Авторский коллектив [Sheese et al., 2024] провел исследование по использованию инновационного инструмента на базе LLM, который предоставляет помощь в программировании по запросу, не раскрывая решения напрямую. Результаты данного исследования демонстрируют, что студенты в основном используют ИИ-помощника для сиюминутной тактической помощи (исправить ошибку, написать код), а не для глубокого концептуального обучения. В то время как обучение программированию не ограничивается решением насущных задач в области программирования, но также предполагает создание прочной основы базовых концепций.

На фоне общих трендов и вызовов особую актуальность приобретает анализ подходов к подготовке будущих учителей информатики, которые должны не только освоить программирование сами, но и научиться его преподавать. Важно понимание проблем обучения программированию на различных уровнях. Л.Л. Босовой проведен анализ современных подходов к обучению программированию в школах России и других стран. Автор рассматривает историю, текущее состояние, проблемы и перспективы развития этой области, а также выделяет ключевые международные тенденции [Босова, 2018]:

раннее, обязательное и непрерывное обучение программированию;

использование разнообразных современных сред (Scratch, Python, облачные сервисы);

проектный подход и командная работа для развития практических навыков;

интеграция с робототехникой и реальными задачами.

Сравнительный анализ систем обучения программированию в разных странах позволяет сделать вывод о необходимости реформирования российского образования в области программирования с учетом мирового опыта, чтобы развивать у школьников алгоритмическое мышление и практические навыки, соответствующие требованиям XXI в.

Анализ современных исследований за последние шесть лет в области обучения программированию будущих учителей информатики [Пугач, Тюжина, Макарова, 2019; Розов, Подсад-ников, 2019; Гафуанов, Поднебесова, 2020; Кру-подерова, Круподерова, 2020; Джураева, 2021; Сайфурова, Рагулина, Федорова, 2022] выявляет ряд значимых методических подходов (табл.), которые не только развивают предметные компетенции студентов, но и целенаправленно формируют их педагогическое мышление, включая умение адаптировать сложный материал для школьной аудитории и критически оценивать образовательные технологии, тем самым внося ключевой вклад в профессиональную готовность будущих учителей информатики. В контексте данного анализа представляет интерес и опыт Красноярского государственного педагогического университета им. В.П. Астафьева, который также был обобщен и включен в таблицу.

Методические подходы обучения программированию в различных педагогических вузах

Methodological approaches to teaching programming in various pedagogical universities

Подход

Суть методики

Решаемая проблема

1

2

3

t s

° J t у го ° m ^ cj 2 ro о b t c     ro

3S    2

z

i      F

о   °

™ ¥ — £ * s

i о 2

£ > S

^

Двухуровневая структура: изучение Python и C++. Курс Python выполняет роль выравнивающего курса – от основ до ООП. Интеграция с дисциплинами: «робототехника», «школьный практикум», «численные методы» и другие, что закрепляет знания и демонстрирует студентам межпредметные связи и педагогический контекст применения программирования. Ключевой элемент – интеграция современных образовательных технологий: облачные среды, LMS Moodle с автоматизированной проверкой заданий (плагин CodeRunner) и внешние обучающие платформы (Питонтьютор). Активно исследуется и внедряется использование ИИ-инструментов (LLM) для поддержки обучения

Недостаточная базовая подготовка абитуриентов; разрыв между академическими знаниями и требованиями школьного преподавания; необходимость формирования не только технических, но и педагогических компетенций; высокая нагрузка на преподавателя при проверке заданий; необходимость обеспечения оперативной обратной связи

i з £ s

x      J

^      ГО  -r

О о   ¥

О      X

О с b c;

S ^

Эволюционное развитие одного проекта (например, игры) на протяжении курса: от простой консольной версии к сложной (с GUI, внешними данными, рефакторингом). Этапы синхронизированы с темами курса

Низкая мотивация из-за разрозненности задач; отсутствие связи с практикой; «отложенный старт» проектной деятельности

0J о I 0J

О I X (D

ГО >"

Q. Ю

О H S

Организация учебного процесса как пошагового уточнения и расширения программной реализации. Лабораторные работы: теория → модификация готового кода → самостоятельное задание. Лекции синхронизированы с практикой

Формальное изучение теории, оторванное от практики; быстрое забывание материала; трудности в самостоятельном создании программ с нуля

Окончание табл.

1

2

3

о О L. 1 X о I ф S £ m ° О ° 5 °- 5 £ S ° X s го 3 c; i i ГО QJ J s

S’ 5. § с ю г

О S

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

Неоднородный уровень подготовки студентов; недостаток индивидуальных консультаций; низкая мотивация и трудности в понимании объектно ориентированного программирования

+

>s

LU 5

£ «

a: J о

cd го m

S

Сочетание проблемно-семиотического подхода (Science), современных технологий (Technology), инженерного проектирования (Engineering), математического моделирования (Math). Использование видеозаписей работы профессионалов («Перевернутый класс») для демонстрации реального процесса разработки ПО

Разрыв между академическим обучением и профессиональной практикой; технологическое устаревание знаний; недостаток времени на аудиторную практику

и g О a:     s x

£ S’ £ £

I I " ^ ^ “ ^ ^ i

Структуризация на 2 модуля: «Математические основы» (алгоритмы, анализ сложности) и «Программирование» (ООП, Web). Акцент на портфолио алгоритмов, сравнительных проектах, хакатонах, командной разработке. Использование альтернативных методов оценки (SWOT-анализ жизненного цикла ПО)

Недостаток системного мышления; слабые навыки полного цикла разработки; дефицит soft skills (коллаборация, презентация)

I s ra co о О си

S н ^ h s s     co

Q-о ^ c ° 1 £

Обучение на Python с акцентом на его дидактических преимуществах (лаконичность) и преемственности (от основ к ИИ). Использование Turtle для связи блочного (Scratch) и текстового программирования. Раннее введение строк, работа с файлами, SymPy для математиков. Критический анализ рисков (динамическая типизация)

Неактуальный выбор языка (Pascal/ Delphi); трудности перехода от блочного к текстовому коду; слабая связь с современными технологиями (ИИ)

Результаты исследования. Проведенный анализ современных исследований позволяет выделить три ключевых направления современных подходов в обучении программированию: системность и непрерывность – раннее начало, обязательность обучения, сквозные линии от школы к вузу; практикоориентированность – переход от теоретического обучения к активным методам: кейс-технологии, проектный подход, командная работа, деятельностный подход; интеграция технологий ИИ – использование языковых моделей для снижения когнитивной нагрузки, фокусировки на алгоритмическом мышлении, развития навыков анализа и оценки кода.

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

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

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

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

В-третьих, требуется осознанное формирование педагогического инструментария . Будущий учитель должен не только владеть Python, но и уметь использовать различные библиотеки (Turtle, Tkinter), а также современные технологии, в том числе и технологии ИИ.

В-четвертых, необходима развитая система формирования метапредметных и профессиональных компетенций. Сюда входит развитие системного мышления через анализ алгоритмов и проектирование (сильная сторона модульного подхода), soft skills через хакатоны и командную работу, навыков рефакторинга и адаптации сложности (практика «спиральных задач»), критического мышления при выборе технологий. Построение индивидуальных маршрутов обучения и инновационные методы оценки (SWOT-анализ, кейсы, балльно-рейтинговая оценка) также вносят вклад в профессиональное становление.

Заключение. Проведенный анализ позволяет утверждать, что современные успешные практики обучения программированию будущих учителей информатики конвергируют к модели комплексной образовательной среды. Ее ключевая задача – обеспечить неразрывный синтез глубокого предметного знания (на базе школьно-релевантных технологий, таких как Python), инженерно-проектного мышления и педагогической компетентности, формируя у будущего педагога умение адаптировать сложность, диагностировать ошибки и проектировать мотивирующие задания.

Таким образом, готовность учить программированию формируется не просто знанием языков, а способностью видеть за технической задачей педагогическую, за синтаксисом – дидактический потенциал, а за учебным проектом – модель профессиональной деятельности.

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