Backbone.js學習(1)---爲何要學習backbone?

一般面對一個新鮮事物,各類各樣的問題老是成爲促使咱們去學習,探索的第一驅動力。javascript

對於Backbone,今天主要提出如下幾個問題:前端

  1. 咱們爲何須要Backbone?java

  2. 這個框架怎麼樣,他的優勢和缺點呢,它的適用場景呢?jquery

  3. 前端框架不少,爲何選擇backbone學習?web

1、咱們爲何須要Backbone?ajax

       隨着前端技術的發展,用戶硬件的飛速提高,瀏覽器的不斷改進,一些之前須要在服務端完成的任務,如今能夠移到客戶端去完成,特別是如今進入多用戶端的時代,web應用的開發模式也面臨着巨大的挑戰。mvc思想爲咱們解決多端問題提供了很好的實踐。javascript做爲一門弱類型腳本語言,鬆散靈活的語言風格,致使代碼的組織管理成爲一個使人頭疼的問題。咱們可否借用mvc的思想來實現前端架構的解耦呢,這樣咱們能夠把關注點分解到更細的粒度,讓代碼從亂麻式的嵌套回調變的有序,優雅。Backbone就是這樣的背景下誕生的一款優秀的前端mvc框架。後端

2、這個框架的優缺點瀏覽器

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的鋪路石。

相關文章
相關標籤/搜索