![]() |
|
Модераторы: korob2001, ginnie |
![]()
|
|
| SkoobyDoo |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 73 Регистрация: 4.10.2007 Репутация: нет Всего: нет |
Доброго времени суток!
Меня интересует такой вот вопрос. Как можно спроектировать web-скрипт или будь это Gtk2-программа на Perl'е, чтобы в дальнейшем можно было писать плагины и расширения, которые бы например изменяли интерфейс gtk2-программы или добавляли какой-нибудь функционал, не затрагивая основной "движок"? Помогает ли в этом Module::Pluggable? как он работает? Если по этому поводу, есть какая-нибудь информация в сети, буду признателен. Спасибо. |
|||
|
||||
| sir_nuf_nuf |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 920 Регистрация: 6.1.2008 Репутация: 14 Всего: 31 |
Доброго!
1) можно. посмотри например на miranda - уж куда изменяемая! И это на C++, а perl более гибкий. 2) Module::Pluggable - удобная штука, но это всего-лишь загрузчик модулей (у него текст то - 40 строк).. Всю работу он за вас не сделает. Что вам нужно - так это разобраться как это сделано в других программах (а еще было бы круто с другими этим поделиться) и реализовать это на perl. Как я понимаю (на примере того же apache с "плагинами" =)) основная программа предоставляет API - т.е. набор стандартных методов, которые плагин используют. Основная программа - загружает плагины (с помощью Module::Pluggable), а потом вызывает у них фиксированный метод, наприрмер MyApp::Plugin::A->init(), а далее плагины делают все что им нужно, используюя API программы |
|||
|
||||
| KSURi |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 887 Регистрация: 8.6.2006 Где: Russia Репутация: 20 Всего: 27 |
Посмотрите на Padre. Это редактор перла написанный на нем же. Использует Wx, имеет плагинный интерфейс.
-------------------- Died at Life.pl line 21 |
|||
|
||||
| gcc |
|
|||
![]() Агент алкомафии ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2691 Регистрация: 25.4.2008 Где: %&й Репутация: 1 Всего: 17 |
может быть каталист подойдет?
там можно использовать его где угодно! то есть чтобы библиотека GTK была как модель... |
|||
|
||||
| sir_nuf_nuf |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 920 Регистрация: 6.1.2008 Репутация: 14 Всего: 31 |
gcc, не выдумывайте - каталист для веб.
|
|||
|
||||
| gcc |
|
|||
![]() Агент алкомафии ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2691 Регистрация: 25.4.2008 Где: %&й Репутация: 1 Всего: 17 |
там написано что он может использоватся где угодно не только в web...
Это сообщение отредактировал(а) gcc - 21.2.2009, 14:00 |
|||
|
||||
| KSURi |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 887 Регистрация: 8.6.2006 Где: Russia Репутация: 20 Всего: 27 |
gcc, и где там написано что, каталист можно использовать в гуи? Вы ведь сами вроде используете его, как вы себе это представляете?
А в цитате, которую вы привели, написано про широкое распространение паттерна MVC. -------------------- Died at Life.pl line 21 |
|||
|
||||
| gcc |
|
|||
![]() Агент алкомафии ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2691 Регистрация: 25.4.2008 Где: %&й Репутация: 1 Всего: 17 |
я большие программы на GTK не писал, только не много маленькие примеры...
в цитате было про Catalyst (я его не пиарю, просто можно там писать) Catalyst это парадигма на ООП только большая и называется по другому MVC еще для шаблонное программирование, если у вас код большой боле 10000 вы будите писать объектами... тоже самое модель и контроллер, то чт овы сказали тут http://forum.vingrad.ru/forum/topic-244000...ml#st_15_view_0 есстественно, наверное, Catalyst никто не использует в Gui, там надо сделать модель для GTK (подумать как сделать) и плагины еще какие-то, но если ВЫ будите писать GUI framework, то он будет похож на Catalyst, ничего не измениться всё будет передевать через ссылку... ну и некоторый вещи добавить в сам Catalyst... Это сообщение отредактировал(а) gcc - 22.2.2009, 08:06 |
|||
|
||||
| gcc |
|
|||
![]() Агент алкомафии ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2691 Регистрация: 25.4.2008 Где: %&й Репутация: 1 Всего: 17 |
вот нашел Catalyst::Engine::Wx
http://search.cpan.org/~eriam/Catalyst-Eng...st/Engine/Wx.pm
|
|||
|
||||
| sir_nuf_nuf |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 920 Регистрация: 6.1.2008 Репутация: 14 Всего: 31 |
Слов нет.. пц.. это кого-то сильно переклинило. GUI MVC довольно сильно отличается от WEB MVC |
|||
|
||||
![]()
|
| Правила форума "Perl" | |
|
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Perl: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |