上节我们分享了MVC框架、状态模式组合在实际开发中的应用,它能够让我们的软件设计流程更加的清晰、易于维护:
嵌入式软件设计之美-以实际项目应用MVC框架与状态模式(上)
那么这一节我们就直接开门见山,从接下来的这个开源项目分享开始:
项目开源仓库:
项目获取方法:
该项目会不断的添加新的示例来持续完善。
这是一个基于MVC模式+状态设计模式的物联 气体检测开源项目,目前的整体软件通信框架图(后续会根据需求继续拓展)如下所示:
当用户在APP端按下检测时,APP端会下发START命令,当Controller接收到Iot端下发的指令时会将其转发给Model模块来控制传感器进行检测,期间检测过程中的设备状态以及传感器数值会进行更新,检测过程也可以通过下发停止来打断;而返回则是根据当前的设备状态来返回到上一个检测状态;这一切是通过状态模式来维护的,其状态流程图如下:

检测设备在没有启动检测功能时,设备端也会定时上 传感器数值以及设备状态;因此,Iot端能够定时看到数据在不断发生变化。
以上便是MCV框架与状态模式最简单的应用了。当然,从上节我们就已经知道,对于Controller和View而言,它的体现形式可以有很多种,它不局限于仅仅是Iot的形式,它也可以是由其它模块来构成;这部分待后续项目更新后上传。
参考资料
[1]https://www.runoob.com/design-pattern/mvc-pattern.html
[2]https://refactoringguru.cn/design-patterns/state
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!