WEB通用基础-MVC架构

MVC作为WEB程序的通用架构深受广大WEB程序员的拥护。 更是广泛成为面试题、考试试题、答辩问题等题材进行使用。

目前主流的语言框架及WEB系统大部分都是以MVC做为基础架构进行编写的。对于初学者而言理解MVC架构与熟悉业务逻辑的编写能极大的缩短学习一门语言框架的时间。然而初学者仅通过教材或许很难真正的理解MVC的架构及用法,在学习的过程中也可通过分析理解一些经典的语言框架进行学习。(例如:JSP + servlet + javabean)

WEB通用基础-MVC架构

初步认知

MVC模型:作为一种架构型的模式,无法直接实现功能添加,其主要作用是帮助我们对开发结构进行分层,使得代码结构更佳清晰合理化,将模型(model)、视图(view)、控制器(controller)进行分离。

将MVC通俗的理解可以想象成建筑一栋高楼大厦:

  • MVC:最终项目展示结果

  • 模型(Model):建筑材料、建筑工具的集合(WEB项目中的数据模型及函数方法模型)

WEB通用基础-MVC架构

  • 视图(View):建筑设计图纸、建筑展示效果图(WEB项目中数据的展示形态,优化丰富控制器传递过来的数据并进行展示)

WEB通用基础-MVC架构

  • 控制器(Controller):建筑工程师、施工人员(WEB项目中通过调取对应数据模型及函数方法模型产生数据并传递给相关视图层)

WEB通用基础-MVC架构

施工人员(Controller)通过使用建筑工具(Model)将建筑材料(Model)按着设计图纸(View)进行搭建填装,最后组装成一栋高楼大厦。

深入理解

模型(Model):模型层的重点在于模块化,重点思路在于将可复用可集成的代码封装成函数方法集成在模型层中方便复用及代码维护。(例如:用户登录验证,这段代码可能在多个不同的控制器中都需要使用,若将其封装成方法写入模型层,则控制器如果有需求只需导入对应的模型层并以传参的方式进行调用既可省去大量重复代码,并且在进行维护的时候也仅需对模型层中的封装方法进行修改就能实现全局维护)

视图(View):视图层的重点在于数据展示,视图层的框架要便于数据展示,避免大量逻辑代码的存在,尽量通过简单的循环语句将控制层获取的数据进行展示,所以的数据处理应尽量于控制层与模型层实现。(当然视图层也可以适当使用模块化的设计思路,例如:标准WEB网站中,大量网页头部及尾部代码都是重复的,这些重复视图层代码可以通过MVC模式的思路封装到一个单独的HTML页面,在需要时通过相关语句载入对应的页面中,可以大量减少重复代码。)

控制器(Controller):控制层主要做为模型层与视图层的控制中枢。控制器应避免重复视图层与模型层的工作,将数据的展示封装至模型层,可复用的数据获取与数据逻辑处理则在模型层中封装成函数方法。控制层应做到精简。

WEB通用基础-MVC架构

学编程技术,就到W3Cschool,如果你喜欢我们的文章,可以点击右上角关注我们;如果你想看到更多IT界的资讯,可以加我们的公众号。

公众号:w3cschoolcn

相关推荐