В сегодняшней заметке мы расскажем о важной доработке наших продуктов, которая будет доступна, начиная с версии 2022.1. Речь идет про существенное уменьшение размера кода за счёт оптимизации JS-скриптов.
Оптимизация коснулась как упакованных, так и обычных файлов. Сначала разберёмся с pack-файлами: здесь мы поменяли алгоритм работы архиватора с Deflate на Brotli. Общий объём уменьшения кода составил порядка 20 процентов.
В обычных файлах, где использование упаковщика нецелесообразно, код был переписан в сторону уменьшения. Также мы провели оптимизацию процедуры минификации: по сути, разработали собственные методики для минификатора, функционирование которого происходит до использования инструмента компрессии UglifyJS. В результате данный инструмент получает уже минифицированный код, что повышает эффективность сжатия.
В обычных файлах, где использование упаковщика нецелесообразно, код был переписан в сторону уменьшения. Также мы провели оптимизацию процедуры минификации: по сути, разработали собственные методики для минификатора, функционирование которого происходит до использования инструмента компрессии UglifyJS. В результате данный инструмент получает уже минифицированный код, что повышает эффективность сжатия.
Результат оптимизации кода – это, в первую очередь, более быстрая загрузка без увеличения времени запуска, причем как в минифицированных версиях, так и версиях пак-скриптов. Оптимизация кода затронула продукты Stimulsoft, использующие в работе JavaScript – Reports.JS, Dashboards.JS, Reports.PHP и Dashboards.PHP.