>凡事网 导航

主流的APP开发方式

2024-07-04m.fan-pin.com
~ 市面上主流app开发框架对比包括:原生native、webapp、hybird、RN、weex、flutter、uni-app的总结和对比

NativeApp使用原生语言开发的应用;性能和体验都是最好,但开发和发布成本最高;常用的开发技术:Swift,OC,Java;WebApp移动端的网站,常被称为H5应用,即运行在移动端浏览器的网站应用,一般泛指SPA模式开发的网站,与MPA对应,代表:微信公众号里的H5应用(微信公众号的H5又可以调用NativeAPI,也可以认为是HybridApp);开发和发布成本最低,但性能最差;常用的开发技术:VueJS、ReactJS等;HybridApp混合模式移动应用,介于WebApp、NativeApp两者之间的App开发技术;原理:JS写逻辑且可以通过JSBridge调用Native的API,用HTML+CSS编写界面,并由webview渲染界面;渲染方式:webview渲染;JSBridge统一封装了IOS和Android的API,因此HybridApp具有跨平台效果;JS逻辑的执行由webview内置的JS引擎决定,调用NativeAPI是通过JSBridge来实现;开发和发布成本介于NativeApp和WebApp之间。热更新:支持常用开发技术:PhoneGap、ApiCloud、MUI、Wex5、AppCan等;ReactNativeAppRN是Facebook开发并开源的一款UI框架,以解决Hybrid存在的缺陷与不足;原理:JS写逻辑且运行在JS引擎中,底层自动把JS代码解析成对应平台(ios、安卓)的原生API,调用Native的API绘制原生UI,即原生渲染界面,这是与HybirdApp最大的不同,因此性能好于HybridApp。渲染方式:原生渲染;JS引擎为:ios为JSCore,andorid为v8,最新版rn开始在andorid上搞自己的js引擎Hermes界面:由JSX语言写界面布局:Flexbox;基于的开发技术:ReactJS热更新:支持;思想:learnonce,writeanywhere;注:不敢说writeonce,因为RN要针对ios和安卓各写一套代码;WeexApp与ReactNativeApp类似,由阿里开发并开源一款UI框架;原理:跟RN类似;渲染方式:原生渲染跟RN最大不同:Weex写一套代码即可运行在IOS和安卓中,RN要写两套代码,IOS一套,安卓一套;JS引擎为:ios为JSCore,andorid为v8界面:由Vue编写界面;布局:Flexbox;基于的开发技术:VueJS;热更新:支持;思想:writeonce,runanywhere;注:

微信小程序类似于RN/Weex开发方式,也分为逻辑层和视图层;微信小程序的页面属于混合渲染,什么是混合渲染?看后文总结;FlutterAPP由Google开发并开源的一套UI框架,使用dart语言;逻辑和界面使用FlutterEngine;Flutter使用Engine来绘制Widget(Flutter的显示单元),即Widget渲染界面,Dart代码都是通过AOT(AheadOfTime)编译为平台的原生代码,所以Flutter可以直接与平台通信,不需要JS引擎的桥接。Widget是不可变的,仅支持一帧,并且在每一帧上不会直接更新,要更新而必须使用Widget的状态。无状态和有状态widget的核心特性是相同的,每一帧他们都会重新构建,有一个State对象,它可以跨帧存储状态数据并恢复它。渲染方式:Widget渲染界面性能:FlutterAPP是除了NativeAPP以外性能最好的;热更新:不支持;Uni-AppDCloud公司开发的一款基于vue.js的跨端的框架;渲染方式:混合渲染、weex原生渲染、webview渲染。小程序和app-vue页面属于混合渲染,app-nvue页面全部是weex原生渲染。H5全部为webview渲染;uni-app里的App端原生插件,这类插件使用IOS或者Android原生语言编写,封装成插件,供其他开发者使用js来调用;原生插件分为原生组件component和原生模块module;原生组件component只能在App-nvue页面中使用;uni-app插件市场的大部分原生插件大部分属于原生模块module;uni-app开发app性能足够好,用官方原话说是:点击跳转原文当然,uni-app的app引擎并没有吊炸天。App平台,所有跨平台工具都还比不过原生,这是客观事实。只是,如果uni-app不能满足你的需求,你没有必要去用其他跨平台工具,直接上原生吧。笔者认为使用uni-app开发最大的好处就是省成本和不错的生态:成本,包括学习成本、开发成本,时间成本,招人成本等;生态,包括开发者数量,社区活跃度,文档是否齐全等;总结目前主流的3大渲染引擎有:webview、ReactNative/weex、Flutter,复杂程度依次降低、渲染性能依次上升

混合渲染:主体为webview渲染,部分元素为原生渲染,比如导航栏、tabbar、video、map使用了原生控件

例如:微信小程序,uniapp发布的app-vue页面都属于混合渲染;

混合渲染虽然提升了性能,但也带来了其他问题,点击查看

Flutter的逻辑层和视图层统一,运行在同一套dart虚拟机下。

rn和weex使用原生渲染,性能高于webview,但是同为原生渲染,rn和weex怎么会慢于flutter呢?其实并不是原生渲染慢,而是js和原生通信慢

rn和weex分为js引擎和原生渲染层两个运行环境,当js引擎联网获取数据后,通知原生视图层更新界面时,有一个跨环境的通信折损。同样,但用户在屏幕上操作原生视图层时,要给js引擎发送通知,也会产生通信折损。

这个通信折损,普遍存在于所有逻辑和视图分离的框架中,各家小程序因为也使用这个架构,所以也存在这个问题。

因为flutter只有一个dart引擎,所有没有来回通信参数的性能问题,所以性能比rn和weex跟高;

这个通信的折损特别表现在跟手势的js响应操作绘制帧动画,或者说js连续操作界面元素方面。场景如:界面可拖动的浮动球、可拖动的滑块等。

为了解决通信的折损,RN搞了lottie的动画库,weex搞了BindingX,微信小程序搞了wxs,百度小程序搞了Filter,阿里小程序搞了SJS,uniapp若使用weex渲染时使用BindingX,使用app-vue时使用renderjs或wxs,renderjs和wxs是一种运行在视图层的js,不和逻辑层通信。



请教做一个app项目要那些流程?
软件开发是一项包括需求捕捉、需求分析、设计、实现和测试的系统工程。软件一般是用某种程序设计语言来实现的。通常采用软件开发工具可以进行开发。软件分为系统软件和应用软件,并不只是包括可以在计算机上运行的程序,与这些程序相关的文件一般也被认为是软件的一部分。设计思路和方法的一般过程,包括设计软件...

开发一个APP的详细流程有什么?
其中包含:编码规范、页面制作和技术嵌套、系统兼容、单元测试、修复BUG。之后可以用头脑风暴的形式,确立初步的创意方向与定位。接下来将会为用户提供创意表现、页面分格、创意说明等等内容。5.技术开发阶段 进入开发阶段时,对项目本身进行评估,对研发周期、提测时间、预发布时间点进行初步的判断。然后才是...

app商城怎么制作开发 需要考虑哪些问题
APP商城制作开发流程:步骤一、确定商城app开发定位 商城app种类有很多,在开发前要考虑清楚自己要开发什么类型的商城app,需要有明确的用户定位,确定好用户人群,后续才能有针对性地确定app整体开发风格和界面设计,从受众人群角度去进行思考,什么样的商城app才会吸引用户眼球,给用户带来良好体验。可以结合...

如何开发app,app开发的流程是如何的?
首先你要明确你的构想和理念。即你的app应用是开发给谁用的?你的app应用是做什么的?你的app能解决什么问题?其次是设计用户界面。用户界面是app使用者与你的app交互的地方,湖北蓝洋科技认为应该遵循简洁美观,便捷的原则,从app使用者的角度出发,带给用户良好的使用体验。然后是定义交互方式。在app开...

生鲜电商APP开发有哪些主要功能
生鲜电商APP开发有哪些主要功能 1、商品的展示功能 目前主流的展示形式包括图文和视频的方式,设置筛选功能,可以按照价格或者销量来选择商品和店铺 2、商品管理功能 管理功能主要是针对平台方而言,平台在后台管理端口将商品进行分类,一般有水果、蔬菜、水产、肉类等,在前端会有每个分类的快捷入口,方便用户...

房源信息app开发需要多少钱?
最近恒房通,贝壳等房源信息app的市场非常火热,相信有很多房地产企业都有自己开发一套房产app的念头。那如何开发一个适合自己的房源信息app,开发需要多少钱?广州触角科技以做过的房产app开发项目为例,给各位说一下房源信息app开发需要多少钱。1、选择购买app模板还是定制开发 有些技术开发公司可以直接购买...

开发app用什么软件好
它基于Vue.js框架,并使用了一些其他技术来实现跨平台功能。关于UniApp所使用的版本,具体取决于您当前正在使用的UniApp版本以及您想要构建的目标平台。5、如果是uni-app那就选uview(完美,好用),兼顾满足小程序、APP、H5等。如果是Angular那就选Ionic(一对好CP)。6、uniapp开发工具没有手机版。uni-...

开发一个小程序价格要多少钱?
所以在确定开发成本的时候,会根据功能需求以及人员配置进行确定。3、开发方式:小程序可以选择定制开发,也可以选择模板开发,不同的开发方式,也使得价格存在一定的差异,一般来说,选择模板开发的,价格大概在几百至几千元左右,如果是选择定制开发的,因为功能的问题,所以价格一般都是万元起步。开发小...

开发一个app要多少钱?
做一个app应用程序大概需要多少钱 简单点来说,要视手机APP的需求及质量而言,价位一般在几千到十几万左右,更高端的价格更高。今天,我们就来详细分析一下这个问题,请继续往下看吧。一、APP开发款式分为固定款和定制款,两者的价格均不相同 固定款:是指直接套用已有的、现成的APP固定模板,报价是...

手机直播视频APP的开发流程
8.申请第三方:产品经理根据技术提供所需第三方进行第三方的申请 9.购买服务器:手机视频直播APP开发到一定阶段可以进行服务器的购买,购买后直接将视频直播APP部署到服务器,服务器开发人员开始搭建 10.出测试包:视频APP开发基本完成后会出一个测试包,功能基本都实现,测试组人员通过不同机型不同方式对...

相关链接2

返回顶部
凡事房车自主流
凡事网