[译] 为什么每个 Android 开发者都应该尝试 Flutter,我的移动开发春季历程

本文探讨了Flutter如何通过将UI开发融入Dart代码,提供声明性用户界面,与Android的传统XML布局相比,显著提高了效率和动态性。作者强调了Flutter在动画和自定义组件开发中的优势,尤其是在处理复杂UI和数据绑定时。
摘要由CSDN通过智能技术生成

几个月前,我写过一篇题为“为什么 Flutter 能最好地改变移动开发”的文章。虽然已经过去了一段时间,但是我对 Flutter 的热爱依然非常强烈;事实上,当我继续使用它时,我意识到了我之前忽略了 Flutter 独特方面的重要性。不要误会我的意思 —— 我仍然认为 Flutter 最强大的一点就是如何解决跨平台开发的许多问题。但最近我开始关注移动开发发展的更多领域,特别是声明性用户界面的概念。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

摄影者:来自 UnsplashChris Charles

我相信你已经听过一系列关于为什么 Android 开发者应该关注 Flutter 的若干论据(如果你还没有看过,请让我谦逊地建议你瞧瞧这个),但是我想指出一个我还没有真正解决的大问题,那就是 Flutter 可以让你对 App 开发有完全不同的看法。首先,你的应用本身将采用不同的方式构建 —— 但更重要的是,实际的 UI 开发通过将其合并到你的 Dart 代码(而不是 XML)中而被推到前台,因此使它成为了“一等公民”。一旦你的 UI 代码突然出现在一种非标记语言中,你就会意识到你突然有了构建应用的可能性。说实话,在使用 Flutter 之后,我开始讨厌在 Android 上编写 UI 代码;因为在 Android 中步骤更加繁琐,虽然你仍然可以使用数据绑定等工具构建响应式应用,但它实际上比 Flutter 中要花费更多的时间。

当你考虑在 Android 中整合动画和其他动态数据时,使用 Flutter 的论点变得更加有力。整合动画可能会不太方便,有时你可能不得不拒绝设计师的要求,因为要实现他们的需求太难了。谢天谢地,Flutter 改变了这一切。如果你一直在关注 Flutter,你可能已经从 Fluttery 听说过 Flutter 挑战。这些挑战展示了构建具有大量自定义组件和精美设计(包括动画)的复杂 UI 的快速和直观性。在 Android 上实现这样的东西会变得非常困难 —— 特别是因为与 Flutter 不同,Android 的视图基于继承而非组合,这使得构建视图变得更加复杂。

下面,让我们切入正题:使用 Flutter 构建声明性 UI,这改变了 UI 开发的一切。现在也许你在想,Android 布局不也是以声明方式构建的吗? 答案是肯定的,但事实不是。使用 XML 来定义布局让我们有了以声明方式定义布局的感觉,但如果你的视图是完全静态的,并且所有数据都是以 XML 格式设置的,那么这种感觉才真正成立。不幸的是,这种情况几乎从未发生过;一旦添加动态数据和类似列表之类的东西,你自然必须使用一些 Java / Kotlin 代码将数据绑定到视图。然后我们最终得到某种 ViewModel,它将数据设置为视图。想象一下,这就像在 Android 上调用 textView.text =“Hello Medium!” 一样。在 Flutter 上,这是完全不同的:你创建了一个包含某个状态的窗口组件类,然后根据该状态以声明方式定义你的布局。每当状态改变时,我们调用 setState() 来重新渲染我们改变的组件树的部分。让我们看一下如何在 Flutter 中使用 API,并使用结果渲染一个 List:

@override
Widget build(BuildContext context) {
return new FutureBuilder(
future: apiClient.getUserRepositoriesFuture(username),
builder: (BuildContext context,
AsyncSnapshot snapshot) {
if (snapshot.hasError)
return new Center(child: new Text(“Network error”));
if (!snapshot.hasData)
return new Center(
child: new CircularProgressIndicator(),
);

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数初中级安卓工程师,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年最新Android移动开发全套学习资料》送给大家,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
img
img
img
img

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频
如果你觉得这些内容对你有帮助,可以添加下面V无偿领取!(备注Android)
img

外链图片转存中…(img-maS20nFx-1710929583511)]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值