写点什么

uni-app 和 flutter 的区别

发布于: 2021 年 03 月 10 日
uni-app 和 flutter 的区别

前言


uni-app 是一个使用 Vue.js 开发跨平台应用的前端框架,开发者编写一套代码,可编译到 iOS、Android、H5、小程序等多个平台。uni-app 继承自 Vue.js,提供了完整的 Vue.js 开发体验。uni-app 组件规范和扩展 api 与微信小程序基本相同。有一定 Vue.js 和微信小程序开发经验的开发者可快速上手 uni-app ,开发出兼容多端的应用。


Flutter 是谷歌的移动 UI 框架,可以快速在 iOS 和 Android 上构建高质量的原生用户界面。Flutter 可以与现有的代码一起工作。在全世界,Flutter 正在被越来越多的开发者和组织使用,并且 Flutter 是完全免费、开源的。简单来说 Flutter 是 Google 一个新的用于构建跨平台的手机 App 的 SDK。写一份代码,在 Android 和 iOS 平台上都可以运行。Flutter 背后的编程语言是 Dart,谷歌称之为"客户端优化",适合在任何平台上"快速构建应用程序"。


uni-app 和 flutter 有什么区别呢?


1.环境搭建难度


  • uni-app 只需要到官网下载 Hbuildx 开发工具,就可以直接创建项目开始开发了,开发模式也比较清晰简单。且只要会 vue 基本上可以上手开发了。

  • flutter 也是需要安装开发工具,windows 的安装 android studio 或者其他开发工具,mac 可以安装 xcode,android studio。不过配置过程可能稍微麻烦点,需要安装插件。


2.开发难度


  • uni-app 基本只需要学会 vue 开发就可以,基本遵循 vue 结构开发的。内容结构比较清晰。且官网都是中文的,比较容易看懂,插件市场也比较多,目前有 600-700 个左右吧,社区活跃也还行,提问题回复比较慢,一般加 QQ 群提问题,回复比较快点。

  • fultter 需要学习新的语言 dart,如果你是 java 程序员可能学一会就看懂了。如果没接触过,刚开始学习的时候看这代码一阵头大。学习一段时间后,发现还是可以的,也可以引入组件,不过代码清晰度来说不够明显,虽然会自动带注释。官方文档也有中文版的,但具体布局类说明没有中文化,只能算部分中文。


3.性能比较


  • uni-app 官网引入 weex,而 weex 性能和 react-native 差不多。

  • flutter 性能最接近原生的。据说画面渲染达到 120fps,可以做一些游戏。


总结


如果你的应用需求足够简单,像小程序之类的完全可以做到,选 uniapp。如果你的需求复杂,必然要分开维护,还是和之前一样,uniapp 是一个极好的跨各种小程序的解决方案,一次编译,微信小程序,支付宝小程序,百度小程序,多端运行;如果你需要适配横屏,建议用 flutter,横屏的交互加上 material design 的加持,这样和桌面端就没有太大区别了,目前 flutter 已经可以编译运行在 Windows 和 linux 上。


anyRTC 跨平台 SDK 已经包括了 APIcloud、Electron、Flutter、uni-app 框架,为众多的开发者们提供了更多的选择,和更加良好的开发环境。anyRTC SDK 是 anyRTC 为实时互动通信及直播类应用量身打造而成的 SDK,包括了实时音频、视频、混音、屏幕共享等功能,适用于娱乐、游戏、教育等场景。支持公有云、混合云、私有云等部署方式。


用户头像

实时交互,万物互联! 2020.08.10 加入

实时交互,万物互联,全球实时互动云服务商领跑者!

评论 (2 条评论)

发布
用户头像
博主写的很全面 收藏了!
2021 年 03 月 10 日 14:38
回复
用户头像
更多信息请关注anyRTC官网:https://www.anyrtc.io/
2021 年 03 月 10 日 11:48
回复
没有更多了
uni-app 和 flutter 的区别