阿里前台主席谈:前台发展史,引领新技术、前台价值

作者 : 开心源码 本文共5281个字,预计阅读时间需要14分钟 发布时间: 2022-05-12 共211人阅读

阿里前台技术委员会主席圆心老师发表了《前台路上的思考》的演讲,分别从前台的发展历程、今天的机会、如何引领新技术、前台价值这四个方面谈了下他的看法。本文整理内容如下。

前台发展史

我把前台发展编为五个阶段,这个五个阶段跟网络上看到的阶段分析不同。我认为每个阶段有一个理论或者者方法论的支撑,带来了一次飞跃。这是我的前台交流学习qun:前面是七三一,中间是七七一,后面是二逐个。假如需要学习资料在里面下载。我做这行十多年,有问题随时来问我,学习方法,学习效率等等问题。

第一阶段

第一阶段放在 2003 年。大家那个时候都知道,那个时候讲求所有的 HTML、CSS、JS 是我们所谓结构样式行为的分离,这个理论造就了今天前台主体。

在这之前基本是两种职位,一个是 JAVA 工程师,一个是设计。当时的设计是包含了视觉设计以及 HTML+CSS。但是由于这种结论理念的到来,让前台开始真正变为前台,专注于今天大部分前台所工作的内容。这个理念核心的出现,带来了整个前台岗位的出现。其实伴随着 2003 年之后,国内第一次出现真正的前台的岗位是 2005 年,这期间有一个延续性。之后很多公司出现了重构工程师,也是今天很多前台的主体。

第二阶段

第二阶段是 2008 年。当时有一个理念认为 90% 的性能优化都在前台。在前端体系里面,这个理论让前台价值得到进一步表现。

前台现在可以答复对公司的表现是什么:我们可以通过性能的优化带来更好的体验、更高的转化率等。忽然发现前台整个岗位表现了很大的价值。我相信经历了那个时代的人都记得 YSlow,那个包括今天影响前台对于性能体系所有的思维,这是第二阶段。

但是第二阶段带来了什么?上面有写,带来了工程化的开启。怎样了解?今天要做很多性能优化,需要通过工具、流程把体系更好的工程化,而后得到一个最佳的结果。所以我认为它是一个工程化的开启。之后我们可以看到,最早用 Ant 前台工具,到今天有 GRUNT、Webpack、Babel 等。这样来看,第二个阶段是在 2008 年整个性能优化的过程,理念就是 90% 性能优化在前台。

第三阶段

第三个阶段是 2013 年。我今天分享跟大家原来了解的阶段不一样,大家有从框架阶段来定义,也有从中间技术 W3C 什么时候出现,或者者从 Node.js 什么时候出现来定义。出现并不是一个阶段。其实发现 Node.js 早于 2013 年,可能是 2008/2009 年就出现了,但是为什么那个时候没有出现变化?换到今天,我们更愿意用另外一个词就是前后台分层,在后台体系里面让前台更加专注前端的 UI 层、逻辑层,后台关注后端的接口,让我们之间分工更加明确。后台假如开发一个页面,跟前台说页面有问题,但是前台一看是后台把标签写错误了,这就是合作方式不正当。

前后台的分层促进了对于前台体系的发展,也开始慢慢的影响到今天从前台到全栈的过程。让很多人更有机会使用 Node.js 从工程的工具开发慢慢过渡到可以用 JS 做应用开发,这在 2013 年是很大的变化。当然这里面有很多 Node.js 的框架,在上层的数据层,我们也会看到 GraphQL 整个逻辑编排的体系,所以会把这个体系带到前台,今天大家所看到的 BFF,也是基于这一套体系的发展。这是前台第三个发展阶段,始于 2013 年。

第四阶段

第四个阶段我相信很多人都有感触,由于移动时代的来临,改变了今天整个 PC 和无线的格局,也改变了我们前台大部分人开发的方式。

一开始理论是 Mobile first,后面是 Write Once,Run anywhere。这个时代是什么?我们把 PC 工作转到无线工作,这里面很多人纠结,那个潮流来临时候发现大量前台涌向了用户端,用户端出现了蓬勃发展。但是今天大量的用户端又涌向了前台。两者之间不停转化。为什么?由于大家都在思考究竟是 H5 还是 Native,未来究竟是 H5 开发还是 Native 开发?

我认为这个焦点就有错误。为什么纠结今天用 H5 还是 Native 处理问题?我觉得今天到了无线时代,焦点应该在这里:怎样样用最标准化的开发能够让更多的人开发这个页面、怎样样能够提供像 H5 一样标准的页面。

回到这个焦点,在移动时代来临的时候,在每个 APP 如何重新定义渲染引擎,这个渲染引擎是什么样的?大家可以看到,封装是最早的,可以把 H5 封装 APP,以及RN,WEEX,以及今天的Flutter。整个主线和思维按照这个理念进行,而且时至今日这个理念仍旧在影响我们前台开发。

第五阶段

第五个阶段是低代码对于整个体系影响。

这里有一个背景就是互联网下的风口,所有的企业都看 to B 的体系,无论是阿里还是京东,to B 的体系有一个什么样的东西?其实我们在前台的体系里面把 to B 看成是中后端,那里面有什么样的特质?比方说布局是高度标准化的,它的表单是高度标准化的,它的表格是高度标准化的,它的可视化图表是高度标准化……这个体系存在大量的标准化,而不像 C 端多样化,这个体系里面,如何用低代码或者者无代码的体系来完成对这个体系的重塑,这是在 2016 年重点看待的事情,也是 2016 年给我们带来很多的变化。今天很多公司提供这样的处理方案,比方说今天微软的 PowerApps,大家在这个领域在做新的探究。

小结

我们回顾可以看到:2003 年结构样式行为分离,预示着前台岗位的出现。2008 年 90% 性能优化在前台,开启了工程化。2013 年前后段分离,带来了全栈的演进。2014 年 Mobile first 是无线时代的来临。2016 年 LOW/NO Code 出现,带来了中后端的重塑。

今天的机会

我们看今天是什么?每一个今天重点投入的方向背后思考是什么?我们今年阿里经济体前台委员会四大技术方向:第一搭建服务,第二是 Serverless,第三是智能化,第四是 IDE。

搭建服务

首先看搭建服务。今天讲到了低代码和无代码通过什么方式完成?第一,一定中间包含了大量的组件、元件、板块。

在消费端体系里面,我们也在做很多尝试,比方说原来的频道活动,在活动的体系里面也是高度笼统化的,所以在这个体系里面,我们可以看到整个搭建服务无论是在中后端还是整个无线端,以及 PC 端都有大量场景,这样大量场景需要把整个框架标准化,希望把里面的元件、组件以及板块标准化,还希望把这样的服务能够服务于今天所有无论是中后端也好,C 端页面也好,希望有这样的体系——服务化标准化的方式服务,打通整个体系,这就是为什么把搭建服务认为是面向未来最重要的方向。

Serverless

今天很多人听到了 Serverless,很多人对于 Serverless 了解有所不同。我如何了解这个 Serverless?我了解 Serverless 有两个角色:

一个是内,内是站在公司角度 Serverless 对前台的影响。

一个是外,外可能是在云上如何提供 Serverless 能力的提取。

回到公司的内,Serverless 带来什么样的影响呢?我觉得可以让前台更加贴近业务,可以让更多能力下沉。前台转到 Node 体系有一个很大的挑战,很多人说不是你会写 Node.js 你就是前台工程师,我非常同意这样说法。但是到了 Serverless 我们可以不用关注部署,不用关注运维,不需要关注所有的 DevOps,也不需要关注底层数据库的状态,他会让我们前后台整个的体系像前后台分层一样又往前迈一步。

智能化

去年在 D2 讲过智能化,智能化肯定是未来,为什么这样讲?由于在 AI 来临的时候,我们是否从一个 Design 变成一个 Code?今天每个公司的前台都有大量的设计、大量原代码,我们通过大量设计稿和原代码进行机器学习,让中间的布局可学习,让中间的元件可学习,我相信未来 D2C 肯定能够处理前台生产力瓶颈,让前台从今天大量低端开发、手工工作中解放出来,将精力转移到很多领域深度的参加、深度的突破。

所以我觉得,智能化肯定会带来前台未来格局的变化,由于 AI 让很多低效的工作通过这样的方式完成。回到另外一个问题,无论是在无线化的时代,还是中后端的时代,整个笼统程度是高度收敛的,不像原来做 C 端的 PC 是发散的。在收敛的情况下,肯定是可以基于收敛的体系进行规模化,而这个规模化是我们希望通过 AI 的方式完成整体的改造。我相信肯定会带来前台另外一个变化。

新兴领域

前面我们讲了今天阿里的前台的四大技术方向,这四大方向思考我已经陈述了,希望给大家带来少量思考。当然除了四大方向,我们仍旧有很多没有列在上面的部分。

上面说的三部分,对于未来我们仍旧有很多的空间去探究。来看新交互,前台的强项是通过交互完成所有的工作,当所有新的技术来临的时候,怎样样在新环境下完成所有工作?比方说今天 VR 时代来临的时候,怎样完成 VR 交互?整个领域跟现在的开发领域有什么差异?是到它的体系重构前台引擎吗?还是有很多东西是值得我们想象和思考的。

物联网时代来临,我们团队有专门做 IOT,他们是做很多新零售。我们要做什么改变,也是前台要看待的事情。在那个体系里面,可以用 JS 写什么样的驱动?可以推动这个行业做什么样的发展?其实都给前台打开了一道门。

最后 5G,中美搞得很紧张,都是由于跟 5G 相关。但是,5G 来临带来了什么?思考这个问题。我们今天大量的在观测性能的消耗、兼容性的问题,未来随着整个网速的提升肯定会移向云端。假如今天在手机上做非常复杂的 3D 渲染,你会发现非常的卡慢。假如今天在手机上做非常复杂的游戏、动画也是很挑战的。今天吃鸡都是在 PC 端玩而不是手机上玩,由于对于整个性能消耗、渲染整个体系有很强的要求。

5G 来临会变成什么?所有渲染在云端完成,通过流媒体交互的方式完成所有的体系,第一个处理了所有在观测渲染性能问题。第二处理了大量兼容性问题。会变得更加简单。

我们要正确看待一个技术变革的时候,会带来什么?什么样的变化?这是我们需要深入思考的部分,由于这个肯定会对未来形成少量变化,而我们的预判决定了我们今天如何看待未来,如何统治未来,我们应该做什么。我相信新交互、IOT 还有 5G 肯定会对前台未来的发展形成另外的影响。

如何引领技术

为什么会有这个话题?这也是这两年沉痛的思考。阿里前台有 2000 多人,这些人能力很强,但是在国内上高质量的前台都是上万人,今天在前台的领域,我们对于前台领域的影响又是多少?其实是不成正比的。回到现在我们应该做什么?我们应该思考什么?我们应该如何促进整个国内前台的影响力以及高质量?我觉得不止是站在阿里团队的角度思考,更应该站在国内前台的角度思考,我们能做什么?

其实有少量东西大家觉得难吗?其实我觉得如同也不难。说 Flutter 就是基于下沉的渲染,绘图引擎做上层的多终端的方案。我记得刚刚进入无线时代做兼容性的处理方案,思路是一脉相承的,为什么我们做了一个东西没有声音没有继续探究。而另外一个方案应运而生了。

第一,我们不是没有思考力。第二,回到今天时代,你们看完了可以立马写一个。但是,为什么是他写的?看完他的理念可以立即写出一个东西。在这里再往下走,理念我们也有了,能力我们也有了,就是没有出来东西,这是值得大家认真思考的问题。

从表象到本质

刚才我讲时代变化的时候,我的理论是,由于它有一个理论支撑了一个时代变化。框架也一样,框架肯定会有基于某个问题处理他的问题。React.js 处理了什么?就是最开始很痛苦,而后就用别的方式重构。无论以前讲的 MVC、MVP 还是 MVVM。大家说以前这个东西我提过,但是最后变成公共标准不是我,而是别人。

当然首先回到一个理念,今天针对某一个东西要做什么。首先要有理念,比方说今天我期望处理当下的多终端适配的问题,希望通过多途径渲染完成体系的变化。回到的问题是今天如何处理问题?这个问题是什么?我如何定义这个问题?我们要形成一个理念,才能往后走,往后走怎样走?

前台价值

前面我讲的很多东西你做到了,但是很多人回到公司都要答复一个问题:前台对于公司的价值是什么?前台对于公司价值肯定不是专业的建设,但是专业建设是必不可少的,但同时作为组织里面的岗位要答复,我这个岗位对于公司的价值是什么?所以我说,前面都做到了不等于价值。技术实力也不等于整个企业价值。这里面应该做什么样的思考?

传统三件套

传统三件套也是今天很多团队在做的:如何提升前台效率,让资源变得更加的高效?如何做性能优化、体验优化?很多团队都在做性能优化。另外如何保障产品的质量等等。这是作为一个开发岗位最基本应该做到的。

Gap 在哪里
比方说今天经营策略是什么?引领模式是什么?产品逻辑是什么?业务闭环是什么?转化漏洞是什么?市场占比是什么?它要求的肯定不是一个前台的能力,它要求的是另外三个能力:商业化的思考能力、数据化的能力,以及产品化的能力。

如何思考商业的闭环?站在产品角度产品逻辑应该是什么?产品应该怎样做?怎样样通过理解今天的数据看待很多问题,推动体系的变化?这是我们前台都需要加强的。当你具有了这三个能力的时候,我相信你在公司的价值肯定会得到表现。

总结

今天的我们还只是在启程的路上,未来的世界还在变化,比方说 Serverless 都在变化,未来的路怎么还未可知。最后把一句话送给所有人:路漫漫其修远兮,吾将上下而求索。

说明
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » 阿里前台主席谈:前台发展史,引领新技术、前台价值

发表回复