幾個前端UI框架的的比較

首先是在問答裏面看到了一個問題:
CSS框架 ui 有哪些啊(http://segmentfault.com/q/1010000002547926react

剛開始接觸HTML剛開始接觸JS我也不懂就看了下- 正好我也在考慮怎麼用HTML來搭個人APP UI。做爲初學者,我發現Amaze UI是中文的,以爲對初學者看起來會更簡單 - 尤爲對HTML CSS等一竅不通,很快有人推薦了Ratchet,看了下感受用來作手機APP確實很簡單的樣子.. 開始糾結了.. 跟公司大神討教了下什麼是UI框架以及一些主流的框架區別 優劣勢,以及咱們一些項目上使用的內容後,大神總結出瞭如下內容,受益不淺 - 做爲答案有點長,以博文形式發出來供你們一塊兒探討下:git

------- 如下分割線 --------
IoTgo 用的是 Bootstrap(http://getbootstrap.com),原先是 Twitter 內部的一個 CSS 框架,後來開源放到 Github 上,成了 Github 上最熱門的項目。Bootstrap 在 3.0 版本以前,都是以桌面優先,在 3.0 版本後,採用移動優先,即很好的支持移動平臺,而後才考慮更好的支持桌面。因此 Bootstrap 對手機的支持也很好。程序員

Foundation(foundation.zurb.com) 是設計公司 zurb.com 推出的開源 CSS 框架,在 CSS 框架領域是目前惟一能跟 Bootstrap 的競爭的項目。Foundation 的可定製性更好一些(由於是設計公司的產品,要應對各類客戶需求),但入手難度也高一些。對於不少 Web 項目開發者而言,他們須要的就是一套簡單快捷的 UI,對其美觀性、可定製性要求不是過高,因此目前相對來說 Foundation 沒有 Bootstrap 熱門。angularjs

答案中推薦的Ratchet如何:
Ratchet 以前也是 Twitter 內部的一個 CSS 框架,後來也是開源到 Github 上,目前是做爲 Bootstrap 的子項目存在(http://blog.getbootstrap.com/2014/04/02/ratchet-2-0-2-released/),開發 Ratchet 和 Bootstrap 的基本就是同一撥人。Ratchet 一開始就以移動爲先,預先提供了不少移動平臺的常見 UI 工具,好比底部 Tab 標籤欄、頂部標題及後退按鈕、滑動的側邊欄等等——Bootstrap 也有,只是不少以插件形式存在,又或者須要本身作一些修改,不像 Ratchet 默認就有。github

若是是作一個小項目,並且只以手機 App 的形式存在,能夠考慮先用 Ratchet,若是同時兼容桌面,Bootstrap 更好一些。並且 Bootstrap 更新的速度更快,立刻 4.0 版本就要出來了,有不少針對移動平臺優化的特性,而 Ratchet 已經快一年沒更新了。bootstrap

另外,目前的移動 CSS 框架(或者更合適的說,UI 框架),還有 Facebook 的 React(http://facebook.github.io/react/),Google 的 Angular Material(https://material.angularjs.org),Telerik 的 Kendo UI(www.telerik.com/kendo-ui),還有預先捆綁了 Cordova 的 Ionic Framework(ionicframework.com)等等。你們的評價大體是:segmentfault

  • React:性能很好,由於採用了 Virtual DOM,但沒有默認支持 2 way data binding(雙向數據綁定),程序員須要本身作更多的工做來經過 UI 獲取用戶的輸入
  • Angular Material:前景很是好,只是目前處於 pre-release 階段(代碼兼容性和穩定性都不是很好)。Angular目前幾乎已是前臺 MVC 框架的事實標準(大約 70% 以上的佔有率,其餘的還有 Ember、Meteor、Backbone等等),Angular Material 基於 Google Material Design 開發,默認支持 Angular,於是在 UI的美觀型和開發效率上都比較好。但性能是個問題,解決性能問題,須要程序員本身對代碼作優化
  • Kendo UI:很是完備的 UI 框架,可是是商業版(前段時間將部分核心模塊開源了)。開發商業 Web 或移動產品的企業更傾向Kendo UI 一些,由於能夠獲得很好的技術支持(固然要花錢)。Angular 熱門知會,Telerik 也升級了 Kendo UI,使其可以較好的跟 Angular 交互——Kendo UI 是 UI,Angular 是前臺代碼邏輯
  • Ionic Framework:目前很是熱門,由於他在 Angular 的基礎上開發了支持移動平臺的 UI Widget(UI組件)。Ionic Framework 搭好了整套移動開發環境(指的是 App 開發,不是網站移動版)、UI 套件、JS框架(Angular),於是在 2014 年得到巨大的社區反響。被譽爲最有前景的移動開發框架(不只僅是 UI 了)。

我我的對 Angular 比較熱衷,因此都會選擇可以很好跟 Angular 交互的 CSS/UI 框架——通常來講,若是是純 CSS 框架,那麼跟任一一個 MVC 框架(好比 Angular、Ember)均可以很好的配合;若是是 UI 框架,可能會有一些衝突。框架

以前咱們的智能開關手機 App 是基於 Ionic Framework 來開發的,後來切換到 Angular Material。一個是 Ionic Framework 雖然入手簡單,但出現 Bug 我搞不清楚該怎麼修改(須要花時間研究 Ionic Framework 的內部工做機制),二是我認爲 Material Design 會成爲 UI 設計的主流思想,Angular Material 會很快成熟起來。ionic

相關文章
相關標籤/搜索