资料介绍
软件简介
AWTK-MVVM是一套为AWTK用C语言开发,并支持各种脚本语言的MVVM框架,实现了数据绑定、命令绑定和窗口导航等基本功能,使用AWTK-MVVM开发应用程序,无需学习AWTK本身的API,只需学习绑定规则和Model的实现方式即可。
一、MVVM
MVVM(Model-View-ViewModel)是分离用户界面和业务逻辑的经典模式。
分离用户界面和业务逻辑的好处:
- 让用户界面可以独立变化。
- 方便为业务逻辑编写单元测试程序。
- 方便UI设计师和程序员的分工和合作。
MVVM相比MVP和MVC的优势:
- 使用更简单。
- 分离更彻底。
- 声明式的编程更容易维护。
MVVM的核心思想有两个:
- 通过数据绑定实现View与Model之间的数据交换。
- 通过命令绑定实现View事件与Model行为之间的关联。
二、AWTK-MVVM
AWTK-MVVM是一套为AWTK用C语言开发,并支持各种脚本语言的MVVM框架,实现了数据绑定、命令绑定和窗口导航等基本功能,使用AWTK-MVVM开发应用程序,无需学习AWTK本身的API,只需学习绑定规则和Model的实现方式即可。与其它MVVM框架相比,其特点有:
- 代码小。
- 性能高。
- 内存开销小。
- 隔离更彻底。
- 可移植到其它GUI。
- 支持多种编程语言(目前支持C/JS)。
三、使用方法
- 获取awtk并编译。
git clone https://github.com/zlgopen/awtk.git cd awtk scons
- 获取awtk-mvvm并编译(awtk和awtk-mvvm处于用一级目录)
git clone https://github.com/zlgopen/awtk-mvvm.git cd awtk-mvvm git clone https://github.com/jerryscript-project/jerryscript.git 3rd/jerryscript scons
编译linux-fb版本,请修改SConstruct
#for pc #sys.path.insert(0, '../awtk/') #for linux-fb sys.path.insert(0, '../awtk-linux-fb/')
- 运行demos
./bin/demo1
本文以Linux/MacOS为例,Windows可能会微妙差异,请酌情处理。
四、文档
五、示例
C DEMO | JS DEMO | 说明 |
---|---|---|
demo1 | jsdemo1 | 数据绑定基本用法 |
demo2 | jsdemo2 | trigger参数的用法 |
demo3 | jsdemo3 | converter参数的用法 |
demo4 | jsdemo4 | 显式更新(Trigger=Explicit)的用法 |
demo5 | jsdemo5 | validator参数的用法 |
demo6 | jsdemo6 | 命令绑定的基本用法 |
demo7 | jsdemo7 | 以计算器为例的综合用法 |
demo8 | jsdemo8 | 以shape编辑为例的综合用法 |
demo9 | jsdemo9 | 多窗口的基本用法 |
demo10 | jsdemo10 | 定时器的基本用法 |
demo11 | jsdemo11 | 一个视图多个ViewModel的用法 |
demo12 | jsdemo12 | 多窗口之间参数传递 |
demo13 | jsdemo13 | 列表视图的基本用法 |
demo14 | jsdemo14 | 快捷键的基本用法 |
demo15 | (no) | 自定义导航器处理插件,以及MVVM窗口和非MVVM窗口的交互 |
(no) | jsdemo15 | combox 数据联动 |
(no) | jsdemo16 | 动态界面 |
demo16 | (no) | 集成硬件外设 |
demo17 | (no) | 无GUI情况集成硬件外设 |
(no) | jsdemo17 | 控制控件的可见性 |
(no) | jsdemo18 | 复杂属性值的表示方法 |
demo19 | (no) | 控制动画启停 |
完整示例及模板项目:awtk-mvvm-c-hello
- 工业上位机开发实战WPF+MVVM框架
- 高质量程序设计指南之C++C语言 0次下载
- 《PIC单片机C语言》pdf 0次下载
- 嵌入式软件之c语言编码规范 28次下载
- 单片机C语言和汇编语言混合编程实例详解 224次下载
- 基于MVVM模式的气动数据可视化分析系统 27次下载
- C语言深度解剖电子版资源下载 0次下载
- DSP载波移相控制C语言源代码下载 56次下载
- 无线遥控频率计C语言源代码下载 37次下载
- AWTK Designer 1.0.2 新功能展示资料下载
- MATLAB语言与C语言的区别资料下载
- 基于SPESC到目标程序语言的智能合约系统框架 15次下载
- 逐行分析鸿蒙系统中的JS框架PDF资料 31次下载
- 什么是C语言?C语言有哪些优势及C语言的应用资料说明
- C++的框架、库和代码分析的资料大全
- 【AWTK使用经验】如何在AWTK显示阿拉伯文本 80次阅读
- 【AWTK使用经验】如何实现序列帧动画 245次阅读
- 【AWTK使用经验】如何播放视频或摄像头画面 375次阅读
- AWTK 开源串口屏开发(18) - 用 C 语言自定义命令 315次阅读
- 【AWTK使用经验】加载和释放外部图片 295次阅读
- 【插针机HMI开发】用AWTK开发人机界面 391次阅读
- 【AWTK使用经验】如何设计立体电池进度条? 316次阅读
- 【从0开始创建AWTK应用程序】编译应用到RTOS平台 438次阅读
- 【AWTK开源智能串口屏方案】设计UI界面并上传到串口屏 467次阅读
- 【AWTK开源智能串口屏方案】HMI端程序移植编译及运行 669次阅读
- 【AWTK开源智能串口屏方案】方案介绍和工作原理 742次阅读
- AWTK 串口屏开发(2) - 家居控制 464次阅读
- 【从0开始创建AWTK应用程序】创建应用程序并在模拟器运行 356次阅读
- 使用MVVM框架实现一个简单加法器 603次阅读
- MVVM是什么? 1968次阅读
下载排行
本周
- 1山景DSP芯片AP8248A2数据手册
- 1.06 MB | 532次下载 | 免费
- 2RK3399完整板原理图(支持平板,盒子VR)
- 3.28 MB | 339次下载 | 免费
- 3TC358743XBG评估板参考手册
- 1.36 MB | 330次下载 | 免费
- 4DFM软件使用教程
- 0.84 MB | 295次下载 | 免费
- 5元宇宙深度解析—未来的未来-风口还是泡沫
- 6.40 MB | 227次下载 | 免费
- 6迪文DGUS开发指南
- 31.67 MB | 194次下载 | 免费
- 7元宇宙底层硬件系列报告
- 13.42 MB | 182次下载 | 免费
- 8FP5207XR-G1中文应用手册
- 1.09 MB | 178次下载 | 免费
本月
- 1OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 2555集成电路应用800例(新编版)
- 0.00 MB | 33566次下载 | 免费
- 3接口电路图大全
- 未知 | 30323次下载 | 免费
- 4开关电源设计实例指南
- 未知 | 21549次下载 | 免费
- 5电气工程师手册免费下载(新编第二版pdf电子书)
- 0.00 MB | 15349次下载 | 免费
- 6数字电路基础pdf(下载)
- 未知 | 13750次下载 | 免费
- 7电子制作实例集锦 下载
- 未知 | 8113次下载 | 免费
- 8《LED驱动电路设计》 温德尔著
- 0.00 MB | 6656次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935054次下载 | 免费
- 2protel99se软件下载(可英文版转中文版)
- 78.1 MB | 537798次下载 | 免费
- 3MATLAB 7.1 下载 (含软件介绍)
- 未知 | 420027次下载 | 免费
- 4OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 5Altium DXP2002下载入口
- 未知 | 233046次下载 | 免费
- 6电路仿真软件multisim 10.0免费下载
- 340992 | 191187次下载 | 免费
- 7十天学会AVR单片机与C语言视频教程 下载
- 158M | 183279次下载 | 免费
- 8proe5.0野火版下载(中文版免费下载)
- 未知 | 138040次下载 | 免费
评论
查看更多