Элегантный способ для общего контроллера (приложение на основе GUI) - PullRequest
0 голосов
/ 25 мая 2011

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

Этот контроллер вызывает много субконтроллеров для разных частей приложения, все еще в моем основном у меня ужасное:

int main( int argc, char** argv )
{
    QApplication a(argc, argv);
    Manager m;
    return a.exec();
}

а менеджер это что-то вроде

Manager::Manager( QObject *parent )
: QObject(parent)
, serv( new Services::ServiceManager(this) )
, window( new Gui::WindowManager(this) )
, blablaManager

Всегда существует необходимость в корневом классе, который связывает все части вместе, если у вас есть идеи.

Спасибо!

1 Ответ

1 голос
/ 25 мая 2011

У вас всегда может быть более «элегантное» решение с другим уровнем косвенности. Однако в какой-то момент элегантность перевешивает производительность, планирование и затраты на обслуживание.

Создание «универсального» графического интерфейса пользователя может не оправдать затраты для компании, которая производит только два или три различных графических интерфейса.

...