作为追求代码洁癖的软件工程师,我们对“紧耦合”的技术实现可以说是深恶痛绝。要解决当前企业移动端App日益沉重、难以真正迭代、投入产出比低的问题,首先在技术架构上要实现真正的“松散耦合”。
 
那需要松散到什么程度呢?那就是是在一个相对稳定的App“内核”基础上,让绝大部分的应用功能(不管是因为创新需要、业务部门诉求等等而产生)必须可以(1)独立开发,(2)独立部署,(3)独立运维,(4)独立管理生命周期——随时上下架而不影响App主体。

化整为零,把功能高度“碎片化”

“碎片化“现在已经是一个潮流。首先,在移动互联网时代,用户的阅读时间、应用使用时间都是高度碎片化的。与之相对应的,就是前端用户体验的碎片化。全中国的手机用户都已经被微信小程序充分教育,各种场景下“随需随用”、“用完即扔”,是非常典型的“效用计算”。
 
而在云端,过去几年来“微服务”大行其道,本质上也是把传统“单体应用”碎片化。碎片化当然带来管理它们(小程序、微服务)的耗损,但是现在这些问题早就被越来越成熟的开发运维平台、工具链解决了。例如:Docker容器化生态、Kubernetes容器编排管理技术、FaaS函数即服务工具链等等让云侧的小粒度服务开发运维更便利、稳定、弹性可扩。而微信本身则实际上在端侧充当了小程序的“运行时”及管理工具。

解决方案:利用小程序实现敏捷迭代

微信本身与运行在它上面的数以百万计的小程序,就是一个“松散耦合”的最佳例子 :微信自身的版本迭代,从来与任何第三方小程序无关;每天互联网上各种小程序的迭代升级、上架下架,也不会影响到微信运行的稳定性。
 
如果目前市面上的APP都能把自己的App做成像微信一样稳定,把App中的业务功能拆分出去以类似小程序的技术载体进行碎片化、单一职责、独立生命周期的开发部署,是不是这些APP既需要维稳又需要敏捷迭代的矛盾就有希望得到解决?
 
这种程度的松散耦合,让业务功能可以独立于App进行开发、测试与上下架,有这样一些显而易见的好处:
(1)新业务功能单独测试单独发布,不影响基础App的稳定性,也无需对App进行全回归测试。
(2)业务功能开发可以高度并行 – 只要有人手,人多好办事(想想微信让全互联网的开发者都可以同时互不影响为它提供海量应用场景),而在传统原生App的技术体系下,这是不可能的。
(3)容易蓝绿测试、灰度发布 – 粒度细到碎片级(例如一个微信小程序是可以仅在测试白名单的范围内试点)。
(4)形成技术生态 。一家企业如果掌握了微信这样的技术,它也可以成为一个技术生态中心,让外部开发者、合作伙伴们将自己开发好的小程序直接上架至自身APP,然后企业运营人员对这些小程序进行审核,这样在一个企业APP内可覆盖多数服务场景。
 
在这个讲究快速敏捷迭代的时代,企业机构们应该需要考虑对自己的App进行瘦身,把新旧功能剥离,以独立生命周期、独立开发测试团队的方式进行开发 – 有用的场景继续深入、无效的尝试即时废弃。总体技术架构必须让基础App保持稳定、让频繁增删变更业务功能成为可能,同时最大程度降低开发门槛、减少试错成本、实现敏捷迭代。

我们如何获取互联网巨头才拥有的小程序技术

凡泰极客借鉴互联网成熟小程序技术方案,推出FinClip小程序容器技术,任何 App 均可以通过引入 FinClip小程序运行时 SDK 来获得运行小程序的能力,同时,它还提供一个后台管理系统,统一管理小程序的上架和下架,以及收集和分析小程序数据,对于开发人员,可谓是极其便捷了。

而且FinClip是完全遵循兼容微信小程序的开发标准与规范。也就是说,如果你本身已经开发好了一个微信小程序,可以在不改一行代码的情况下,直接放进你的 App 里面,运行效果和在微信上面保持一致,不必额外二次开发和改造,大大节省了人力成本。
 

 
而且由于FinClip提供的 SDK 是相同的,你所开发的小程序,可以在同样集成了 FinClip SDK 的 APP 里运行,做到一次开发,到处运行的效果。这样业务功能小程序也不局限于自有APP或者微信上使用,还能覆盖更多渠道。
 
此外,FinClip 支持包括 Linux、Windows、MacOS、麒麟等操作系统。这意味着,PC 端、车载设备、智能电视都能使用小程序了,反正现在IOT也是大势所趋。

FinClip还提供小程序 IDE 开发工具,界面与微信小程序的开发工具类似,自带调试和真机预览,简单易上手。你可以在这个 IDE 里面,对现有项目进行二次开发,扩展功能和接口,或者从零开始写出一个小程序,貌似他们最近打算针对这个IDE做一些功能优化,实现小程序直接生成APP功能,感兴趣的朋友可以后续关注一下。

App必须减重、瘦身、变成入口、合规可控对接互联网公共社交平台,通过这样的技术架构打造下一代超级APP,代表未来的方向。
 
FinClip凭借插件化、嵌入式、轻量而灵活的产品特点及行业领先优势已经赋能银行、证券、政企、电商、航空、园区、零售等多个行业,在无界开放银行、数字券商、监管与合规科技、电子政务、信创等方面形成较有特色的创新应用案例。现在登陆官网点击咨询即可获得行业解决方案! :https://www.finclip.com
 
Tips:
最近正好访问他们的官网。留意到他们正在举办黑客马拉松的比赛,主办方准备了价值十万元的大赛奖金池!感兴趣的朋友可以了解一下!点击链接即可报名参赛:「码」力集结,与众不「凡」 - 小程序容器技术领导者 | FinClip

小程序容器技术,App热更新与敏捷开发新方案的更多相关文章

  1. 小程序容器助力打造企业超级App

    阿拉丁研究院发布<2021 年度小程序互联网发展白皮书>显示,2021 年全网小程序数量已超 700 万,其中微信小程序开发者突破 300 万,DAU 超过 4.5 亿:日均使用次数同比增 ...

  2. APP跳转小程序,小程序跳转APP

    关注公共号,搜索 "APP跳转小程序,小程序跳转APP",查看原文 前置条件: 开发环境:windows 开发框架:uni-app , H5+,nativeJS,mpvue 编辑器 ...

  3. 快成物流科技 x mPaaS | 小程序容器加持下的技术架构“提质增效”

      导言 从 2017 年开始,GMTC"移动技术大会"就更名为"大前端技术大会".发展至今,混合开发.原生开发.前端开发等概念正在深度融合,组成"大 ...

  4. 黄文俊:Serverless小程序后端技术分享

    欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 黄文俊,现任腾讯云SCF无服务器云函数高级产品经理,多年企业级系统开发和架构工作经验,对企业级存储.容器平台.微服务架构.无服务器计算等领域 ...

  5. 微信小程序、安卓APP、苹果APP对比分析

    今天的话题主要是关于微信小程序.安卓APP.苹果APP对比分析.既然是对比分析肯定是将它们一个一个说明. 本篇不涉及技术话题,只讲解微信小程序.安卓APP.苹果APP它们各自的优缺点及其应用场景. 一 ...

  6. Docker应用程序容器技术_转

    转自:百度百科 Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化.容器是完全使用沙箱机制,相 ...

  7. 微信小程序中的app.js-清除缓存

    微信小程序中的app.js 关于小程序app.js生命周期的介绍 App(Object) App() 函数用来注册一个小程序.接受一个 Object 参数,其指定小程序的生命周期回调等. App() ...

  8. Ionic APP 热更新

    开门见山,本文主题:cordova-hot-code-push 作用:cordova热更新插件,提供了在应用程序中对基于Web的内容进行自动更新的功能. GitHub地址:https://github ...

  9. C# WinForm小程序(技术改变世界-cnblog)

    WinForm小程序(技术改变世界-cnblog)   需求: 1.点击按钮  更新 当前时间 2.输入 身份证,必须身份证 排序(类似银行卡那样的空格),自动生成空格排序 3.实现 必须按 第一个按 ...

随机推荐

  1. docker是干什么的,docker常用命令

    镜像下载.域名解析.时间同步请点击 阿里云开源镜像站 一.百度百科 Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖到一个可移植的镜像中,然后发布到任何流行的Linux或Win ...

  2. PowerSploit的使用

    Invoke-Mimikatz(依赖管理员) Import-Module .\invoke-mimikatz.ps1 Invoke-Mimikatz –DumpCreds 使用Invoke-Mimik ...

  3. python写一个数字字典生成器

    #数字字典生成器 by qianxiao996 #博客地址:https://blog.csdn.net/qq_36374896 #此程序输入开始结束和位数即可在程序所在目录下生成字典 #只支持数字生成 ...

  4. 100行代码实现HarmonyOS“画图”应用,eTS开发走起!

    本期我们给大家带来的是"画图"应用开发者Rick的分享,希望能给你的HarmonyOS开发之旅带来启发~ 介绍 2021年的华为开发者大会(HDC2021)上,HarmonyOS ...

  5. Mysql之锁(二)

    1.查看锁 SELECT * FROM INFORMATION_SCHEMA.INNODB_TRX; -- 记录当前运行的事务 SELECT * FROM INFORMATION_SCHEMA.INN ...

  6. bash shell 中的 hash 命令有什么作用?

    linux 命令'hash'管理着一个内置的哈希表,记录了已执行过的命令的完整路径,用该命令可以打印出你所使用过的命令以及执行的次数. [root@localhost ~]# hashhits com ...

  7. java中会存在内存泄漏吗,请简单描述?

    所谓内存泄露就是指一个不再被程序使用的对象或变量一直被占据在内存中.java中有垃圾回收机制,它可以保证一对象不再被引用的时候,即对象编程了孤儿的时候,对象将自动被垃圾回收器从内存中清除掉.由于Jav ...

  8. 什么是通用 SQL 函数?

    1.CONCAT(A, B) – 连接两个字符串值以创建单个字符串输出.通常用于将两个 或多个字段合并为一个字段. 2.FORMAT(X, D)- 格式化数字 X 到 D 有效数字. 3.CURRDA ...

  9. Redis 常见性能问题和解决方案?

    1.Master 最好不要写内存快照,如果 Master 写内存快照,save 命令调度 rdbSave 函数,会阻塞主线程的工作,当快照比较大时对性能影响是非常大的,会间断性 暂停服务 2.如果数据 ...

  10. 学习MFS(五)

     ########################################################## mfs master 安装 建议 cp eth0 eth0:0 ifup eth ...