陌陌高级架构师,主导开发了 MLN 等多个公司重点项目,曾就职于支付宝、腾讯。
陌陌高级架构师,主导开发了 MLN 等多个公司重点项目,曾就职于支付宝、腾讯。
随着互联网企业对开发效率要求越来越高,跨平台开发逐渐成为一种刚需。一些头部互联网公司基于自身业务场景和技术背景推出了不同类型的跨平台解决方案。然而在项目实践中如果忽略这些技术背后的应用场景,很可能难以达到预期的效果。
陌陌客户端使用了不少音视频相关的第三方框架,对深度学习、图像处理也有很多自己的积累,另外在长期迭代中沉底了很多基础技术组件。如果用 React Native、Flutter 做跨平台,光是对这些已有技术做桥接都会消耗大量人力。而且在桥接过程中很可能会发现这些技术在不同平台实现思路不一样,要跨平台使用,需要解决各种不一致问题,做大量重构工作。很多跨平台技术在陌陌遇到了水土不服。
为了让跨平台框架跟老旧代码平滑对接,陌陌推出了自己的跨端解决方案 MLN。MLN在开发体验和性能上也下了很大功夫,它定义了自己的DSL语言和新布局方式,在保持简洁、优雅的前提下,配合辅助工具通常能节省40%左右代码量。MLN 采用了对象绑定技术,原生端只需简单 import 绑定对象,就可以像使用普通对象一样操作绑定对象,从而避免了大量的桥接工作。陌陌快聊房间等众多老业务能顺利使用 MLN ,就得益于这项技术。
本次演讲主要分享陌陌过亿 MAU 背后的 MLN,为高速发展业务带来新的研发思考。
1. MLN 的开发背景
2. MLN 需要解决哪些特定问题
3. MLN的演进和对跨平台的思考
1)编译期优化
2)I/O优化
3)高性能 UI框架
4. 开源后 MLN 的 20 年计划