Дилема: что первично, плагин или хост
От: PnP Германия  
Дата: 01.06.07 12:59
Оценка:
Есть приложение с некоей копмонентной архитектурой, компоненты выполняются в виде плагинов, которые видимы на экране в виде контролов, ( типа фунцция представлена на экране кнопкой, кнопку нажали, произвелись вычисления над некими данными), тоже через меню, тулбары и т.д. Эти контролы видны в неком главном GUI (хосте). Вот собственно вопрос.
Можно сделать так чтобы плагины реализовывыли некий интерфейс, хост их енумеровал (да простят мне такое выражение), и добавлял их в меню, тулбары, экран и т.д.
либо открыть интерфейсы хоста (для меню, тулбаров, добавления на экран и т.д) и пусть плагины себя сами добавляют.
Что думает коллективный разум?
Re: Дилема: что первично, плагин или хост
От: Stormblast http://www.myspace.com/stormblastblack
Дата: 01.06.07 13:13
Оценка: 1 (1)
Eclipse видел ?
http://www.eclipse.org/
Re[2]: Дилема: что первично, плагин или хост
От: PnP Германия  
Дата: 01.06.07 13:55
Оценка:
Здравствуйте, Stormblast, Вы писали:

S>Eclipse видел ?

S>http://www.eclipse.org/

нет, а что там в двух словах
Re[3]: Дилема: что первично, плагин или хост
От: Baudolino  
Дата: 01.06.07 13:58
Оценка:
PnP>нет, а что там в двух словах
фреймворк плагинов
Re[3]: Дилема: что первично, плагин или хост
От: Stormblast http://www.myspace.com/stormblastblack
Дата: 01.06.07 15:23
Оценка:
Здравствуйте, PnP, Вы писали:

PnP>нет, а что там в двух словах


http://rsdn.ru/article/devtools/eclipse.xml
Автор(ы): Askar Rahimberdiev
Дата: 22.01.2005
Данная статья представляет собой краткий обзор основных особенностей архитектуры расширяемой IDE Eclipse. Пользовательский интерфейс Eclipse остается за ее рамками – с его исчерпывающим описанием можно ознакомиться в документации, входящей в дистрибутив продукта. Вместо этого читатели получат представление о внутреннем устройство Eclipse, которое может представлять интерес не только для разработчиков приложений на базе этой платформы, но и послужить источником идей для архитекторов больших и нетривиальных проектов.
Re: Дилема: что первично, плагин или хост
От: bnk СССР http://unmanagedvisio.com/
Дата: 02.06.07 11:01
Оценка: 2 (1) +1
Здравствуйте, PnP, Вы писали:

PnP>Можно сделать так чтобы плагины реализовывыли некий интерфейс, хост их енумеровал (да простят мне такое выражение), и добавлял их в меню, тулбары, экран и т.д.

PnP>либо открыть интерфейсы хоста (для меню, тулбаров, добавления на экран и т.д) и пусть плагины себя сами добавляют.
PnP>Что думает коллективный разум?

IMHO, зависит от сложности плагинов.

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

Если же плагины более навороченные, тогда лучше второй вариант.
Например, тот же мс офис или студия реализуют именно этот вариант. В Eclipse вроде реализованы оба.
Re[2]: Дилема: что первично, плагин или хост
От: Aviator  
Дата: 04.06.07 09:09
Оценка:
Здравствуйте, Stormblast, Вы писали:

S>Eclipse видел ?

S>http://www.eclipse.org/
жаль подобной штуки на .NET нет.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.