6
回答
【开源访谈】腾讯河伯畅谈 VR 与前端开发技术
百度AI开发者大赛带你边学边开发,赢100万奖金,加群:418589053   
前端开发这个职业始于几年前,至今已发展的初步成熟了。什么才是真正意义上的前端开发呢?
前端整体架构设计和开发的核心是什么?在 VR 大背景下,前端开发技术人员该做些什么呢?基于 WEB 的 VR 有多大发展前景?本期【开源访谈】邀请到了腾讯的前端技术专家,IVWEB负责人河伯,分享他眼中的 VR 与前端技术开发。

【本期嘉宾】
刘恒兵(河伯),腾讯前端技术专家,IVWEB负责人,Qcon、StuQ讲师。现腾讯互动视频业务前端TeamLeader,互动视频、NOW直播Web负责人,负责互动视频前端整体架构设计和开发。多年Web & H5移动开发经验,对移动监控和优化有深入研究,同时推动组件生态,致力于打造高复用、高效率的全栈开发体系。


【采访实录】

1)请简单地介绍一下您自己(技术背景、学习经历、工作经历)。

我叫河伯,本名刘恒兵。目前就职于腾讯公司,负责互动视频前端整体架构设计和开发,NOW直播前端负责人,IVWEB团队负责人。大学专业是电子商务,由于自己对计算机感兴趣,就深入地去学习这方面的知识。早期学的技术有java,c#。网站基于jsp、asp、php等脚本语言开发。毕业之后就开始专注前端,算是比较早一批专研前端技术的。


2)前端整体架构设计和开发的核心是什么?

前端整体架构的设计和开发的核心是要基于全栈的考虑,要解决业务的最小成本投入,也就是解决跨端组件复用的问题。

我觉得与其说前端,更应该说是全端。我们开发的出发点更多的是考虑效率,如何用最少的资源(人力)投入获得最大的产出(结果)。全栈技术之所以这么火的原因也是一个人能够掌握多端技术研发。既能做前端,也能做后端,对终端技术也有所了解。

全栈技术不能简单粗暴的支持多端开发,精力也不够。合理方式是以复用的形式,通过线下构建,将一套代码生成多套代码,维护一套代码,在多端上复用执行。那么,线下构建完成后,线上同构如何配合开发呢?一定程度上总会涉及到线上同构来兼容线上不同的环境。但线上同构由于本身的逻辑判断带来性能的损耗以及本身环境的差异性引起代码冗余,也会存在很多的风险(比如将后端代码放到浏览器的话,可能会有暴露后端逻辑的风险),因此尽可能减少线上同构,同构线下同构完成能力(线下构建之后基本能满足线上不同环境执行能力)。基于效率之上,我们要做的事情就是一套代码能够 cover 住多端,前端开发好的代码,后端能直接复用。


3)多年从事 Web & H5 移动开发过程中,最令人印象深刻的难题是什么?如何解决的?

举个栗子,经常会有用户反馈在使用过程中打不开网页。可能是由于网络原因还是其它情况。这种问题不是特别难但经常发生,怎么办呢?这个问题不是一次就能够完全彻底解决的。在解决问题的过程中会逐渐的发现一些新的场景,一直伴随着你的业务开发,因此需要我们不断处理和优化,用户兼容性,极端网络情况,异常情况,通过我们的细化场景分析监控,逐一解决问题。

有时候,用户的网络问题我们无法控制,又不能置之不理,那么我们、、是不是可以通过一种方式,支持在网络好的情况下将资源提前下载下来。这种方式需要合理地保证既不占用用户网络带宽又能解决用户问题。

但不是所有用户遇到问题都能通过固定的形式来解决,我们需要通过分析用户的行为场景来做处理。就是说力量要用在刀刃上,最终目标是解决问题。


4)VR 非常火爆,VR 视频直播未来发展趋势怎样?

一个产品的革命一定是伴随着硬件的革命的。就我看来,VR 直播的前景不在于网络技术、软件技术,而在于硬件技术的发展。就像移动端的爆发,是因为智能终端机的产生和普及。在硬件的驱动下,很多更牛更好的用户体验可以在智能终端机上得以实现,满足用户的诉求。

那么,现在 VR 的瓶颈是什么呢?也是硬件。现在一个 VR 设备的成本太高,少的也要两三千,而且体验不一定好。所以主要是看硬件的发展,而在技术上,可以说完全没有问题。做一个VR引擎,一个解析器去支持一个 VR体验的解析是相对容易的事情。开发人员通过 API 就可以做出很多的 好的Demo出来。此时如果硬件性能跟不上,就无法给到很好的用户体验。所以,VR 现在以及未来的发展趋势完全是看硬件的发展趋势。VR 未来能不能普及起来,依赖于硬件能不能进一步去挖掘硬件性能,能不能提供一些更平民化硬件的价格。


5)基于 WEB 的 VR 有多大发展前景?

就目前形势,我们还是可以做很多事情,简单讲就是抢鲜。目前我的团队里面也在做这些事情,做一些实践性的 Demo,但最终 Demo 不能用于业务。这是为什么呢?因为它无法为用户提供良好的体验。比如说用户,你要满足手机性能好,网络条件好,要在一个极好的配置环境下来体验我的产品,也即是说在特定场景下才能使用我的产品,没办法普及。但是可以作为研究性的对象,所以基于 WEB 的 VR 一定是有发展前景的。前提是环境,硬件还有浏览器的配置能给到足够的支持。按现在趋势,跟随硬件不断的挖掘,未来一定是会普及的。


6)在VR 的大背景下,前端工程师能做些什么?

VR 的出来,不是要替代前面的产品。不是一个技术革命,而是一个技术的革新。正如我们现在做移动端,PC还是有存在的使用场景,办公等都需要使用到。VR 出来后,我们的手机也还是有基于非VR移动场景的使用价值的。VR 的出来只是满足前沿的一部分诉求,它会一直存在,之前的诉求也会一直存在。这时候,作为前端工程师,不管是不是 VR ,不管 VR 好不好,都仍然需要做很多的事情。

如果VR 真的发展起来,有了足够的 API 支持。前端工程师通过学习 API 就可以实现了。任何开发都是如此。但能不能做好一个产品又是另一回事了。用户、用户场景、需求不同,需要实现的功能需求也不同。这就不仅仅是学习 API 这么简单了。

就目前背景下,开发人员也是可以做很多事情。举个栗子,做 VR 视频。通过这种技术实现你与关注的人面对面的聊天,其实是一个很好的体验。比如线上学习,是否可以做到犹如坐在教室里与老师面基授学的体验;比如通过技术为先天有所缺陷的人提供虚拟游乐场的体验,这些都是可以通过软件技术实现的。


7)对于刚刚步入前端领域的新人,有什么样的经验和建议分享?

目前我的团队里也有一些新童鞋会有这样的困惑:前端发展如此快,一年会出现很多新的技术,我们该如何选择。其实,你可以去了解新技术,但必须掌握其中的一项,也就是专长。在这个专长领域不断地深挖。在前人已有的基础上将产品做得更加完善,用户体验更好。

也有童鞋会问,没有去研究新技术是不是就落伍了呢?其实不然。
技术本身并没有新旧之分。只是说一个新技术一面世激发了大家的兴趣点,很多人想要去抢鲜体验。但这并不代表我们以往的技术就落伍了。新技术只是有助于更高效地去做一些事情,但传统的浏览器底层的渲染,加载,网络等传统技术还是需要去做的。如果不做,体验就不好。

其实,很多时候影响用户最大的问题是常规技术的优化没有做好,才会导致用户使用过程出现问题。与是否用了新技术无关。

我觉得作为新人,应该定下心,慢慢沉淀,抓住自身的重点。在兴趣和业务需要的驱动下,不断熟悉了解,加上前辈的指导,一定可以找到兴趣点。不建议盲目地去学习各种技术,一定要在某一项深入专研下去,以严谨的态度去深挖,才能成为这个领域的专家。

作为刚进入职场的新人,还有一点就是说要主动性地去做任何事情,而不是等着其他人来催促,这也是非常重要的一点。


8)从做技术到技术管理,有什么可以分享到嘛?

我觉得做技术与管理其实非常的相似。管理是管人,技术是管知识。做技术需要有一个合理的知识体系和知识图谱,用来管理知识。管理也是如此,需要一个合理的管理体系将人员合理的维护起来。另外,不论是做什么,都需要主动,严谨,细致,深挖,总结,交流。做了技术管理不等于要丢掉技术。技术是开发同学的立足之本,以前100%的精力在技术,现在可能需要投入40%的精力在管理,那么就需要投入140%的精力,而不是放弃技术。
举报
凝小紫
发帖于2年前 6回/3K+阅
顶部