4月21日,由InfoQ主办的 QCon全球软件大会 在 北京举行。超过150名国内外技术专家将为大家带来一场技术盛宴。在大会的开幕式上,极客邦科技与InfoQ中国创始人霍泰稳,和阿里巴巴资深总监,淘宝 移动平台及新业务事业部、阿里百川负责人庄卓然(花名南天)共同宣布,极客邦科技与阿里百川达成战略合作,共建移动开发者生态。
同时,庄卓然还宣布,阿里百川 移动应用全新技术解决方案Weex 正式开放内测,并将于6月全面开源。Weex在官网提供了Android Demo下载,iOS版正在准备中。
在过去一年里, 极客邦科技 迎来了高速发展,除了面向5年以上经验技术人的InfoQ之外,还创建了面向初级开发者的在线学习平台 StuQ 、面向企业内部开发者的内训服务 GIT 、面向高级技术管理者和决策者的 EGO ,以整合全球优质学习资源,帮助技术人和企业成长作为自己的使命。
阿里百川 是阿里巴巴集团无线开放平台,通过“技术、商业及大数据”的开放,提供移动场景下的高内聚、开放式、行业领先的技术产品矩阵、成熟的商业组件和完善的服务体系,帮助移动开发者快速搭建APP、加速APP商业化进程,全方位赋能移动开发者及移动创业者。
两者的结合,将为中国的移动开发者营造更优秀的社区氛围和成长环境。
在上午的Keynote上,庄卓然向参会者做了《从万物生长到繁荣有序——重新思考移动开发》的演讲,回顾了过去十年移动开发技术的发展,分享了手淘对移动 开发最佳实践的思考,并介绍了手机淘宝推出的移动开发解决方案Weex。在演讲过后InfoQ记者对庄卓然进行了采访,了解了Weex的更多细节。
Weex是官方支持iOS/Android/HTML5三大平台的跨平台开发框架,使用HTML/CSS/JS开发原生应用,其原理类似React Native,但理念有所不同。同时受到Web Component和 Vue.js 项目的启发,采用接近HTML标准的DSL进行开发,其在架构中的定位相当于MVVM中的View和ViewModel。
从演讲和项目官网的介绍中我们可以知道,Weex有如下特性:
官网上给出的DSL的例子如下,可以看到几乎就是HMTL5:
<template> <div class="container"> <div class="logoContainer"> <image class="logo" src="http://t.cn/Rq9bcDm"> </image> <text class="desc"> A framework for building Mobile cross-platform UI </text> </div> <div class="textContainer"> <text class="text">Hello weex</text> </div> </div> </template> <style> .logoContainer { width: 750px;height: 500px; align-items: center;justify-content: center; background-color: #0054DC; } .logo { width: 378;height: 84; } .desc {margin-top: 40px;font-size: 24px;color: #ccc;} .textContainer { width: 750px;padding-top: 200px; align-items: center;justify-content: center; }.text {font-size: 48px;} </style>
与React Native的“Learn Once, Write Everywhere”——即重视平台的独立性的理念不同的是,Weex重提“Write Once Run Everywhere”的说法,屏蔽底层硬件差异,一次编写即可生成三个平台的代码。
另外由于采用Vue模板的语法,使用Weex编写界面更加自然,符合前端开发习惯,无学习门槛。并且这样一来,Weex开发将可直接利用现有开发工具的代码补全、错误检查等功能,提升开发效率。而React Native目前只有Facebook自己开发的一个尚不成熟的IDE Nuclide,在这方面Weex更胜一筹。
Weex支持三种与现有项目集成的方式,分别是:
据庄卓然介绍,Weex的前身是WeApp,一个用JSON配置原生UI组件来实现动态化 的框架,Weex继承了这一点并做得更彻底,同时吸收React Native、Web Component、Vue.js等优秀项目和标准的思想,从而形成现在的项目,可以说是面向自身业务的解决方案的升级进化版本。在去年双十一大促 中,Weex担任了双十一主会场的任务,取得了圆满成功。
目前,使用Weex需要在 项目官网 申请内测,最终会在6月份开源,在这期间,手淘技术团队将继续打磨这一项目。