Личный кабинет

Система программирования КуМир

Илья Ермаков ( Пользователь )
Конечно, не надо превращать. (А я в своей практике вообще, как уже сказал, заменил АЯ на Оберон, а среду - на Блэкбокс, расширив его исполнителями).
P.S. За ярлык - извините, не хотел :)
Илья Ермаков ( Пользователь )
2002-го года, к сожалению, в глаза не видел.

Ссылка на 90-го:
http://ermakov.metasystems.ru/download/boo...renko-oivt.djvu
Денис Кириенко ( Пользователь )
Цитата (Илья Ермаков, 15.02.2009, 17:32) <{POST_SNAPBACK}>
2002-го года, к сожалению, в глаза не видел.

Ссылка на 90-го:
http://ermakov.metasystems.ru/download/boo...renko-oivt.djvu


Спасибо!

Учебник 2002 года (держу сейчас в руках) все-таки посовременней будет, и там есть отличия от старого учебника.
Илья Ермаков ( Пользователь )
Кстати, о введении понятия алгоритма в учебном курсе (самое начало, до перехода к работе с исполнителем и составлению алгоритмов).
Я опираюсь на вот эту главу Дейкстры:
http://khpi-iip.mipk.kharkiv.edu/library/e...6/ewd316_2.html
Яснее ход изложения нигде не встречал, чтоб не словоблудие, а выражало существо алгоритмизации.
Станислав Михалкович ( Пользователь )
Цитата (Денис Кириенко, 15.02.2009, 13:39) <{POST_SNAPBACK}>
Примерно понятно. Мне кажется, что это не есть что-то принципиально важное, существенно влияющее на курс. С другой стороны, идея автоматического тестирования задач в учебном процессе мне видится правильной, но этим должна заниматься не система программирования, а тестирующая система. Поэтому лучше вести речь не о том, чтобы можно было в начало программы вставить "заклинание", проверяющее задачу, а стандартизацию исполнения программы - например, возможность исполнения программы в консольном режиме без запуска среды программирования. Это было бы полезно не только для этой задачи, но и для множества других.

Может быть - дело вкуса. Я, например, никогда не использую в обучении школьников консольный компилятор. Разве что, для самых продвинутых могу. Основная масса - это работа в хорошей IDE с подсказками и все такое.

Цитата (Денис Кириенко, 15.02.2009, 13:39) <{POST_SNAPBACK}>
Вот чего мне казалось бы полезным - это реализовать в Кумире исполнитель Черепаха, пока там есть только Робот и Чертежник. А Черепаха - это отдельная идеология, иной подход к построению алгоритмов, может оказаться кому-нибудь полезным.

Да, я сам думал об этом многократно. Но думаю, что этот Исполнитель вряд ли будет реализован в КуМире. Дело в том, что КуМир - прагматичная система для поддержки учебника, а там Черепашки нет. Там есть много других интересных и непростых вещей, так что материала хватает, и покрытие - высокое. А Черепашка используется в других учебниках - КуМир их не поддерживает. Ну и, надо сказать, что при всей красоте Черепашки чуть меняется класс алгоритмов, которые можно эффективнее реализовать, но для обучения основных конструкций языка Робота и Чертежника хватает с головой. Причем, Робот почти во всех темах рулит, кроме, разве что, процедур с параметрами.

Возвращаясь к теме объектно-ориентированного программирования, я думал также над классом задач с несколькими Роботами и возможностью писать

r1.Left; r2.Right;
if r1.RobotFromLeft then
...

Кроме такого простого кооперативного выполнения задания несколькими Роботами, здесь возможно и параллельное или псевдопараллльное выполнение задачи несколькими Роботами:

r1.Execute := r1ExecuteProc;
r2.Execute := r2ExecuteProc;

с наполнением обработчиков r1ExecuteProc и r2ExecuteProc (нечто вроде битвы Роботов).

Несмотря на некоторую сложность реализации такого, концептуально очень полезно зародить у школьников идею параллельного и кооперативного выполнения какой-то задачи. Здесь, не надо думать о том, насколько сложно это реализовать, надо думать, как такое можно использовать в обучении. Мне кажется, что как раз в Black Boxе подобное сделать достаточно просто - там в интерактивных документах все здорово параллельно. А в Scratch это фактически есть, только без языка. И что интересно, что вот такая простая безъязыковая среда Scratch методически и технологически опережает тот же КуМир - в ней параллельность и события - это данность.
Денис Кириенко ( Пользователь )
Цитата (Михалкович Станислав, 15.02.2009, 23:08) <{POST_SNAPBACK}>
Может быть - дело вкуса. Я, например, никогда не использую в обучении школьников консольный компилятор. Разве что, для самых продвинутых могу. Основная масса - это работа в хорошей IDE с подсказками и все такое.


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

Цитата
Да, я сам думал об этом многократно. Но думаю, что этот Исполнитель вряд ли будет реализован в КуМире. Дело в том, что КуМир - прагматичная система для поддержки учебника, а там Черепашки нет. Там есть много других интересных и непростых вещей, так что материала хватает, и покрытие - высокое. А Черепашка используется в других учебниках - КуМир их не поддерживает. Ну и, надо сказать, что при всей красоте Черепашки чуть меняется класс алгоритмов, которые можно эффективнее реализовать, но для обучения основных конструкций языка Робота и Чертежника хватает с головой


Так я даже думал над тем, чтобы самому написать черепашку для Кумира. Чем больше средств - тем лучше, тем проще будет популяризовать среду.

Цитата
Причем, Робот почти во всех темах рулит, кроме, разве что, процедур с параметрами.

Я и для Робота напридумывал задач на процедуры с параметрами:
http://server.179.ru/wiki/wakka.php?wakka=...ika/7B/20090209
Илья Ермаков ( Пользователь )
Да, Денис, я именно на таких задачах показывал параметры. Вообще, все опорные понятия с исполнителями демонстрировать - заглядение :)

По поводу Черепашки. Да, как Станислав Станиславович заметил - это другой класс алгоритмов. Обратной связи (понятия обстановки и её анализа) в ней нет. Зато для младших школьников самое то. Рисунки так и просится делить на отдельные вспомогательные процедуры, обговаривать, какие предусловия должны выполняться перед каждой (куда она носом стоит...) Даже с некоторыми группами первокурсников (которые "железячники" и послабее) я её одну-две пары применял, чтобы закрепить декомпозицию "сверху сниз".

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

Касательно нескольких исполнителей. Конечно, хочется показать и параллелизм, и то, и сё... Но в рамках школы это нереально - и замахиваться опасно. Тут бы самую базу дать. Велик соблазн положиться на то, что "им же любопытно, щас поглядят - сообразят", но обратная сторона медали: насмотрелись на многое, а толком ничего не умеют... А хотелось бы, чтобы приходили в ВУЗ - и умели отлично строить базовые конструкции (процедуры, циклы WHILE правильные, от постусловий...). Мечта? Но, в конце концов, наше мат. образование предполагает, что по окончании школы человек умеет решать обычные уравнения, владеет тригонометрией и может брать производные... И объяснять с нуля в ВУЗе не нужно (по факту - очень часто нужно, да, я это прекрасно знаю... Но я говорю о том, какова цель школьного курса...). Так же надо строить и информатику в школе.

Денис Кириенко ( Пользователь )
Вышла версия 1.6 системы "Кумир", скачать можно с сайта http://lpm.org.ru/kumir/

Конечно, если вы недавно скачивали и смотрели последнюю версию Кумира, то ничего нового, кроме исправления ошибок, не увидите.

Разработчики переключились на версию 1.7, но чего принципиально нового предполагается в версии 1.7 по сравнению 1.6 пока непонятно.
Денис Кириенко ( Пользователь )
Может быть кому пригодится - как установить Кумир на "школьные" дистрибутивы, построенные на базе ALT Linux 4.0.

Предыдущая версия Кумира 1.5.2 ставится без проблем - нужно скачать пакет http://lpm.org.ru/kumir/builds/altlinux/4....inux40.i586.rpm и установить его командой apt-get выполненной из каталога, куда был скачан файл:

Код
# apt-get install kumir-1.5.2-20080416.altlinux40.i586.rpm


Установить Кумир версии 1.6.0 на школьные дистрибутивы тяжелее, так как это потребует обновления библиотеки Qt до версии 4.4, в то время как в "школьном" дистрибутиве версия библиотеки Qt - 4.3.

Сначала скачаем следующие файлы:
ftp://mirror.yandex.ru/altlinux/4.1/Deskt....M41.1.i586.rpm ftp://mirror.yandex.ru/altlinux/4.1/Deskt....M41.1.i586.rpm ftp://mirror.yandex.ru/altlinux/4.1/Deskt....M41.1.i586.rpm ftp://mirror.yandex.ru/altlinux/4.1/Deskt....M41.1.i586.rpm ftp://mirror.yandex.ru/altlinux/4.1/Deskt....M41.1.i586.rpm ftp://mirror.yandex.ru/altlinux/4.1/Deskt....M41.1.i586.rpm ftp://mirror.yandex.ru/altlinux/4.1/Deskt...4-alt1.i586.rpm http://www.179.ru/~dk/kumir-1.6-alt17.M41.1.i586.rpm

Затем выполним команду из каталога, в который были скачаны эти файлы:
Код
# apt-get install libqt4-core-4.4.3-alt1.M41.1.i586.rpm libqt4-gui-4.4.3-alt1.M41.1.i586.rpm libqt4-xml-4.4.3-alt1.M41.1.i586.rpm libqt4-script-4.4.3-alt1.M41.1.i586.rpm libqt4-dbus-4.4.3-alt1.M41.1.i586.rpm qt4-common-4.4.3-alt1.M41.1.i586.rpm qt4-settings-4.4-alt1.i586.rpm kumir-1.6-alt17.M41.1.i586.rpm


Если других rpm-файлов в этом каталоге нет, то можно просто:
Код
# apt-get install *.rpm
Наталья Кутепова ( Пользователь )
Работаю с КуМиром 2-ой год. К сожалению, не нашла никакой справки по нему. Осваиваю запись команд вслепую. Подскажите, где можно найти хорошее руководство по этой системе. А программа очень хорошая. ребята с удовольствием решают алгоритмы с ее помощью . Даже просят, давайте не на бумаге решать будем, а в КуМире.

footer logo © Образ–Центр, 2018. 12+