5 年 Autodesk(上海)工作经历,有着桌面端工具软件开发和图形学的技术背景。后来对互联网和前端技术产生很大的兴趣, 转行做过 2 年前端开发的自由职业者,现于阿里闲鱼技术团队做前端。
5 年 Autodesk(上海)工作经历,有着桌面端工具软件开发和图形学的技术背景。后来对互联网和前端技术产生很大的兴趣, 转行做过 2 年前端开发的自由职业者,现于阿里闲鱼技术团队做前端。
时代脉搏从不停歇,端侧技术也在不断演进。当下,每个超级 APP 都在不断发展、累积着自身的端侧技术栈,逐渐融合了包括 H5、 混合开发、小程序、Flutter 以及原生应用开发在内的多种技术配方。这些发展轨迹有自身业务的历史客观因素,也有每个技术栈“尺有所短,寸有所长”的独特应用场景。
在业务团队中,这些复杂技术栈的共存,在给超级 App 带来了强大的灵活多变的超能力的同时,也给端侧同学的维护带来了巨大的挑战。往往,电商业务随着自身成长,会从最开始的单一技术栈,逐渐“浸染”到多个共存却异构的技术栈。这样,“雷同相似”的业务逻辑就不得不随着迁移和移植,产生了“跨端”的问题。
对此,不同的团队给出了不同的解读视角。这当中有在业界中执牛耳的 React Native、Flutter 等解决方案,也有阿里体系下自研自用的 Weex、Rax、支付宝小程序等技术产品。然而,站在身处于业务团队的前端视角来看的话,我们很难将自身与某一个具体的技术栈固定捆绑在一起。业务的发展诉求,经常要求我们横跨多个“战场”同时作战,达到业务结果“四处播种、全面开花”的效果。
适时,恰逢集团内 FaaS 化技术进行曲的号角吹响的时刻,我们也因此将目光转向了 FaaS。我们开始尝试将复杂的业务逻辑统一“后移”到 FaaS 层进行统一管理,并在端侧开发出一套适配多端的组件体系和端侧页面管理框架。
经过半年多的努力和实践,目前我们也在支付宝的小程序、闲鱼的 Weex、手淘的 H5 等环境,上线了部分基于这种解决方案的业务,也积攒了一点小小的心得,在这次的演讲中,我会尽力将我们的收获、教训与经历分享给各位听众。