新書推薦:
《
铝合金先进成型技术
》
售價:HK$
266.6
《
《全面与进步跨太平洋伙伴关系协定》国有企业条款研究
》
售價:HK$
98.6
《
银行业架构网络BIAN(全球数字化时代金融服务业框架)(数字化转型与创新管理丛书)
》
售價:HK$
98.6
《
金托邦:江湖中的沉重正义
》
售價:HK$
60.5
《
易经今解:释疑·解惑·见微
》
售價:HK$
88.5
《
东欧史(全二册)-“中间地带”的困境
》
售價:HK$
221.8
《
虚拟资本:金融怎样挪用我们的未来
》
售價:HK$
77.3
《
刻意练习不生气
》
售價:HK$
39.2
|
編輯推薦: |
本书是一本全面介绍Flutter跨平台框架的书籍,主要分为入门,进阶和实战三部分,细分为13章。入门篇包括背景知识、环境搭建、基础语法、组件和API等;进阶篇包括网络通信、第三方插件、热更新和应用打包发布等;实战篇则是一个综合的开发案例,让读者快速的上手项目开发。每个阶段的知识都是层层深入且环环相扣的,能够帮助读者对Flutter框架的原理与应用有一个全面的认识。
本书适合具有一定Android/iOS原生开发基础的一线APP开发工程师、大中专院校相关专业师生、培训班学员学习,可用于夯实基础,提Flutter开发实战技能。
|
內容簡介: |
本书是一本全面介绍Flutter跨平台框架的书籍,主要分为入门,进阶和实战三部分,细分为13章。入门篇包括背景知识、环境搭建、基础语法、组件和API等;进阶篇包括网络通信、第三方插件、热更新和应用打包发布等;实战篇则是一个综合的开发案例,让读者快速的上手项目开发。每个阶段的知识都是层层深入且环环相扣的,能够帮助读者对Flutter框架的原理与应用有一个全面的认识。
本书适合具有一定Android/iOS原生开发基础的一线APP开发工程师、大中专院校相关专业师生、培训班学员学习,可用于夯实基础,提Flutter开发实战技能。
|
關於作者: |
向治洪,前端开发专家,10余年软件开发经验,多年互联网大厂实战经验,著有《React Native移动开发实战》、《Kotlin入门与实战》、《Weex跨平台开发与实战》、《Flutter跨平台开发入门与实战》和《Android应用开发详解》等;
在CSDN、掘金社区、知乎、腾讯云等技术社区拥有十万粉丝,千万的访问量;
|
目錄:
|
第1章 初识Flutter1
1.1 Flutter简介 1
1.1.1 Flutter诞生历史2
1.1.2 Flutter优势2
1.1.3 Flutter版本3
1.2 Flutter框架 4
1.2.1 Flutter Framework4
1.2.2 Flutter Engine5
1.2.3 Flutter Embedder5
第2章 Flutter快速上手6
2.1 Flutter环境搭建 6
2.1.1 Android环境6
2.1.2 iOS环境8
2.1.3 获取Flutter SDK9
2.2 开发工具 10
2.2.1 VS Code10
2.2.2 Android Studio11
2.3 Flutter项目示例 12
2.3.1 初始化项目13
2.3.2 项目结构14
2.3.3 运行项目14
2.3.4 程序调试15
2.3.5 体验热重载16
2.3.6 包管理17
2.4 习题 19
第3章 Dart语言基础20
3.1 Dart入门 20
3.1.1 安装Dart SDK20
3.1.2 编写Hello World21
3.2 变量与常量 21
3.2.1 变量21
3.2.2 常量22
3.3 内置类型 22
3.3.1 数值类型22
3.3.2 字符串类型23
3.3.3 布尔类型23
3.3.4 数组23
3.3.5 集合24
3.3.6 Map24
3.3.7 Runes25
3.3.8 Symbols25
3.4 函数 25
3.4.1 参数26
3.4.2 main()函数26
3.4.3 匿名函数26
3.4.4 闭包函数27
3.4.5 返回值27
3.5 类 28
3.5.1 类的成员28
3.5.2 构造函数28
3.5.3 接口与抽象类29
3.6 空安全 29
3.6.1 启用空安全29
3.6.2 空和非空30
3.6.3 空断言操作符30
3.6.4 类型提升30
3.6.5 late关键字31
3.7 异步编程 31
3.7.1 同步和异步编程31
3.7.2 Isolate32
3.7.3 Future33
3.7.4 async/await34
3.7.5 Stream35
3.8 异常 37
3.9 习题 38
第4章 Flutter组件40
4.1 计数器应用 40
4.2 组件基础知识 41
4.2.1 Widget简介41
4.2.2 StatelessWidget42
4.2.3 StatefulWidget43
4.2.4 MaterialApp45
4.2.5 State45
4.3 容器组件 47
4.3.1 Container47
4.3.2 Scaffold49
4.3.3 DecoratedBox50
4.4 功能组件 52
4.4.1 Text52
4.4.2 Button53
4.4.3 TextField54
4.4.4 Image56
4.5 布局开发 58
4.5.1 布局模型与约束58
4.5.2 线性布局59
4.5.3 弹性布局60
4.5.4 流式布局61
4.5.5 层叠布局64
4.6 可滚动组件 66
4.6.1 Sliver布局模型66
4.6.2 SingleChildScrollView67
4.6.3 ListView68
4.6.4 滚动监听70
4.6.5 PageView73
4.6.6 CustomScrollView75
4.7 习题 78
第5章 事件处理79
5.1 指针事件 79
5.1.1 基本概念79
5.1.2 Listener组件80
5.1.3 忽略指针事件81
5.2 手势识别 81
5.2.1 基本概念81
5.2.2 常用事件82
5.2.3 手势识别器83
5.3 手势竞争与手势冲突 86
5.3.1 手势竞争86
5.3.2 手势冲突87
5.4 事件总线 89
5.5 习题 92
第6章 动画93
6.1 动画基础 93
6.2 动画API 94
6.2.1 Animation94
6.2.2 AnimationController95
6.2.3 Curve95
6.2.4 Tween96
6.2.5 综合示例97
6.3 Hero动画 99
6.4 交织动画 100
6.5 Rive动画 103
6.6 习题 108
第7章 路由与导航110
7.1 路由基础 110
7.1.1 基本概念110
7.1.2 路由使用111
7.1.3 命名路由112
7.1.4 路由传参113
7.1.5 路由嵌套115
7.2 路由栈管理 116
7.2.1 路由栈简介116
7.2.2 pushReplacement117
7.2.3 pushAndRemove-Until117
7.2.4 popUntil118
7.3 自定义路由 119
7.3.1 自定义路由动画119
7.3.2 Fluro120
7.4 习题 123
第8章 网络编程124
8.1 网络基础 124
8.1.1 HTTP124
8.1.2 HTTPS126
8.1.3 GET与POST127
8.2 网络请求 128
8.2.1 HttpClient128
8.2.2 http129
8.2.3 dio130
8.3 JSON解析 133
8.3.1 手动解析133
8.3.2 自动解析135
8.4 异步编程 137
8.4.1 事件循环137
8.4.2 Isolate139
8.4.3 线程管理143
8.4.4 事件流145
8.4.5 FutrueBuilder146
8.5 习题 148
第9章 数据存储149
9.1 SharedPreterences存储 149
9.1.1 基本操作149
9.1.2 综合示例150
9.2 SQLite存储 152
9.2.1 基本操作152
9.2.2 数据库工具类157
9.2.3 综合示例159
9.3 文件存储 161
9.3.1 基本概念161
9.3.2 文件操作工具类163
9.3.3 综合示例164
9.4 习题 168
第10章 主题与国际化169
10.1 应用主题 169
10.1.1 Theme与ThemeData169
10.1.2 全局主题170
10.1.3 局部主题171
10.1.4 主题换肤172
10.2 多语言支持 174
10.2.1 支持国际化174
10.2.2 自定义Delegate176
10.3 Intl国际化 178
10.3.1 安装Intl插件178
10.3.2 创建语言文件179
10.3.3 实现国际化180
10.4 习题 181
第11章 混合开发182
11.1 混合开发简介 182
11.2 集成Flutter 183
11.2.1 Flutter模块183
11.2.2 原生Android集成Flutter184
11.2.3 原生iOS集成Flutter186
11.2.4 热重载与调试190
11.3 与原生平台通信 191
11.3.1 混合工程通信191
11.3.2 BasicMessage-Channel192
11.3.3 MethodChannel195
11.3.4 EventChannel198
11.4 混合路由栈管理 201
11.4.1 混合路由导航201
11.4.2 原生导航到Flutter202
11.4.3 Flutter导航到原生203
11.5 FlutterBoost 206
11.5.1 FlutterBoost简介206
11.5.2 原生Android集成FlutterBoost206
11.5.3 原生iOS集成FlutterBoost209
11.5.4 路由API211
11.5.5 生命周期函数213
11.6 Flutter插件开发 214
11.6.1 新建插件项目214
11.6.2 示例插件215
11.6.3 插件开发217
11.6.4 运行插件221
11.6.5 发布插件221
11.7 习题 222
第12章 Flutter Web224
12.1 Flutter Web简介 224
12.2 Flutter Web实战 226
12.2.1 项目创建与运行226
12.2.2 调试项目226
12.2.3 打包与部署228
12.3 Flutter Desk实战 230
12.3.1 Flutter Desk简介230
12.3.2 Flutter Desk实战231
12.3.3 Flutter Desk打包232
12.4 Fair动态化 235
12.4.1 Fair简介235
12.4.2 接入Fair236
12.4.3 热更新体验237
12.4.4 热更新平台239
12.4.5 热更新API242
12.4.6 Fair原理244
12.5 习题 246
第13章 书旗小说应用实战247
13.1 项目背景 247
13.2 项目搭建 248
13.2.1 创建项目248
13.2.2 构建主框架249
13.2.3 网络请求251
13.2.4 网页组件251
13.2.5 接入tts253
13.3 书架 254
13.3.1 阅读记录254
13.3.2 我的书架255
13.3.3 书架管理257
13.3.4 确认弹框260
13.3.5 推荐图书列表262
13.4 图书搜索 263
13.5 书城 266
13.5.1 书城分类266
13.5.2 轮播图267
13.5.3 图书分类268
13.6 图书详情 270
13.6.1 图书简介270
13.6.2 图书章节271
13.6.3 书友评论272
13.6.4 发布评论274
13.7 阅读器开发 274
13.7.1 创建操作栏274
13.7.2 阅读器翻页276
13.7.3 下拉菜单276
13.7.4 黑白模式277
13.8 性能分析与优化 279
13.8.1 检测工具279
13.8.2 GPU问题分析281
13.8.3 UI问题分析283
13.8.4 布局优化284
13.8.5 内存优化285
第14章 打包与发布286
14.1 应用配置 286
14.1.1 配置启动页286
14.1.2 更改默认配置288
14.2 Android发布 289
14.2.1 创建签名文件289
14.2.2 制作签名包291
14.3 iOS发布 291
14.3.1 加入苹果开发者计划291
14.3.2 添加证书配置292
14.3.3 注册App ID294
14.3.4 使用Xcode打包294
14.3.5 发布iOS包297
|
內容試閱:
|
众所周知,传统的原生Android、iOS开发技术虽然比较成熟,但多端重复开发和开发效率低下也是很多企业不愿意接受的,而不断崛起的跨平台技术让企业看到了希望,“一次编写,处处运行”不再是难以企及的目标。
作为Google开源的一套跨平台开发框架,Flutter既支持移动应用开发,又支持Web、桌面和嵌入式平台应用的开发,真正帮助开发者通过一套代码即可高效构建多平台应用。并且,自2018年12月发布Flutter 1.0版本以来,越来越多的公司开始采用Flutter技术进行跨平台移动端应用开发,Flutter也逐渐进入移动应用开发者的视野,越来越多的开发者也逐渐投入Flutter的学习和开发中。
“路漫漫其修远兮,吾将上下而求索”,通过Flutter跨平台技术的学习和本书的写作,我深刻地意识到学无止境的含义。2019年,我出版了第一本Flutter应用开发书籍,正是那时候开始,我一直关注着Flutter技术的发展。多年以来,Flutter进行了多个版本的更新,之前的知识已经过时,升级显得很有必要,于是在2023年我对Flutter知识体系重新进行了梳理并升级,于是有了本书。
本书是一本实战类型的书籍,旨在帮助开发者快速掌握Flutter跨平台开发技术,并将Flutter技术快速地运用到实际项目开发中。同时,本书摒弃了传统软件开发类书籍逐个知识点介绍的编排模式,而采用“案例诠释理论内涵、项目推动实践创新”的编写思路,既讲解项目的实现过程和步骤,又讲解项目实现所需的理论知识和技术,让读者掌握理论知识后会灵活运用,并在新项目开发中拓展创新。相信本书定会对您学习Flutter技术带来帮助和启发。
本书定位为Flutter应用程序开发入门到实战,是一本零基础到项目实战能力提升的技术进阶类图书。基础部分主要介绍的是Flutter框架跨平台开发相关知识,如Flutter框架背景、开发环境搭建、基础组件、布局、跳转和路由、动画、手势识别与事件处理、数据存储与访问、状态管理、HTTP网络请求与服务器端数据的交互等。实战部分则主要介绍的是Flutter工程化开发的相关内容,如混合开发、应用主题、Flutter Web和Desk应用开发、基于Fair的动态化以及Flutter项目实战。
本书以实战为主,理论和实践相结合,通过大量的代码演示和讲解从小项目到一个相对完整的课程项目的实现。期待读者在学习本书之后,能够综合运用各种组件及第三方库,熟练掌握Flutter框架进行软件项目的设计、开发和上线。另外,书中的小说项目案例详细阐述了如何使用Flutter框架进行跨平台移动开发,内容翔实、步骤清晰,为实际软件项目开发工作提供了现实的参考解决方案。
本书特色
(1)侧重基础,循序渐进。
本书涵盖Flutter跨平台开发各方面的基础知识点,并且对知识点和技术要点由浅入深地进行讲解,非常适合初学者。
(2)大量项目实例,内容翔实。
本书在讲解Flutter的各个知识点时,运用了大量的实例并配有运行效果图和源码。读者在自行练习时可以参考源码进行学习。
(3)实例贴近实际开发场景。
本书采用的实例大多贴近实际开发场景,通俗易懂的文字描述也有助于读者理解,项目实战也遵循商业项目的开发流程,最大程度还原商业应用的开发过程。
作者
2024年1月
|
|