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

Материал из Поле цифровой дидактики
Нет описания правки
Нет описания правки
Строка 121: Строка 121:
| Наблюдения / выводы
| Наблюдения / выводы
| не менее 1 абзаца
| не менее 1 абзаца
|}
----
; Lua
{| class="wikitable"
! Модуль Lua
! Что делает
! Уровень
|-
| <code>Module:Card</code>
| инфокарточка из именованных аргументов
| вводный
|-
| <code>Module:Table</code>
| wikitable из списка
| вводный
|-
| [[Module:Aggregator]]
| анализ wiki-страницы: слова, ссылки, заголовки
| базовый
|-
| <code>Module:DatasetAggregator</code>
| анализ внешнего CSV (через External Data)
| продвинутый
|-
| <code>Module:Badge</code>
| цветные метки статуса
| вводный
|-
| <code>Module:ProgressBar</code>
| HTML-прогрессбар
| средний
|-
| <code>Module:Glossary</code>
| двухколоночный словарь из аргументов
| базовый
|}
----
; Требования к [[remix]] [[Lua]]
{| class="wikitable"
! Обязательное требование
! Минимум
|-
| Личный remix-модуль <code>Module:Name/Student</code>
| 1
|-
| Новые функции или режимы по сравнению с исходным
| 2
|-
| Страница документации <code>/doc</code>
| 1
|-
| Страница-демо с примерами вызова
| 1
|-
| Работоспособность на digida.mgpu.ru
| обязательна
|}
Пример 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>
; Сравнение направлений  [[NetLogo]] <-> [[Lua]] ===
{| class="wikitable"
! Параметр
! Lua + Scribunto
! NetLogo
|-
| Что ремиксит студент
| код модуля
| текст wiki-страницы вокруг модели
|-
| Где живёт результат
| <code>Module:Name/Student</code>
| <code>Page/Student</code>
|-
| Язык кода
| [[Lua]]
| [[NetLogo]]
|-
| Что добавляется
| новые функции / режимы
| новые команды / процедуры
|-
| Как читатель взаимодействует
| вызывает модуль через <code>#invoke</code>
| копирует команды в Command Center
|-
| Минимальный remix
| 2 новые функции
| 3 команды + 2 процедуры
|-
| Тип мышления
| [[абстракция]], [[функция|функции]]
| поведение, [[агент]]ы
|}
|}

Версия от 11:57, 20 апреля 2026


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


Страница Модель Тип remix
NetLogo_widgets интерфейсные элементы добавить процедуры, связанные с кнопками и слайдерами
Netlogo_patches работа с клетками добавить команды для покраски / измерения патчей
Черепашки NetLogo работа с агентами добавить создания и видоизменения агентов
NetLogo links работа с агентами добавить создания и видоизменения агентов
Ants муравьи и феромоны добавить сценарии исследования поведения колонии
Структура remix-страницы NetLogo
Раздел Содержание
Введение краткое описание, чей это remix и зачем
Встроенная модель та же модель, что на исходной странице (через <netlogo model=> )
Команды для Command Center короткие фрагменты кода, которые читатель вводит в командную строку
Процедуры для вкладки Code более длинные фрагменты — процедуры, добавляемые в модель
Вопросы для исследования 3–5 вопросов, на которые можно ответить с помощью этих команд
Наблюдения что студент заметил, запустив свои команды
Примеры кода NetLogo для remix-страниц
ask patches [ set pcolor red ]
ask turtles [ fd 1 ]
ask turtles [ set color blue ]
show count turtles
ask patches with [pxcor > 0] [ set pcolor yellow ]

Такие команды читатель копирует прямо в Command Center запущенной модели (одной строкой) и сразу видит результат. Ключевое слово ask — основа обращения к агентам в NetLogo: оно адресует команды либо всем агентам, либо подмножеству. Точно так же как и ask в SMW.

to scatter-ants [n]
  create-turtles n [
    setxy random-xcor random-ycor
    set color red
    set shape "bug"
  ]
end


Требования к remix-странице NetLogo
Требование Минимум
Встроенная исходная модель обязательна
Команды для Command Center не менее 3
Процедуры для вкладки Code не менее 2
Вопросы для исследования не менее 3
Наблюдения / выводы не менее 1 абзаца

Lua
Модуль 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
Сравнение направлений NetLogo <-> Lua ===
Параметр Lua + Scribunto NetLogo
Что ремиксит студент код модуля текст wiki-страницы вокруг модели
Где живёт результат Module:Name/Student Page/Student
Язык кода Lua NetLogo
Что добавляется новые функции / режимы новые команды / процедуры
Как читатель взаимодействует вызывает модуль через #invoke копирует команды в Command Center
Минимальный remix 2 новые функции 3 команды + 2 процедуры
Тип мышления абстракция, функции поведение, агенты