關於Weex你須要知道的一切

 

QCon第一天,GMTC全球移動技術大會聯席主席、手淘技術老大莊卓然(花名南天)在Keynote上宣佈跨平臺開發框架Weex開始內測,並將於6月份開源,同時他們也放出官網:http://alibaba.github.io/weex/ ,能夠在上面申請內測資格,以及下載Android版Demo把玩。前端

 

在大會後我對莊卓然作了一個採訪,對一些你們關心的問題獲得官方的回覆,整理在這裏。全部該發的不應發的我都發在這兒了,爲了漲粉我也是拼啦~git

 

Weex基本信息github

 

  • 官方支持iOS、Android、HTML5.weex

  • Write Once, Run Everywhere。一次編寫可生成三平臺代碼。框架

  • DSL模板學習超簡單,直接寫HTML、CSS、JS。這意味着能夠直接用現有編輯器和IDE的代碼補全、提示、檢查等功能。編輯器

  • 輕量級、可擴展、高性能。工具

  •  集成花樣多,可在HTML5頁面嵌入,也可嵌在原生UI中。性能

 

Weex的由來學習

 

Weex的前身是WeApp,一個用JSON配置原生UI組件來實現動態化的框架,關於相似這個的思想,能夠在天貓這篇配置中心實踐中看到,已經很牛了,Weex是WeApp的進化版本,加上ex去掉App,就成了如今這個名字。他們還編了個段子:測試

 

You give us a few weeks, so we bring you a weex.

 

這個段子要表達的意思,你get到了嗎?

 

與Vue.js的關係

 

若是對前端有所涉獵的同窗會發現,Weex的DSL風格與一個前端的MVVM框架Vue.js比較像,那麼它們的關係是什麼呢?

 

Weex由多個關鍵模塊組成,分別是DSL transformer、JS Framework、HTML5/iOS/Android Renderer和工具鏈 , 其中JS Framework就直接使用了部分來自Vue.JS的代碼。不過這種使用也是遵照開源協議的(Vue使用MIT協議,Weex使用Apache協議),Weex團隊在源碼的說明文件中記錄了來自Vue.JS和其餘開源項目的貢獻。

 

爲何不用React Native

 

手淘和天貓曾經嘗試過React Native,而後放棄了。可是把它的思想吸取過來,結合Web Component和Vue.js,而後就成了Weex.

 

關於這個問題,莊卓然列舉了一些緣由:

  •  由於手淘以前有WeApp,從WeApp進化到Weex是很天然的選擇,拋棄本身的解決方案去用別人的反而很奇怪。

  • React Native的JSX、CSS in JS寫法都很彆扭,淘寶有不少ISV(即各類店鋪),他們以前只會Web技術,寫這個有門檻。另外,HTML標準在過去二十年內經受了檢驗,HMTL/CSS/JS對應的結構、樣式和行爲,自然分離,代碼的可維護性會更好。拋棄標準本身發明DSL也不明智。

  •  React Native重視平臺獨立性,不能作到100%代碼共用,實際上仍是要學習各平臺的特性,Weex但願作到100%共用,即一次編寫處處運行,進一步下降開發門檻。

  •  React Native在一些地方的性能上還有問題,手淘但願能本身主導優化的進程,不然會很被動。

 

關於KPI項目

 

去年在手淘向外界宣佈有這個項目的時候,引發你們的關注,有人在知乎提了個問題,有人回答說是KPI項目云云。所謂KPI項目,就是爲了完成KPI而作的項目,但實際以後不維護等等。

 

手淘在這個問題下面並無正式迴應,據莊卓然表示,其實KPI項目看從什麼維度去理解,任何一家公司去作一個創新都會有目標,有目標的話均可以被理解爲是一個KPI項目。在他的角度來看,是否是KPI項目不重要,重要的是目標定得對不對,想解決的問題是否是核心問題。

 

關於維護,涉及到阿里如今的開源策略,咱們看下一個問題。

 

爲何還要內測,不直接開源?

 

其緣由是,阿里調整了開源策略。在過去,阿里集團開源了很多項目,但其中不少沒有後續維護,這也是被詬病爲KPI項目的緣由之一。其實阿里本身也想改變這種狀況。

 

如今,手淘作開源,但願真正爲社區創造價值,而不是把公司的一坨代碼處理一下往外一丟,別人在使用的時候還要花不少功夫處理,這樣的開源項目意義並不大。阿里但願發佈出去的開源項目都是有生命的,能好好的維護起來。

 

在Weex去年雙十一在線上驗證以後,其實就準備開源,但有不少準備工做要作,好比文檔、配套的工具等等,過去的四個多月一直在作這些事情。在集團內部也進行過測試,集團BU、UC包括高德、天貓等都有不少同窗參與進去貢獻DEMO和代碼,到了4月份以爲適合放出來了,因此宣佈內測。

 

內測這個是相似產品運營的思路,但願能像打造產品同樣打造開源項目,和通常的開源項目的快速迭代不太同樣,目前來看也並不能說哪一個更好。

 

阿里百川在6月份會有一個生態大會,面向阿里生態體系內的商家和客戶,固然也包括開發者。到時候會在大會上宣佈開源。

 

阿里百川(baichuan.taobao.com)是阿里巴巴集團的無線開放平臺,經過「技術、商業及大數據」的開放,提供移動場景下的高內聚、開放式、行業領先的技術產品矩陣、成熟的商業組件和完善的服務體系,幫助移動開發者快速搭建APP、加速APP商業化進程,全方位賦能移動開發者及移動創業者。

相關文章
相關標籤/搜索