定 价:¥79.80
作 者: | (荷兰)弗兰克·扎米蒂 |
出版社: | 清华大学出版社 |
丛编项: | |
标 签: | 暂缺 |
ISBN: | 9787302556084 | 出版时间: | 2020-07-01 | 包装: | |
开本: | 16 | 页数: | 字数: |
目 录
第1章 初识Flutter 1
1.1 在深渊中沉思 1
1.2 透过名字这一表象 3
1.3 Dart:众神的语言 4
1.4 拥抱微件 7
1.5 言归正传:Flutter的优劣对比 11
1.6 无须多言,向Flutter进发吧 13
1.7 Flutter SDK 14
1.8 Android Studio 14
1.9 (不那么)经典的“Hello, World!”应用 15
1.10 热重载:你会喜欢上它的 23
1.11 Flutter应用的基本结构 24
1.12 其他一些“隐藏的”细节 27
1.13 小结 28
第2章 Dart核心技术 29
2.1 必知必会 29
2.1.1 没有注释:关于注释的一切 30
2.1.2 万物皆可变:变量 32
2.1.3 物以类聚:数据类型 34
2.2 当单个值不够用时:使用枚举 39
2.3 是什么类型:关键字as和is 40
2.4 顺序执行:流程控制(及逻辑)结构 41
2.5 一无所有:void 43
2.6 操作符 44
2.7 将结合点分类:Dart中的面向对象 46
2.8 让函数变得有趣 55
2.9 断言 58
2.10 超时了:异步 58
2.11 保持安静:库(及可见性) 59
2.12 凡事总有例外:异常处理 61
2.13 生成器 62
2.14 元数据 64
2.15 泛泛而谈:泛型 64
2.16 小结 66
第3章 你好Flutter,第一部分 67
3.1 微件速览 67
3.1.1 布局微件 68
3.1.2 导航微件 78
3.1.3 输入表单类微件 87
3.1.4 对话框、弹窗、消息微件 100
3.2 小结 108
第4章 你好Flutter,第二部分 109
4.1 微件样式 109
4.1.1 Theme微件和ThemeData 109
4.1.2 Opacity微件 111
4.1.3 DecoratedBox微件 111
4.1.4 Transform微件 112
4.2 动画和过渡 113
4.2.1 AnimatedContainer 113
4.2.2 AnimatedCrossFade微件 114
4.2.3 AnimatedDefaultTextStyle微件 116
4.2.4 其他微件 117
4.3 拖放 117
4.4 数据视图 119
4.4.1 Table微件 119
4.4.2 DataTable微件 121
4.4.3 GridView微件 123
4.4.4 ListView和ListTile微件 125
4.5 其他微件 127
4.5.1 CircularProgressIndicator(CupertinoActivityIndicator)和LinearProgressIndicator微件 127
4.5.2 Icon微件 128
4.5.3 Image微件 130
4.5.4 Chip微件 131
4.5.5 FloatingActionButton微件 133
4.5.6 PopupMenuButton微件 134
4.6 常用API 136
4.6.1 核心Flutter框架库 136
4.6.2 Dart库 138
4.6.3 其他(支持)库 140
4.7 小结 141
第5章 FlutterBook,第一部分 143
5.1 我们在构建什么 143
5.2 启动项目 145
5.3 配置和插件 145
5.4 UI结构 147
5.5 应用的代码结构 148
5.6 起跑线 148
5.7 一些全局工具类 151
5.8 关于状态管理 153
5.9 从简单的开始:便签 156
5.9.1 起点:Notes.dart 157
5.9.2 模型:NotesModel.dart 158
5.9.3 数据库层:NotesDBWorker.dart 160
5.9.4 列表页:NotesList.dart 165
5.9.5 输入页:NotesEntry.dart 171
5.10 小结 179
第6章 FlutterBook,第二部分 181
6.1 搞定这一切:任务 181
6.1.1 TasksModel.dart 181
6.1.2 TasksDBWorker.dart 182
6.1.3 Tasks.dart 182
6.1.4 TasksList.dart 183
6.1.5 TasksEntry.dart 185
6.2 定个日子:约会 187
6.2.1 AppointmentsModel.dart 187
6.2.2 AppointmentsDBWorker.dart 188
6.2.3 Appointments.dart 188
6.2.4 AppointmentsList.dart 188
6.2.5 AppointmentsEntry.dart 196
6.3 伸出你的手:联系人 198
6.3.1 ContactsModel.dart 198
6.3.2 ContactsDBWorker.dart 199
6.3.3 Contacts.dart 199
6.3.4 ContactsList.dart 199
6.3.5 ContactsEntry.dart 204
6.4 小结 210
第7章 FlutterChat,第一部分:服务端 211
7.1 我们要构建的是什么 211
7.2 Node 212
7.3 保持通信畅通:socket.io 215
7.4 FlutterChat服务端代码 218
7.4.1 两个状态和一个对象相遇 219
7.4.2 消息钩子 221
7.5 小结 230
第8章 FlutterChat,第二部分:客户端 231
8.1 Model.dart 231
8.2 Connector.dart 234
8.2.1 服务端消息函数 237
8.2.2 客户端消息函数 239
8.3 main.dart 241
8.4 LoginDialog.dart 245
8.5 Home.dart 250
8.6 AppDrawer.dart 251
8.7 Lobby.dart 254
8.8 CreateRoom.dart 257
8.9 UserList.dart 262
8.10 Room.dart 265
8.10.1 聊天室功能菜单 266
8.10.2 主界面内容 269
8.10.3 邀请或踢出用户 272
8.11 小结 276
第9章 FlutterHero:一款Flutter游戏 277
9.1 故事起源 277
9.2 基本布局 278
9.3 目录结构与组件源文件 279
9.4 配置:pubspec.yaml 280
9.5 GameObject类 281
9.6 GameObject类的扩展:Enemy类 286
9.7 GameObject类的扩展:Player类 287
9.8 一切开始的地方:main.dart 291
9.9 主游戏循环和核心游戏逻辑 296
9.9.1 起始 296
9.9.2 首次初始化 297
9.9.3 Flutter动画简介 298
9.9.4 重置游戏状态 300
9.9.5 主游戏循环 302
9.9.6 检查碰撞 305
9.9.7 随机定位对象 307
9.9.8 转移能量 307
9.10 控制:InputController.dart 310
9.11 小结 312