前端是一个比较年轻的领域,有很多可能性,以至于我们现在更多的在谈大前端技术。那么接下来 3 年内,前端技术会存在哪些可能性或者不确定性?
在策划 12 月ArchSummit 全球架构师峰会之初,我去拜访了美团研究员梁士兴老师,他见证了美团点评业务的高速发展,参与了美团大前端架构的演变过程。和他聊了聊他所看到的前端领域变化,以及在出品前端趋势专题的一些想法。
在他印象中,经历过较为深刻的美团前端里程碑式事件有二:一是在 2014 年底 ~ 2015 年的 App 业务解耦,建立了平台-业务的架构模式,消除了业务间的相互影响,实现了多业务的独立发展;其次是从 2018 年到现在在做的业务动态化,实现各业务的独立发布。这些项目都对他的技术积累起到了关键作用。
针对当前发展比较成熟的小程序、Serverless、Native、RN、前端中台、容器化等技术的应用状态,梁老师也作了分析:
移动开发
尽管移动开发领域早已不再是技术热点,但其作为用户侧的核心业务载体事实并没有发生改变。因此对移动侧开发的需求不但没有减少,反而会更多。在此背景下,通过各种方式改进研发效率,成为各大厂商的追求。一方面,使用跨平台、动态化的技术,可以有效的减少研发成本,快速在线试错;另一方面,通过工程化的手段,通过优化架构,实现业务隔离,减少团队间的影响。同时,广泛地沉淀可复用的基础组件和业务组件。
跨平台、动态化
由于跨平台、动态化的开发技术带来价值越来越突出,已经占据了常规开发的大部分空间。但这并不意味着 Native 开发会退出历史舞台。对于更加细分的场景(高性能、强体验),以及新交互(AR、VR、移动 AI)的落地应用,Native 开发仍然扮演着统治者的角色。
小程序
今年的一个技术趋势是将”小程序”技术引入自家 App。小程序技术本身具备优雅的动态化和跨平台特性,其完整的生命周期管理(开发、构建、发布、线上运维等)使其成为优秀的业务载体。将小程序技术引入自家 App 后,可以实现业务的跨 App 复用,从而实现 1 次开发,2(iOS + Android) * N (N 个 App ) + 1(微信)次复用的效果。
工程化
工程化的发展,一方面依赖于对前端架构的系统性规划和建设,另一方也有新技术来推进发展。前端架构演进的典型案例是移动端的业务——平台解耦(主要实践发起于 2014 年前后),现阶段的主要探索是前端中台的建设。新技术同样也能带来工程效率的大幅提升,比如 Serverless,它可以有效降低发布和运维的复杂度,通过自动化的管理方式平衡资源与成本;前面提到的小程序,除了跨平台复用的特性,其对工程架构也有显著的改善,例如业务隔离、解耦、独立生命周期,因而意义重大。
这些可能都是较大团队关注的点,那对于中小型互联网企业,在前端技术选型上,梁士兴建议他们优先考虑动态化、跨平台技术:可以有效降低研发成本,缩短研发周期,使业务诉求能够得到快速验证。
AI、模式识别
AI、模式识别等技术为提升研发、运维效率带来了新的思路,梁士兴说,从研发角度看:类似 UI to code 的产品现阶段已经取得了不错的进展,国内外都有不少案例分享。意味着未来某一天,一些基本的开发工作可能会被越来越智能化的工具所取代。研发人员将聚焦于更复杂的场景而节省大量精力。
从运维角度看:伴随着前端、移动设备的性能提升,这些设备本身已经具备了一定的数据处理能力。由于线上监控和线上问题诊断依赖于数据采集,而海量的数据采集必然导致高昂的数据处理成本。移动 AI 的技术发展为移动端的数据处理提供了更多可能性,典型的场景可能包括智能故障诊断、分析(例如,UI 展示异常、白屏等)、复杂、偶现故障的现场还原。
未来三年会怎样?
最后,在未来 3 年,前端领域的技术会出现怎样的变化?梁士兴说,首先交互方式上可能会出现革命性的进化:新型硬件设备(例如,更实用的可穿戴设备)、更智能的交互方式(例如,语音)、全新的操作界面(脑机接口等);其次是跨平台技术广泛应用:伴随新系统的发展(例,Fuchsia、鸿蒙),跨平台技术(语言、开发框架、开发工具)大幅降低多平台开发的成本。
所以在 12 月北京ArchSummit架构师峰会的前端专题,我们会邀请嘉宾分享前端中台、Serverless、开发标准化、动态化、小程序、Flutter、CI 等,如果您感兴趣,欢迎来传递技术实践。
评论