Возвращаемся с лонгридом или большим текстом, и, возможно, с целой серией публикаций о КуМиР. Название программной оболочки, предмета рассмотрения в публикации, удачное, как и судьба этого программного продукта. Обозначает эта аббревиатура "Комплект Учебных МИРов". Звучит космогонически, в духе Ивана Антоновича Ефремова. КуМиР является комплектом, набором учебных инструментов и сред для обучения программированию и алгоритмическому мышлению. Если кратко - программа разработана громадой Научно-исследовательского института системных исследований РАН; о нем подробнее ниже. Истоки создания ведут в далекие 1980-е годы. Первая версия вышла в 1990 году. В авторский коллектив вошли Денис Викторович Хачко, Виктор Вадимович Яковлев и другие. КуМиР предназначен для поддержки начальных курсов информатики и программирования в средней и высшей школе. Основана оболочка на школьном алгоритмическом языке, с русской лексикой и встроенными исполнителями типа Робот или Чертежник. Русский Скретч. Сегодня программа, конечно, не для старших классов. Из-за низкого уровня наглядности и проблем с интеграцией в новейшие операционные системы ранее седьмого класса ее использовать достаточно сложно. Потому "переодеванием" комплекса сегодня занимаются многие - ЯндексУчебник и Blockly, частные или не очень разработчики на GitHub и просто на просторах Интернета. Новую жизнь комплекту дали разработчики заданий ОГЭ и ЕГЭ, включив задания с КуМиР в экзамен. И даже больше - в ВПР и диагностическое тестирование по информатике. Отличная возможность окунуться с головой в 80-90 годы, годы, когда наш мир стартовал как мир ИТ.
Почему КуМиР?
КуМиР интересен тем, что это не просто программа для обучения программированию, это действительно целый мир возможностей. И самое главное, это полностью законченная, целостная и рабочая отечественная разработка. С его помощью можно создавать разнообразные проекты, решать достаточно сложные задачи и развиваться в области информатики. Не знать КуМиР тому, кто изучал информатику в школе, совершенно не в духе времени. Именно на этом продукте можно не только изучать программирование и алгоритмизацию, но и понять, как развивалась отечественная информатика. С КуМиРом можно быстро и легко познакомиться с основами алгоритмического мышления и задуматься о карьере в IT достаточно рано. Как говорится - не верьте тем, кто утверждает, что программирование заменит промптинг. Без хорошей базы ничего достойного получить не удастся. И потому - вперед, к изучению наследия советских программистов.
Немного истории
Повторимся, что КуМиР появился в 1990-х годах. Он был адаптирован к различным компьютерным платформам, распространенным в то время - Yamaha, Корвет, УКНЦ и IBM PC. И его логика и становится понятна, если вспомнить эстетику и архитектуру этих устройств. Система КуМиР издана в 1990 году предприятием ИнфоМир на основе учебника "Основы информатики и вычислительной техники" под редакцией А. Г. Кушниренко, Г. В. Лебедева и Р. А. Свореня. В 2005-2006 годах началась разработка новой версии КуМиР, которая была завершена к 2008 году. Версия поддерживает операционные системы Windows и Linux и распространяется под лицензией GNU GPL 2 (открытая лицензия для свободного ПО, позволяет использовать, модифицировать и распространять с открытым исходным кодом). Был осуществлен переход комплекта от DOS-ориентированного интерфейса к современному оконному интерфейсу на основе библиотеки Qt. Были добавлены исполнители Робот и Чертежник, а также возможность автоматической проверки заданий. Новая версия КуМиР была разработана с использованием языков C++ и Python. Новая версия КуМиР сопровождалась учебниками по информатике А. Г. Кушниренко и других авторов. Новая версия КуМиР стала более удобной и функциональной, что позволило ей сохранить актуальность в современном образовательном процессе.
Современность
В настоящее время КуМиР продолжает развиваться и поддерживаться ФГУ ФНЦ НИИСИ РАН. ФГУ ФНЦ НИИСИ РАН является Федеральным государственным учреждением Федеральным научным центром Научно-исследовательским институтом системных исследований Российской академии наук. Вспоминаете НуиНУ А. и Б. Стругацких? :) Институт создан в 1986 году и занимается фундаментальными и прикладными исследованиями в области нанотехнологий, информационных и телекоммуникационных технологий, вычислительных систем, физики и информатики. В 2014 году к нему присоединили Межведомственный суперкомпьютерный центр РАН. В 2023 году институт вошел в состав Национального исследовательского центра "Курчатовский институт" Разработчики этих учреждений представили публике версию КуМир 2.x с улучшениями по скорости выполнения программ и поддержке практикумов. КуМиР стал одним из наиболее популярных инструментов для обучения программированию в России и странах СНГ.
Технические характеристики
- Язык программирования. Использует алголоподобный язык с русской лексикой. Алгол представляет собой семейство языков программирования, известных своей блочной структурой, процедурами и структурными управляющими конструкциями (ветвлениями, циклами). Школьный язык программирования, таким образом, использует синтаксис и структуру, аналогичные языку Алгол, но с русскими ключевыми словами и терминами.
Исполнители. В системе КуМир используются несколько исполнителей для наглядного представления алгоритмов. Их четыре:
Исполнитель Робот.
Робот действует на плоскости из квадратных клеток. Может переходить между соседними клетками, красить клетку под собой и видеть стены. Робот — один из наиболее универсальных исполнителей, используемых для развития реакции и внимательности.
Задачи:
- Программирование линейных и циклических алгоритмов для перемещения робота по клетчатой плоскости.
- Создание орнаментов и фигур путем закрашивания клеток.
- Решение задач с использованием циклов и ветвлений для навигации робота вокруг препятствий.
Исполнитель Чертёжник
Чертёжник предназначен для выполнения графических задач. Может рисовать линии и фигуры на плоскости. Полезен для задач по геометрии и черчению.
Задачи:
- Рисование простых геометрических фигур (например, квадратов, треугольников).
- Создание сложных рисунков с использованием циклов и условных операторов.
Исполнитель Черепаха
Черепаха также является графическим исполнителем, который может перемещаться по плоскости и рисовать линии. Используется для задач, связанных с геометрией и пространственными представлениями.
Задачи:
- Рисование окружностей и дуг с помощью циклических алгоритмов.
- Создание правильных многоугольников и других геометрических фигур.
Исполнитель Водолей
Исполнитель работает с тремя колбами. Может наполнять и опорожнять колбы, а также переливать воду между ними. Водолей используется для задач, связанных с измерениями и логическими операциями.
Задачи:
- Решение задач по измерению и переносу жидкости между колбами с использованием логических операций и циклов.
Каждый исполнитель имеет свои команды и задачи, что позволяет учащимся изучать различные аспекты программирования и алгоритмизации. Константин Юрьевич Поляков на одноименном сайте занимается разработкой методических материалов и практикумов по программированию в системе КуМиР. Он автор эффективной методики обучения программированию с использованием КуМиРа и серии автоматизированных практикумов для учащихся.
- Интерфейс: Построен на основе библиотеки Qt. Это кросс-платформенный фреймворк для разработки программного обеспечения, написанный на языке C++. Qt позволяет создавать приложения с графическим интерфейсом пользователя (GUI), а также поддерживает разработку сетевых, консольных и других типов приложений. Поддерживает разные операционные системы, включая Windows, Linux, macOS, Android и iOS. Библиотека Qt использована в системе КуМир для создания графического интерфейса пользователя и обеспечения кросс-платформенности, возможность запускать КуМир на разных операционных системах без значительных изменений в коде.. Удобный и интуитивно понятный интерфейс для системы КуМир облегчил работу с исполнителями и редактором кода. Qt поддерживает объектно-ориентированную модель программирования, упрощая расширение и модификацию кода системы КуМир. Qt распространяется под несколькими лицензиями - LGPL и коммерческой лицензии. Использование коммерческой лицензии требует значительных затрат, а LGPL накладывает ограничения на статическую линковку и модификацию библиотеки. У Qt могут возникать проблемы с совместимостью между разными версиями и операционными системами, особенно при использовании динамической линковки. Не так актуально, но, учитывая, что речь идет о школьных компьютерах - использование Qt может увеличить размер дистрибутива программы из-за необходимости включения библиотек Qt. Qt имеет большой набор классов и функций, что затрудняет работу, особенно для начинающих разработчиков. Некоторые магазины приложений могут иметь ограничения на использование Qt, особенно при распространении программ с закрытым исходным кодом. Кроме того, введение санкций против России привело к ограничениям на скачивание Qt с российских IP-адресов, хотя это не влияет на использование Qt под открытой лицензией. Qt и сейчас доступен под открытой лицензией (LGPL), которая позволяет использовать его бесплатно для некоммерческих проектов или при соблюдении определенных условий для коммерческого использования.
Операционные системы: Поддерживает Windows, Linux и macOS. Первоначально КуМир работал на старых ЭВМ и под DOS. В дальнейшем КуМир был адаптирован для работы под Windows, что позволило ему оставаться актуальным на протяжении многих лет. В настоящее время КуМир также поддерживает Linux, он совместим с популярными открытыми операционными системами. Современные версии КуМир, использующие Qt, потенциально могут работать и на macOS. Наблюдаются и проблемы с КуМиром на Windows: совместимость с драйверами, отсутствие библиотек, ограничения в магазине приложений и конфликты с обновлениями Windows. Рекомендовано использовать последнюю версию и следить за обновлениями. Последняя доступная версия системы КуМир - 2.1.0-rc10, которая находится в стадии кандидата в релизы (промежуточная версия программного обеспечения, которая находится на последнем этапе перед выпуском окончательного релиза. Эта версия уже прошла основное тестирование и считается готовой для широкого использования, но еще может содержать незначительные ошибки или недочеты). Но в этой версии обнаружен баг, вызывающий случайные падения системы, что препятствует выпуску новой стабильной версии. Пользователи также часто сталкиваются с такими проблемами как проблемы совместимости с новыми версиями Windows: совместимость драйверов и библиотек, особенно после обновлений Windows. Не очень радует отсутствие стабильных версий из-за наличия критических багов в текущих релизах. Наблюдается нестабильность в работе исполнителей, которые также могут требовать дополнительных настроек. Поддержка со стороны разработчиков достаточно ограничена, что довольно сильно затрудняет решение проблем и обновление системы. В новых версиях Windows программа так и не "почувствовала" себя как дома.
КуМир, безусловно, полезный инструмент для обучения программированию, но требует регулярных обновлений и улучшений для поддержания совместимости с современными системами. Важно и своевременное устранение существующих багов для стабильной работы системы.
Если все эти векторы сойдутся, КуМиРом можно воспользоваться не только как простым инструментом обучения. Пользователи откроют для себя целый мир технического творчества и других возможностей. С его помощью можно открыть для себя увлекательный мир программирования и начать путь в IT. О чем мы и расскажем в последующих публикациях.
ПОЛЕЗНО
NIISI RAN - официальный сайт системы КуМир. На сайте доступны ресурсы и документация для работы с КуМиром. ПЕРЕЙТИ
Kpolyakov.spb.ru - материалы и ресурсы для работы с КуМиром, учебники и практикумы. ПЕРЕЙТИ