第二篇,MVC框架
MVC : 模型(model)---视图(view)---控制器(caontreller)的缩写
MVC是一个设计模式,他强制性的使应用程序的输入,处理,输出 分开
- 模型(Model):程序员编写程序应有的功能(实现算法等),数据库专家进行数据处理和数据库的设计(可以具体实现的功能)
Model是应用程序中用于处理应用程序数据逻辑的部分
通常模型对象负责在数据库中存取数据
- 视图(View):界面设计人员进行图形界面设计,View是应用程序中处理数据显示的部分
通常视图是依据模型数据创建的
- 控制器(Controller):负责转发请求,对请求进行处理
Controller是应用程序中处理用户交互的部分
通常控制器负责从视图中读取数据,控制用户输入并向模型发送数据
理想MVC模型:理想MVC关注两个分离
- 从Model中分离View(主要考虑几点)
- 关注点不同:Model关注内在的不可视的逻辑,View关注外在的可视的逻辑
- 同一个Model往往需要多种View表现形式
- 相对Model而言,View是不容易测试的
- 从View中分离Controller
视图 ----看到----用户 ----使用 ---- 控制器 ---- 操纵 ---- 模型 ----更新 ----视图
View ----SEES----> user ----uses ----> Controller ----manipulates----> Model ----updates----> View
现实MVC模型
View与Conteoller紧密相关,在苹果的Objective—C中,定义为ViewController.
ViewController 是业务逻辑实现的核心,负责读取数据 显示和处理用户输入等
与界面无关的数据逻辑部分抽象为Model ,如 数据库的表的 更新和读取
界面上独立的显示元素被抽象为View ,如 显示文字的Lable 等待用户单击的Button
与理想MVC模型不同的是 View不于Model直接交互,View与Model的更新都是由Controller完成
用户 ---- 使用 ---- 视图。控制器 ---- 更新 视图 ---- 视图 ---- 看到 ---- 用户
User----uses----> ViewController ----update views ----> View ----sees----> User
ViewController----set ----> Model ---- get or notification ----> ViewController
视图。控制器 ---- 设置 ---- 模型 ---- 得到通知 ---- 视图。控制器
第二篇,MVC框架的更多相关文章
- 【工作笔记二】ASP.NET MVC框架下使用MVVM模式
ASP.NET MVC框架下使用MVVM模式 原文:http://www.cnblogs.com/n-pei/archive/2011/07/21/2113022.html 对于asp.net mvc ...
- “MVC+Nhibernate+Jquery-EasyUI”信息发布系统 第二篇(数据库结构、登录窗口、以及主界面)
“MVC+Nhibernate+Jquery-EasyUI”信息发布系统 第二篇(数据库结构.登录窗口.以及主界面) 一.在上一篇文章中,主要说的就是把主框架搭建起来,并且Nhibernate能达到增 ...
- 【nodejs】让nodejs像后端mvc框架(asp.net mvc )一样处理请求--自动路由篇(1/8)【route】
文章目录 前情概要 在使用express框架开发的时候,每加一个请求,都在增加一条route请求规则,类似于下面的代码,很烦有木有! app.use('/myroute path', (req, re ...
- BrnShop开源网上商城第二讲:ASP.NET MVC框架
在团队设计BrnShop的web项目之初,我们碰到了两个问题,第一个是数据的复用和传递,第二个是大mvc框架和小mvc框架的选择.下面我依次来说明下. 首先是数据的复用和传递:对于BrnShop的每一 ...
- 【第二篇】ASP.NET MVC快速入门之数据注解(MVC5+EF6)
目录 [第一篇]ASP.NET MVC快速入门之数据库操作(MVC5+EF6) [第二篇]ASP.NET MVC快速入门之数据注解(MVC5+EF6) [第三篇]ASP.NET MVC快速入门之安全策 ...
- ASP.NET MVC案例教程(基于ASP.NET MVC beta)——第二篇:第一个页面
摘要 本文首先一步一步完成Demo的第一个页面——首页.然后根据实现过程,说明一下其中用到的与ASP.NET MVC相关的概念与原理. 让第一个页面跑起来 现在,我们来实现公告系统 ...
- Java并发包下锁学习第二篇Java并发基础框架-队列同步器介绍
Java并发包下锁学习第二篇队列同步器 还记得在第一篇文章中,讲到的locks包下的类结果图吗?如下图: 从图中,我们可以看到AbstractQueuedSynchronizer这个类很重要(在本 ...
- 阅读了这三篇文章,你也就基本理解了ASP.NET Core MVC框架的工作原理
<200行代码,7个对象--让你了解ASP.NET Core框架的本质>让很多读者对ASP.NET Core管道有深刻的理解,知道了ASP.NET Core框架针对每个请求的处理流程.在过 ...
- Spring MVC篇一、搭建Spring MVC框架
本项目旨在搭建一个简单的Spring MVC框架,了解Spring MVC的基础配置等内容. 一.项目结构 本项目使用idea intellij创建,配合maven管理.整体的目录结构如图: 其中ja ...
- 自己动手写一个简单的MVC框架(第二版)
一.ASP.NET MVC核心机制回顾 在ASP.NET MVC中,最核心的当属“路由系统”,而路由系统的核心则源于一个强大的System.Web.Routing.dll组件. 在这个System.W ...
随机推荐
- laravel的安装
安装composer http://docs.phpcomposer.com/download/ curl -sS https://getcomposer.org/installer | php mv ...
- java中的反射机制,以及如何通过反射获取一个类的构造方法 ,成员变量,方法,详细。。
首先先说一下类的加载,流程.只有明确了类这个对象的存在才可以更好的理解反射的原因,以及反射的机制. 一. 类的加载 当程序要使用某个类时,如果该类还未被加载到内存中,则系统会通过加载,连接,初始化三 ...
- 调整iFrame高度
在Chrome中,即使将iframe的高度设置为100%,也无法根据内容页自动调节高度,需要在iframe的onload even中通过计算设置iframe的高度 function setIframe ...
- php连接函数implode()和分割explode()
php可以将字符串分割成数组,同时翻过了也可以将数组连接成字符串,确切的说是可以将数组元素连接成字符串,有了这两个函数我们就可以在数组与字符串之间进行自由转换了,下面看正文的例子吧. implode( ...
- Apache2.2 + php-5.4.45-Win32-VC9-x86 配置
首先要注意一个问题是:网上有很多教程比如: 在Apache配置文件中添加php模块.在apache2\conf\httpd.conf中: LoadModule模块添加行: LoadModule php ...
- js 判断某个对象是不是dom对象
<script type="text/javascript">//首先要对HTMLElement进行类型检查,因为即使在支持HTMLElement的浏览器中,类型却是有 ...
- MongoDB在windows自启动
D:\mongodb\Server\3.0\bin>mongod --logpath D:\mongodb\log\mongo.log --logappend--dbpath D:\mongod ...
- linux命令总结2
昨天继续对239进行挖掘,想把运营登录浮层的示例页面放在这台测试机上,供大家使用,结果在配置apache时出现了问题,无论怎样,页面都是403 Forbidden,最后终于被露颖同学经过2个小时的努力 ...
- jsp:和属性相关的方法,请求的转发,重定向
jsp中与属性相关的方法: 方法: void setAttribute(String name, Object o): 设置属性 Object getAttribute(String name):获取 ...
- Network 分类: POJ 图论 2015-07-27 17:18 17人阅读 评论(0) 收藏
Network Time Limit: 1000MS Memory Limit: 30000K Total Submissions: 14721 Accepted: 5777 Special Judg ...