Я хочу создать механизм расширения плагина для очень общего приложения, которое имеет много аспектов и множество различных функций.
Немного подробнее о том, что я разрабатываю:
- У меня есть приложение с графическим интерфейсом, и я хочу предоставить много точек расширения. Я хочу добавить меню, действия, кнопки панели инструментов и т. д.
- У меня есть некоторые службы без графического интерфейса, которые отслеживают изменения в редактируемых данных и т. д. Я хочу зарегистрировать такие службы.
Я рассматриваю Equinox (в качестве примера, я не могу использовать его из-за ограничений приложения) и его очень хороший механизм расширяемости, который включает в себя расширения и точки расширения. Какие проблемы с этим подходом? Какие альтернативные решения этой проблемы доступны?