小程序是一种新的移动应用程序格式,是一种依赖Web技术,但也集成了原生应用程序功能的混合解决方案。小程序一些特性有助于填补Web和原生平台之间的鸿沟,因此小程序受到了一些超级应用程序的欢迎。

它不需要安装,支持热更新。

具备多个Web视图以提高性能。

它提供了一些通过原生路径访问操作系统功能(原生接口)或数据的机制。

它的内容通常更值得信赖,因为应用程序需要由平台验证。

从2017年微信首次推出小程序开始,经过四年发展,各大互联网巨头纷纷推出自己的小程序应用平台,小程序成为真正意义上的“互联网新技术标准”。截至2021年上半年,全网小程序数量突破700万个,其中,微信小程序是行业主流,数量超过430万个,占比高达约61.43%。

什么是kbone?

微信官方开始推广一个新的多端统一开发工具——Kbone。

据官方介绍,Kbone 是一个致力于微信小程序和 Web 端同构的解决方案。具体来说,因为微信小程序的底层模型和 Web 端不同,所以如果我们想直接把 Web 端的代码挪到小程序环境内执行是不可能的。Kbone 的诞生就是为了解决这个问题,它实现了一个适配器,在适配层里模拟出了浏览器环境,让 Web 端的代码可以不做什么改动便可运行在小程序里。

因为 kbone 是通过提供适配器的方式来实现同构,所以它的优势很明显:

大部分流行的前端框架都能够在 kbone 上运行,比如 Vue、React、Preact 等。

支持更为完整的前端框架特性,因为 kbone 不会对框架底层进行删改(比如 Vue 中的 v-html 指令、Vue-router 插件)。

提供了常用的 dom/bom 接口,让用户代码无需做太大改动便可从 Web 端迁移到小程序端。

在小程序端运行时,仍然可以使用小程序本身的特性(比如像 live-player 内置组件、分包功能)。

提供了一些 Dom 扩展接口,让一些无法完美兼容到小程序端的接口也有替代使用方案(比如 getComputedStyle 接口)。

官方宣传的优点,简而言之就是:提供了常用的 DOM/BOM 接口,让用户代码无需做太大改动便可从 Web 端迁移到小程序端。这一解决方案的面世,也算是微信响应市场上广大开发者日渐高呼的需求。

什么情况使用kbone较好

官方也表明,业内其实已经出现了很多关于同构的解决方案了,每个方案都有自己的优劣,不存在能够完美解决所有问题的方案,kbone 也一样。如果对小程序的性能特别苛刻,官方建议直接使用原生小程序开发;其他情况可以考虑采用 kbone。

Hybird App开发者的福音

现在小程序开发流行,Hybird的开发都在对比「Native+H5」和「Native+小程序」两种混合式APP开发模式,哪种更优。相比起来,「Native+小程序」的开发模式还是有很多好处。
「Native+小程序」的优势:

  • 具备跨平台的能力,一套代码可以在 iOS 与 Android 两个平台中运行;
  • 远超过 H5 的体验(支持本地缓存,Webview,有丰富的组件与支持库);
  • 能获取更多系统权限,完成更加丰富的产品设计;
  • 可以避免 DOM 泄露(不使用常用的 window 对象与 document 对象);
  • 包尺寸有效减少,节省流量和存储
  • 服务不再受发版所限制,支持热更新

如果加上kbone这个web同构解决方案,那么现在许多web应用,都能够尝试迁移成小程序应用,让企业更关注于业务逻辑的实现。

跨端开发组合拳:小程序+kbone+finclip

kbone或者小程序,都只是满足了已有业务流程能够在社交生态App中以更轻、更符合用户在社交平台上进行碎片化时间访问的需求。

那么App就没有存在的意义了吗?并不是。

Web3,以“去中心化”、“隐私保护”为核心的一场“技术运动”,如果能成功的话,可以说是“合久必分”的明证。不过这对于一般的企业来说,还远着呢。当下,马上,能做什么呢?简单的办法是:

拥有自己的App、拥有自己的服务、拥有自己的数据,掌握自己的数字生态

拥有这些东西,过去是挺难的一件事。对于一般的中小企业乃至大企业里没有什么IT预算的部门,要自己搞一个App首先是技术门槛高,其次是维持难度大,再三是运营能力低。所以,最终的效果是,投入产出比很差,自营的App品质不高、推广成本高、客流量小,得不偿失。最后,很多企业都放弃了这方面的尝试。

小程序这种技术形态的出现,可以说是很大程度上解决了企业遭遇的这些问题 - 开发门槛低、轻量、和媒体内容可以交织在一起便于分享、有社交传播的便利性、发布相对容易、数字化连接能力强… 所以迅速获得市场的欢迎。

加上kbone的同构解决方案,那么可以想象,会有越来越多的web端应用加入到小程序应用的趋势中来。

自主掌握App,依然是有很多好处的,首先它沉淀了存量用户,可以更加直接的去触达和运营,社区感更强;其次,客户隐私数据、企业经营的商业数据,都可以得到更大的保障 - 数据资产的归属权,毫无疑义的属于企业而不是第三方。在国家一力支持和推动的国内互联网互联互通、“反垄断”的态势下,各平台之间、公共社交平台与企业App之间的连接与跳转应该基于开放标准,那么小程序导流至App、App跳转回小程序,都是可行的。

市面上有小程序容器技术FinClip,就能让App里面运行小程序,或者使用Kbone转化的web应用。

FinClip小程序容器技术,任何 App 均可以通过引入 FinClip小程序运行时 SDK 来获得运行小程序的能力,同时,它还提供一个后台管理系统,统一管理小程序的上架和下架,以及收集和分析小程序数据,对于开发人员,可谓是极其便捷了。遵循兼容微信小程序的开发标准与规范,也就是说,如果你本身已经开发好了一个微信小程序,可以在不改一行代码的情况下,直接放进你的 App 里面,运行效果和在微信上面保持一致,不必额外二次开发和改造,大大节省了人力成本。

FinClip支持手机以外的多种终端,包括 Linux、Windows、MacOS、麒麟等操作系统。这意味着,多终端设备如电视、可视化屏幕、平板、车载设备、智能电视都能使用小程序了,实现了小程序的“一次开发,到处运行”,同时触达众多流量平台,而不仅仅局限于微信生态。

Kbone与小程序跨端开发的一些思考相关推荐

  1. Taro小程序跨端开发入门实战

    背景 一开始我们只做微信小程序,随着我们的业务不断扩张和各大小程序平台的崛起,针对每个平台都去写一套代码是不现实的.而且原生的小程序开发模式有很多弊端. 为了让小程序开发更简单,更高效,我们采用 Ta ...

  2. 小程序跨端框架(taro/uni-app/kbone)横评之2020版(对比很到位!!)

    小程序跨端框架(taro/uni-app/kbone)横评之2020版 微信竟然推出了跨端的kbone,说明跨端的开发已经深入人心:又是新的一年过去了,小程序开发领域又有哪些新的变化?我们来看如下最新 ...

  3. 深入浅出主流的几款小程序跨端框架原理

    目前,小程序在用户规模及商业化方面都取得了极大的成功.微信.支付宝.百度.字节跳动等平台的小程序日活都超过了3亿. 我们在开发小程序时仍然存在诸多痛点:小程序孱弱简陋的原生开发体验,注定会出现小程序增 ...

  4. 【2万字长文】深入浅出主流的几款小程序跨端框架原理

    开发者(KaiFaX) 面向全栈工程师的开发者 专注于前端.Java/Python/Go/PHP的技术社区 作者 | 雾豹 来源 | https://juejin.im/post/6881597846 ...

  5. 前端 domparser未定义怎么解决_开源|wwto:小程序跨端迁移解决方案——微信转其他小程序...

    开源项目专题系列 (二) 1.开源项目名称:wwto 2.github地址: https://github.com/wuba/wwto 3.简介:wwto是58同城推出的一种小程序跨端迁移解决方案,可 ...

  6. GMTC | 《小程序跨框架开发的探索与实践》演讲全文

    前言:随着小程序开发的热度上升,小程序开发框架也层出不穷.但目前每个框架都会绑定一个专属 DSL,如类 React 或者类 Vue,在一个框架内,开发者无法根据团队技术栈自由选择 DSL,同时也无法共 ...

  7. 微信小程序服务端开发遇到的一些坑

    微信小程序服务端开发遇到的一些坑 开发环境 问题集合 小程序不支持基于进入客服事件推送消息 小程序不支持永久素材 RestTemplate无法解析上传图片素材的返回 tips 其他小问题 开发环境 基 ...

  8. 小程序跨端框架(taro/uni-app/kbone)横评之2020版

    文章转自:https://www.cnblogs.com/hupingzui/p/12692509.html 微信竟然推出了跨端的kbone,说明跨端的开发已经深入人心:又是新的一年过去了,小程序开发 ...

  9. 零基础如何上手APICloud App、小程序多端开发

    业务需求变化快.开发人员成本高是现在企业面临的主要问题.多端开发技术则可以很好的解决这些问题,开发一次可以生成iOS.Android.小程序.Web等多端应用.APICloud凭借多年的移动开发技术积 ...

最新文章

  1. PowerShell过滤文件中的重复内容
  2. 技本功丨呀~我不会写CSS之vertical-align(上集)
  3. 10.21 nmap:网络探测工具和安全/端口扫描器
  4. 毕业生,管好你的档案和户口
  5. python解析json多行_用Python将JSON单行解析为多行CSV
  6. Js 网页版扫雷游戏代码实现
  7. docker复习:CVE-2016-10033验证
  8. vs未能加载项目文件。未能找到路径 c#笔记5
  9. matlab求含参数一元三次方程,matlab 求解一元三次方程,带其他参数
  10. VsCode切换语言
  11. matplotlib.animation 万有引力
  12. 贪心法和动态规划法的区别
  13. 惠普笔记本连接wifi无internet,手机连接正常
  14. 原码,反码,补码,加法减法在计算机内存中的运算方法
  15. 为什么 application data文件夹是无限循环的
  16. Beyond Compare4
  17. 2017年世界科技11大进展
  18. 渗透测试之Nmap命令(四) 使用诱饵
  19. python 数据挖掘 之 对数据进行简单预处理(1)
  20. 最新百度网盘不限速下载软件,TuTDown,亲测,如图

热门文章

  1. 带你揭秘华为5G为何地表最强
  2. 利益相关者在敏捷项目管理中有什么用?
  3. 英语四六级保命班笔记
  4. 好嗨哟,这5个超牛的资源网站,让你轻松无忧找资源!
  5. Apk 拆包替换文件
  6. 转帖-[教程] Win7精简教程(简易中度)2016年8月-0day
  7. 常见软包电池厚度尺寸测量方法对比
  8. 【UE4】物理引擎(蓝图)
  9. 六轴机器人直角坐标系建立_知识篇-六轴机器人坐标
  10. java的单行注释符是_Java 程序中的单行注释符是( ),多行注释符是( )_学小易找答案...