《Node应用程序构建——使用MongoDB和Backbone》一1.2 模型—视图—控制器(MVC)

1.2 模型—视图—控制器(MVC)

Node应用程序构建——使用MongoDB和Backbone
本书多处提到并使用“模型—视图—控制器(MVC)”设计模式,进行服务器端和前端编程。有人认为,MVC在Web上是随着Ruby on Rails的增长而流行的,但它最早是在20世纪70年代为Smalltalk平台开发的。

MVC的主要作用是将系统拆成3个弱耦合的部件。

模型:包含了要读取或操作的数据的一种结构。

视图:用户与模型产生互动的界面。

控制器:在视图和底层模型之间代理用户操作。

模型和控制器通常成对出现。在本书中,控制器的工作可作为用户和模型之间来回传递消息的合约。虽然一个控制器可以操控多个模型,但这样做不好,我们建议一个控制器对应一个模型。

视图不一样。就像现实生活中一样,软件往往提供多种方式来展现同一信息。例如,音频的文字版本包含了和原始内容一致的信息,但它的内容传播更容易、更方便。因特网到处都是这样的例子:很多网络服务的数据展现同时采用JSON和XML,用两种不同的格式提供相同的信息。

时间: 2024-09-20 06:27:49

《Node应用程序构建——使用MongoDB和Backbone》一1.2 模型—视图—控制器(MVC)的相关文章

《Node应用程序构建——使用MongoDB和Backbone》一2.4 Socket.io

2.4 Socket.io Node应用程序构建--使用MongoDB和Backbone Socket.io是你的朋友.它将消除制作实时网络应用程序时的乏味工作,处理所有跨浏览器兼容的问题,在你的后端Node服务器和前端JavaScript客户端之间,留出干净.简单的JavaScript接口.这是一个令人激动的库,因为作为一个程序员,它让你专注于单一脚本语言的程序代码,消除数据和最终用户之间的网络障碍. 要安装Socket.id,就用npm. 例2-7为网站添加了实时聊天功能,它创建了一个Soc

《Node应用程序构建——使用MongoDB和Backbone》一第 1 章 介绍与总览1.1 打造一个社交网络

第 1 章 介绍与总览 Node应用程序构建--使用MongoDB和Backbone互联网已经成为发展最快的技术领域之一,它还在加速.对于希望通过编写软件来获得收入的人来说,这既是好消息,也是坏消息.今天,优秀的开发人员拥有难得的机会,可以做他们喜欢的事,拓展视野,不断进步,并从工作中得到更大的满足,只要他们愿意付出必要的努力,去理解海量的.快速增长的知识. 精彩的职业生涯是有代价的.作为一名软件开发者,你必须不断寻找下一个优秀的工具,来帮助你更多.更好.更快地实现梦想.你在10年后面对的东西,

《Node应用程序构建——使用MongoDB和Backbone》一2.3 事件

2.3 事件 Node应用程序构建--使用MongoDB和Backbone事件是Node.js的活力之源,实际上也是JavaScript本身的活力之源.其他语言在多个并发线程中处理工作流,每个线程都将大部分时间花在等待阻塞的I/O操作上,如磁盘读取.数据库操作或通过网络获取信息.但JavaScript总被认为是一个基于事件的编程模型.早期的事件很简单,如一次鼠标点击.一个页面加载或一次表单提交.更晚期的用法包括完成一次数据库写入,或从磁盘读入文件的内容等事件. JavaScript利用回调,通过

《Node应用程序构建——使用MongoDB和Backbone》一导读

前 言 Node应用程序构建--使用MongoDB和BackboneGoogle在2008年发布了第一个版本的V8 JavaScript引擎时,兴奋就像安静波澜,在开发者社区荡漾开来.第一次(承诺),我们能够在客户端和服务器都使用JavaScript进行编程:使用一种语言来控制一切.Web应用程序已经开始变得更像桌面并且复杂程度也在膨胀,所以减少语言数量的依赖这个想法有利于使技术开放和透明,推出更加令人兴奋和不断突破的应用程序. Ryan Dahl就是一个看到了新的机会的开发者,他没有浪费时间,

《Node应用程序构建——使用MongoDB和Backbone》一第 2 章 Node.js2.1 安装Node.js

第 2 章 Node.js Node应用程序构建--使用MongoDB和Backbone今天的互联网不同于20世纪90年代的互联网.在以前,用户和一个网站之间的交互基本上属于信息消费.Web服务器生成大量静态网页,用户在页面之间穿梭.当然也有动态元素,但互动的信息流主要是限于请求和应答.多年的研究都集中于优化客户端-服务器的信息流,可以肯定地说目前对这方面的理解很透彻. 大约在IE6开始出现时,一个微妙而根本的转变开始占据上风.因特网用户变得越来越适应和内行,电脑变得更为强大,宽带连接开始变得常

《Node应用程序构建——使用MongoDB和Backbone》一1.3 纯JavaScript

1.3 纯JavaScript Node应用程序构建--使用MongoDB和BackboneNode.Backbone和MongoDB让你使用单一编程语言,专注于应用逻辑,最终降低系统各部分之间的连接次数.你会看到这是一种引人注目的编程方式,因为客户端UI.后端服务器逻辑和数据库持久之间的界限模糊了,几乎形成一个生动的系统.随着实时网络逐渐进入生活,情况就更清楚了.数据在各个应用中舞动,甚至经过多个用户之手,所有事情就像一齐发生在单个过程中. 有些缺陷是需要预先避免的.虽然连接方式很强大,使用同

《Node应用程序构建——使用MongoDB和Backbone》一2.5 模块与CommonJS

2.5 模块与CommonJS Node应用程序构建--使用MongoDB和BackboneNode引发了服务器端JavaScript编程的巨大兴趣,更别提对一般JavaScript的影响了.但这不是JavaScript第一次脱离浏览器作为工具,实际上,JavaScript在网景公司的浏览器中首次亮相之后不久,该公司发布的一个Web服务器就包含了该语言.不到一年后,微软的因特网信息服务(IIS)服务器软件也开始支持服务器端JavaScript(他们的方言称为JScript).大约在同一时间,网景

《Node应用程序构建——使用MongoDB和Backbone》一第 1 章 Node.js基本介绍1.1 Node和npm命令

第 1 章 Node.js基本介绍 写给PHP开发者的Node.js学习指南 我们假定你有一个PHP代码库需要移植到Node.js.在可预见的未来你需要为用户提供PHP和Node.js两个代码库,这意味着你需要同步更新和改进这两个代码库.但是你并不了解Node.js,也没有做过任何有关Node.js的开发.那么该从哪里下手呢? 首先需要下载支持你的平台的Node.js,可能是Linux或者Windows版本(是的!Node.js还提供了Windows的版本!).因为每个版本的安装方法和安装工具都

Node.js 条形码识别程序构建思路详解_node.js

在这篇文章中,我们将展示一个非常简单的方法构建一个自定义的 Node 模块,该模块封装了Dynamsoft Barcode Reader SDK ,支持 Windows.Linux 和 OS X,同时我们将演示如何集成这块模块实现一个在线的条形码读取应用. 越来越多的 Web 开发者选择 Node 来构建网站,因为使用 JavaScript 来开发复杂的服务器端 Web 应用越来越便利.为了扩展在不同平台下的 Node 的功能,Node 允许开发者使用 C/C++ 来创建扩展. 介绍 Dynam