### **Лаборатория алхимика**



#### **Техническая документация**



**1. Общие сведения о программе**

Название программы: «Лаборатория алхимика»  

Язык программирования: Python 3.10 (64‑bit)  

Тип приложения: настольное графическое приложение (GUI) на базе Tkinter для операционной системы Windows.



**1.1. Используемый стек технологий**

Язык: Python 3.10 (64‑bit)

Стандартная библиотека:

\- `tkinter`, `tkinter.ttk` — создание графического интерфейса (окна, вкладки, кнопки, поля ввода)

\- `json` — сохранение и загрузка прогресса пользователя

\- `os` — работа с файлами (проверка существования файла прогресса, путь к изображениям)

\- `threading` — выполнение сетевых запросов в фоновом потоке, чтобы не «вешать» интерфейс

\- `re` — регулярные выражения для разбора химических формул

Внешние библиотеки:

\- `requests` — HTTP‑запросы к интернет‑сервисам (PubChem) для получения информации о веществах

Медиафайлы:

\- `Mendeleev.png` (или `.jpg`) — портрет Д.И. Менделеева для стартового окна

\- `Khimicheskie-reaktsii.png` (или `.jpg`) — иллюстрация для вкладки «Магия химических превращений»



**1.2. Запуск программы**

В режиме разработки:

```bash

python alchemist\_app.py

В режиме исполняемого файла (.exe), собранного через PyInstaller:

Двойной клик по alchemist\_app.exe



**2. Назначение программы и решаемые задачи**

**2.1. Цели приложения**

Приложение «Лаборатория алхимика» предназначено для интерактивного обучения основам химии учащихся средней школы. Оно объединяет теорию, практические задания и игровые элементы (прогресс, эксперименты), чтобы:

* сформировать базовое представление о химических элементах и таблице Менделеева
* показать основные типы химических реакций и способы получения веществ
* научить узнавать химические формулы распространённых веществ
* развивать навыки экспериментального мышления через виртуальные эксперименты
* мотивировать учащихся с помощью системы прогресса и игровой структуры



**2.2. Основные задачи, решаемые программой**

* Визуализировать периодическую систему с интерактивными подсказками по каждому элементу
* Объяснить классификацию химических реакций (соединение, разложение, замещение, обмен) на доступном языке
* Познакомить с формулами бытовых веществ и связать их с повседневной жизнью
* Обеспечить поиск информации о веществах в интернете (через PubChem) с поддержкой ввода на русском языке

Дать возможность пользователю:

* выполнять готовые эксперименты с описанием реагентов, уравнений реакций и объяснением
* проводить собственные эксперименты, подбирая элементы и виды превращений и получая примеры реальных веществ
* Отслеживать прогресс учащегося (баллы и выполненные эксперименты) и сохранять его между запусками



**3. Описание интерфейса и управляющих воздействий**

**3.1. Стартовое окно (ввод имени)**

Назначение: идентификация ученика и загрузка его прогресса.

Внешний вид:

Окно‑приветствие выполнено в светлых тонах на белом фоне. Слева расположен портрет Дмитрия Ивановича Менделеева, справа — приветственный текст от его имени, объясняющий цель приложения. Ниже находится поле для ввода имени с подписью «Твоё имя» и кнопка «Вперёд, к знаниям!».

Элементы управления:

* Поле ввода имени (Tkinter Entry):
* Ввод с клавиатуры
* Подтверждение клавишей Enter
* Кнопка «Вперёд, к знаниям!»:
* Нажатие левой кнопкой мыши (ЛКМ):

при пустом имени — всплывающее предупреждение

при заполненном имени — загрузка/создание прогресса и открытие главного окна

* Закрытие окна (крестик): Завершает работу программы



**3.2. Главное окно**

Внешний вид:

Главное окно выполнено в светлой цветовой гамме: светло‑серый фон, чёрный основной текст, цветные акцентные кнопки (оранжевые, синие, зелёные, фиолетовые). Внизу справа постоянно отображается надпись «Автор: Матвей Гайдамаков».



Главные области:

Верхняя панель:

Надпись «Ученик: <имя>»

Надпись «Прогресс: N баллов» (N динамически изменяется)

Кнопка «Help»:

ЛКМ: открывает окно с краткими подсказками по использованию приложения

Кнопка «Выход»:

ЛКМ: сохранение прогресса, закрытие программы

Область вкладок (ttk.Notebook):



Вкладка 1: «Химия вокруг нас»

Вкладка 2: «Магия химических превращений»

Вкладка 3: «Формулы веществ»

Вкладка 4: «Лаборатория алхимика»



Нижний правый угол:

Надпись «Автор: Матвей Гайдамаков», неизменно отображается на протяжении работы приложения



Управление:

Переключение вкладок — ЛКМ по названию вкладки

При первом посещении каждой вкладки начисляются баллы (один раз, с сохранением в файл прогресса)



**4. Вкладка 1: «Химия вокруг нас»**

**4.1. Содержание**

Левая часть:

* Большой текстовый блок крупным шрифтом на светлом фоне, оформленный как рассказ от лица Д.И. Менделеева:
* история появления таблицы Менделеева
* объяснение периодичности
* интересные факты о химических элементах



Правая часть:

* Заголовок «Выбери элемент в таблице»
* Цветная таблица элементов (упрощённая периодическая система) с кнопками
* Под таблицей — легенда с расшифровкой цветовых групп (неметаллы, металлы, лантаноиды, актиноиды и т.д.)
* Краткое объяснение периодических тенденций (изменение радиуса, энергии ионизации, металлических свойств)



**4.2. Управляющие воздействия**

ЛКМ по кнопке с символом элемента (H, O, Na и т.д.):

Под таблицей появляется название элемента и краткая характеристика (сфера применения, интересный факт), выводимая крупным шрифтом с переносом строк

Прокрутка текста:

Колесо мыши по текстовому полю (при необходимости)



**5. Вкладка 2: «Магия химических превращений»**

**5.1. Содержание**

Левая часть:

Вступительный текст крупным шрифтом на светлом фоне с объяснением, что такое химическая реакция

Блок с большими цветными кнопками типов реакций:

* «Реакции соединения»
* «Реакции разложения»
* «Реакции замещения»
* «Реакции обмена»

Текстовый блок «А как же учёные получают новые вещества?» с кнопками способов получения:

* «Нагревание»
* «Освещение»
* «Электрический ток»
* «Катализаторы»
* «Смешивание»



Правая часть:

Иллюстрация лабораторных приборов (Khimicheskie-reaktsii.png/.jpg), масштабированная под правую колонку

Цитата Д.И. Менделеева о законах химических реакций и важности наблюдений и экспериментов



**5.2. Управляющие воздействия**

ЛКМ по кнопке типа реакции:

В отдельной области под вступительным текстом появляется описание данного типа реакции и примеры уравнений

ЛКМ по кнопке способа получения:

В отдельной области появляется объяснение выбранного способа с понятными сравнениями и примером



**6. Вкладка 3: «Формулы веществ»**

**6.1. Содержание**

Внешний вид:

Вкладка выполнена в светлой тематике: белый фон, тёмный текст, цветные кнопки увеличенного размера.

Верхняя часть:

Текст‑подводка о том, что бытовые вещества состоят из элементов и имеют формулы

Сетка из трёх столбцов с кнопками, содержащими названия веществ (без формулы на кнопке):

*Вода, Сахар, Пищевая сода, Уксусная кислота, Соль, Этиловый спирт, Аммиак, Перекись водорода, Мыло, Марганцовка, Мел*



Нижняя часть:

Блок «Поиск вещества в интернете»:

Поле ввода названия вещества на белой панели

Кнопка «Искать»

Большое светлое текстовое поле с увеличенным шрифтом для вывода результатов



**6.2. Управляющие воздействия**

ЛКМ по кнопке вещества:

Открывается диалоговое окно (messagebox.showinfo) с:

* названием вещества
* формулой (крупным шрифтом)
* кратким описанием применения

Ввод текста в поле «поиск вещества»:

Можно вводить на русском языке (например, «вода», «пищевая сода», «воздух») или на английском (water, sodium chloride)

ЛКМ по кнопке «Искать»:

Запускается фоновый поток

Выполняется:

попытка перевода русского названия через встроенный словарь в английское или латинское наименование

запрос к базе PubChem по имени вещества

В текстовом поле выводится:

* информация о формуле
* молекулярной массе
* SMILES‑записи
* примечание о языке ввода (если был перевод)



**7. Вкладка 4: «Лаборатория алхимика»**

**7.1. Содержание**

Верхняя часть:

Вступительный текст о применении знаний на практике

Сетка цветных кнопок (3 столбца) с названиями 12 готовых экспериментов:

* «Стреляющая бутылочка»
* «Танец "бабочек"»
* «Йод и крахмал»
* «Плавающий картофель»
* «Несгораемая бумага»
* «Серебряный лес»
* «Свинцовая "шуба"»
* «Алхимическое "золото"»
* «Дым без огня»
* «Выращивание кристаллов соли»
* «Окрашивание пламени»
* «Секретное послание молоком»

Выполненные эксперименты автоматически помечаются значком ✔ перед названием



Нижняя часть:

Большая оранжевая кнопка «Провести собственный эксперимент»



**7.2. Управляющие воздействия**

**7.2.1. Готовые эксперименты**

При нажатии на любую кнопку эксперимента открывается новое окно в светлой цветовой схеме:

Верхняя часть:

* Описание опыта крупным шрифтом
* Перечень реагентов
* Способ проведения
* Уравнение реакции
* Объяснение происходящего



Левая часть:

Блок «Шкаф с элементами»:

Цветная таблица Менделеева в виде кнопок

ЛКМ по элементу добавляет его в список выбранных



Блок «Химическое превращение» (чекбоксы):

Соединение

* Разложение
* Замещение
* Обмен
* Нагревание
* Охлаждение
* Смешивание



Правая часть:

Блок «Результат опыта»:

Текст‑подсказка



Строка выбранных элементов

Кнопка «Провести опыт»

Кнопка «Сбросить»



Реакции программы:

При нажатии «Провести опыт»:

Программа проверяет:

выбраны ли все необходимые элементы для данного опыта

выбран ли хотя бы один подходящий тип превращения



При успехе:

Выводится зелёное сообщение «Молодец! Ты справился с заданием!»

Опыт автоматически считается выполненным

Пользователю начисляются дополнительные баллы

В основном списке вкладки 4 рядом с названием появляется галочка ✔

Окно эксперимента автоматически закрывается через 5 секунд



При ошибке:

Выводится оранжевое сообщение с подсказкой попробовать другой набор элементов или типов превращений



При нажатии «Сбросить»:

Очищается выбор элементов и типов превращений

Восстанавливается исходный текст‑подсказка



**7.2.2. Собственный эксперимент**

Открывается отдельное окно в светлой теме, разделённое на три логических блока:



Левая верхняя часть:

Таблица Менделеева для выбора любых элементов



Левая нижняя часть:

Чекбоксы с типами превращений (соединение, разложение, замещение, обмен, нагревание, охлаждение, смешивание)



Правая часть:

Крупный текстовый блок результата

Кнопка «Запустить эксперимент»

Кнопка «Сбросить»



Реакции программы:

При нажатии «Запустить эксперимент»:

Программа анализирует выбранный набор элементов

Подбирает подходящие соединения из встроенного банка COMPOUND\_BANK

При наличии совпадений формирует развёрнутый текст:

* Названия веществ
* Формулы
* Краткие пояснения
* Уточнённые формулы и молекулярные массы из PubChem (при возможности)

Результат выводится в большом светлом поле с увеличенным шрифтом



При нажатии «Сбросить»:

Очищается список элементов

Снимаются все флажки типов превращений

Возвращается исходный вступительный текст‑подсказка



**8. Практическая направленность и достоинства программы**

**8.1. Практическая направленность**

Приложение ориентировано на реальные учебные задачи:



Используется как интерактивное дополнение к урокам химии в 7–9 классах:

* демонстрация таблицы Менделеева
* иллюстрация типов реакций и способов получения веществ
* разбор домашних опытов с акцентом на безопасность



Применяется для:

* самостоятельной работы ученика дома
* фронтальной демонстрации на уроке (режим «во весь экран»)
* подготовки к олимпиадам и проектной деятельности



Связь с базой PubChem обеспечивает:

* актуальность и «взрослый» уровень данных (формулы, массы, SMILES)
* знакомство с реальными научными инструментами



**8.2. Содержательность**

В программе описано 12 качественных опытов с реагентами, уравнениями реакций и пояснениями

Охвачены ключевые темы школьного курса:

* элементы и периодическая система
* типы химических реакций
* формулы веществ и их бытовое значение
* газообразные, жидкие и твёрдые вещества



Встроены объяснения на понятном языке, но без потери научной корректности



**8.3. Технологичность**

Используется современный стек:

Python 3.10 (64‑bit)

Tkinter (ttk.Notebook) для вкладочного интерфейса

requests для работы с API PubChem



Реализованы:

* многопоточность для сетевых запросов (интерфейс не «подвисает»)
* система сохранения прогресса в JSON:
* баллы ученика
* посещённые вкладки
* выполненные эксперименты
* поддержка русского ввода для поиска веществ



Приложение упаковано в .exe с помощью PyInstaller, что позволяет запускать его на школьных компьютерах без установки Python



**8.4. Привлекательность и удобство**

Единая светлая цветовая схема:

Основной фон — светло‑серый и белый, минимизирующие утомляемость глаз

Текст — тёмный, хорошо читаемый, с увеличенным кеглем на всех основных экранах

Акцентные элементы (кнопки, прогресс, выделения) окрашены в оранжевые, синие, зелёные и фиолетовые тона

Периодическая система элементов оформлена цветами групп (неметаллы, металлы, лантаноиды, актиноиды и т.д.), соответствующими классическим представлениям из учебников химии



Интуитивное управление:

Всё делается мышкой и парой клавиш

Подписи понятны школьникам



Игровые элементы:

Прогресс в баллах

Поощрение за правильное выполнение опытов

Собственные эксперименты — как «песочница» для ученика



**9. Заключение**

Проект «Лаборатория алхимика» демонстрирует, как современные технологии могут сделать обучение химии более интересным, наглядным и эффективным. Приложение успешно сочетает образовательный контент с игровой механикой, позволяя учащимся не только получать знания, но и применять их на практике в безопасной виртуальной среде.



Приложение прошло тестирование на группе школьников 10 класса и получило положительную обратную связь. Внесённые по их замечаниям улучшения интерфейса и функциональности сделали программу ещё более удобной и понятной.



В дальнейшем проект может развиваться:

* Добавление новых опытов и экспериментов
* Расширение банка соединений
* Интеграция с другими базами данных
* Улучшение визуального оформления
* Добавление дополнительных образовательных материалов



Автор: Матвей Гайдамаков

Научный руководитель: Горнова О.О., учитель информатики

Учебное заведение: ГБОУ «Гимназия №284 Кировского района Санкт‑Петербурга»

Год разработки: 2026



Контакты и дополнительная информация

Для получения дополнительной информации о проекте или предложений по улучшению обращайтесь к автору через образовательное учреждение.



Версия документации: 2.0

Дата последнего обновления: 26 марта 2026 года

