ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

2023年Flutter淡出人们视线:Flutter是否已失去竞争力?

2023年Flutter淡出人们视线:Flutter是否已失去竞争力? 前言近年来跨平台开发框架逐渐成为开发界的主流。其中Flutter作为谷歌推出的一款备受关注的UI工具包曾一度受到广泛关注。然而在2023年我们似乎很少听到关于Flutter的讨论。那么Flutter是否已经失去竞争力Flutter 的引入和发展2017年闲鱼引入了 Flutter。2019年闲鱼开始推进 Flutter 在闲鱼的应用进行大规模的落地。在这三年的实践中闲鱼不断修正 Bug 提高 Flutter 的稳定性并同步给 Google甚至琢磨出了一套自己的混合技术方案开源了 Flutter Boost 引擎。到现在闲鱼几乎已经完全拥抱flutter但是质疑的声音从开始到现在一直没有停过。甚至有传言Flutter 正在被放弃。身边批判的声音也不少比如Flutter 只是重复造轮子根本就没啥亮点Flutter 用 Dart 语言就是一个致命缺点那些用 Flutter 框架的APP真的拉跨……新技术的涌现和竞争随着科技的飞速发展市场上不断涌现出新的技术和框架。现在的跨平台框架真是跟打了鸡血似的跟生产队的驴一样玩命的更新啊一会儿功夫就遍地开花。相较于Flutter一些新兴的跨平台框架如React Native、Unity等为开发者提供了更多选择。这些框架不仅在性能上表现优秀而且在社区支持和生态系统方面也日益完善。而像KMM 、更是凭借kotlin语言和后面的金主爸爸谷歌也是在快速崛起。KMM与 Flutter 这种框架的思想相反KMM 是用一套语言生成多个平台特定的字节码所有的翻译工作由 kotlinc 或 kotlin-nativec 编译器来执行从某种角度来讲是『从上到下』而 Flutter 的思想是『从下到上』这也决定了两种框架适用的场景Flutter 就适合绘制 UI而 KMM 则是更适合与 UI 无关的逻辑代码比如Model 层网络请求、数据解析、建模等它两成本差异使用 Flutter 需要在 App 包内部增加两个引擎一个是 Flutter 的渲染引擎该引擎使用 C/C 开发直接调用 OpenGL/Skia 的 API 进行绘制从而摆脱 iOS的 UIKit 以及 Android 的 View 组件直接渲染成需要的样式从保证样式高度统一另一个是 Dart 语言的 Runtime用于解析并运行 Dart 语言编译的 Bundle这两者减小了开发者的适配成本但增大了 APP 的包体积其他类似的跨平台框架如React Native 等也会内置JavaScript Core 或 V8 引擎KMM 针对不同平台生成不同的二进制依赖包根本上还是调用了 Android、iOS 的原生 API并不会内置引擎这类文件对App的体积影响相对较小同时也保证了性能技术栈虽然Flutter在跨平台开发方面具有很多优势但对于新手开发者来说学习曲线仍然相对较高Flutter 使用 Dart 开发无论是 Web 开发者还是原生 App开发者都需要抽时间去学习一门新的语言理解新的开发模式虽然 Dart 与 JavaScript、Java 有着类似之处且开发形式和React 相近但仍有一定学习门槛Kotlin 已经成为 Google 官方主推的 Android开发语言且由于 Kotlin 与Java 交互非常方便目前大部分 Android 开发者已经完全切换到 Kotlin 来进行 App开发很多与平台无关的工具类、算法、数据模型可以直接利用 KMM 实现跨平台与 Flutter 相比至少 Android开发者的门槛要求几乎为零Flutter的不可取代的优势稳定Flutter UI由于自绘UI从而避免了平台层面的UI和系统升级导致的各种兼容问题。但是作为跨平台开发技术不可避免的需要去维护底层适配层和各种插件实现与原始平台的通信这是所有跨平台的通病。大型项目都爱用FlutterFlutter采用自渲染引擎能够实现高性能的UI体验。与基于Web技术的React Native等框架相比Flutter在性能上具有明显优势。这对于大型项目而言尤为重要因为这些项目往往需要处理大量数据保证应用的流畅性和响应速度。热重载功能Flutter的热重载功能使得开发者可以在无需重新编译和安装的情况下快速预览和调试代码更改。这对于大型项目的开发过程具有极大的帮助可以大大提高开发效率。最后综上所述虽然Flutter在跨平台开发领域具有一定的优势但在面对新技术、学习曲线、谷歌战略调整和企业采用情况等多重挑战时它在市场上的地位可能已经受到影响。然而这并不意味着Flutter已经竞争力。大厂对Flutter仍然青睐有加。Flutter是谷歌的移动UI框架可以快速在iOS和Android上构建高质量的原生用户界面。 Flutter可以与现有的代码一起工作。在全世界Flutter正在被越来越多的开发者和组织使用并且Flutter是完全免费、开源的。在这里为了方便大家系统的学习Flutter这里特意联合了阿里P7架构师和谷歌技术团队共同整理了一份Flutter全家桶学习资料。内容概要Flutter技术解析与实战、Flutter进阶学习笔记、Flutter入门与实战和Flutter完整开发实战详解。内容特点条理清晰含图像化表示更加易懂。由于文章内容比较多篇幅有限资料已经被整理成了PDF文档有需要 Flutter技术解析与实战 完整文档的可扫描下方卡片免费获取目录第一章 为什么 Flutter 是跨平台开发 的终极之选01 这是为什么02 跨平台开发03 什么是 Flutter04 Flutter 的特性第二章 在 Windows 上搭建 Flutter 开发环境01 使用镜像02 系统要求03 获取 Flutter SDK04 编辑器设置05Android 设置第三章 编写您的第一个 Flutter App第四章 Flutter 开发环境搭建和调试1.开发环境的搭建2.模拟器的安装与调试3.开发环境的搭建4.模拟器的安装与调试
返回列表