本文作者:IMWeb coolriver 原文出处:IMWeb社区 未经同意,禁止转载
提到跨终端应用开发,很容易想到最近很火的React Native。使用React Native开发出的APP本质上是Native APP。在跨端应用开发这一领域内还有另一块:Hybrid APP。本文研究的inoic framework就是一种hybrid app的开发框架。
在之前,ouven的一篇文章介绍了ionic frameword的基本构成,和在windows系统上的环境搭建。本文在此基础了,对ionic frameword(后面简称 ionic)的基本组成作一些补充和总结。下图展示了ionic的基本组成:
在上图中,ionic所包含的范围为上图中蓝色部分。这四个部分都是现有的工具或技术,各个部分分别负责如下模块:
上面列了这么多,好像都是现有的技术和工具,那么ionic它本身到底做了什么呢?ionic的一个官方介绍文章里有句话概括了:
Think of Ionic as the front-end UI framework that handles all of the look and feel and UI interactions your app needs in order to be compelling. Kind of like "Bootstrap for Native,"undefined
ionic主要职责是作为app的前端UI框架,提供基本的样式以及各种UI组件,号称相当于native版的Bootstrap(虽然严格来说ionic构建的APP不是真正的Native APP)
关于ionic的安装,在之前提到的ouven的一篇文章中有着较为详细的介绍,这里不再重复。对于ionic的使用,下面的图(图片源自The Ionic Framework Cheatsheet)有助于初次接触hybrid开发和调试的同学理清流程,并快速上手:
上图描述了在安装好了ionic的所有环境之后,如何通过ionic cli的各个命令从零开始构建一个demo app。
对于上文中的问题,ionic的官方博客中专门有一篇文章有说明。(点我是原文)原文较长,这里抽出最后关键的总结:
That said, Ionic is built for the devices of today and the future, not for devices built years ago. It’s focused on native app development and not mobile website creation.undefined
ionic声明了自己是做APP的而不是做website的(毕竟很多Cordova Native API无法在手机browser上使用),最重要的,ionic果断抛弃了屌丝机,拥抱高端机。
ouven的文章里已经总结了ionic的优缺。抛开目前hybrid app的性能问题,ionic确实为前端人员构建跨端应用提供了极大的便得,而且有活跃的社区用于分享技术和成果,有丰富的教程与指引。如果按照ionic对html5以及未来手机性能的乐观展望,目前的玩具说不定真能成为将来的产品。