С 2017 года я разрабатываю свой фреймворк — систему на C++, ReactJS, MySQL и к этому всему генератор кода, написанный на C++. Его отличительными особенностями являются:
- высокая производительность
- многопоточность
- способность обрабатывать большие объемы данных (десятки миллионов записей и больше)
- самые развитые приемы построения интерфейса пользователя, включая, но не ограничиваясь описанными ниже
- полную поддержку клавиатуры
- отсутствие постраничной навигации (прокрутка как в обычных приложениях вроде 1С)
- мощные фильтры
- настраиваемая сортировка
- богатая панель инструментов
- всплывающие сообщения
- система быстрых клавиш для всех нужных действий
- быстрые переходы в другие режимы
- полное сохранение состояния и возврат к нему
- вызов полноценных режимов при выборе из справочников
- обычное и быстрое главное меню
- поддержка иерархических справочников
- поддержка отношений многие-ко-многим
- поддержка сортировки записей как мышью, так и клавиатурой
- групповые операции
- операции клонирования
- ведения журнала с полной информацией обо всех действиях и повлекших изменениях
- пользователи и их права
- мощная система конфигурации для неограниченного количества параметров и серверов. Система проверок и умолчаний. Двухуровневая группировка, фильтры и пр.
- версионность баз данных. Возможность автоматически поднять версию базы из любой более ранней в любую более позднюю, даже если между ними годы и множество промежуточных версий.
- многорежимные экраны (например такой экран из двух независимых режимов, позволяет находить/создавать/манипулировать записями в справочнике и тут же вставлять их в созданый список, который, в свою очередь, можно тут же сортировать вручную, а также изменять как угодно)
- отрисовка разнообразных графиков
- собственный построитель сложных SQL-запросов (построение иерархических запросов, строящихся на базе других запросов)
- генератор кода — по описанию режима производит 20 файлов на трех языках, после чего режим моментально готов к использованию
- оптимизация SQL-запросов для поддержки больших объемов данных
- даже такие редкие возможности, как, например, возможность задавать id записи самостоятельно, или автоматически найти «дыру» в нумерации id и назначить такой id (для таблиц, где id играет дополнительную роль или там, где очень ограничен их набор)
- Собственные высокопроизводительные двоичные протоколы обмена между серверами распределенной системы. Миллион записей синхронизации в сутки при долях процента использования одного процессора (просто незаметная нагрузка).
- На базе этого фреймворка написано множество сервисов, работающих под большой нагрузкой годами. Методы, подходы, решения и код проверены временем.
Обычный режим
Режим с подсветкой
Фильтр режима
С меню - панелью
Быстрое главное меню
Редактирование записи
Редактирование записи
Редактирование записи
Журнал
Двухрежимный экран
Конфигурация
Простой график
Панель наблюдения
Режим с правой панелью
Воспроизведение видео
2 миллиона эфиров!
Графики 2х серверов на 1 экране