Обсуждение:Программирование (syllabus) 2026: различия между версиями

Материал из Поле цифровой дидактики
Строка 108: Строка 108:
| обязательна
| обязательна
|}
|}
Пример remix-идеи для Lua
Исходный <code>Module:Aggregator</code> считает слова в wiki-тексте страницы. Remix <code>Module:Aggregator/Ivanov</code> добавляет два режима — <code>templates</code> (подсчёт шаблонов) и <code>categories</code> (подсчёт категорий):
<syntaxhighlight lang="lua" line>
local function countTemplates(text)
  local n = 0
  for _ in mw.ustring.gmatch(text, "{{[^}]+}}") do
    n = n + 1
  end
  return n
end
</syntaxhighlight>

Версия от 10:39, 20 апреля 2026

Модуль Тематика Ключевые артефакты
1. Введение в MediaWiki и Semantic MediaWiki Структура вики, свойства и запросы ask, концепция активных эссе Страницы курса, семантические свойства, простые ask-запросы
2. Основы Lua и Scribunto Синтаксис Lua, модули, вызов {{#invoke:}} Module:Hello, простые функции, параметры шаблонов
3. Обработка семантических данных в Lua Получение и обработка результатов ask, генерация таблиц Модуль, генерирующий динамическое содержание по свойствам SMW
4. Scratch и визуальное программирование Связь блок-схем с кодомLua, переход от блоков к тексту Задания по переписыванию Scratch-программ на Lua
5. NetLogo и агентные модели Основы NetLogo, turtles/patches, модели экосистем и IoT Простая модель в NetLogo, описание в вики
6. Lua + NetLogo Экспорт/импорт параметров моделей через вики, сценарии активных эссе Страница с параметризацией модели, запуск и анализ результатов
7. Lua и IoT NodeMCU/ESP8266, базовые сценарии умного класса, связь с вики Мини-проект: датчик температуры и страница с данными
8. Итоговый проект активного эссе Комплексный проект по предметной области студента Активное эссе с ask, Lua-модулями, ссылками на модели NetLogo и/или IoT


Схема

Этап Что делает студент Когнитивная задача
Use запускает готовый артефакт как пользователь наблюдение
Understand читает исходный код / wiki-текст, понимает структуру анализ
Remix модифицирует артефакт под свою задачу / данные творчество
Document описывает, что именно он изменил и зачем рефлексия
Demonstrate создаёт страницу-демо с примерами использования публикация

Базовые

Lua

Модуль Что делает Уровень
Module:Card инфокарточка из именованных аргументов вводный
Module:Table wikitable из списка вводный
Module:Aggregator анализ wiki-страницы: слова, ссылки, заголовки базовый
Module:DatasetAggregator анализ внешнего CSV (через External Data) продвинутый
Module:Badge цветные метки статуса вводный
Module:ProgressBar HTML-прогрессбар средний
Module:Glossary двухколоночный словарь из аргументов базовый

Требования к remix Lua

Обязательное требование Минимум
Личный remix-модуль Module:Name/Student 1
Новые функции или режимы по сравнению с исходным 2
Страница документации /doc 1
Страница-демо с примерами вызова 1
Работоспособность на digida.mgpu.ru обязательна

Пример remix-идеи для Lua

Исходный Module:Aggregator считает слова в wiki-тексте страницы. Remix Module:Aggregator/Ivanov добавляет два режима — templates (подсчёт шаблонов) и categories (подсчёт категорий):

local function countTemplates(text)
  local n = 0
  for _ in mw.ustring.gmatch(text, "{{[^}]+}}") do
    n = n + 1
  end
  return n
end