Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Программирование под Unix/Linux > модульная реализация программы


Автор: Dr_VOLAND 18.6.2010, 13:03
Вопрос следующий:
заказчик требует написать программу, так чтобы потом можно было добавлять новый функционал (к ней. в виде модулей), без перекомпиляции главной программы.
Т.е. закинул грубо говоря файлы, с новыми функциями в определенную папку, а программа при новом запуске предлагает из меню новые функции для пользователя.

С помощью чего можно реализовать?

Автор: borisbn 18.6.2010, 13:43
На Си++ лучше всего это сделать при помощи http://www.faqs.org/docs/Linux-HOWTO/Program-Library-HOWTO.html или при помощи скриптовых языков типа http://python.org/

Автор: Dr_VOLAND 18.6.2010, 23:27
только си++

Автор: alexcustov 18.6.2010, 23:41
как обычно - через динамически загружаемые библиотеки. Вопрос только стоит что от программы требуется - от это зависит насколько сложные получатся плагины. Инфы в гугле полно, например http://www.isotton.com/devel/docs/C++-dlopen-mini-HOWTO/C++-dlopen-mini-HOWTO.html

Автор: nanoo 20.6.2010, 15:07
Сначала определите интерфейс. А потом уже будет легче. Пишете простенький класс с dlopen/dlsym. Если под Qt пишете, там есть классы специальные QLibrary и QPlugin. В вышеупомянутом классе можно сделат поиск плагинов создание меню с доступом к их функциональности.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)