【问题标题】:Elegant way for general controller (GUI based application)通用控制器的优雅方式(基于 GUI 的应用程序)
【发布时间】:2011-05-25 08:25:07
【问题描述】:

我想知道,有没有一种优雅的方式来组织 gui 的主控制器。 例如,控制器管理来自 gui 中不同小部件的点击和更新。

这个控制器为应用程序的不同部分调用了许多子控制器,但在我的主控制器中,我有一个可怕的:

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

如果您有想法,总是需要一个将所有子部分链接在一起的根类。

谢谢!

【问题讨论】:

  • 具体担心什么?
  • 好吧,没有参数,它甚至无法编译。看看下一个两到三个字母的首字母缩写词的依赖注入,也许。也许您应该等到获得一些 OOP 经验后再使用 MVC。

标签: c++ qt design-patterns architecture


【解决方案1】:

您始终可以通过另一个间接级别获得更“优雅”的解决方案。然而,在某些时候,优雅超过了性能、调度和维护成本。

对于只生产 2 或 3 个不同 GUI 的公司而言,制作“通用”GUI 的成本可能不合理。

【讨论】:

    猜你喜欢
    • 2014-12-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-01-01
    • 2011-05-06
    • 2015-11-04
    • 1970-01-01
    相关资源
    最近更新 更多