Обсуждение:Программирование (syllabus) 2026: различия между версиями
Материал из Поле цифровой дидактики
Patarakin (обсуждение | вклад) |
Patarakin (обсуждение | вклад) |
||
| Строка 102: | Строка 102: | ||
| что студент заметил, запустив свои команды | | что студент заметил, запустив свои команды | ||
|} | |} | ||
==== Примеры кода NetLogo для remix-страниц ==== | |||
<syntaxhighlight lang="Lisp" line> | |||
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 ] | |||
</syntaxhighlight> | |||
=== Lua === | === Lua === | ||
Версия от 10:48, 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 | создаёт страницу-демо с примерами использования | публикация |
Базовые
NetLogo
- NetLogo — обзорная страница языка агентного моделирования;
- Netlogo patches — пассивные агенты-клетки;
- NetLogo widgets — кнопки, слайдеры, мониторы;
- Ants — пример полноценной модели (муравьи и феромоны).
В NetLogo-ветке студент не меняет саму модель, а обогащает вокруг неё текст wiki-страницы: добавляет готовые процедуры и команды, которые читатель может скопировать в Command Center или на вкладку Code работающей модели. То есть remix-страница NetLogo становится не новой моделью, а новым сценарием использования старой модели.
Основания
| Страница | Модель | Тип remix |
|---|---|---|
| <Netlogo_patches | работа с клетками | добавить команды для покраски / измерения патчей |
| NetLogo_widgets | интерфейсные элементы | добавить процедуры, связанные с кнопками и слайдерами |
| Ants | муравьи и феромоны | добавить сценарии исследования поведения колонии |
Структура remix-страницы NetLogo
| Раздел | Содержание |
|---|---|
| Введение | краткое описание, чей это remix и зачем |
| Встроенная модель | та же модель, что на исходной странице (через <iframe> или шаблон)
|
| Команды для 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 ]
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
