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 有一个全新认知。感谢大家一直的支持,后期还会带来更精彩的内容~

相关推荐
●VON8 小时前
鸿蒙Flutter实战:分类管理页BottomSheet CRUD
数据库·flutter·华为·harmonyos·鸿蒙
Meteors.10 小时前
安卓源码阅读——01.grade设置binding为true时,xml如何进行映射
android·xml
_李小白10 小时前
【android opencv学习笔记】Day 26: 滤波算法之低通滤波与图像缩放插值
android·opencv·学习
NiceCloud喜云11 小时前
Claude Code Routines 实战:三种触发器跑通云端自动化编码
android·运维·数据库·人工智能·自动化·json·飞书
woodWu12 小时前
Flutter 复杂拖拽排序实战:同源排序 + 跨容器拖拽完整落地
flutter
小小小小小鹿12 小时前
Vibe Coding 实战:Flutter 自定义路径布局
flutter·vibecoding
我命由我1234514 小时前
Bugly - Bugly 基本使用( App 质量追踪平台)
android·java·java-ee·android studio·android jetpack·android-studio·android runtime
weiggle14 小时前
第二篇:搭建你的第一个 Compose 项目——开发环境与项目结构
android·前端
阿巴斯甜15 小时前
为什么 AIDL 接口客户端、服务端要写两份一模一样的?
android