К нам обратилась глазная клиника с запросом на разработку специализированного программного решения для лечения амблиопии — распространённого зрительного нарушения, которое в народе называют «ленивым глазом». Заказчику требовалась программа «Цветок» — интерактивный терапевтический тренажёр для коррекции зрительных нарушений и восстановления бинокулярного зрения у детей и взрослых.
Главная задача была не просто повторить существующее решение, а создать улучшенную версию: с более качественными и эффективными упражнениями, расширенной палитрой, понятным и удобным пользовательским интерфейсом. Мы взялись за проект и прошли полный путь — от идеи до запуска продаж.
Что такое амблиопия и как программа помогает
Амблиопия — это снижение остроты зрения, при котором один глаз «выключается» из зрительного процесса: мозг постепенно перестаёт использовать сигналы от слабого глаза. Чем раньше начать коррекцию, тем выше шанс восстановить зрение. Классический метод лечения — заставить «ленивый» глаз активно работать с помощью специальных упражнений и стимуляции.
Компьютерная программа «Цветок» превращает это лечение в увлекательную интерактивную тренировку. Пациент выполняет визуальные упражнения, которые стимулируют слабый глаз, тренируют фокусировку и восстанавливают нормальную совместную работу обоих глаз. Благодаря игровой подаче курс даётся комфортно даже маленьким пациентам.
Почему выбрали Qt и Node.js
Программа построена на C++ с использованием библиотеки классов Qt, а серверная часть реализована на Node.js (JavaScript). Такое сочетание технологий обеспечивает качество, надёжность и масштабируемость продукта:
- Высокая производительность клиентской части. Qt на C++ обеспечивает быструю и отзывчивую работу тренажёра — критично для плавной анимации зрительных упражнений, от которой напрямую зависит эффективность лечения;
- Кроссплатформенность. Приложение корректно работает под разными операционными системами, что расширяет аудиторию программы;
- Богатый графический инструментарий Qt. Библиотека позволяет создавать качественные визуальные элементы, точно настраивать цвета и отрисовку — именно то, что требуется для аккуратной зрительной стимуляции и тонкой работы с палитрой;
- Гибкий серверный функционал на Node.js. На Node.js реализованы вспомогательные серверные задачи: хранение и сбор статистики тренировок, синхронизация данных между устройствами, администрирование и подготовка к запуску продаж. Node.js обеспечивает быструю, лёгкую и легко масштабируемую серверную инфраструктуру.
Этапы работы над проектом
Мы построили работу по прозрачному и управляемому процессу:
- Сбор требований. На старте плотно взаимодействовали с врачом-офтальмологом клиники: изучили методику лечения амблиопии, уточнили, как должны работать упражнения, какие параметры регулируются и что важно для врача и пациента.
- Составление технического задания (ТЗ). Зафиксировали полный функционал: набор и алгоритмы упражнений, параметры палитры, требования к интерфейсу, сценарии поведения программы. ТЗ стало основой для разработки и исключило двоякие трактовки.
- Разработка. Написали клиентскую часть тренажёра на Qt и серверную часть на Node.js, реализовав все заложенные в ТЗ функции: улучшенные терапевтические упражнения, расширенную палитру и удобный, интуитивно понятный интерфейс.
- Тестирование. Провели комплексную проверку: корректность работы упражнений, стабильность при разных разрешениях экрана, удобство использования, а также связку клиент–сервер. Получили обратную связь от специалистов клиники и внесли финальные правки.
- Запуск продаж. После успешного тестирования оформили и запустили продажу программы на сайте клиники — продукт стал доступен конечным пользователям, в том числе через серверную инфраструктуру на Node.js.
Результат
Программа «Цветок» готова к использованию как в стенах глазной клиники, так и для домашних тренировок. Заказчик получил качественный, отлаженный и готовый к продаже программный продукт, который помогает пациентам восстанавливать зрение в игровой форме. А опыт совместной работы от сбора требований до запуска продаж — подтверждение того, как важно выстраивать процесс разработки медицинских решений системно: от чёткого ТЗ до тщательного тестирования.