从0到1彻底熟悉MVC模式
MVC软件架构模式模式
(Model–view–controller)是软件工程中的一种软件架构模式,把软件系统分为三个基本部分:
(1)视图(View):
负责界面的显示,以及与用户的交互功能,例如表单、网页等。
(2)控制器(Controller):
可以理解为一个分发器,用来决定对于视图发来的请求,需要用哪一个模型来处理,以及处理完后需要跳回到哪一个视图。即用来连接视图和模型。
实际开发中,通常用控制器对客户端的请求数据进行封装(如将form表单发来的若干个表单字段值,封装到一个实体对象中),然后调用某一个模型来处理此请求,最后再转发请求(或重定向)到视图(或另一个控制器)。
(3)模型(Model):
模型持有所有的数据、状态和程序逻辑。模型接受视图数据的请求,并返回最终的处理结果。
指示灯按键
在一个人机界面(HMI)系统中,指示灯按钮(或按钮指示灯)通常涉及两个主要部分:
- 模拟对象(Model Object):它表示系统中指示灯按钮的逻辑状态和数据。模拟对象负责维护和管理指示灯按钮的属性,如当前状态(开/关)、颜色、标签等。
- 控制对象(Control Object):它负责处理用户与指示灯按钮的交互,如点击、长按等。控制对象通常会根据用户输入更新模拟对象,并触发相应的动作或事件。
解析 JSON
在MVC(Model-View-Controller)模式中,解析 JSON 通常是在 Model 部分。在MVC模式中,Model 负责处理数据逻辑,包括数据的获取、解析、处理等。当从服务器或其他数据源获取 JSON 数据时,通常会在 Model 层进行解析,将 JSON 数据转换为应用程序内部的数据结构或对象,然后将其传递给 Controller 或 View。
具体来说,JSON 解析通常涉及以下几个步骤:
数据获取:
从服务器或其他数据源获取 JSON 数据。
JSON 解析:
在 Model 层使用相应的 JSON 解析库(如 JSONcpp、RapidJSON、nlohmann/json 等)解析 JSON 数据,并将其转换为内部数据结构(例如对象、数组等)。
数据处理:
对解析后的数据进行必要的处理,可能包括数据筛选、转换、加工等操作,以适应应用程序的需求。
数据传递:
将处理后的数据传递给 Controller 或 View,供其进一步处理或显示。
在 MVC 模式中,View 负责界面的显示,Controller 负责处理用户的输入和操作,而 Model 则负责处理数据的获取、处理和管理。因此,JSON 解析通常被视为 Model 层的一部分,因为它涉及数据的处理和转换。