Переход с классического Конфигуратора на 1C:Enterprise Development Tools (EDT) — это не просто смена редактора кода, а полноценная смена парадигмы разработки. Основным драйвером такого перехода обычно выступает потребность в использовании современных инструментов контроля версий (Git), автоматизации тестирования (CI/CD) и глубокой интеграции с системами управления задачами, такими как Jira. Рассмотрим подробнее, что ждет разработчика на этом пути, проанализируем преимущества, разберем подводные камни и выясним, как подготовить инфраструктуру.
Разберем основные плюсы, которые дает переход на EDT по сравнению с традиционным механизмом хранилища конфигурации:
Один из главных недостатков EDT, который отмечают пользователи, — это высокая требовательность к ресурсам. Выясним причину: EDT построена на базе Eclipse и выполняет индексацию всей конфигурации для обеспечения работы интеллектуального контекстного поиска и анализа кода.
Рекомендации по настройке рабочего места:
1С:ERP, 1С:КА) необходимо минимум 32 ГБ ОЗУ. Если выделено меньше, система будет постоянно обращаться к файлу подкачки, что приведет к значительным тормозам.1cedt.ini. Разберем пример настройки параметров памяти:
-Xms4G
-Xmx16G
-XX:+UseG1GC
-XX:+HeapDumpOnOutOfMemoryError
Параметр -Xmx определяет максимальный объем памяти, доступный приложению. Для комфортной работы на больших проектах установите его в значение, равное примерно 50-70% от общего объема вашей оперативной памяти.
Проанализируем опыт разработчиков при работе с визуальным редактором. Здесь кроется ряд неудобств по сравнению с Конфигуратором:
Рассмотрим, как на практике происходит работа нескольких программистов над одним объектом. В Git нет жесткого захвата объекта, как в хранилище. Это порождает вопрос: что делать, если два разработчика одновременно правили одну и ту же форму?
Механизм Smart Merge: Современные версии EDT используют улучшенные алгоритмы объединения XML-структур. Если один разработчик добавил кнопку в шапку, а другой изменил подвал формы, EDT сможет автоматически объединить эти изменения. Однако, если правки коснулись одних и тех же реквизитов, возникнет конфликт.
Как минимизировать конфликты:
Многих волнует вопрос: насколько удобно делать «демоническое» (динамическое) обновление через EDT? Посмотрим на процесс: EDT фактически использует механизмы платформы «под капотом». При нажатии кнопки обновления система вызывает конфигуратор в фоновом режиме для загрузки изменений в базу данных.
Важные моменты:
Если EDT кажется слишком тяжелой, рассмотрим альтернативный стек инструментов: VS Code + BSL Language Server + Gitsync. В этом сценарии написание кода происходит в легком редакторе VS Code с отличной поддержкой Git, а редактирование форм и метаданных выполняется в обычном Конфигураторе. Изменения выгружаются в файлы с помощью утилиты gitsync. Это компромиссный вариант для тех, кто хочет использовать мощь Git, не жертвуя скоростью работы интерфейса.
Также существуют решения в виде TCP-прокси для хранилища, которые позволяют «эмулировать» работу Git поверх стандартного механизма 1С, однако это более сложные в настройке инструменты, требующие глубокого понимания протоколов обмена платформы.
Переход на разработку через EDT оправдан для средних и крупных команд, где важно качество кода и прозрачность истории изменений. Несмотря на требования к «железу» и некоторые шероховатости интерфейса, EDT предоставляет инструменты уровня Enterprise-разработки, которые недоступны в обычном Конфигураторе. Начните с выделения достаточного объема памяти и настройки 1cedt.ini, и процесс освоения станет гораздо комфортнее.