app开发技术有哪些?

app开发技术有哪些?我认为通用的有两种:

1.原生APP(NativeApp)

原生APP是用原生程式编写运行的一种第三方应用程序,它是基于移动设备(智能手机、平板电脑等)操作系统(如IOS、Andriod、WP)使用,用户通过应用市场或应用商店进行下载安装到自己的智能设备上。但是该开发针对IOS、Android等不同的手机操作系统要采用不同的语言和框架进行开发,工程量大。原生APP是需要定制开发的。

2.WebApp

WebApp能够为移动设备提供特定功能的Internet应用程序。该程序通常由“HTML5云网站+APP应用客户端”两部分构成,APP应用客户端只需安装应用的框架部分,而应用的数据则是每次打开APP的时候,通过移动设备的浏览器去访问,把云端取数据呈现给手机用户(类似淘宝、天猫、京东等)。

目前app开发有原生app开发,俗称native、webapp开发以及混合app开发。

原生nativeapp开发已经过了浪潮了。早期android开发和ios开发很火,程序员的工资很高。如果你想从事nativeapp开发,android你掌握java就行,ios采用object-c开发和swift,现在基本都在切swift。

混合app就是原生+Html。布局采用css,数据交互采用js。然后外层套一个原生的壳子,可以使用原生app的特性。

webapp就说纯Html+css+js。响应式布局。借助手机浏览器就可以运行。

关于目前移动app业界已经成熟的开发框架,我推荐几个。

1、PhoneGap

PhoneGap及Cordova(同一个东西,不同的叫法)是一款移动应用开发框架。我早期用户他开发过一个电商类的app。它能使用系统的相机、定位、通讯录、指南针等功能。通过调用它的SDK将你的应用编译为不同平台上的app。这些平台包括ios、android、windowsphone等

PhonegapBuild是它的打包具,可以把你的PhoneGap代码打包成app。业界很多主流的移动app开发框架均源于PhoneGap。较著名的有Worklight、appMobi、WeX5等;其中WeX5为国内打造,完全Apache开源,在融合Phonegap的基础上,做了深度优化,具备接近Nativeapp的性能,同时开发便捷性也较好。

2、ReactNative

ReactNative(简称RN)是Facebook于2015年4月开源的跨平台移动应用开发框架,是Facebook早先开源的UI框架。React在原生移动应用平台的衍生产物,目前支持iOS和Android两大平台。它使用JavaScript语言、以及类似于HTML的JSX和CSS来开发移动应用,因此熟悉Web前端开发的技术人员只需很少的学习即可快速上手。

国内很多公司也对ReactNative做了很多研究,并有相应的产出,如一些基于ReactNative发展出来的跨三端(Android/iOS/Web)的技术。

3、Weex

Weex是阿里无线前端的产品。致力于使开发者能基于当代先进的Web开发技术,使用同一套代码来构建Android、iOS和Web应用。具体来讲,在集成了WeexSDK之后,你可以使用JavaScript和流行的前端框架(如Vue.js和Rax)来开发移动应用。

Weex的另一个主要目标是跟进当代先进的Web开发和原生开发的技术,使生产力和性能***存。在开发Weex页面就像开发普通网页一样;在渲染Weex页面时和渲染原生页面一样。

Weex在很大程度上借鉴了ReactNative的思想和方式。目标都是通过JS语法渲染Native页面,但由于起步比较晚,社区没有ReactNative活跃,资料和开源项目也相对较少。

4、H5+

HTML5Plus移动App,简称5+App,是一种基于HTML、JS、CSS编写的运行于手机端的App,这种App可以通过扩展的JSAPI任意调用手机的原生能力,实现与原生App同样强大的功能和性能。

最后我提一下微信小程序

微信小程序,是一种不需要下载安装即可使用的应用,它实现了应用“触手可及”的梦想,用户在微信里扫一扫或搜一下即可打开应用。

小程序开发用的技术就是HTML+CSS+JS。但微信基于此定义了自己的一套逻辑JS/WXML/WXSS/JSON来开发和渲染页面

目前微信小程序发布的数量已经很多。但是微信小程序有包的大小限制。所以目前我觉得开发一些小的应用还是最佳选择。开发的成本很低。但是对于大型app开发,微信小程序可以作为引流的工具。小程序中开发一些基础版功能,将用户引流到app上。

这个就多了,从界面,到网络请求,再到性能优化,再到上架市场,整个过程覆盖知识面挺广的,想学就系统的学习