目前有一个 APP 项目,需要同时开发 iOS 版和 Android 版,并且每个平台又分为客户端、管理员端,也就是说相当于四个应用。而我们人员有限,工期有明确限制,全部使用 native 语言开发,基本不现实。所以决定采用类 react native 的方案开发。
到了技术选型这里非常纠结!做了一下简单的对比
React Native
如果从成熟度来看,react native 是不二选择。但是,需要维护两套代码,即 iOS,Android 各一套。并且开发调试 iOS 只能使用 Mac 设备。
优势
- 文档全
- 社区成熟
- 组件丰富
劣势
- 需要维护两套代码
- 团队没有 React 经验
- 对开发设备有要求,调试不方便
Weex
而 weex 可以做到 iOS, android, H5 共用一套代码,但是,这个是国内阿里维护的项目,靠谱度存疑,遇到问题估计很难查到资料。而且我们需要使用蓝牙访问硬件设备,而 weex 并没有现成的组件实现,需要我们自己用 native 来实现。
优势
- 三端共用一套代码
- 调试简单
- 团队都有 Vuejs 实战经验
劣势
- 国内开源项目不太靠谱
- 社区极度不成熟
- 文档不全
- 组件有限,且下载量都在两三百的量,质量无法保证
- 需要 native 代码扩展蓝牙数据读取
ionic
ionic 这个虽然比较成熟,但是唯一的问题是大家普遍反映体验不够流畅。
优势
- 文档全
- 社区成熟
- 组件丰富
劣势
- angularjs 不太靠谱
- 流畅度存疑
结论
决定先硬着头皮上 Weex 了,蓝牙支持准备参考 react native 的实现。
再更新于 2023-06-25: 强烈不建议采用任何的非原生技术,都是浪费时间。有那个踩坑的时间,用原生技术早就实现了。
微信关注我哦 👍
我是来自山东烟台的一名开发者,有感兴趣的话题,或者软件开发需求,欢迎加微信 zhongwei 聊聊, 查看更多联系方式
谈笑风生
球球 (来自: 中国 江苏 苏州 电信) 7年前
dzj (来自: 日本) 7年前
大象腿 (来自: 中国 山东 烟台 联通) 7年前
老铁 (来自: 中国 河南 郑州 联通) 5年前
大象 (来自: 中国 山东 烟台 联通) 5年前
老铁 (来自: 中国 河南 郑州 电信) 5年前