## PureMVC_QT 项目说明
#### 项目描述
基于 QTCreator 的 PureMVC 框架代码(包含demo),移植于该框架的 C++ 版本
#### 项目结构
文件和路径 | 功能
-----------|-----------
src\ | 源码文件
#### 详细描述
1. 该框架基于经典的Model-View-Controller三层框架思想,由
Model-View-Controller构成其核心,并以Facade模式加以封装,以单例门面的形式
对外提供核心服务,如Proxy操作,Command操作以及Mediator操作,他们均由Facade
单例统一进行调度。
2. 客户端初始化时须对Mediator,Command,Proxy进行注册,以表明各自感兴趣的
消息(观察者模式中的订阅)。用户输入数据到View Components后,由Mediator
通知观察者Command数据更新(观察者模式中的发布),Command调用Proxy完成真正
的业务逻辑操作,完成后通知感兴趣的观察者Mediator(观察者模式中的发布)将
数据更新到View Components,完成整个数据流动处理过程。
3. 该框架大量用到了设计模式,包括:
1. 观察者模式:观察者模式是整个框架所使用的核心模式,其发布-订阅的机制
奠定了整个框架解耦的基础。
2. 门面模式:对Model-View-Controller核心组件复杂的功能进行封装,以统一
的门面形式对外提供服务,简化了调用者的复杂度。
3. 中介者模式:隔离UI组件和其他框架组件,由中介者来统一完成UI组件与框
架组件的交互,使UI组件与框架松耦合。
4. 单例模式:对Model,View,Controller和Facade均只提供全局唯一的实例,
调用者只需调用统一接口即可。
5. 代理模式:Proxy对业务处理和数据访问提供了隔离控制,可以灵活地制定业
务逻辑之外的操作。
6. 命令模式:Command使用统一的execute命令和INotification通知来隔离命令
调用者和命令执行者。
没有合适的资源?快使用搜索试试~ 我知道了~
基于 QTCreator 的 PureMVC 框架 C++ 代码移植(包含demo),用于解耦客户端代码.zip
共51个文件
h:30个
cpp:18个
ui:1个
需积分: 5 0 下载量 44 浏览量
2024-06-03
15:56:34
上传
评论
收藏 23KB ZIP 举报
温馨提示
C++是一种广泛使用的编程语言,它是由Bjarne Stroustrup于1979年在新泽西州美利山贝尔实验室开始设计开发的。C++是C语言的扩展,旨在提供更强大的编程能力,包括面向对象编程和泛型编程的支持。C++支持数据封装、继承和多态等面向对象编程的特性和泛型编程的模板,以及丰富的标准库,提供了大量的数据结构和算法,极大地提高了开发效率。12 C++是一种静态类型的、编译式的、通用的、大小写敏感的编程语言,它综合了高级语言和低级语言的特点。C++的语法与C语言非常相似,但增加了许多面向对象编程的特性,如类、对象、封装、继承和多态等。这使得C++既保持了C语言的低级特性,如直接访问硬件的能力,又提供了高级语言的特性,如数据封装和代码重用。13 C++的应用领域非常广泛,包括但不限于教育、系统开发、游戏开发、嵌入式系统、工业和商业应用、科研和高性能计算等领域。在教育领域,C++因其结构化和面向对象的特性,常被选为计算机科学和工程专业的入门编程语言。在系统开发领域,C++因其高效性和灵活性,经常被作为开发语言。游戏开发领域中,C++由于其高效性和广泛应用,在开发高性能游戏和游戏引擎中扮演着重要角色。在嵌入式系统领域,C++的高效和灵活性使其成为理想选择。此外,C++还广泛应用于桌面应用、Web浏览器、操作系统、编译器、媒体应用程序、数据库引擎、医疗工程和机器人等领域。16 学习C++的关键是理解其核心概念和编程风格,而不是过于深入技术细节。C++支持多种编程风格,每种风格都能有效地保证运行时间效率和空间效率。因此,无论是初学者还是经验丰富的程序员,都可以通过C++来设计和实现新系统或维护旧系统。3
资源推荐
资源详情
资源评论
收起资源包目录
基于 QTCreator 的 PureMVC 框架 C++ 代码移植(包含demo),用于解耦客户端代码.zip (51个子文件)
content
src
ApplicationFacade.h 297B
ui_login_dialog.h 2KB
Core
View.cpp 2KB
Model.h 488B
Controller.h 627B
View.h 805B
Controller.cpp 1KB
Model.cpp 805B
ApplicationFacade.cpp 445B
LoginMediator.cpp 736B
LoginResult.cpp 95B
login_dialog.ui 656B
Patterns
Notification.h 372B
UpdateData.cpp 251B
Proxy.h 380B
Notification.cpp 299B
Facade.cpp 2KB
Mediator.h 667B
UpdateData.h 337B
Mediator.cpp 448B
Notifier.cpp 284B
Command.cpp 166B
Facade.h 1KB
Command.h 302B
Proxy.cpp 295B
Notifier.h 270B
LoginInfo.cpp 51B
LoginInfo.h 179B
main.cpp 296B
LoginResult.h 200B
LoginForm.cpp 1KB
LoginCommand.h 220B
LoginForm.h 510B
Interface
IModel.h 1KB
ICommand.h 330B
IUpdateData.h 296B
IView.h 647B
IController.h 1KB
IObserver.h 181B
IMediator.h 424B
INotifier.h 193B
INotification.h 448B
IProxy.h 252B
IFacade.h 1KB
IViewComponent.h 193B
LoginProxy.cpp 545B
LoginMediator.h 419B
LoginCommand.cpp 397B
LoginProxy.h 221B
LICENSE 11KB
README.md 2KB
共 51 条
- 1
资源评论
普通网友
- 粉丝: 3909
- 资源: 7441
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功