为了了解当前前端的发展趋势,让我们从国内各大互联网大厂开始,了解他们的最新动态和未来规划。这是解密大厂前端技术体系的第四篇,前三篇已经讲述了阿里、腾讯、百度在前端技术这几年的技术发展。
这一篇从携程讲起。
携程技术全景图移动技术产品
移动技术产品分为四大模块:
技术平台:MCD(持续交付平台),APM(性能监控平台),MTS(日志排障平台)和MTP(无线技术平台)
通信层:通信工具,消息推送平台,服务端推送
框架层:涵盖App中通用能力,例如设备信息、位置信息、热更新、网络通信、配置、用户行为埋点等等
业务层:通用的业务组件,例如分享功能、多媒体、日历、地图等等
大前端技术框架
携程在大前端技术框架层面主要面向不同应用场景沉淀了三个技术框架:
CRN框架:Ctrip React Native,基于RN定制化的框架,并且完善了周边的打包、部署、监控等等能力
Node平台:Node服务的框架,涵盖从编码、编译、发布、监控全流程
Hybrid平台:用于App内Hybrid WebView框架
新技术探索
新技术:HTTP/2,VOIP
新产品:小程序、快应用、VR/AR
MCD - 持续交付平台MCD经历了多次大型迭代,逐步成为携程内部持续交付平台,涵盖了集成阶段、测试阶段、发布阶段和运营阶段的全流程研发环节。
MCD 1.0
MCD1.0的出现解决了系统在线打包的问题,并且通过CI/CD实现定时打包、代码静态扫描、自动化验包-白屏监测的能力。
持续集成阶段接入了代码扫描和冒烟测试的功能,通过infer和sonar进行代码的静态检查,并且统一集成单元测试能力,提供单测的结果和覆盖率。
冒烟测试可以监测白屏情况,并且进行多机型兼容测试,通过内容和图像对比提前发现问题。
通过集成编译,持续减低App编译的时长,提高研发测试效率。
MCD 2.0
MCD 2.0重新定义了MCD,涵盖了更为广泛的范围,包含集成、测试、发布、运营环节。并且由各个模块各自打包生成Bundle,再通过Bundle集成达到2~3分钟极速出包的能力。
同时MCD也增强了许多能力:
发布升级:对于Hotfix、Bundle、Hybrid/RN等内容实现动态下发,实现白名单、灰度发布能力,通过差分方式提高下载效率,并且提供大盘实时查看下发情况。
配置中心:支持按照平台、版本、渠道、ABTest等不同维度下发配置信息,实现App配置信息管理能力。
崩溃收集:App Crash/JS Error的收集,并且支持实时告警,多维度搜索,代码反查等能力。
App Size管理:基于业务模块进行App包大小管理
APM - 性能监控平台