Backbone.js学习(1)---为什么要学习backbone?

通常面对一个新鲜事物,各种各样的问题总是成为促使我们去学习,探索的第一驱动力。

对于Backbone,今天主要提出以下几个问题:

  1. 我们为什么需要Backbone?
  2. 这个框架怎么样,他的优点和缺点呢,它的适用场景呢?
  3. 前端框架很多,为什么选择backbone学习?

一、我们为什么需要Backbone?

随着前端技术的发展,用户硬件的飞速提升,浏览器的不断改进,一些以前需要在服务端完成的任务,现在可以移到客户端去完成,特别是现在进入多用户端的时代,web应用的开发模式也面临着巨大的挑战。mvc思想为我们解决多端问题提供了很好的实践。javascript作为一门弱类型脚本语言,松散灵活的语言风格,导致代码的组织管理成为一个令人头疼的问题。我们能否借用mvc的思想来实现前端架构的解耦呢,这样我们可以把关注点分解到更细的粒度,让代码从乱麻式的嵌套回调变的有序,优雅。Backbone就是这样的背景下诞生的一款优秀的前端mvc框架。

二、这个框架的优缺点

javascirpt web应用的兴起,主要是借助ajax实现局部刷新,按需请求, 良好的交互和用户体验受到人们的青睐。

没有永远的银弹,任何解决方案都有其适用范围,这是人类认知过程中的普遍规律

那么backbone适用于哪些场景呢,如果一个web应用要使用javascirpt实现复杂的交互,或者一个单页应用,或者离线web应用,那么backbone是一个不错的选择。他就是为规范化,简单化javascript开发而生的。但是如果你的应用只是使用一些javascript实现简单的dom操作,那么jquery已经完全足够了,要注意,尽管backbone是基于mvc的,但是它的基本组件model ,view, collection,其实是可以作为一种数据结构单独使用的。当存在大量的数据交互时,使用backbone是合适的。

backbone的缺点:seo支持不好,因为使用ajax进行数据交互,形成不同的页面外观,但是搜索引擎不会执行页面的ajax,很多逻辑上的页面就无法被收录, 目前google有解决方案,可惜google被封了,其他的搜索引擎支持如何,还不知晓,这个是硬伤。还有就是代码的模块化这一块。其实这些缺点是所有javascript框架都无法避免的问题。

三 你为什么要学习backbone?

这就要谈到学习动机问题了。

想走前端之路,要跟上时代嘛,虽然这些东西在实际生产中未必能用的上,通过学习这些框架,能提升自己的前端技能,加深对javascript的理解。之前学了阵angular,觉得这玩意很强大,但是目前水平有限,难以入手。相比与angular,我觉的backbone更加容易学习一些,它的整体思路与后端的mvc思路很相似。框架本身也是比较独立的(依赖underscore依赖)代码逻辑相对比较易懂一些,各种教程也还是蛮多的。打算拿这个作为学习angular的铺路石。

时间: 2024-11-08 22:20:54

Backbone.js学习(1)---为什么要学习backbone?的相关文章

【转】Backbone.js学习笔记(二)细说MVC

文章转自: http://segmentfault.com/a/1190000002666658 对于初学backbone.js的同学可以先参考我这篇文章:Backbone.js学习笔记(一) Backbone源码结构 1: (function() { 2: Backbone.Events // 自定义事件 3: Backbone.Model // 模型构造函数和原型扩展 4: Backbone.Collection // 集合构造函数和原型扩展 5: Backbone.Router // 路由

Backbone.js学习之二

经历一段自我修炼,终于领悟到Backbone.js的关键知识点,也发现了原来MVC可以在前端这样梦幻的发挥,Backbone.js确实是一个很有魅力的前端MVC框架. 练就一门技术,需要有扎实的功底,从这点,开始认真研究Backbone.js的一些最基本的操作,以便我日后学习能更上一层楼.那就切入主题: 什么是mvc? 简单的理解就是:模型(models),视图(views),控制器(collections).通过视图把浏览器的网址传给控制器,控制器对网址进行解析,然后去模型层获取数据,模型层将

Backbone.js学习之一

昨天一个我崇拜的朋友,徐飞送我一本名为<Backbone.js实战>书,让我心中狂喜,于是带着这份浓厚的兴趣,开始研究Backbone.js之路. 打开这本书的第一句话就很有哲理,“授人以鱼,不如授之以渔.”,我花了一段时间仔细的看完了的第一章节,今天通过自己所理解的, 记录下我自学的第一步.其他不多说,进入主题: 首先在学习Backbone.js之前要了解Backbone.js是什么? 在我看来它是一个处理前端MVC很好的js框架,Backbone是一个非常轻量级的javascript库,自

【转】Backbone.js学习笔记(一)

文章转自: http://segmentfault.com/a/1190000002386651 基本概念 前言 昨天开始学Backbone.js,写篇笔记记录一下吧,一直对MVC模式挺好奇的,也对js中MVC的开创鼻祖怀着敬畏之心,唉,不说了,好虚伪,以下是我的学习心得和笔记. 给大家看一下全球js库和框架的使用比例:这是通过搜索引擎抓取script标签统计而来的数据,可信度相当高啊,另外,不要迷恋Angular.js,Avalon.js还是挺不错的. 什么是Backbone.js? Back

Backbone.js学习之旅(一)

前言 刚到粑粑公司,就学习各种框架,进行各种开发,为了纪念挥泪的青春,只好写下…… 希望能合您胃口^_^!!! The First(文件准备) backobone 强制依赖于 underscore.js , 非强制依赖于 jQuery. underscore下载地址:http://www.css88.com/doc/underscore/; backbone下载地址:http://www.css88.com/doc/backbone/; 创建目录结构如下(您所看到的js文件均是第三方库文件):

Backbone.js学习之Model

首先,我们看一下官方文档中对Model的解释(或者说定义): Models are the heart of any JavaScript application, containing the interactive data as well as a large part of the logic surrounding it: conversions, validations, computed properties, and access control. You extend Back

Backbone.js之model篇(一)

Backbone.js之model篇(一) Backbone 是一个前端 JS 代码 MVC 框架,它不可取代 Jquery,不可取代现有的 template 库.而是和这些结合起来构建复杂的 web 前端交互应用. Backbone 主要包括 models, collections, views 和 events, controller. (一)model 关于 backbone,最基础的一个东西就是 model,这个东西就像是后端开发中的数据库映射那个 model 一样,也是数据对象的模型,

Backbone.js项目开始

最近通读了一遍<Backbone.js实战>,对Backbone.js的api大致有了了解,Backbone依赖于underscore,提供model.collection.view以及router. 虽然大致了解,但不知道怎样开始一个程序,github上找到了一个资源,backbone+bootstrap. 项目地址:https://github.com/zjzhome/directory-backbone-bootstrap 这是项目目录,我们可以看到,是一个典型的单页应用,index.h

Backbone.js入门学习笔记目录

//来自 https://www.the5fire.com/backbone-tutorials-catalogue.html 1.初识backbone.js 2.通过helloworld来认识下backbone 3.backbone中的model实例 4.backbone的collection实例 5.backbone中的Router实例 6.backbone中的view实例 7.backbone实例todos分析(一) 8.backbone实例todos分析(二)view的应用 9.back