Weex开发-致native移动开发者

前言

在学习weex之前,先要了解,weex推出的背景。当前移动开发可以分为三种:Native App, Web App, Hybrid App.
Weex开发-致native移动开发者

  1. Native App特点:
    • 性能好
    • 完美的用户体验
    • 开发成本高,
    • 无法跨平台
    • 升级困难(审核),
    • 维护成本高
  2. Web App特点:

    • 开发成本低,更新快,版本升级容易,自动升级
    • 跨平台,Write Once , Run Anywhere
    • 无法调用系统级的API
    • 临时入口,用户留存度低
    • 性能差,体验差,设计受限制
    • 相比Native App,Web App体验中受限于以上5个因素:网络环境,渲染性能,平台特性,受限于浏览器,系统限制。
  3. Web App特点:

    • Native App 和 Web App 折中的方案,保留了 Native App 和 Web App 的优点。
    • 但是还是性能差。页面渲染效率低,在Webview中绘制界面,实现动画,资源消耗都比较大,受限于技术,网速等因素

Weex开发-致native移动开发者

为了解决移动开发的难题,所以由facebook推出了ReactNative和阿里巴巴推出了weex,但是这篇博客主要讨论weex。

1.Weex须知

相对来说,weex比ReactNative更简单,关于两者之间的比较:阿里云:weex vs react-native, 知乎:weex vs react-native
weex在github上的开源项目相对来ReactNative少很多,而且在社区方面,也不如ReactNative活跃。
我之所以选择先学习weex,就是因为它相对来说更简单,而且weex提供了一些控件的封装,比如list, tabbar,

2.准备环境

怎么安装weex的环境,可以看下weex guide,如果有碰到问题,也可以在这里发表评论。
开发Weex需要同时兼顾服务端(就是weex的html+js部分)和app端,对于移动开发者来说,开发app端相对来说比较简单,只是我们需要注意在写扩展的时候要花费一些精力。所以这里我更加关心html+js部分的开发工作,Webstorm是个不错的选择,因为Webstorm不支持可视化拖拽html控件开发,所以必须的时候也可以安装一个dreamweaver.

3.需要掌握的知识点

App端,这里就不介绍了,对于移动开发者,这是基础,这里主要介绍html+js的部分。

  • vue, weex目前支持支持vue2.x,所以你也可以直接使用vue开发weex
  • html+js这是基础
  • weex reference,这里有Weex的特性和组件的介绍。
  • node也要了解,因为我们需要使用到一些node的命令。

4.社区和资料

4.1 社区

4.2 资料

5.我的代码

我目前还处于看代码阶段,对于我来说,看js代码难度不是很大,主要是熟悉各种各样的js框架,所以虽然看了介绍说weex学习难度低,但是相对我这种纯native移动开发者来说,还是有点吃力了。

myweex是我的weex代码托管地址,目前没有我写的weex项目,里面是我收集的一些weex项目,对于weexOne项目,我添加了很多注释。