我有一个项目,用户可以在其中构建不同的对象。这个应用程序有几个子窗口,其中一些可以修改一个全局对象。可以通过三种方式修改此类对象:
- 从数据库对象加载。(窗口1)
- 在窗体的帮助下修改它(按钮,lineedit ...)(window2)
- 借助显示此对象的图形窗口(例如使用鼠标)对其进行修改。(window3)
接下来是逻辑:如果我从数据库新对象加载,那么它应该更新 window2 和 window3 中的对象。如果我通过 window2 更改了对象,则应该更新 window3 中的对象,并且应该通知 window1 对象已更改。如果我通过 window3 更改了对象,则应该更新 window2 中的对象,并且应该通知 window1 对象已更改。
现在是下一个逻辑:对象存储在具有全局访问权限的类中(单例)。窗口通知是通过 qt 中的信号槽机制完成的。
有没有其他的设计方法?