| Планируемые результаты обучения (Знать, Уметь, Владеть)
|
Цель освоения дисциплины — формирование у студентов понимания общих принципов программирования в контексте цифровой дидактики на базе Semantic MediaWiki digida.mgpu.ru, с акцентом на создание активных эссе через комбинацию языков ask, Scratch, NetLogo, Lua и R.
- Результаты обучения
- Обучающийся понимает и умеет использовать базовые конструкции программирования в указанных языках и инструментах для обогащения вики-страниц динамическим контентом.
- Знать
- Основные типы данных (строки, массивы/списки, агенты/патчи) и их особенности в #ask, Scratch, NetLogo, Lua, R.
- Основы визуального, процедурного и скриптового программирования в образовательных средах digida.mgpu.ru.
- Особенности реализации программ в различных инструментах SMW (SyntaxHighlight для Lua, EmbedScratch для Scratch, NetLogo Web, #ask для семантических запросов).
- Уметь
- Выбирать подходящий инструмент программирования (ask для фильтрации данных, NetLogo для моделирования, Lua для модулей) в зависимости от задачи активного эссе.
- Выполнять стандартные операции (ветвление, циклы, обработка строк и массивов) в каждом из языков.
- Структурировать программы: создавать функции в NetLogo/Scratch, скрипты Lua для Scribunto, запросы #ask с форматтерами; работать с данными через R и MediaWiki API.
- Находить ошибки, улучшать код, документировать программы в формате вики-страниц с SyntaxHighlight.
- Владеть
- Навыками совмещения нескольких языков (Lua-модуль с #ask, NetLogo-модель со Scratch, R-визуализациями) для создания интерактивных образовательных объектов.
- Навыками совместной деятельности в Semantic MediaWiki: редактирование активных эссе, использование свойств страниц и запросов для коллективных проектов.
|
| Содержание разделов курса
|
- Введение в программирование в цифровой дидактике (контекст digida.mgpu.ru и Semantic MediaWiki)
- Результаты обучения и ключевые понятия (базовые конструкции, типы данных)
- Обзор ресурсов (руководства SMW, NetLogo models, ScratchWiki, R для API)
- Обзор инструментов (#sk, SyntaxHighlight, EmbedScratch, NetLogo Web)
- Обзор языков (ask, Scratch, NetLogo, Lua/Scribunto, R)
- Оператор ветвления в разных языках (Scratch if, NetLogo ifelse, Lua if, #ask фильтры)
- Циклические конструкции (NetLogo forever, Scratch forever, Lua for/while, R apply)
- Строковый тип данных (Lua string, R character, #ask текст, Scratch join)
- Массивы и списки (NetLogo lists/agentsets, Scratch lists, R vectors, #ask results)
- Lua-модули Scribunto для динамических страниц (примеры с #ask)
- R для анализа данных SMW (MediaWiki API, визуализация ggplot2)
- Мини-проекты и активные эссе (комбинация языков, peer-review)
- Итоговый проект и проверка результатов обучения
|
| Видео запись
|
|
| Среды и средства, которые поддерживают учебный курс
|
Scratch, NetLogo, Lua, R, Активное эссе
|
| Книги, на которых основывается учебный курс
|
20 things to do, Agent-Based and Individual-Based Modeling: A Practical Introduction, Mindstorms, Thinking Like a Tree
|
Курс "Программирование" начинается с введения в контекст цифровой дидактики: зачем программирование на digida.mgpu.ru, обзор инструментов (#ask, Scratch, NetLogo, Lua/Scribunto, R via API) и результатов обучения (понимание базовых конструкций в разных языках, создание активных эссе).
Далее следует модуль ключевых понятий: типы данных (строки, массивы/списки, агенты/патчи), конструкции (ветвление, циклы) и ресурсы (руководства по SMW, NetLogo models, ScratchWiki, R for MediaWiki).
Основной поток разбит на четыре блока по базовым конструкциям:
- демонстрация ветвления/циклов/строк/массивов в Scratch (визуальные блоки), NetLogo (агентные циклы), Lua (скрипты), ask (запросы как циклы), R (векторизация); задания на переписывание одной идеи разными способами; ресурсы вроде SyntaxHighlight примеров и PlantUML-диаграмм алгоритмов.
Параллельно вводятся Lua-модули для динамики страниц и R для анализа данных из SMW (MediaWiki API, визуализации ggplot2).
Каждый блок заканчивается мини-проектом: активное эссе с встраиванием кода (EmbedScratch + NetLogo ask таблица).
Финал — обобщение: создание комплексного эссе, проверка результатов обучения через самооценку и peer-review в SMW; если цели достигнуты, студенты владеют навыками многозначного программирования для образовательных объектов.