第一章ionic 基本介绍 ionic 基本介绍

  1. 1. 前言
  2. 2. Ionic

前言

21世纪,手机应用兴起。硬件正变的更好,软件的能力也成几何倍的增长。手机应用的需求空前的高,开发者们也努力开发各种主流平台的应用以满足市场的需求。
最流行的方式就是编写原生的应用,但是编写原生的应用需要对多门语言进行深入的理解,例如:IOS/OSX使用的Objective-C 和 Swift,别外一个就是Android开发使用的Java。另外开发人员要熟悉各种开发框架及SDK来生成应用。像这样当同时开发一个应用要分别开发不同平台的版本,对于一个团对来说难度就大了。
混合模式开发(Hybrid development),可以说是解决上面问题的最有效的方式。其实,混杂模式应用是在本地容器上包装了一层。这种结构让我们仅通过用HTML5+CSS3和javascript就可以开发移动应用,不用直接与某一个平台进行交互。很多开发者为了满足快速增长类似于一个产品要有多平台的版本的需要,目前已经使用了这种方式。自从智能手机的到来,很多类似的框架也产生了。Sencha Touch,Kendo UI,和jQuery mobile是比较受欢迎的移动框架。也有一些控制DOM的框架,如Facebook的React库,Google的AngularJS和Backbone.js.另外,Bootstrap,Foundation和Topcoat 服务帮助你设计混杂应用。最后,有很多混杂开发平台如Apache基金会的Cordova 一个开源平台。
面对那么多的框架体系,选择哪个来开发你的应用是比较头痛的事情。大部分这些框架不能充分利用手机装置并且当我们使用其生成应用时会出现各种问题。所以Ionic就出现了。

Ionic

Ionic是由Drifty研发的,一个聪明的开发和设计小组。这个公司之前已经成功开发过多个项目,如:Jetstrap,一个bootstrap构建工具,和Codiqa,在线拖放构建混合应用程序和移动网站的工具。Drifty目前的使命是改变未来移动软件开发,特别是混杂手机应用开发,Ionic就会实现这些事情。
Ionic将Apache的Cordova平台,AngularJS和Angular-ui-router通过Ionic开发好的应用架构和组件和样式组合起来。实质上Ionic集成了最好的手机框架,让你专注于自己的功能设计和实现。
基于Cordova,Inoic是可以使用大量的Cordova插件,这些插件可以使用原生的一些东西,如访问设备的相机,照片和地理坐标等等。另外,这个平台还让你创建原生的通知,和捕获设备的运动方向,实际上,这样我们基本就看不出原生应用和混杂应用的区别了。
更重要的是,Ionic决定集成AngularJS使你能够访问大量的功能.那是一个非常了不起的架构上的决定,因为它可以帮你把你的代码组织到controllers,services,和directives中,方便代码的管理。最后,有了AngularJS,大量开源社区的模块都可以使用了,可以使人你扩展Ionic的核心功能。如,Trendicity 这个应用,我们就集成了有名的angular-local-storage模块来存储在Instagram上发表的最喜欢的东西。
而且,Ionic在开源社区中已经非常受关注。不仅仅因为这个框架它本身开源,而是它的开发团队编写了详细的文档和在CodePen上收集有用的代码样例。别一个非常好的资源就是,可以与其它社区交流和直接与ionic团队直接进行交流的公共论坛。
接下来的章节,我们会用ionic一步步的创建Trendicity用ionic。此外,我们会深入学习ionic在构建混合移动应用程序中的使用。