Skip to content

Устройство и инфраструктура

Архитектура

1Script написан на языке C# и работает на платформе .NET Актуальная версия платформы - NET6. По мере необходимости, версия платформы поднимается до актуальных.

Информация

Предыдущие версии 1Script за номером 1.x используют версию .NET Framework 4.8 на Windows и Mono 6.12 на Linux

1Script поставляется в двух вариантах дистрибутивов:

  • SCD (self-contained-deployment) - самостоятельный дистрибутив для конкретной операционной системы
  • FDD (framework-dependent-deployment) - универсальный дистрибутив, не зависящий от ОС, но требующий установки .NET на целевой машине

Для каждого сценария использования могут подходить разные варианты поставки, решать вам.

Если вам нужно "просто 1Скрипт" ставьте SCD для вашей ОС. Если вы, например, собираете docker-образ, в котором уже есть .NET нужной версии, то полный дистрибутив SCD вам не нужен, и вам будет достаточно маленького легковесного FDD.

Также, вам будет достаточно FDD, если у вас на машине уже стоит .NET нужной версии.

Принцип работы

1Script исполняется посредством стековой машины с собственным байт-кодом. Также существует специальный режим компиляции native, который компилирует код 1С в байткод непосредственно машины dotnet. Этот режим является экспериментальным и несовместим по поведению с языком 1С (код должен быть написан в строго-типизированном стиле). Документирование режима native пока в разработке.

Виртуальная машина способна подключать внутрь себя сторонние файлы скриптов, на этом основана модульность исполняющей среды и организованы библиотеки.

Хаб пакетов

Сообщество поддерживает облачное хранилище повторно используемых библиотек, называемое "Хаб пакетов". В это хранилище разработчики публикуют свои решения, которые так или иначе могут использоваться повторно всеми желающими. Хаб пакетов имеет несколько зеркал в случае выхода из строя основного сайта.

Пакеты распространяются в виде файлов с расширением .ospx, которые технически представляют собой zip-архивы специального формата. Упаковка решения в архив .ospx выполняется утилитой opm (OneScript Package Manager). В дальнейшем, опубликованный пакет с помощью той же утилиты устанавливается на машины конечных пользователей. Подробнее об этом механизме можно почитать в разделе "Библиотеки"

Основной сайт

Сайт, на котором вы сейчас находитесь имеет открытые исходные коды и может так же дорабатываться сообществом (например, Вами). Инфраструктура сайта построена вокруг docker-compose.

Информационная безопасность

Проект имеет открытый исходный код и мы стремимся к тому, чтобы он мог беспрепятственно использоваться в различных организациях и государственных учреждениях. Мы стараемся идти на встречу запросам от корпоративного сектора, если они у вас есть, вы можете их задать напрямую авторам.

Также мы подготовили ответы на наиболее часто встречающиеся вопросы от отделов информ.безопасности, вы можете предоставить эту информацию вашей службе infosec.