MyBean: лёгкий фреймворк для конфигурации, плагин-коммуникационная группа: 205486036
Адрес открытого исходного кода:
https://git.oschina.net/ymofen/delphi-framework-MyBean
MyBean — это лёгкий фреймворк для настройки, который предоставляет платформу для обмена плагинами.
Группа обмена плагинов: 205486036
Документация:
http://www.cnblogs.com/DKSoft/category/608549.html
Блог:
http://www.cnblogs.com/DKSoft/category/540328.html
[Характеристики MyBean]
- Лёгкий фреймворк для настройки плагинов, представляющий собой открытую библиотеку DLL, которая управляет плагинами.
- Можно выбрать предварительно загружаемые файлы конфигурации через настройки, вместо прямой загрузки файлов плагинов DLL.
- Через настройки можно выбрать, использовать ли каталог кэша DLL. Это позволяет обновлять плагины DLL во время выполнения.
- Один EXE может зарегистрировать фабрику плагинов и использовать функции плагинов.
- Удобный режим одного экземпляра. Фреймворк может управлять жизненным циклом плагина.
- Любой объект, реализующий интерфейс IInterface, может быть зарегистрирован как плагин и интегрирован во фреймворк.
- Можно читать несколько файлов конфигурации плагинов. В основной конфигурации достаточно выполнить следующую настройку:
; Загрузить каталог файлов конфигурации bean (относительный путь (относительно каталога EXE), абсолютный путь (c:\config*.)
; Если конфигурация отсутствует, напрямую загрузить DLL и получить PluginID
; не загружать никаких плагинов DLL
beanConfigFiles=.plug-ins,plug-ins*.plug-ins,beanConfig*.plug-ins
- Конфигурация bean выполняется с использованием json. Конфигурация проста:
{
"id":"aboutForm",
"pluginID":"aboutForm", // Если совпадает с id, можно игнорировать
"lib":"plug-ins\mCore.dll", // Имя файла
"singleton":true, // Режим одиночного экземпляра
/// При использовании режима одиночного экземпляра обратите внимание на то, что либо объект имеет ссылку на интерфейс управления жизненным циклом, либо реализует интерфейс IFreeObject.
/// Не освобождайте объект вручную.
}
- Фреймворк является открытым исходным кодом и зелёным (поддерживает D7 - XE6).
Комментарии ( 0 )