手機webAPP框架之Ionic
說實話,webApp這兩年大有趕超原生app的勢頭,就webApp本身來講還有很多缺點,執行效率就是其中一個 硬傷。但是國外又有個安迪的人說過,只有軟件吃掉硬件的時候硬件才需要跟新換代,這樣硬件才有生命力。這個用來證明webApp存在的意義未免有些牽強。 但除此之外,webApp生成應用的速度短,產品迭代快,也正是小資本的創業團隊推崇它的原因。
Ionic 框架
Ionic框架我們前五個web app框架中最年輕的,阿爾法版本是在2013年11月下旬發布的。Ionic是建立在google的AngularJS框架上的,Ionic利用AngularJS來提供應用結構,而它本身更關注的是用戶界面。換句話說,我們將會看到強大的Angular和每秒Ionic的一個完美的組合。
Ionic(自定義HTML元素)為它的組件提供了一組Angular指令,使其很容易使用小部件,簡單的就像寫一行HTML代碼一樣。除了指令,Ionic使用Angular的觸摸識別器,視圖動畫邏輯,HTML生態和異步通信。
雖然你可以在克隆和解壓以后直接使用,同樣你也可以使用npm包管理器來安裝基于node-js的客戶端,然后迅速開始你的種子項目。
盡管Angular是目前離子的主力,開發人員保持開放的選項來支持它們的框架,例如Knockout或者Emberjs。這個特別的審查被AngularJS強烈影響著,隨著Ionic漸漸的支持其他框架,但它并不保證其準確性。
MV* Pattern
Angular JS過去被用來作為MVC框架,但是隨著時間的推移,當$scope對象作為一個視圖模型的情況下,就視圖模型來講它通過控制器來進行操縱,這也使得Ionic變得更接近MVVM框架。這樣一個靈活的方法,開發人員可以根據他們喜好來使用MVC或MVVM,只要他們的目標能被事項就行,MVVM框架將顯示從從業務邏輯分離從而提高了可維護性和生產力。
類系統
Angular JS或Ionic都不是面向對象的JavaScript框架,因此它們無法使用類系統。這可能被視作該框架的弱點或強點,其僅僅取決于JavaScript前端需要的簡易程度。
DOM 控制
Angular 嵌入了jqLite,jqlite是jQuery的一小部分,允許跨瀏覽器兼容的方式進行DOM操作。就擴展功能而言的話,jQuery可以加載文檔。
UI and Theme
談及到UI,Ionic顯示其內在的潛力。Ionic真正的美在于它的簡單性。幾乎所有的google風格中,它使用現有HTML5和CSS3功能提供快速的體驗。速度是完全在它的簡單-沒有不必要的陰影,圓角,梯度,只需要扁平簡潔活力,,清潔簡單,強大,純粹的HTML5。Ionic并不保證你原生外觀UI,但它確實提供非常快的和一致的接口,即使在你認為HTML5應用程序渲染效果很慢。
通過SASS來進行定制,Ionic有方便的變量和mixin擴展來定制它的外觀。此外,它的開源圖標庫有440多個圖標可供選擇。
小部件
Ionic的組件是非常簡單的。他們可以根據Angular指令的原型來定制HTML元素,Ionic還提供控制器來補充配置和交互。雖然有些框架可以提供更復雜的小部件,Ionic提供了一些簡單的構建塊,這些構建塊可以提供豐富的用戶界面。自alpha版本起,該框架提供了大量的表單元素,頁眉和頁腳欄、按鈕、一個簡單的和可定制的項目列表,網格元素等等。
響應式設計
在內部,Ionic利用響應Web設計原則根據屏幕大小或像素密度來產生更優化的體驗。任何app-specific RWD場景將受到歡迎合很好地實現。
桌面支持
用于混合移動應用程序(可安裝在移動設備上通過應用程序商店),Ionic并不意味著用于桌面web應用程序/網站。雖然內容將會顯示的很好,它任然需要做一些優化才能目的。那些希望創建應用程序,適合這兩種環境中可以留在角JS,但是使用Zurb開發基礎上,推ter引導或類似的UI庫。
第三方插件
當前沒有第三方插件或擴展可用
擴展
很多擴展性將會從CSS(S)或Angular指令和控制器衍生出來。這將會使得擴展成為應用程序的一個組成部分,,不可避免,但不要求。即使開發人員是Ionic的新人,Angular也不需要斗爭。
構建工具
Gulp是用來構建Ionic # 1 JavaScript構建工具,為你的項目目的更加具有吸引力。
打包(原生)
Ionic應用程序將需要外部工具用于包裝。這被用來和PhoneGap和Cordova和Trigger.io一起工作。
設備APi
Ionic不支持設備api。
文檔
Ionic文檔是合適的完成的alpha階段框架。示例豐富,文檔顯示大多數的組件將在移動設備上顯示一個預覽。預覽是很有吸引力的。
Angular的文檔會滿足開發人員中的初學者,但很快就會變得不充足。作為信息的欲望達到專家水平,開發人員可能會被迫訴諸源代碼或其他地方。
離子的文檔是體面完整考慮的alpha階段框架。示例豐富,大多數的文檔顯示預覽組件將在移動設備上。預覽是很有吸引力的。
角的文檔會滿足初學者開發人員,但很快就會變得不足。作為信息的欲望達到專家水平,開發人員可能會被迫訴諸源代碼或其他地方。
License
Ionic和AngularJS都在MIT許可下可用。
Community
因為它還處在一個生命周期的早期階段,Ionic還沒有一個成熟的社區。然而,考慮到相同的情況下,它的受歡迎程度的提升速度比許多其他框架要快。
這些人會說什么呢?
JavaScript 開發者
這是一種全新并且直的構建豐富的應用的方式。MVC和MVVM模式被實現·,像老拉丁人會說他們有機會與Angular JS一起工作。此外,使用HTML定義視圖和使用js對象定義數據模型,最終開發人員很容易編寫更少的代碼和使用更少的時間來生產高質量的應用程序。
設計人員
充滿激情的設計師會喜歡Ionic,因為它允許他們按自己的喜好自定義布局,而不必修改別人的復雜的小部件和破壞應用的功能。定制的UI需要Zurb開發基金會或者是推特的bootstrap一起工作.
產品經理:
開始學習AngularJS的障礙非常低,根本不需要知道整個框架就可以構建一個簡單的應用程序。然而,初學者在復雜的應用程序面前,將面臨著更高級的任務將會需要來應對一個越來越陡峭的學習曲線。
請記住Ionic被用來使用混合的應用而不是手機網站。
翻譯網頁:
http://moduscreate.com/5-best-mobile-web-app-frameworks-ionic-angulalrjs/
</span>