Touch GXF学习:架构 2021-01-07

TouchGFX用户界面遵循称为模型视图展示者(MVP)的体系结构模式,该模型是模型视图控制器(MVC)模式的派生。两者都广泛用于构建用户界面应用程序。

MVP模式的主要好处是:

  • 关注点分离:将您的代码分为几个部分,每个部分都有自己的责任。这使代码更简单,更可重用且更易于维护。
  • 单元测试:由于UI的逻辑(演示者)与可视层(视图)是分开的,因此独立测试这些部分要容易得多。

 

在MVP中,三个类的定义如下:

  • model 是定义要在用户界面中显示或作用的数据的界面。
  • view是一个被动界面,该界面显示数据(来自模型)并将用户命令(事件)路由到演示者以对该数据进行操作。
  • presenter 作用在模型和视图。它从存储库(模型)中检索数据,并将其格式化以在视图中显示。   
  • 在TouchGFX中,与应用程序的非UI部分(这里称为后端系统)的通信是通过Model类完成的。后端系统是一个软件组件,既可以从UI接收事件,也可以将事件馈入UI,例如来自传感器的新测量。后端系统可以作为单独的任务在同一MCU上,在单独的处理器,云模块或其他设备上运行。从TouchGFX的角度来看,这并不重要,只要它是可以与之通信的组件即可。TouchGFX不管理所使用的特定通信协议。它只是提供了一个功能,每次TouchGFX滴答都会调用一次,可以处理所需的通讯wen

  • 文件类型与属性

  • MyScreenViewBaseFrontendApplicationBase并且FrontendHeapBase位于生成的空间中,表示:
    • 只要在TouchGFX Designer中进行更改,它们就会重新生成
    • 用户不应手动编辑这些类
  • MyScreenViewMyScreenPresenterFrontendApplicationFrontendHeap在用户代码空间中创建的,这意味着:
    • 当在TouchGFX Designer中进行更改时,这些不会重新生成
    • 用户可以在此处自由添加自定义代码
  • 的所有的设置box1button1在生成的视图基类完成MyScreenViewBase
  • 屏幕之间转换的所有功能都在生成的应用程序基类中FrontendApplicationBase
  • 所有的簿记工作(确保分配了适当数量的内存)都位于生成的堆基类中FrontendHeapBase

用户可以自由编辑用户代码类。例如,您可以添加更多小部件。现在,我们将只实现setRandomColor实际更改的颜色的功能box1

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值