专栏首页IT大咖说新时代的web与app开发

新时代的web与app开发

摘要

近几年前端有着不小的变化,作为前端技术人员,一方面感慨有些自己熟知的技术逐步落幕消亡,另外一方面又看到新事物不断出现,以种种方式改进和冲击着我们的开发方式。生在这个时代是一种不幸,也是幸运。

视频内容

回顾

2010年,有人说Web已死,引发了热议。

2012年,大家想象html5什么时候能打败native。

2015年,我在旧金山第一次看到了React Native的demo,非常兴奋。

2016年,我们自己的weex开源了。

到2017年,我所见的前端变化

2016年到2017年之间,前端的三个主要变化是技术变化、工程变化和职责变化。

技术变化主要是weex和React Native为代表的一批融合的技术,给我们的能力带来了很大改变。

另一个值得关注的变化是工程变化。前端从简单薄弱的一层,变成了一个非常重要的职能。

职责变化主要是指前栈的问题。我们曾经对前栈有过憧憬和畅想,而事实总是不尽如人意。其实现在职责的变化更加合理,并不比想象中的状况差。

前端技术变化

Web和Native的优势各有三点。

前端的优势一是动态发版。动态发版要遵守用户协议,用户协议是不允许在Webview之外的地方执行Script,也就限制了Script只能是Javascript,因为Webview不支持别的脚本。

第二个优势是功能解耦,这一点很容易被大家忽略。随着客户端越做越大,它会变成非常依赖强力的架构师和强力的项目管理机制。这个要求对于很多小公司来说是致命的。前端就没有这个问题,每个人写各自的网页,浏览器天然隔离,相互不受影响。

还有就是前端技术非常适合三方,三方就意味着不可能要求三方使用指定技术。html本来就是一个各公司妥协的结果,即使是苹果的iOS这么这么强势还是给它留了Webview这么一条活路。

客户端有三点非常直白的优势就是体验、设备特性和性能。这都是前端技术目前达不到的。

前端工程技术变化

看了React Native之后,我们开始往这个方向去思考。我们需要的是一门真正可以在上面做开发的语言,答案是weex。

我们得到的就是前端的开发体验和客户端的用户体验。

开发体验就是说其实整个工具栈全都是前端,但实际上渲染出的东西是weex。现在在我们淘宝的应用上,除了一些多年不变的基础业务,几乎所有业务都已经用前端来做了。

前端工程体系变化

以前我们要做一个网页,前端负责开发,做出一个demo性质的前端页面,然后做套模版。服务端把模版套好,和代码结合在一起,最后进行发布。

之所以说前端特别薄弱,因为它没有自己的发布,只是一道工序,而不是一个工种。

另外套模版这件事非常繁琐。我们在2013年的时候,大家一直在讨论“前后端分离”,提出了各种各样的技术来解决套模版这件事。

随着手机淘宝在整个集团的比例上升,手机淘宝这个方案基本上取得了胜利,并且是前后端同构。

让前端独立去发布,就是最终极的前后端分离方法。独立发布前端只能发html,服务端所有东西要API化。

现在我们的前端有一条自己的发布线,开发、构建、联调、发布。服务端是在联调环境参与进来的,拿它的API去做联调,然后前端自己进行发布。

这里对于前端来说多了两个环节,一个是构建。有了构建后想象空间非常大,之前前端就是Javascript,现在甚至引入了一些模版构建的技术,有一些外部的像unity也进来了。这样做丰富了整个生态,也让一些之前不是前端的人开始逐渐进入到前端的体系里来。

另一个就是发布环节。有了发布就意味着前端开始关注线上的东西,随之而来前端的工程体系,包括持续集成这样的概念早09年、10年的时候对于前端来说是个不可思议的话题,到今天在一些大公司的前端圈子里已经把这个话题当作非常自然的一件事了。

前端职责变化

还有一个更大的变化就是前端职责变化。我们曾对前栈有过一个想象,前端如果具备了服务端能力,我们会不会越做越“胖”,把服务端挤得只剩一小点了。但实际上如果这样做会导致一个严重的问题,缺少前端。

后来我们在思路上发生了一个重大转变,就是赋能。从“把自己做成全栈”变为“帮别人做成全栈”,降低服务端的人去做前端的成本。

另外当服务端把能力输出给服务端的时候,服务端也会输出能力给前端。前端输出给服务端的能力就是组件体系和搭建体系。服务端输出给前端的能力是对数据做一定的标准化和校验。把不同前端的业务平台化,在业务层面上是不一样的,实际上是从同一个平台出来,这样前端也具有了一定的全栈能力。最后变成了一个“你中有我,我中有你”的状态,大家又各自在负责自己擅长的部分。这是真正意义上的全栈最终在我们团队落地产生的场景。

未来:前端技术云化

我的理想是将来以前端为中心去开发应用开始成为一种可能。只需以前端技术为核心去构建一支团队,它就可以独立地开发一个应用。

“云端配合”的概念可能会取代现在纯粹云服务的概念。

将来的前端不仅仅是现在已经在做前端的人,还包括了一些更广泛的群体。比如被输出了前端能力、被赋能的那些服务端的同学,以及做更底层的功能、给我们提供插件能力的服务端同学,他们都会变成一个模糊的“大前端”概念。这是我认为未来前端的一个发展趋势。

我今天的分享就到这里,感谢聆听!

本文分享自微信公众号 - IT大咖说(itdakashuo),作者:Winter

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2017-08-24

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Connecting People ---- 独乐乐 不如众乐乐

    摘要 io游戏大致是指具有多人对抗+地图限制+死后即刻复活等为特点的休闲moba类竞技游戏,在近几年内发展迅速。 ? io&HTML5 HTML5这个领域在过去...

    IT大咖说
  • 2019年8大Web开发趋势

    熟悉前端开发的人应该都知道,最近几年,各种前端框架层出不从,H5开发模式也越来越流行,大前端时代也已经到来。每一年各种前端技术也应运而生,快速掌握最新的前端技术...

    IT大咖说
  • 苏宁易购:前后端分离架构的落地思考

    IT大咖说
  • 年薪20万前端工程师必备技能,你都掌握了么?

    有软件工程方面的研究说,对于开发者个体而言,最优秀的开发者的生产效率约为平均值的2倍,而优秀的开发者会吸引其它优秀的人,或者激励与帮助团队中的其它成员,最终使团...

    用户1730674
  • 为什么都说前端不能一直做,要转行?

    任何事情做到极致都很困难,永无止境。今天似乎在我身边很多朋友的公司对前端的需求量一直很旺盛,他们需要的精通前端、有想法的工程师,可惜这部分人才真的太稀缺了。绝大...

    一墨编程学习
  • 《前端开发职位的发展方向 -- 大前端》| 微课-文字版

    /1/ 大前端的说法,是如何出现的?范围是多“大”? 对于许多新人来说,他们最开始接触前端这行,都是从前端开发工资高啊,好找工作啊,入门门槛低,这些方面开始了...

    web前端教室
  • 大前端?/前端开发职位的未来方向/

    对于许多新人来说,他们最开始接触前端这行,都是从前端开发工资高啊,好找工作啊,入门门槛低,这些方面开始了解的。当他们开始学习前端一段时间之后,许多人不可避免的开...

    web前端教室
  • 听说尤雨溪在开发vue4.0?是谁煽动了前端圈的焦虑情绪

    今天前端圈里被一张P图搞得好热闹,最初只是QQ群里一个冒名尤雨溪的前端网友发了一句调侃的话,原话截图如下:

    闰土大叔
  • 学前端格局要大,不能被限制在“前端”里

    前端确切的讲,只有html、css、javascript三部分,而且不管是实际工作岗位,还是培训机构,也确实是先学会这三种语言。但是一直以来关注我这个微信号的朋...

    web前端教室
  • 现在Web前端的发展趋势和行业前景,还能转行学习前端开发吗?

    2019还能转行学web前端开发吗?这是很多人在网络上搜索的问题。及其原因,还是因为目前网络上充斥着前端饱和的说法,这让不少人怀疑还能不能转行web前端,目前程...

    用户5827212

扫码关注云+社区

领取腾讯云代金券