第一章:hybrid app开发之技术选型

伴随着移动互联网的兴起,越来越多的企业将部分资源投入其中,想在互联网+的大潮中分一杯羹,并期望着站在风口上,成为时代的弄潮儿。

现在不会做一个app都不好意思说是搞互联网的,那么开发一个app的方式有哪些呢?基于目前市面上比较流行的app都是基于android和ios的,所以我们只针对这两种平台谈app;虽然也有其他平台,但鉴于市场占有率,不纳入本系列的范围。

第一种方式:native app

IOS:基于XCode开发工具,使用Swift或者OC开发语言,来进行原生态的IOS应用的开发。

Android:基于Eclipse或者Android Studio开发工具,使用Java开发语言,来进行原生态的Android应用的开发。

优点:

  1. 原生态的功能和性能体验,可以完全控制所有的功能。
  2. 完善的API文档和demo。

缺点:

  1. 学习曲线较陡峭。
  2. 开发成本较大。
  3. 部署审核时间较长。

第二种方式:hybrid app,基于开源的framework,使用HTML+CSS+JS编程语言,通过编写web应用,并且转化成native app的方式来进行开发,下面列举的framework都基于开源的Cordova内核。

Sencha:使用Ext JS框架进行web开发,并通过Cordova提供的API来进行Device层面的交互。开发的应用能够在多个平台上面运行,目前的流行度比较低,原因是因为框架太大、运行速度太慢。

JQuery Mobile:使用JQuery框架进行web开发,口头禅是“write less,do more”。开发的应用能够在多个平台上面运行,开发人员比较多,主要是是基于JQuery的。

Ionic:使用AngularJS进行web开发。ionic是目前为止流行度最高的hybrid应用开发框架,ionic生态圈比较好,有一堆丰富的工具和插件。但是页面的切换及动画效果不是很理想。

Ionic 2:ionic的下一个主要版本。

OnsenUI:使用AngularJS或者JQuery进行web开发,OnsenUI是ionic的主要竞争对手,其总是比ionic领先一步,拥有更好的performance。但是使用的人不是很多。

OnsenUI 2:OnsenUI的下一各主要版本,可以基于任何的Javascript语言,并不局限于AngularJS或者JQuery。对最近比较火爆的ReactJS有非常好的支持。

优点:

  1. Write once,run anywhere!
  2. 学习曲线比较平滑,web思维,开发简单。
  3. 开源,有大量的社区支持以及丰富的案例。
  4. 可以在线部署,免去部署审核时间。
  5. 开发成本较小。

缺点:

  1. Web不能解决一切问题。
  2. 不适合高质量交互及动画类应用,性能相比native app有一定的差距。

第三种方式:基于跨平台的开发工具,来进行原生态应用的开发。

Xamarin:基于VS开发工具,使用C#开发语言,进行native app的开发。随着微软产品的开源,相信Xamarin会有越来越多的人使用。需要针对不同的平台进行不同的编码。

Titanium:使用Javascript语言,通过提供跨平台的Javascript运行时和mobile api来进行native app的开发。需要针对不同的平台进行不同的编码。

优点:

  1. Lean once,write anywhere!
  2. 拥有native app的性能。
  3. 拥有web开发的效率。

缺点:

  1. 入门门槛比较高。
  2. 需要自己为不同的平台定制UI组件。

结论:

每种方式各有其优缺点,我们应该根据实际的应用场景、团队成员的技术储备来选择合适的技术。

时间: 2024-10-05 02:52:59

第一章:hybrid app开发之技术选型的相关文章

Hybrid App 开发模式

开发移动App主要有三种模式:Native. Hybrid 和 Web App. 需要注意的一点是在选择开发模式的时候,要根据你的项目类型(图片类?视频类?新闻类?等),产品业务和人员技术储备等做权衡. Hybrid开发模式就是既有Native开发也有Web app的开发.那我们怎么去确定App中某个功能模块使用Native还是Web开发?它们之间如果需要接口通信又该如何去实现呢?又该如何更好的去维护Hybrid App产品呢? 1.Native or Web开发模块 当我们选择用Hybrid模

Hybrid App 开发实践总结

引言 随着 Web 技术和移动设备的快速发展,Hybrid 技术已经成为一种最主流最常见的方案.一套好的 Hybrid架构方案 能让 App 既能拥有极致的体验和性能,同时也能拥有 Web技术 灵活的开发模式.跨平台能力以及热更新机制,想想是不是都鸡冻不已..??.本系列文章是公司在这方面实践的一个总结! Native App 开发模式 Native App,原生APP,使用原生(即Android或iOS)开发的APP.应用的性能好是无容置疑的,但是企业大都处于尝试和摸索期,企业需要在短时间内快

【JavaScript】Hybrid App开发 四大主流移平台分析

转自http://dev.yesky.com/238/34657738.shtml Hybrid App在过去的两年中已经成为移动界的核心话题,但是作为一名Web开发者来说要如何站在移动互联网的浪潮之巅呢?是选择学习原生开发,研究Java.Object-C.C#等语言,还是选择继续使用网页开发,容忍HTML5功能的局限性?就在开发者左右为难的情况下Hybrid App作为一个折中的解决方案诞生了.那么究竟什么才是Hybrid App呢? Hybrid App概念 Hybrid App:Hybri

HybridApp解决方案_No1_混合模式(Hybrid)App开发概述

1.1.     APP三种开发模式 智能手机之普及不用多说,手机APP渗投到各个行业:电商(淘宝.京东等).金融(各手机行业.P2P借贷等).医疗(智慧医疗).交通(滴滴.Uber等).教育(慕课网等).餐饮(饿了吗.美团等)……反正只要是个企业,无论规模大小,都已经订制或将要订制自己的APP.这么多APP无外乎就三种模式:Native App.Web App.Hybrid App. 1.1.1.     Native App Native App,原生APP,使用原生(即Android或iO

Hybrid App开发 四大主流移平台分析

Hybrid App在过去的两年中已经成为移动界的核心话题,但是作为一名Web开发者来说要如何站在移动互联网的浪潮之巅呢?是选择学习原生开发,研究Java.Object-C.C#等语言,还是选择继续使用网页开发,容忍HTML5功能的局限性?就在开发者左右为难的情况下Hybrid App作为一个折中的解决方案诞生了.那么究竟什么才是Hybrid App呢? Hybrid App概念 Hybrid App:Hybrid App is a mobile application that is code

hybrid app开发中用到的html5新特性localStorage、sessionStorage和websql database

最近在项目中进行hybrid app开发,项目中有大量的js代码运行在android设备上.使用到了很多HTML5的新特性,之前没有遇到过,不了解,这里记录下增加点前端的知识.混合式app开发中,经常需要使用缓存功能,比如你在页面表单控件上输入了数据,你希望下次退出app再次进来的时候还能看到这些数据:比如你的项目中有保存草稿的功能,只是先将数据临时存储在本地,以后再提及到服务器.这就需要我们将数据持久地存储在本地,这就需要用到HTML5中的本地化存储解决方案.本文主要介绍下sessionSto

hybrid app开发工具

hybrid app开发工具 1.AppCan AppCan是国内Hybrid App混合模式开发的倡导者,AppCan应用引擎支持Hybrid App的开发和运行.并且着重解决了基于HTML5的移动应用"不流畅"和"体验差"的问题.使用AppCan应用引擎提供的Native交互能力,可以让HTML5开发的移动应用基本接近Native App的体验. AppCan作为中国Hybrid混合应用开发.移动平台.移动云平台的倡导者和领导者,以"免费+开源+开放&

Hybrid App开发git多分支代码版本管理实践

3.Setting Up and Configuring Backup and Recovery 这个单元讲述如何启动.与rman client如何互动,准备rman环境,实现备份和恢复策略 注意:尽管闪回数据库和安全还原点不是真的数据库备份,但是它们是数据保护策略一个重要部分.这些特性需要一些初始化设置,这些设置依赖于在备份策略中你怎么混合它们.Chapter 5-Data Protection with Restore Points andFlashback Database 提供了关于怎么

openwrt教程 第一章 物联网&openwrt开发概述

转载请注明出处:http://blog.csdn.net/ns_code/article/details/28505569 序言 求两个正整数的最大公约数是一个很古老且很基本的问题,欧几里得在其著作<几何原本>中给出了高效的解法--辗转相除法,也叫做欧几里得算法.下面我们来看下求最大公约数的一些方法. 方法一 我们先来看欧几里得的辗转相除法.原理很简单,假设用f(x,y)表示x和y的最大公约数,我们令x>y,则有x=ky+b,如果一个数能够同时整除x和y,则必能同时整除b和y,而能够同时