MVC架构体系

架构体系

架构是指一个或是一种通用的、或可重复利用的解决问题的方案,用于在给定上下文中的软件体系结构中经常出现的问题。架构模式与软件设计模式类似,但意义更为广泛。

MVC(模型视图编辑器)

模型-视图-控制器模式,也称为MVC模式(Model View Controller)。用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。MVC被独特的发展起来用于映射传统的输入、处理和输出功能在一个逻辑的图形化用户界面的结构中。它把软件系统分为三个基本部分:

  1. 模型(Model):负责存储系统的中心数据。

  2. 视图(View):将信息显示给用户(可以定义多个视图)。

  3. 控制器(Controller):处理用户输入的信息。负责从视图读取数据,控制用户输入,并向模型发送数据,是应用程序中处理用户交互的部分。负责管理与用户交互交互控制。

    视图和控制器共同构成了用户接口。
    且每个视图都有一个相关的控制器组件。控制器接受输入,通常作为将鼠标移动、鼠标按钮的活动或键盘输入编码的时间。时间被翻译成模型或试图的服务器请求。用户仅仅通过控制器与系统交互。
    在这里插入图片描述

结构

  • 模型组件包含应用程序的功能内核,他封装了相应的数据并输出执行特定应用程序处理的过程;模型也提供访问数据的函数,这些数据有获得待显示的数据的视图组件使用。
  • 控制器代表用户调用所有这些过程。

目的

实现一种动态的程序设计,是后序对程序的修改和扩展简化,并且使程序某一部分的重复利用称为可能。

通过对复杂度的简化,使程序结构更加直观。

将信息的内部表示与信息的呈现方式分离开来,并接受用户的请求。它分离了组件,并允许有效的代码重用。即,将模型和视图的实现代码分离,从而使同一个程序可以使用不同的表现形式。比如一批统计数据你可以分别用柱状图、饼图来表示。C存在的目的则是确保模型和视图的同步,一旦模型改变,视图应该同步更新。

特点

MVC重要特点就是两种分离:

视图和数据模型的分离:使用不同的视图对相同的数据进行展示;分离可视和不可视的组件,能够对模型进行独立测试。因为分离了可视组件减少了外部依赖利于测试。(数据库也是一种外部组件)

视图和表现逻辑(Controller)的分离:Controller是一个表现逻辑的组件,并非一个业务逻辑组件。MVC可以作为表现模式也可以作为建构模式,意味这Controller也可以是业务逻辑。分离逻辑和具体展示,能够对逻辑进行独立测试。

  • 优点:耦合性低;重用性高;生命周期成本低;部署块;可维护性高;有利软件工程化管理。
  • 缺点:没有明确的定义;不适合小型,中等规模的应用程序;增加系统结构和实现的复用性;视图与控制器间的过于紧密的连接;视图对模型数据的低效率访问;一般高级的界面工具或构造器不支持模式。
  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
222.jpg 北京时间2016年11月16日,国内领先的WEB与移动内核软件研发厂商-Zoomla!逐浪CMS团队发布其年度最后一个大作,也是目前国内首个基于MVC架构的厂商级dotNET框架CMS- Zoomla!逐浪2 x3.8 众所周知,目前面向云与大数据是今天互联网的大势所趋,而MVC框架则是目前最流行的开发框架之一。 ASP.NET 是一个使用 HTML、CSS、JavaScript 和服务器脚本创建网页和网站的开发框架。 ASP.NET 支持三种不同的开发模式: Web Pages(Web 页面)、MVC(Model View Controller 模型-视图-控制器)、Web Forms(Web 窗体) MVC 编程模式 MVC 是三种 ASP.NET 编程模式中的一种。 MVC 是一种使用 MVC(Model View Controller 模型-视图-控制器)设计创建 Web 应用程序的模式: Model(模型)表示应用程序核心(比如数据库记录列表)。 View(视图)显示数据(数据库记录)。 Controller(控制器)处理输入(写入数据库记录)。 MVC 模式同时提供了对 HTML、CSS 和 JavaScript 的完全控制。 MVC 模式定义 Web 应用程序 带有三个逻辑层: 27 (1).jpg 业务层(模型逻辑) 显示层(视图逻辑) 输入控制(控制器逻辑) Model(模型)是应用程序中用于处理应用程序数据逻辑的部分。 通常模型对象负责在数据库中存取数据。 View(视图)是应用程序中处理数据显示的部分。 通常视图是依据模型数据创建的。 Controller(控制器)是应用程序中处理用户交互的部分。 通常控制器负责从视图读取数据,控制用户输入,并向模型发送数据。 MVC 分层有助于管理复杂的应用程序,因为您可以在一个时间内专门关注一个方面。例如,您可以在不依赖业务逻辑的情况下专注于视图设计。同时也让应用程序的测试更加容易。 MVC 分层同时也简化了分组开发。不同的开发人员可同时开发视图、控制器逻辑和业务逻辑 未标题-1.jpg 基于这一思维开发的产品,具有更易维护、更加简洁目录,同时加上全新的逐浪CMS架构和自主表现引擎,整体效率与运行脚本也更具上乘。 Zoomla!逐浪CMS2 x3.8系统是逐浪软件团队年度大作,也是有史以来最大的一次加构更新,我们不仅重写了全局代码、后台引擎,同时就整个底层架构进行优化,整体效率提升了三倍以上。 同时融入了新的办公系统、移动功能、H5模块、移动开发引擎,具备良好的扩展性。 主要更新有: 全新后台表现体系,完美支持移动设置和Surface book、ipad等触控设备应用 全新智能模板引擎,引入我们为猪八戒网等平台提供的模板引擎,从而有更好的设计体验 新增FTP管理模板,可以更好的管理云主机 HTML5表单问券系统 场景复制功能 全新会员特许商品功能 全新会员层级邀请码,通过层级进行B2B分销推荐 增加:插件式开发方式,用于在发布后的项目增加新的mvc页面 增加:加固的安全防护,config下数据库链接不再明文,而是加密,并可通过官方Help.z01.com工具进行解密,从而提升平台的安全性。 修复:用户云备用功能。 增加:扩展商品支持最大购买数、最小购买数、购买倍数 改进:验证码改为点击后会自动更新防抓图破解 增加:增加:微信公众号子商户支付功能(wxpay_submp) 扩展:/Tools/ 维护工具,增加对加密文本的维护功能 增加:内容管理、商品、商城新增二维码,后台一键分享更方便 修改:修改CMS密钥机制 修改:webup多文件上传组件,增加图片压缩功能 场景:增加相册功能,并扩展支持图片压缩 增加:提现申请支持费率(需要在系统-配置-商城参数中设置费率) 修改:场景--相册,增加新建场景提示,微信分享图片默认为第一张图 扩展:ueditor已升级为1.4.3.3,解决一个安全溢出缺陷 增加:微信红包功能(/User/Money/RedPacket) *管理员在后台--微信--生成红包 *用户通过红包码在前台领取红包(用户必须关注公众号才可发送红包) 扩展:场景增加访问密码功能 *如设置,则非创建者访问需要密码 *输入一次密码后,只要不关浏览器,即可直接访问 扩展:资金赠送可根据用户名或ID选择赠送人 扩展:订单管理新增导出Excel 新增:全新订单管理样式 新增:快递打单功能,支持顺风、EMS、中通、安能物流等快递直接打出订单并匹配快递订单 扩展:内容支持中文URL,示例:/Item/标题,从而提升SEO的效率 *需要在后台--节点--栏目选项--中文URL *IE下需要对中文编码,否则无法解析标题 扩展:在线设计增加了对标签的支持,提现支持手续费率 扩展:相册模式增加新的模板,修复PPT模式 相册Bug 修复:OA模型添加无效Bug,用户检测Bug,专题路径无效Bug,OA事务模板Bug *编辑器模板:后台--办公--套红管理--模板类型=事务 修复:重新校验了手机注册流程,将注册流程修复 可视设计:增加记录复制 可视设计:增加标签复制,仅首行显示添加按钮 修复:后台--办公--OA,选择用户无效Bug(OA统一使用组织结构) 优化:开发中心Runsql增加快捷键,并优化关键词显示颜色 优化:后台商城-推广中心-用户明细列表显示用户ID、推荐人,新增按ID、真实姓名搜索, 并可逐级查看推广用户 增加:会员展示和会员详情新样式,更加简洁明亮 移除:移除后台SNS好友管理、虚拟商品等无用页面 修复:邀请码生成功能,并检验邀请码逻辑 修复:微博绑定Bug,修改密码链接Bug 修复:用户中心广告申请、节日提醒功能 增加:MVC页面索引功能,用户中心已可搜索页面 增加:会员支付二级密码功能

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值