跳到主要内容

18 篇博文 含有标签「Flutter」

查看所有标签

给Flutter build_runner加速

· 阅读需 2 分钟

Flutter 的 dart sdk是不带反射功能的,导致社区需要开发一些注解工具来辅助生成一些模板代码,大部分都是基于官方的build_runner 工具。

但是在构建的时候,每次都去生成模板代码,非常耗时。尤其是当你的项目比较大时,有可能超过1分多钟来等待处理完成,而且每次都得重新编译,非常影响开发效率。

另外,你用的生成库越多,越影响生成速度。

为什么Flutter官方团队推荐Class组件而不是函数组件?

· 阅读需 6 分钟
提示

Update (2024-11-05): 阅读了一些新的文章,补充更多细节。

在 Flutter 开发中,我们经常需要创建可重用的组件。这些组件可以是简单的 UI 元素,也可以是复杂的布局结构。

一般主要有两种方式来定义这些组件:

  • 使用类(class)
  • 使用函数(function)

很多人使用函数创建组件,更多的考虑是速度,更快的编码。不可否认的是,相比类组件而言,函数组件省了好几行代码,比如构造函数和变量定义部分。在我的工作中,也经常看见大量使用函数返回 widget 来创建组件,但是官方的 Flutter 团队更推荐使用类。

为什么?本文将详细探讨这一原因。

2023 年 Google I/O 的 Flutter 主题内容

· 阅读需 6 分钟

2023 年 的 Google I/O 大会 于 5 月 10 日开幕,采用现场直播的形式。

本届大会的核心主题是 AI,Google 为了对抗 OpenAI 的 ChatGPT 真是费了老大劲。

本文有选择的提取 Flutter 相关的主题演讲和 Codelab,偏向于纯 Flutter 开发相关的内容,过滤对 Google 业务相关的主题,比如 Material You 和 Firebase 等内容。

其实,我们在平时的开发中,只需要关注 Flutter 官网即可,那里就有最新的 Flutter 版本更新,已经今后的 Roadmap。Google I/O 提供的 Flutter 相关的演讲,更多是偏实践类的建议,或者 Google 员工在使用 Flutter 时是怎么考虑的,以及 Flutter Team 背后的故事。

Flutter 项目第三库精选

· 阅读需 7 分钟

Flutter 是一个强大的 UI 工具包,能够帮助开发者快速构建高性能的跨平台应用。为了提高开发效率和应用质量,Flutter 生态系统中有许多优秀的库可供使用。以下是一些常用的 Flutter 库,按照功能分类进行详细介绍。

Flutter App 架构的 Domain 层

· 阅读需 6 分钟

Flutter App 架构的 Domain 层

在现代 Flutter 应用开发中,架构设计的清晰性和可维护性至关重要。Domain 层作为架构的核心部分,负责封装业务逻辑和数据模型,是实现良好架构的关键。本文将深入探讨 Flutter 应用中的 Domain 层,包括其定义、组成部分以及如何有效地实现和测试。

Flutter App 架构的 Presentation 层

· 阅读需 5 分钟

在 Flutter 应用开发中,Presentation 层是用户界面与业务逻辑之间的桥梁。它负责展示数据并处理用户输入,同时确保业务逻辑与 UI 代码的分离。这种分离使得代码更加可测试和易于维护,尤其是在应用变得复杂时。本文将深入探讨 Flutter 应用中的 Presentation 层,包括其结构、功能以及如何有效实现。

Flutter App 架构之 Repository 模式

· 阅读需 10 分钟
信息

2024.10.20 更新: 补充 Repository 与状态管理结合的解决方案

在 Flutter 应用开发中,Repository 模式是一种重要的架构设计模式,它帮助我们有效地管理和访问不同数据源的数据。通过将数据访问逻辑与业务逻辑和用户界面分离,Repository 模式能够提高代码的可维护性和可测试性。本文将深入探讨 Repository 模式的定义、使用场景、实现细节以及如何进行测试。

Flutter App 架构图

Flutter App 架构之 Riverpod 库介绍

· 阅读需 8 分钟

Riverpod 是一个强大的状态管理库,旨在简化 Flutter 应用程序中的状态管理。作为 Provider 的演进版,Riverpod 提供了更灵活和可扩展的方式来处理应用程序的状态。本文将介绍 Riverpod 的基本使用,包括各种 Provider 类型的使用,以及与 Provider 的对比,并展示在真实开发场景中的应用。

Flutter 环境变量与 Flavor 的最佳实践

· 阅读需 12 分钟

flutter-flavors

提示

2024.10.20 更新: 优化文档结构,补充 ENVied 库内容

2024.6.27 更新: 补充原生环境读取 Flutter 环境变量的方法

2024.3.20 更新: Flutter 3.7 已经引入了 --dart-define-from-file 标志,它允许从文件中读取环境变量。

在 Flutter 开发中,如何管理 API 密钥和环境变量是一个关键问题。许多开发者可能会选择在代码中硬编码这些敏感信息,但这种做法存在诸多缺点。本文将探讨硬编码的缺陷、环境变量的优势、开源社区的可选方案,以及在真实环境中的实际应用。