当前位置: 首页 > 科技观察

Weex:JS&Web能力拓展万物互联探索

时间:2023-03-14 00:34:18 科技观察

2016年8月26-27日,由.com主办的【WOT2016移动互联网技术峰会】在北京JW万豪酒店隆重举行。自2012年以来,WOT品牌大会秉承专注技术,服务技术人员的理念,已成功举办了11届。不仅积累了大量的专家资源,更得到了IT从业者和技术爱好者的认可和好评。重要技术共享和网络发展。本次【WOT2016移动互联网技术峰会】分为10大技术主题,分别是应用架构、平台技术、创新技术、VR技术、前端技术、性能优化、直播技术、运维与安全、数据分析、APP技术专场。.com作为本次大会的承办方,将通过快报、现场采访、后期视频等多种形式,将这场科技盛宴全方位呈现给广大用户。以下是移动淘宝平台基础平台部负责人吴志华先生在大会主会场以《Weex:JS&Web能力拓展万物互联的探索》为主题的演讲实录。阿里巴巴准备开源到现在已经八个月了,这期间业界也有很多声音。我们在这个项目中遇到了很多技术挑战和很多问题。开源有很多心路历程,我一一说给大家听。Weex主题分为五个部分。第一部分介绍Weex项目是什么,它的特点是什么;第二点阿里巴巴为什么要做Weex这样的项目,基于行业的技术趋势是怎么想的,和阿里巴巴的无线技术有什么关系。什么关系?第三点就是大家比较关心的Weex项目,在阿里巴巴是如何应用的,是如何实现的。接下来说一下作为外部项目的Weex。今天在开源生态的开发者服务方面,我们做了哪些工作,取得了哪些成绩?我的全名是吴志华,小名是田石。个人经验,我一直在研究基础移动技术。我负责的团队是阿里巴巴移动基础技术平台,包括整个阿里巴巴网络的接入。双11流量由团队完成。移动网络接入、网络消息中间件问题,以及整个群的推送和移动端数据采集。我们对Weex有这样一个定义公式,它有两层含义。像Weex这样的公式导入模板Weex和JS得到一个UI,完全是提倡的开发方式。我们的官网具有三个特点,非常轻量级、可扩展性和高性能。左边是Weex代码,一种风格一种写法,看起来比较普通。这样的技术框架有两个特点。写一个Weex代码可以在Android和H5上通用,以后可以在更多的设备上通用。看看Weex为什么要用web以外的方式开发H***PP?首先,写好代码和前端代码后,用工具扫一扫,这个是在手机端看一个效果。通过写一些代码,可以生成一个实时电商页面的效果,其他页面也是可以的。Weex支持首页和微淘。各种大促,3月活动,6.18都用Weex。Weex也为大促带来了一些效果。很大的进步。现在阿里的很多APP基本都是用Weex。先简单介绍一下什么是Weex?接下来,我们为什么要做这样一个项目?今天,它实际上是将一些优秀的外部前端工程和技术能力延伸到手机端。未来是什么样的?我们相信,在未来,通过大家的努力,可以将当今优秀的一些前端工程技术能力带到各个端点。Weex的起源有一个非常大的原因。对于开发者来说,平台的兼容性和设备的碎片化给开发者带来了很大的困难。包括信息孤岛的问题,适配低端机的问题,性能优化的问题,我们的开发者在三个方向上做了很多的投入和精力。在当今创业的大环境和大背景下,对瞬息万变的业务、快速跟进行业的趋势变化有一些很大的要求。事实上,此时业界已经为平台分裂所困扰。因此,在这一点上,我们认为Weex这样的解决方案可以解决APP体积大和兼容性问题。这也是我们推出Weex的初衷。这个项目是基于阿里巴巴自己的移动客户端技术,以及H5技术,追求动态技术,水到渠成的结果。2014年,集团各业务开始将业务投入手机淘宝。可能有数百个团队一起工作。我们考虑如何隔离代码,如何相互协作,如何相互编码,开发独立的客户端代码,以及如何将天猫代码集成到手机淘宝中。我们提出几个第一个概念是如何做容器化?解决项目孤立和持续集成的问题。今天这么多人一起工作,如何快速找到并修复它?这时候业界就提出了热修复的概念,随之而来的就是动态部署。我们应该是国内第一个实现动态部署的超级APP,也就是去年年初就实现了动态部署,而且整个安卓客户端也是可用的。今天,淘宝下的一个超级应用拥有庞大的技术团队,我们有150多位架构师。而一个做到这一点的技术操作系统,不仅支持电子商务,还支持整个集团的所有应用程序。过去有很多技术,包括移动网络的一些解决方案,甚至包括我们的一些大数据采集。Weex项目在阿里巴巴内部开源,所有同学都会为他贡献代码,提供意见。慢慢的,经过Weex项目8个月的时间,阿里巴巴不仅成为了一个技术项目,更是一个技术生态。阿里巴巴内部讲技术,除了客户端线,不得不提H5线。H5线的核心场景是大促会场和双11会场。一开始我提了一个概念,双11会是无线的。这时候承载的就是H5页面,跟业界的方案差不多。我们没有对H5做特别的优化。14年后,这一表现对消费者体验产生了很大的影响。希望双11有一些互动的场景和游戏,能够给消费者一个很好的体验。我们提到了预加载,离线缓存,在网络上做了很多优化。主会场还有Weex。不满足于做一个站点一个页面,我们把它做成了一个超级APP。去年有数百个,今年会更多。每个场所都有数百或数千页。我们需要设计一些复杂场馆的框架,管理场馆APP的生命周期。有互动游戏的狂欢,全部使用Weex技术。2013年到2016年,我们开发Weex客户端,这是Android。去年发布了500多个版本!平均每天发布1到2个版本。有了Weex之后,我们可以做什么呢?Weex可以兼顾H5的灵活性和良好的体验性能,连苹果都认可它的合法性。阿里会场一年内第二次开场率变化。不做H5的二次打开率就很不好了。经过我们的优化,可以离线缓存。尽管如此,在特殊场景下仍然存在无法解决的问题。今天在Weex,秒开的优势很大。而且在内存CPU占用率和原生客户端体验上有很大的优势,比如页面跳转和动画。这是阿里巴巴动态化的几条探索路径。一开始是H5,后来通过远程计算编排,动态渲染的方式抛给客户端。今天,我们提出一个概念,那就是Weex。Weex给阿里巴巴带来了什么?首先,它在技术层面提供了很大的价值,为什么这么说呢?行业更新到60%,安卓需要一个月,苹果需要一周,Weex需要一天。使用一个代码,开发团队带来了很多生产力的提升。我们可以节省50%的人力,提高50%的开发效率。至此,所有安卓低端机的部分问题已经解决。超级APP进退两难。我是超级APP。前两年包太大,性能稳定性包含多个版本,手机兼容性很难做到。投入了大量的人力物力和成本。商家不可能在中国继续在互联网上增加业务。业务不变,看看淘宝和支付宝,同样是非常庞大的。且不说这样的包体和代码规模,大量用户和消费者下载这个APP体验的问题,大量内部工程协作的一些问题都无法解决。我们来看一个现实,这里有人做微信吗?甚至其他一些超级应用程序?玩不下去了,支付宝也一样,怎么办?不让业务做加法是不可能的吧?Weex采集是个好药方,我们整个Android,加1.9兆,Android代码460K,IOS600K,包大小?扩展一些需要自己的组件。同时,我们可以为您提供一些按需打包的能力,一些您想要打包的组件,一些您想要打包的H5组件。在性能稳定性方面,Weex是当今标准的输入输出内核。在这样的标准内核中,我们针对专门的内核性能进行了一些自定义优化。我们会做***实践,我们会限制开发者,我们可以Weex比一般水平,这是目前实践的结果。目前,开发效率也会更高。做生意比较开心,可以在线更新。还有稳定性和内核的开发保障机制。甚至内核也需要一些能力,VR这方面的能力。甚至我们的数据可视化一些能力。Weex给阿里巴巴的业务带来了一些好处,距离去年已经快一年了。包括大规模实践,在推广过程中得到的一些数据,我们页面的点击率提高了5%,这里是针对我们过去优化到最好的H5页面的一个数据,这是我们的越界缓存,预加载,网络优化,UC浏览器,不加更好,10%到20%,点击率提高5%,我们的页面跳出率降低5%,我们比普通H5快4倍页。因为前端框架、数据传输、图片都做了很多优化,我们的数据其实比H5小了10倍。Weex是阿里巴巴业务的第一笔收入,这是阿里巴巴淘宝的第二笔收入。为消费者提供更好的内容和更好的表现形式,更容易结构化,大数据驱动,在线做一些测试,更容易个性化推荐。此外,这是我们的社区。现在很多开发者都有自建QQ群,这个讨论比较活跃。最近,我很开心。我们内部的一些开发者,QQ群开发者说是在线的。我们在群里说,深圳某公司开始招聘Weex工程师,邀请我们做一个Weex交流,评估Weex。这样的计划。我也看到一些需求,内部的和外部的,在网上讨论,你也经常看到。很多业内的开发者在里面讨论,通过这样的讨论,他们也收获了很多不同的观点。关注开源,Weex讲了一堆开源的东西,有一些小成就。这其实有很多事情要做,但是文档呢?我们的开发者服务,以及我们的工具系统,需要整个团队不断优化。因此,本月初,我们在杭州宣布启动中国开发者服务计划,并专人解决开发工具和开发者服务问题。将Weex项目完全开源,并向业界开放专线。谈谈对未来的展望。让我谈谈近期到中期。我们给自己定了一个目标,就是在8到12个月内,阿里巴巴的所有应用都使用Weex。要做到这一点,单靠我们的团队是非常困难的。这个团队相当于做了一些基础的平台开发工作,包括内核和前端工具。我们还有很多不擅长的事情。就是让我们社区生态里的兄弟,团队伙伴,甚至是一些伙伴一起来做。我们的UI库、我们的一些系统和我们的交互功能。还有数据可视化,如何在业务上搭建平台。这个团队需要做很多工作。还有内核,整个内核的一些能力,内核能力的扩展。我们应用一个框架。我们整个内核的稳定性,还有性能,研发机制,还有一些升级能力都是一个整体。还有需要团队支持的自愈机制。说到性,我们自己有这4句话。***,拥抱开源,回归生态,万物互联,科技生生不息。阿里巴巴是一家拥抱开源的公司,在构建技术体系和技术生态的过程中,从源头上收获颇丰。我们在做Weex项目的时候,一开始内部其实有很多讨论。一开始我在想,Weex自己解决问题就够了吗?后来,我们决定把Weex开源给业界,这是给基金会捐的。这就是我们的想法。Weex项目是阿里巴巴移动互联网上为数不多的生态系统之一,也是外部开发者完善我们的一个非常重要的项目。我们也认为这样的项目可能属于中国。我们认为它可能是国内为数不多的既可以作为生态又可以作为开发者项目的移动互联网项目之一。因此,我们要彻底、彻底地开源。Weex不仅是通过行业内大家的共同努力。不仅仅是一个移动端,一个跨平台的解决方案。希望大家努力成为万物互联的解决方案。以上就是【WOT2016移动互联网技术峰会】.com一线记者为您带来的精彩报道。一大波精彩内容报道来袭,敬请期待!