Каркас колонии


Colony Framework — это спецификация платформы плагинов с открытым исходным кодом . [1] Реализации спецификации предлагают модель компонентов времени выполнения, которая позволяет устанавливать, запускать, останавливать, обновлять и удалять плагины, не требуя остановки контейнера приложения. Спецификация в значительной степени опирается на принцип инверсии управления , чтобы упростить обнаружение компонентов приложения и взаимодействие друг с другом.

Colony стремится устранить сложность, обычно связанную с созданием модульных приложений, за счет упрощенной унифицированной модели разработки компонентов. Практические приложения могут варьироваться от модульного корпоративного программного обеспечения до объединения приложений. [2]

Colony черпает вдохновение из других модульных решений, таких как OSGi для языка программирования Java и Managed Extensibility Framework (MEF) для .NET Framework .

Colony стремится быть независимой от платформы и языка спецификацией и обслуживать широкий спектр вариантов использования. [3] Сюда входят варианты использования, обычно связанные с OSGi , такие как модульное приложение с узким ядром и большими возможностями расширения. Это также включает варианты использования, которые обслуживает MEF, такие как добавление модульности к существующему приложению без необходимости создания разработчиком собственной инфраструктуры плагинов с нуля.

Необходимость сокращения количества шагов настройки для сборки вычислительной сетки, а также поддержка добавления узлов и максимально быстрого распределения вычислений по ним также движет инициативой Colony Distributed.

Жизненный цикл плагина включает в себя загрузку и выгрузку его ресурсов, внедрение его в другие как возможность или зависимость , а также внедрение в него возможностей и/или зависимостей. [4]