首页 > 其他分享 >APP采用原生开发还是混合开发,哪种方式好?

APP采用原生开发还是混合开发,哪种方式好?

时间:2023-10-24 18:13:14浏览次数:35  
标签:原生 APP 程序 应用程序 混合 开发 App

最近也有不少用户留言,问一些基础的内容,例如:App采用怎样的开发方式更好?便有感而发,希望通过这篇文章再做一下小结。   先亮结果,是采用原生还是混合的开发方式,需要先了解业务规划,然后根据业务的实际需求再制定研发技术选型及研发计划。   为什么只能一事一议?这个还得从技术架构的优劣势开始说起。  

基础科普

首先还是先科普下原生开发和混合开发的定义。   原生开发是指使用特定平台(如iOS、Android等)的本地语言和工具来编写应用程序,并直接运行在该平台上。原生应用程序的界面和用户体验通常会非常流畅和响应迅速,但原生开发需要掌握平台特定的语言和工具,并需要为不同平台分别开发独立的应用。   混合开发是指开发人员使用通用的Web技术(如HTML、CSS和JavaScript)来编写应用程序,并通过WebView组件将应用程序嵌入到原生容器中。混合应用程序可以实现跨平台开发,并且可以使用许多通用的开发工具、框架和库来加速开发时间。但是,由于需要通过WebView间接访问硬件资源和功能,所以混合应用程序的性能可能比原生应用程序差,在效果和用户体验方面也不如原生应用程序好。    

为什么现在满大街的混合开发?

这还得说到互联网的业务发展。   人是社会的动物,这句话的核心关键词是”动物“,是动物就意味着有”喜新厌旧“的需要,换句话说,在互联网繁盛的时代,业务场景就得跟随着用户的需要而更新迭代,也就是说,在效率和质量方面,原本平衡的天平已经有所倾斜。   混合开发的主流模式是结合原生和HTML5的技术(主流,但不是唯一,现在更流行的是小程序技术),取长补短的一种开发模式,原生代码部分利用WebView插件或者其它的框架为HTML5提供了一个容器,程序主要的业务实现、界面展示是利用H5相关的Web技术进行实现的。比如现在的京东、淘宝、今日头条等都是利用的混合开发模式。 渐渐地,2017年微信推出了小程序开放平台,并倾注了大力气在小程序生态的建设上,逐渐的,「App+小程序」的混合模式的开发也逐步被推崇。「App+小程序」的App混合开发模式的优势可以总结为:
  • 远超过 H5 的体验(支持本地缓存,Webview,有丰富的组件与支持库);
  • 能获取更多系统权限,完成更加丰富的产品设计;
  • 可以避免 DOM 泄露(不使用常用的 window 对象与 document 对象);
  • 包尺寸有效减少,节省流量和存储
   依托小程序技术标准的发展,小程序容器技术逐渐变成了混合开发的“标配”。市面上一些比较知名的小程序容器技术产品包括:微信、支付宝、百度、抖音小程序等,他们都是以完善大社交平台自有小程序生态的技术底座,能提供第三方进行私有化部署的有:FinClip、mPaaS等产品。据了解,FinClip自行研发的小程序容器技术,能够让企业的App能具备快速运行小程序的能力,他们家的SDK还能嵌入除App以外的职能设备终端中(如 Linux、Windows、MacOS、麒麟等操作系统上运行)。  

混合开发的技术价值和业务价值

技术价值除了上述所罗列的好处之外,「热更新」和「跨平台」的能力也是深受开发者的喜爱。   业务价值上,第三方生态的快速引入,是小程序技术作为混合开发的组合的一个核心价值。   自2017年微信小程序正式上线以来,它迅速成为了中国移动互联网行业的一个重要的生态系统。截至2021年底,微信小程序月活跃用户已经超过1.2亿,覆盖了电商、金融、医疗、教育、旅游、出行等各个行业应用场景。微信小程序生态系统也不断完善,为开发者提供了丰富的开发工具、模板和开源组件等资源。   如果说,互联网1.0,各自平台重复造车轮;互联网2.0,模板化的前端页面打造大大减少研发的冗余开发工作;互联网3.0,生态为王,谁能在最短时间内引入足够多的生态,就能迅速的加深自己的护城河,聚焦自己擅长的核心技术的研发和业务深化。   当然,最后的最后,在我们选择各种开发模式的时候,还是要结合自己的实际应用来选择。比如开发工具类的app时,一般选用原生开发,因为需要操作体验好、反应速度快;比如开发商城、O2O类的app,则采用混合模式开发app比较合适;小程序技术则适合生态引入;HTML5的开发一般都用于移动端的网页开发。

标签:原生,APP,程序,应用程序,混合,开发,App
From: https://www.cnblogs.com/speedoooo/p/17785429.html

相关文章

  • 一图秒懂!从传统大数据平台到云原生大数据平台,再到云原生K8s大数据平台
    如果你还在使用传统大数据平台并且觉得它确实有点坑;如果你听说过云原生大数据平台但却不知道它为啥这么火?如果你想使用云原生大数据平台却无从下手现在,一张图“大数据平台的三级跳”带你轻松了解以上信息废话不多说,上图!传统大数据平台,即Hadoop、Spark、Kafka等集群组件,各自为战。这......
  • 【全志R128开发经验分享】启用USB ADB以及无线ADB配置方法
    首先在FreeRTOS的环境下,选择r128_c906_pro:sourceenvsetup.shlunch_rtosr128s2_pro_c906USBADB的配置比较常规,注意以下几个驱动的勾选usbdevice驱动adbgadget驱动adbd应用运行menuconfig,选择对应的驱动以及软件包:mrtos_menuconfig配置好的图片如下图所示当选......
  • 软件开发流程与注意事项!
    随着科技的飞速发展,软件开发已经成为当今社会不可或缺的一部分,了解软件开发流程及注意事项对于提高开发效率、降低成本、优化产品等方面具有重要意义。一、软件开发流程1、需求分析需求分析是软件开发的第一步,主要任务是明确软件的目标、功能、用户需求等,在这个阶段,开发团队需要与......
  • HarmonyOS音频开发指导:使用OpenSL ES开发音频播放功能
     OpenSL ES全称为Open Sound Library for Embedded Systems,是一个嵌入式、跨平台、免费的音频处理库。为嵌入式移动多媒体设备上的应用开发者提供标准化、高性能、低延迟的API。HarmonyOS的Native API基于Khronos Group开发的OpenSL ES 1.0.1 API 规范实现,开发者......
  • 软件开发价格与开发流程介绍!
    随着科技的不断发展,软件开发已经成为一个备受关注的行业,在选择软件开发公司或者自主开发软件时,价格与流程是两个核心问题。一、软件开发流程软件开发是一个系统性的过程,通常包括以下几个阶段:1、需求分析这是软件开发的第一步,开发团队需要与客户沟通,了解客户的需求和期望,形成详细的......
  • 我院五名学子获第四届“火焰杯”软件测试开发选拔赛全国奖项
    第四届“火焰杯”软件测试开发选拔赛于9月20日在精工园1号楼隆重举行,测吧(北京)科技有限公司的项目总监王雪冬莅临我院,为获奖学生颁发奖项。本届比赛吸引了全国28个省份的158所高校的3221名学生踊跃参赛。我院软件工程系的2020级学生,包括谢奇江、林颂扬、陈艺梅、何万......
  • 开发的最强大的autocad shx字库编辑器
    (1)支持shx,shp的autocad字库的导入;(2)支持shp字库的导出;(3)支持shx 14种命令(4)支持一笔画绘图以及导入dxf,plt图形创建字;(5)可以把当前字导出dxf文件;(6)支持undoredo指令;(7)支持交互式修改;(8)支持所有shx的格式,包括shpe,unicode,bigfont; ......
  • 1024 | 9位开发者分享生涯“最”时刻,文武状元大PK等你来
    本文分享自华为云社区《1024程序员节,和华为云一起做不被定义的开发者》,作者:华为云社区精选。1024,祝所有开发者们节日快乐“代码有注释,程序无bug,需求不改动,永远充满好奇心”在这特别的一天华为云1024程序员节,文状元大考序幕拉起更有9位开发者现身说法分享了他们程序员生涯......
  • Git 在开发中实用性比较高的指令
    Git把最新推送记录回滚到本地您可以使用以下命令将最新的提交回滚到本地:gitresetHEAD~1这将撤销最后一次提交并将更改保留在本地。如果您想将更改完全删除,请使用以下命令:gitreset--hardHEAD~1请注意,这将删除最后一次提交及其所有更改,因此请确保您已经备份了您需......
  • | 低门槛的小程序开发:需要了解的运行原理与安全机制 | | --- |
    现在大多数前端开发人员都需要写小程序,而且还需要对小程序进行优化,所以我们必须要懂得一些小程序的运行机制。这篇文章我们就来介绍一下吧。什么是小程序小程序页面本质上还是网页,使用的技术栈与网页开发基本一致,都用到HTML、CSS和JS。了解小程序的由来在小程序没有出来之前......