構(gòu)建基于Javascript的移動web CMS入門
看到項目上的移動框架,網(wǎng)上尋找了一下,發(fā)現(xiàn)原來這些一開始都有。于是,找了個示例開始構(gòu)建一個移動平臺的CMS——墨頎 CMS,方便項目深入理解的同時,也可以自己維護一個CMS系統(tǒng)。
構(gòu)建框架
嘗試過用AngularJS和EmberJS,發(fā)現(xiàn)對于使用AngluarJS以及EmberJS來說,主要的問題是要使用自己熟悉的東西沒那么容易引入。而且考慮到谷歌向來對自己的項目的支持不是很好~~,所以便放棄了AngluarJS的想法。
于是開始尋找一些方案,但是***還是選擇了一個比較通用的方案。
- RequireJS
- jQuery
- Underscore
- Backbone
相對于AngularJS來說,Backbone是一個輕量級的方案,從大小上來說。對于自己來說,靈活性算是其中好的一點,也就是自己可以隨意的加入很多東西。
關(guān)于Backbone
Backbone.js是一套JavaScript框架與RESTful JSON的應(yīng)用程式接口。也是一套大致上符合MVC架構(gòu)的編程范型。Backbone.js以輕量為特色,只需依賴一套Javascript 函式庫即可運行。
具體功能上應(yīng)該是
- Backbone 輕量級,支持jquery,自帶路由,對象化視圖,強大的sync機制減少頁面大小從而加快頁面顯示。
- jQuery jQuery使用戶能更方便地處理HTML(標準通用標記語言下的一個應(yīng)用)、events、實現(xiàn)動畫效果,并且方便地為網(wǎng)站提供AJAX交互。不過主要是jQuery能夠使用戶的html頁面保持代碼和html內(nèi)容分離,只需定義id即可。
- Underscore是Backbone的依賴庫 Underscore 是一個JavaScript實用庫,提供了類似Prototype.js的一些功能,但是沒有繼承任何JavaScript內(nèi)置對象。
- RequireJS 你可以順序讀取僅需要相關(guān)依賴模塊。
前臺UI,使用的是Pure CSS,一個輕量級的CSS框架,但是***感覺,總體用到一起,大小還是相當?shù)摹V皇强梢杂幸粋€更好的移動體驗。
其他可替換的框架
AngularJS,考慮到某些因素,可能會替換掉Backbone,但是還不是當前可行的方案。為了學習是一方案,也為了更好的普及某些東西。
handlebars Handlebars 是Mustache的改進,顯示與邏輯分離,語法兼容Mustache,可以編譯成代碼,改進Mustache對路徑的支持,但是若需要在服務(wù)端運行需要使用服務(wù)端Javascript引擎如Node.js。
項目
前后端分離設(shè)計,后臺對前臺只提供JSON數(shù)據(jù),所以在某種意義上來說可能會只適合瀏覽,和這個要配合后臺的框架??偟膩碚f,適合于閱讀類的網(wǎng)站。
源碼
代碼依然是放在Github上,基本功能已經(jīng)可以Works了。
https://github.com/gmszone/moqi.mobi
進展及目的
***目標:構(gòu)建一個移動平臺的CMS系統(tǒng)。
當前:對于這樣一個項目來說,目前會考慮優(yōu)先支持下面的兩個框架,
- Django+Tastypie API
- Wordpress
現(xiàn)在:可以從后臺讀取到數(shù)據(jù)。
其他
一些比較好的資料有