Flutter 小册 | 导航路由已上架

继正则小册完成后,历时半年打磨,Flutter 实战系列小册再加一名成员:《Flutter 路由导航: 源码探索与实战

juejin.cn/book/725511...


1. 目前 Flutter 小册一览

Flutter 框架层基础: 售价 3.5

Flutter 实战系列: 售价 9.9


2. 路由小册的内容介绍

本册主要探索 Flutter 导航系统和路由体系的原理实现,并基于 2.0 的声明式导航进行实战使用。主要有 4 个部分,两大类别:

我们最终会实现一个支持多级菜单导航的应用程序:它一方面能很好地展示出树形路由结构的使用,另一方面可以收录所有小册中的代码案例,以便大家可以快速检阅各个小册代码的效果,可谓一举两得。

在点击菜单中对应小册的相关章节,会进行局部导航跳转到对应章节的代码示例。也可以通过查看源码,从而提高读者整体的观感体验。


  • 第一部分:Flutter 导航系统的源码分析。

这是本册最核心的一部分,它介绍了 Flutter 导航系统的源码,以及导航操作运转流程中的参与类型。是认知导航运行机制的重要一环,也是后面探索导航 2.0 的基础。在此你将深刻认识到,应用中界面是如何被维护的。


  • 第二部分:Flutter 路由体系源码分析。

路由是界面的身份标识,是导航过程中的关键参与者,导航状态类会持有路由栈,并在导航操作中维护数据。在 Flutter 中,路由有着比较复杂的派生体系以及生命周期变化和回调,这部分将会从源码层全面分析路由类。


  • 第三部分:Flutter 导航 2.0 的探索与源码分析

声名式的导航操作被称为 Flutter 导航 2.0 版本,这一部分将从它的必要性开始,循序渐进地带大家了解它的使用以及源码实现。真正知道导航 2.0 的强大之处以及它带给导航的可能性,还会分析官方的基于导航 2.0 推出的导航库 go_router 的源码设计。


  • 第四部分:使用导航完成综合案例集

最后,我们将基于官方的 go_router 导航库,来实现案例合集的综合项目;并在其中介绍自定义路由动画的相关内容。


也可以从导航和路由两大块来对本册进行划分,包含导航系统、导航体系的源码探索与使用:


3. 本册源码介绍

书写本册过程中 Flutter 版本为: 3.13.9

阅读时最好使用此版本,因为涉及到大量的源码分析,各个版本会有略微的差异。但总体的导航体系并不会发生特别大的变化,如果未来 Flutter 版本中导航相关内容有重大变化,将会在附录篇章进行更新。


本册的所有案例测试源码仓库位于 iroute

注意,本册源码一共有三个分支,分别对应不同的阶段:

  • 第一阶段: Flutter 导航体系的源码探索,测试代码位于 route/master 。这个阶段将全面分析 Flutter 导航路由相关的源码:

  • 第二阶段: Flutter 导航 2.0 的探索,测试代码位于 route/app。这个阶段将基于下面的总和案例一点点的探索和认知 Flutter 导航 2.0 体系及源码实现:

  • 第三阶段:Flutter 小册全集应用的案例集录,测试代码位于 route/flutter_books。这个阶段将对前面学习的知识进行综合运用:

让我们一起开始探索 Flutter 路由导航的探索吧。相信本册阅读完后,会让你对Flutter 有一个全新认知。感谢大家一直的支持,后期还会带来更精彩的内容~

相关推荐
平头哥AI5 小时前
Day 22 _ 包装错误别丢链_%w、errors.Is 与 errors.As
android·服务器·学习·golang·go
聚美智数6 小时前
图片广告检测-图片审核-图片广告识别-图像广告检测
android
早睡早起身体好1239 小时前
用 XGrammar 约束大模型工具调用:解决参数为空的问题
android·人工智能·神经网络·机器学习·自然语言处理·vllm
大佐不会说日语~10 小时前
Android 16 下 uni-app APP 提示“网络连接失败”的排障与修复
android·uni-app
2501_9151063212 小时前
苹果App Store上架费用及流程全面解析
android·ios·小程序·https·uni-app·iphone·webview
YF021113 小时前
Android 16系统App开机自启动方案
android
西西学代码14 小时前
尾灯-应用层通信协议(BLE)
flutter
hm宋14 小时前
安卓手机卡顿优化 —— 背景与使用指南
android
OxYGC15 小时前
[Android] [WatchOS]智能手表第一篇: 实用工具与应用推荐
android·智能手表
嘟哩DuliDuli16 小时前
创作 Agent 的任务状态该如何保存
android·java·javascript