1. 程式人生 > >這些年幫過我的前端框架(實用篇)

這些年幫過我的前端框架(實用篇)

        前端其實就好像建房子一樣,建設的方式也是多種多樣的。

        例如你可以什麼都不用,單靠雙手去把房子砌起來。這樣實在,穩健,房子的每一個角落你都知道得清楚楚楚,但是效率偏低。 

        你也可以使用各種工具,提交你建房子的效率。例如你可以用攪拌機,幫你和水泥。你可以不需要知道攪拌機的執行原理,你只要按它的指示按下開關,它就很快地幫你完成任務。  

        前端的框架,就是我們前端建房子的工具,繁多好用。

        接下來我就要說一下這些年對我很有幫助的前端框架。

1.基礎型框架

1.1jQuery——前端不懂jQuery,學得更多也枉然。

最普遍最簡單實用的javascript框架,就算你不懂原生javascript為何物,但是隻要你看上幾遍jQuery的api,你也會發現你原來也懂操作dom,也會Ajax,也能實現頁面上的各種互動。對於初學者來說,《鋒利的jQuery》一書,絕對足夠讓你對jQuery入門上手。鑑於大家都知道它,就不多說了。

1.2 sass和less——css預處理神器

它們是css的前處理器,讓css擁有了程式設計的特性,讓css活起來了。它們的基本思想是,用一種專門的程式語言,進行網頁樣式設計,然後再編譯成正常的CSS檔案。如果說你還沒用過它們,我只能說你太凹凸慢了。sass和less能讓你的css更靈活,更高效,更容易管理。其他的好處我就不說了,你們可以去看看阮一峰的網路日誌http://www.ruanyifeng.com/blog/2012/06/sass.html

1.3zepto.js——手機端小清新版jQuery

zepto.js簡單的概括就是,手機端的簡約版的jQuery.它的主要元件經過zip壓縮後,只有9k。它的出現,讓手機頁面在響應和互動上增色不少。它的語法和jQuery基本一樣。 當然它也有它坑爹的地方,就是touch.js的拓展,對一些瀏覽器是不支援的,相容性比較差。大家要謹記這點,以免踩坑。

1.4Foundation——響應式佈局的佼佼者

為什麼要把Foundation放在基礎篇裡面,其實是想側重突出它的佈局思想——響應式佈局。手機端頁面越來越多的今天,靈活的流體設計盛行的今天,foundation的引導作用功不可沒。儘管它的作用遠遠不止響應式佈局,但是也是由於功能太多,有時候在移動端實用的時候,感覺略重。 所以在這裡建議大家就是把它的響應式佈局的思想和原理學到手,然後自己去實現響應式佈局。

2.頁面搭建型框架

說到這個層面的框架,那真的是滔滔江水連綿不絕,一波未平一波又起。框架太多太多了,接下來只列舉我用過的比較好用的幾個。

2.1bootstrap——超級流行的搭建型框架

度娘告訴我們:Bootstrap是Twitter
推出的一個開源的用於前端開發的工具包。它由Twitter的設計師Mark Otto和Jacob Thornton合作開發,是一個CSS/HTML框架。Bootstrap提供了優雅的HTML和CSS規範,它即是由動態CSS語言Less寫成。Bootstrap一經推出後頗受歡迎,一直是GitHub上的熱門開源專案,包括NASA的MSNBC(微軟全國廣播公司)的Breaking News都使用了該專案。 豐富的元件和js外掛,靈活的組建組合,簡約優雅的ui等等等等,讓web開發更迅速簡單。 不好的地方就是版本比較低的瀏覽器不支援裡面的譬如響應式佈局等內容。本人曾經用它快速搭建過後臺系統,真心快很準。值得使用。

2.2seaJs——js模組化利器

SeaJS是一個遵循CommonJS規範的JavaScript模組載入框架,可以實現JavaScript的模組化開發及載入機制。 jQuery等JavaScript框架不同,SeaJS不會擴充套件封裝語言特性,而只是實現JavaScript的模組化及按模組載入。 seajs通過js的粒子化和按需載入,讓整個前端的流水線運作得更快更流暢。 同類型的還有requirejs和百度的fis等等.

3.mvc框架——mvc的日與夜

3.1Backbone.js

          Backbone 為複雜Javascript應用程式提供模型(models)、集合(collections)、檢視(views)的結構。其中模型用於繫結鍵值資料和自定義事件;集合附有可列舉函式的豐富API; 檢視可以宣告事件處理函式,並通過RESTful JSON介面連線到應用程式。 Backbone.js的使用,我只處於拿來玩的狀態。有興趣的話請自行去官網逛逛。 優點:對模板範圍和控制器設計有很好的考慮,擁有依賴注入系統,支援豐富的UI繫結語法。缺點:程式碼的模組性不強,檢視的模組化也不夠。 先寫這麼多,以後再補充。