DownOL 软件仓库– 软件下载,字节世界与新知

APP开发 原生/H5/混合/React Native哪个强

发表于:2024-05-03 作者:创始人
编辑最后更新 2024年05月03日,聪明人都关注了"杭州圆周率网络"头条号,点击上方加入我们吧~互联网创业用微信公众号好,小程序好,还是APP好?这是个争论不休的话题。老派认为可以从微信公众号、小程序起步,但最后的王城要建立在APP上。

聪明人都关注了"杭州圆周率网络"头条号,点击上方加入我们吧~

互联网创业用微信公众号好,小程序好,还是APP好?这是个争论不休的话题。

老派认为可以从微信公众号、小程序起步,但最后的王城要建立在APP上。一是因为APP能帮你拓展更多商业化功能,占据更大的市场。而是考虑到微信存在不确定性,如果把自己的"七寸"全部交给微信,有一天被封号怎么办?如果有一天微信被颠覆该去哪里找回用户?


今天,老派就跟大家讲讲移动应用程序(APP)的开发模式。

在老派正式开讲前,我们先来复习下我们知道的知识点。

当下最流行的两大移动端是什么?

没错,是iOS和Android。

APP的开发模式可分为四种:原生应用Native App、网页应用 Web App、混合开发 HybridApp、React Native。

1. 原生应用(Native App)

使用相应移动平台特有的开发工具和语言进行开发。

当今最流行的两大移动端平台Android和i0S各有自己的一套独立的开发模式。

  • 基于Android平台的Java语言开发

  • 基于iOS平台的Obective-C语言/Swift语言开发

优点

1. 执行速度快,界面流畅,动态效果出色

2. 性能稳定,对网络的依赖性小

3. 用户体验趋于完美,用户留存率高

4. 可以非常方便地调用操作系统提供的各种功能及终端硬件设备,如读取本地通讯录、推送通知提醒、调用摄像头等

缺点

1、Android和iOS上的应用需要单独开发、维护,开发成本很高。周期长,价格高。

2、升级更新繁琐,每个系统要单独更新,程序猿完成工作后,开发者要重新上传,然后审核,用户才能更新。IOS的审核至少需要一周,所以对于产品运营,无疑会加大时间投入。

3、分发成本高。

应用

原生开发适用于无需经常更新程序框架的APP。

除此之外,游戏类的APP由于要大量载入显卡及动画效果,也通常采用原生模式进行开发。

网页应用(Web App)

Web App是移动网页开发模式,借鉴了传统Web开发方式,利用HTML , CSS ,JavaScript等技术模仿NativeApp的界面结构,开发适合于移动端显示的网页,并通过手机上的浏览器解释执行。

这里要特别提一下HTML5,即H5。严格意义上来说它是第五代HTML标准,并不是一项技术。而我们平时习惯从广义上讨论H5,将它打包成一个解决方案,即看起来很酷炫的移动onepage网站的解决方案,包括HTML5新增的audio标签,canvas,拖拽特性,本地存储,websocket通信,同时也包括了CSS等。

优点

1. 可跨平台,跨设备,开发成本小。周期短,价格低。

3. 安装包小巧,只包含框架文件,而大量的UI元素、数据内容存放在云端。

2. 完全自控,可在网页上直接调试、修改,可实现实时数据交互,升级更新。用户不用重新安装,无须官方审核及应用商店。

缺点

1. 受限于网络环境,没有网络的WebApp几乎没有任何功能。页面跳转需要发送网络请求,再通过浏览器解释执行,交互时间长。若遇到网络不稳定情况,用户使用中会有断断续续不流畅的感受。

2. 受限于渲染性能。对复杂图形、动态效果、自定义字体等支持性不强。

3. 无法很好地调用操作系统提供的硬件设备(如摄像头)。

4. 用户体验很差

应用

适用于商城类APP、资讯、企业集团等需经常更新内容的APP应用。

小结

Web APP和Native APP的对比

混合开发(Hybrid App)

Hybrid App是混合开发模式,这种模式将Native App与WebApp进行混合开发,一部分基本界面用手机系统的原生语言开发。另一部分功能界面Web技术开发移动端网页,利用原生语言中的WebView进行显示网页,这部分功能能在不升级APP的情况下动态更新,且在iOS或Android的App上同时运行。

混合开发根据侧重点分为三种方案:Web架构为重、编译转换、Native架构为重。

这里有种极端情况是只包了原生的壳,里面其实是H5网页,大家要有所了解。

Hybrid App结合了Native App和WebApp两种开发模式,把这两种开发模式的优点和缺点折中互补。总体费用在原生开发和HTML5开发模式之间。开发周期也在两者之间。简而言之,中庸之选,在NativeAPP和Web APP两者之间。

应用


React Native App

React Native起源于Facehook的内部项目。它不提供"write once, runanywhere"的解决方案,并不能真正意义上解决同一份代码,不同平台运行。而是创新的提出了"Learn once, writeanywhere",即学习一次,可以在N个平台使用。

React Native App是采用ReactNative框架开发的跨平台移动应用。这个框架的原理是基于网页开发技术并利用JavaScript语言与两大平台上的原生语言Java和objective-C进行交互,互相调用,从而达到使用JavaScript来写原生应用的目的

React Native 底层设计图

优点

1. 跨平台,代码可复用于两个平台,组件化思想可以帮助开发者增加效率。

2.动态更新。程序的JavaScript代码放在服务器上,用户在本地备份执行,在程序升级更新时客户端自动从服务器下载代码到本地解释执行,实现了热更新。JavaScript代码占用的空间很小,相当于一份文档,如今的网络速度下载这份代码用户几乎察觉不到。

3. React Native App的性能只比Native App差一点,比Web App和HybridApp强很多,用户体验较好。

4. 有个好爹哈哈

缺点

1、扩展性不如Web,更远远不如Native。

2、发展时间短,不够成熟,不够稳定,不够完善,生态系统还在搭建中。

应用

总结

讲了这么多,至于我现在要开发一款APP应该到底用什么呢?

我司APP开发案例:毒物

这个世界从来都不是非要斗得你死我活,每种技术都在或快或慢的发展。在当下,选择适合自己的就好!

不知道哪个才是适合自己的?问老派!

找谁开发呢?老派懂你!找老派!

感谢阅读。

撰文:杭州圆周率网络科技有限公司 老派

2022-05-09 22:48:48
0