写点什么

2022 年 Flutter 真的会一统大前端吗?

作者:坚果
  • 2022 年 1 月 24 日
  • 本文字数:1318 字

    阅读完需:约 4 分钟

副标题《理性对待 Flutter》


作者:坚果

公众号:"大前端之旅"

华为云享专家,InfoQ 签约作者,阿里云专家博主,51CTO 博客首席体验官,开源项目GVA成员之一,专注于大前端技术的分享,包括 Flutter,小程序,安卓,VUE,JavaScript。


在创建 iOS 和 Android 应用程序时,通常推荐使用 Flutter,因为使用它更加简单高效。正是由于 Flutter 的诸多优势,它在许多情况下都是移动应用程序的绝佳候选者。它的性能、逻辑架构和文档都备受推崇。国内的社区也非常的活跃,但在某些情况下,Flutter 可能并不是最合适的。这就是我们将在本博客中看到的内容。让我们看一些场景..


当您的项目依赖于

特定设备和平台的主要库时

如果您的项目需要 Wear OS 版本或 Smart TV 应用程序,您会遇到一些问题。你可以在技术上为这些平台构建一个 Flutter 应用程序。但是,Wear OS 并不支持 Flutter 的许多开发功能。所以会给你带来困扰。



对于 Android TV,您必须从头开始使用控制逻辑。因为 Android TV 只读取远程控制输入,而 Flutter 使用触摸屏和鼠标移动,情况就是这样,孰轻孰重,自己考量。

当您的应用程序对应用大小要求很高时

由于 flutter 不是原生的,它在应用程序之上添加了一些其他库来工作。如果每个字节对您的应用程序都很重要时,您可能需要在原生平台上进行开发。由于它具有内置的小部件而不是使用原生平台小部件,因此 Flutter 应用程序的最小大小超过 4MB,明显大于原生 Java(539KB)和 Kotlin(550KB)应用程序。


老实说,它的竞争对手也有同样的问题, React Native 占用 7MB。


但是由于硬件技术的进步,即使是智能手机也配备了更大的内存和存储空间。所以大多数人并不关心应用程序的大小。

硬件支持


不建议将 Flutter 用于通过蓝牙连接到硬件设备的应用程序。由于它本身不使用设备的蓝牙,因此会出现一些连接问题和性能问题。

Flutter for Web

它不是 html。是的,即使是 Web 版 Flutter 也已正式发布,但是它不会撼动互联网世界。市场上有许多简单有效的库来开发网站。当涉及到网站、页面加载速度、SEO、性能和一切都很重要时,Flutter 很难通过简单的 dart to Js Engine 来实现这些。


但现在判断还为时过早。Flutter 可能会拿出精彩的优化性能。让我们敬请期待,在王叔的视频里,对此类问题也做过阐述,地址在这儿。


Flutter可以做网站吗|Flutter Web劝退指南|从入门到放弃只需要几分钟

平台特定的外观和感觉

Material Widgets 和 Cupertino 小部件分别是 Android 和 iOS 应用程序的两种不同的构建块。在创建 Flutter 应用程序时,您可以同时使用这两个小部件,但是当我们为 iOS 构建使用 Material 小部件时,该应用程序缺乏原生的外观和感觉。为了实现这两个应用程序的原生外观,我们应该检查代码中的平台并渲染特定的小部件,这是编码和应用程序性能最差的部分。


缺乏第三方集成

尽管 Flutter 有 19k+ 的库和插件,但它依旧缺少许多流行的库和 SDK。目前正在开发许多包并迁移到 Flutter。如果您要开发一个主要依赖第三方插件的应用程序,请检查 SDK 的最新版本是否适用于 Flutter。至于如何检查,



此外,始终首选积极维护的存储库。


最后,Flutter 并不总是很棒。事实是它无法一碗水端平。当然这只是决定把它放在哪里的问题。Flutter 依旧可以简便,高效地使用。

发布于: 刚刚阅读数: 2
用户头像

坚果

关注

此间若无火炬,我便是唯一的光 2020.10.25 加入

公众号:“大前端之旅”,华为云享专家,InfoQ签约作者,51CTO博客首席体验官,专注于大前端技术的分享,包括Flutter,小程序,安卓,VUE,JavaScript。

评论

发布
暂无评论
2022年Flutter真的会一统大前端吗?