1.初識backbone.js

來源:互聯網
上載者:User
backbone,英文意思是:勇氣, 脊骨,但是在程式裡面,尤其是在backbone後面加上尾碼js之後,它就變成了一個架構,一個js庫。

backbone.js,不知道作者是以什麼樣的目的來對其命名的,可能是希望這個庫會成為web端開發中脊樑骨。

好了,八卦完了開始正題。

backbone.js提供了一套web開發的架構,通過Models進行key-value綁定及custom事件處理,通過Collections提供一套豐富的API用於枚舉功能,通過Views來進行事件處理及與現有的Application通過RESTful JSON介面進行互動.它是基於jquery和underscore的一個js架構。

整體上來說,backbone.js是一個web端javascript的mvc架構,算得上是重量級的架構。它能讓你像寫java代碼一些寫js代碼,定義類,類的屬性以及方法。更重要的是它能夠優雅的把原本無邏輯的javascript代碼進行組織,並且提供資料和邏輯相互分離的方法,減少代碼開發過程中的資料和邏輯混亂。

通過backbone,你可以把你的資料當作Models,通過Models你可以建立資料,進行資料驗證,銷毀或者儲存到伺服器上。當介面上的操作引起model中屬性的變化時,model會觸發change的事件;那些用來顯示model狀態的views會接受到model觸發change的訊息,進而發出對應的響應,並且重新渲染新的資料到介面。在一個完整的backbone應用中,你不需要寫那些膠水代碼來從DOM中通過特殊的id來擷取節點,或者手工的更新HTML頁面,因為在model發生變化時,views會很簡單的進行自我更新。

上面是一個簡單的介紹,關於backbone我看完他的介紹和簡單的教程之後,第一印象是它為前端開發制定了一套自己的規則,在這個規則下,我們可以像使用django組織python代碼一樣的組織js代碼,它很優雅,能夠使前端和server的互動變得簡單。

在查backbone資料的時候,發現沒有很系統的中文入門資料和更多的執行個體,所以我打算自己邊學邊寫,爭取能讓大家通過一系列文章能快速的用上backbone.js。

關於backbone的更多介紹參看這個:

http://documentcloud.github.com/backbone/

http://backbonetutorials.com/

backbone的應用範圍:

它既然是一個重量級的架構,那就不是隨便什麼地方都能用的,不然就會出現殺雞用牛刀,費力不討好的結果。那麼適用在哪些地方呢?

根據我的理解,以及backbone的功能,如果單個網頁上有非常複雜的商務邏輯,那麼用它很合適,它可以很容易的操作dom和組織js代碼。

豆瓣的阿爾法城是一個極好的例子。

當然,除了我自己分析的應用範圍之外,在backbone的文檔上看到了很多使用它的外國網站,有很多,說明backbone還是很易用的。

本文連結: http://www.the5fire.net/touch-backbone-js.html

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.