全新正版书籍,24小时发货,可开发票。
¥ 62.4 7.8折 ¥ 79.8 全新
库存5件
作者[荷兰]弗兰克·扎米蒂(Frank Zammetti) 著;贡国栋 任强 译
出版社清华大学出版社
ISBN9787302556084
出版时间2020-07
装帧平装
开本16开
定价79.8元
货号28995385
上书时间2024-11-24
即使经过这么多年开发者们孜孜不倦的努力,创建如原生应用般外观、体验及功能的跨平台移动应用依旧是一个让人棘手的难题。你可以为各个平台分别编写原生代码,并尽可能让它们表现一致,这的确不失为使你的应用获得原生性能和能力的好办法。但实际上,这意味着你的应用要编写多次,而客户往往不太乐意为此买单!
与之相对的是,你可以基于HTML技术实现一次编码而到处运行。但那样的话,你将无法使用诸多本地设备能力,更别提差劲的性能表现了(诚然,有一些优化措施,但也只能减少而不是消除这些顾虑)。
由Google的天才工程师创建的Flutter平台提供了一种只需要编写一遍代码(或多或少),就能在Android和iOS两个平台上运行一致且具备原生性能和能力的方法。在移动开发库领域,使用现代工具和开发技术构建的Flutter为开发者提供了一种新的编程方式。
在《Flutter实战》中,你将通过构建两个真正的应用来学习Flutter,而非使用简化、笨拙而又矫揉造作的例子(尽管在早期会因介绍概念而引入一些此类例子)。是的,我们将一起构建可以按自己意愿并直接应用于实践的应用,而非进行简单的技术演示,并且在整个过程中,你会接触到开发过程中的各种问题,包括我曾遇到过的问题以及解决方案。这样,你就会获得在现实环境中使用Flutter的扎实而又真实的经验——并借此为将来构建自己的应用做好准备。
你还将学到构建应用的一些关联知识,如使用Node.js和WebSocket构建服务端。
除此之外,你还将学到类型截然不同的第三个应用:游戏!是的,我们将使用Flutter来构建游戏,以介绍Flutter的一些附加的、通过前两个应用不一定得到的功能,并且为你提供从不同视角审视Flutter的机会,以拓展你的视野。
你终将掌握Flutter,且具备使用Flutter构建自己的Next Big Thing应用的能力。
在开始阅读《Flutter实战》之前,我建议你打开Apress网站,搜索《Flutter实战》并下载源代码。你将得到所需的一切代码,而无须亲自输入!读者也可通过手机扫描封底的二维码下载《Flutter实战》的源代码。
不要忘了学习任何知识的好方式是动手实践,因此一定要深入代码,修改示例代码和应用,然后观察相应的变化。当你读完介绍每个应用的章节时,你应该打开源代码并尝试添加一两个功能(我还会给你一些这么做的建议,为你指明方向)。
我希望你能喜欢《Flutter实战》,并从中学到很多,这是我衷心的愿望!
《Flutter实战》围绕Flutter的跨平台能力及其来龙去脉展开讲解。当今,移动开发领域发展迅速,Flutter是由Google公司推出的开源移动应用开发SDK,使用Flutter可以为Android、iOS和Google Fuchsia系统开发应用。 通过学习本书,你将掌握三个可直接安装在自己的移动设备上并实际体验的应用(个人信息管理、聊天系统和游戏)。你将扎实掌握Flutter基础知识,并由此快速构建两个常见应用,你还将通过学习构建游戏项目,从完全不同的角度了解Flutter的强大功能。通过构建这三个应用,你将了解现实世界中发生的问题,并通过相关提示及技巧掌握解决办法,所有这些都将使你的Flutter学习高效且充满乐趣!
《Flutter实战》将使你掌握使用Flutter构建应用的能力,进而可以自行构建更高级的应用。完成本书的学习后,你将站在更高的起点并且能够做好充分准备,在Flutter开发领域从容应对任何挑战。本书是学习Flutter不可错过的经典作品。
Frank Zammetti是一位小有名气的技术作家,作为一名开发者,Frank写过各种各样的代码,在近40年的职业生涯中有25年从事专职软件开发。近,你会发现他的名片上印有架构师的头衔,但他内心深处仍然是一名程序员,并且几乎每天都在围着代码转。
第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
《Flutter实战》围绕Flutter的跨平台能力及其来龙去脉展开讲解。当今,移动开发领域发展迅速,Flutter是由Google公司推出的开源移动应用开发SDK,使用Flutter可以为Android、iOS和Google Fuchsia系统开发应用。 通过学习本书,你将掌握三个可直接安装在自己的移动设备上并实际体验的应用(个人信息管理、聊天系统和游戏)。你将扎实掌握Flutter基础知识,并由此快速构建两个常见应用,你还将通过学习构建游戏项目,从完全不同的角度了解Flutter的强大功能。通过构建这三个应用,你将了解现实世界中发生的问题,并通过相关提示及技巧掌握解决办法,所有这些都将使你的Flutter学习高效且充满乐趣!
《Flutter实战》将使你掌握使用Flutter构建应用的能力,进而可以自行构建更高级的应用。完成本书的学习后,你将站在更高的起点并且能够做好充分准备,在Flutter开发领域从容应对任何挑战。本书是学习Flutter不可错过的经典作品。
Frank Zammetti是一位小有名气的技术作家,作为一名开发者,Frank写过各种各样的代码,在近40年的职业生涯中有25年从事专职软件开发。近,你会发现他的名片上印有架构师的头衔,但他内心深处仍然是一名程序员,并且几乎每天都在围着代码转。
— 没有更多了 —
以下为对购买帮助不大的评价