Как упростить разрастающийся код: файлы, define и битовые маски, Юрий Лотра "Экзотрон технолоджи"

78
0
24 июня 2026 г.
ИТ-рынок, информационные технологии, ПО

Юрий Лотра, инженер программист "Экзотрон технолоджи"

GALILEOSKY TELEMATICS AWARDS 2026 - презентация лучших решений по цифровизации транспорта и спецтехники.

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

Важный аналитический тезис состоит в том, что понятность кода напрямую влияет на скорость развития проекта. Для этого используются define-подстановки: они заменяют не только числа и константы, но и целые строки кода, превращая неудобные технические обозначения в осмысленные имена и готовые вызовы функций. Это снижает нагрузку на память, упрощает сопровождение и делает сложные конструкции более управляемыми.

Отдельный сильный блок выступления — работа с битовыми масками. Автор показывает, что одна переменная может хранить до 32 независимых флагов, а значит, один алгоритм можно тонко настраивать без создания десятков отдельных версий. Такой подход позволяет включать и выключать поведение через отдельные биты, быстро проверять условия и поддерживать много комбинаций параметров в компактной форме; в качестве удобства ещё и сделан простой интерфейс управления в Telegram.

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

Финальный смысл выступления — переход от монолита к модульной архитектуре. Когда алгоритм вырастает до 50–60 КБ и перестаёт помещаться в один файл, его приходится дробить на части. Для этого вводится мастер-алгоритм, который обращается к подчинённым модулям, получает от них данные и собирает результат обратно. Такой подход ускоряет загрузку, уменьшает риски сбоев при передаче и делает систему масштабируемой, потому что базовые функции можно переиспользовать в разных сценариях

Заказать съёмку видео
у команды JSON.TV
Написать
Реклама услуг съемки видео

Связанное видео

CNews
CNews FORUM Кейсы 2026: опыт ИТ-лидеров
112
0
Июнь 2026 г.
ОМГ
ЦИПР-2026
114
0
Июнь 2026 г.
TMT Conference
Телеком Будущего 2026
92
0
Май 2026 г.
ComNews
TransNet 2026: магистральные сети связи
143
0
Апрель 2026 г.
CNews
Российские ERP-системы
111
0
Апрель 2026 г.
CNews
Российские ERP-системы
114
0
Апрель 2026 г.
CNews
Российские ERP-системы
20
0
Апрель 2026 г.
CNews
Российские ERP-системы
133
0
Апрель 2026 г.
TAdviser.ru
ИТ-ПРИОРИТЕТЫ 2026
98
0
Апрель 2026 г.
CNews
Российские ERP-системы
109
0
Апрель 2026 г.
Смотреть раздел полностью ->