Разработка исходного кода в файловом контенте (пакет-проект)
Glossary Item Box
Одним из инструментов Creatio для ускорения разработки серверного кода для приложения является пакет-проект.
Это пакет, который позволяет разрабатывать функциональность как обычный C# проект (рис. 1.).
Рис. 1. — Отличие пакета-проекта от обычного пакета.
Новая функциональность в виде скомпилированной библиотеки и cs-файлов включается в файловый контент пакета (папка Files) (рис. 2).
Рис. 2. — Стурктура папок пакета-проекта
Процесс поставки новой функциональности в приложение Creatio при использовании пакета-проекта (рис. 3):
1. Пакет-проект, как отдельный cs-проект компилируется в библиотеку, которая будет именоваться также как и сам пакет.
2. Скомпилированные файлы помещаются в папку ../Files/Bin/[PackageName].dll
3. При старте или перезапуске приложения Creatio собирает информацию о том, что в пакетах есть подготовленные библиотеки и сразу же подключает их в приложение.
Рис. 3. — Связь пакета-проекта с приложением
Преимущества использования пакетов-проектов при разработке серверного кода
- При большом количестве схем исходного кода в пакетах компиляция обычно занимает длительное время. Использование пакетов-проектов позволяет уменьшить скорость компиляции с 30-120 сек до 1-2 сек.
- Пакеты-проекты предоставляют возможность передавать результаты разработки на production-среду без прямой поставки. Достаточно скомпилировать пакет-проект, передать библиотеку, скопировать ее в папку и после запуска изменения вступают в силу. Для поставки функциональности не требуется компиляция конфигурации.
- Значительно упрощается разработка серверного кода в облачных приложениях.
- Пакеты-проекты предоставляют легкое отслеживание всех зависимостей реализации. Это помогает понимать последовательность зависимостей и то, какие классы необходимо тестировать при изменениях функциональности.
- Появляется удобная возможность автоматического тестирования функциональности.
Рекомендуемые инструменты для разработки пакета-проекта
-
Creatio command-line interface utility (clio) — утилита с открытым исходным кодом для интеграции, разработки и CI/CD. Позволяет:
- создавать пакеты-проекты;
- осуществлять поставку пакета на локальную или облачную среду;
- получать пакета с локальной или облачной среды;
- перезапускать приложения;
- конвертировать существующие пакеты.
- CreatioSDK — nuget-пакет, предоставляющий набор средств разработки, который позволяет создавать приложения на платформе Creatio.