展开全部

主编推荐语

谷歌全平台框架Flutter,从基础学习到上架App。

内容简介

本书是Flutter从基础入门到进阶实战的教程书,也是一本面向大前端的新技术书。Flutter是谷歌新推出的一个跨平台的、开源的UI框架,同时支持iOS系统和Android系统开发,并且是谷歌未来新操作系统Fuchsia的默认开发套件。

本书共10章,内容包括Flutter简介、Dart语言入门、一切皆组件、事件处理、动画、使用网络技术与异步编程、路由、持久化、插件与混合工程和项目实战。本书不仅介绍了Flutter的基本原理、特性,而且在实战章节全面展示了打造一个完整的基于Flutter的App的流程,包含具体细节、思想流程和代码实操。

目录

  • 版权信息
  • 内容简介
  • 前言
  • 第1章 Flutter简介
  • 1.1 Flutter的优势
  • 1.2 对比其他技术
  • 1.3 Flutter架构
  • 1.3.1 Flutter Framework
  • 1.3.2 Flutter Engine
  • 1.4 开发环境搭建
  • 1.4.1 Mac上的环境搭建
  • 1.4.2 在Mac上获取SDK并设置环境变量
  • 1.4.3 安装Xcode与运行模拟器
  • 1.4.4 安装Android Studio
  • 1.4.5 在Android Studio上安装Flutter开发插件
  • 1.4.6 安装VSCode与Flutter开发插件
  • 1.4.7 IDE的选择
  • 1.4.8 使用Flutter诊断工具检查Flutter开发环境
  • 1.4.9 创建Demo工程并体验热重载
  • 1.5 Flutter升级
  • 本章小结
  • 第2章 Dart语言入门
  • 2.1 应用场景
  • 2.1.1 SDK安装和升级
  • 2.1.2 编写一个HelloWorld并运行
  • 2.2 变量与常量
  • 2.2.1 变量
  • 2.2.2 常量
  • 2.2.3 内置类型
  • 2.2.4 数值型
  • 2.2.5 数值型操作
  • 2.2.6 字符串
  • 2.2.7 字符串操作
  • 2.2.8 布尔型
  • 2.2.9 List与数组
  • 2.2.10 Map
  • 2.2.11 dynamic和Object
  • 2.3 运算符
  • 2.4 异常捕获
  • 2.5 函数Function
  • 2.5.1 main函数
  • 2.5.2 可选参数
  • 2.5.3 必传参数
  • 2.5.4 可选的位置参数
  • 2.5.5 默认参数
  • 2.5.6 函数作为参数传递
  • 2.5.7 函数作为变量
  • 2.6 异步编程
  • 2.6.1 Future是什么
  • 2.6.2 async和await
  • 2.6.3 继承、接口实现和混合
  • 2.6.4 泛型
  • 本章小结
  • 第3章 一切皆组件
  • 3.1 基础组件(Basic widgets)
  • 3.1.1 Text
  • 3.1.2 Icon
  • 3.1.3 Image
  • 3.1.4 Button
  • 3.1.5 FlutterLogo
  • 3.2 单一子元素组件(Single-child)
  • 3.2.1 Container
  • 3.2.2 Container的约束
  • 3.2.3 SingleChildScrollView
  • 3.2.4 FittedBox
  • 3.2.5 FractionallySizedBox
  • 3.2.6 ConstrainedBox
  • 3.2.7 Baseline
  • 3.2.8 IntrinsicWidth和IntrinsicHeight
  • 3.3 多子元素组件(Multi-child)
  • 3.3.1 Scaffold
  • 3.3.2 AppBar
  • 3.3.3 Row和Column
  • 3.3.4 ListView
  • 3.3.5 GridView
  • 3.3.6 CustomScrollView
  • 3.3.7 Flex
  • 3.3.8 Wrap
  • 3.4 状态管理
  • 3.4.1 Widget树
  • 3.4.2 Context
  • 3.4.3 StatelessWidget
  • 3.4.4 StatefulWidget
  • 3.4.5 StatefulWidget的组成
  • 3.4.6 State
  • 3.4.7 State生命周期
  • 3.4.8 Widget的唯一身份标识:key
  • 3.4.9 InheritedWidget
  • 3.5 包管理
  • 3.6 常用代码段效果
  • 3.6.1 案例一:侧滑效果
  • 3.6.2 案例二:登录界面
  • 3.6.3 案例三:轮播图效果
  • 3.6.4 案例四:图片浏览器的相册效果
  • 3.6.5 案例五:全局主题设置
  • 本章小结
  • 第4章 事件处理
  • 4.1 原始指针事件
  • 4.1.1 基本用法
  • 4.1.2 忽略事件
  • 4.2 GestureDetector
  • 4.2.1 基本用法
  • 4.2.2 常用事件
  • 4.2.3 拖曳和缩放效果
  • 4.2.4 事件竞争与手势冲突
  • 4.2.5 手势识别器
  • 4.3 事件原理与分发机制
  • 4.4 事件通知
  • 本章小结
  • 第5章 动画
  • 5.1 动画原理及概述
  • 5.1.1 Animation
  • 5.1.2 Animatable
  • 5.1.3 AnimationController
  • 5.1.4 Tween
  • 5.1.5 Tween.animate
  • 5.1.6 Curve
  • 5.2 动画的封装与简化
  • 5.2.1 AnimatedWidget
  • 5.2.2 AnimatedBuilder
  • 5.3 Hero动画
  • 5.3.1 基本用法
  • 5.3.2 实现原理
  • 5.4 交错动画
  • 5.5 动画示例
  • 5.5.1 自定义加载动画
  • 5.5.2 实现动画效果
  • 5.5.3 Dialog加载框
  • 5.5.4 测试加载框效果
  • 本章小结
  • 第6章 使用网络技术与异步编程
  • 6.1 网络协议简介
  • 6.1.1 HTTP协议简介
  • 6.1.2 HTTP 2.0能给我们带来什么
  • 6.1.3 HTTPS
  • 6.2 网络编程
  • 6.2.1 HttpClient
  • 6.2.2 http库
  • 6.3 JSON解析
  • 6.3.1 JSON转成Dart对象
  • 6.3.2 一个完整的例子
  • 6.3.3 根据JSON用工具生成实体类
  • 6.4 dio库
  • 6.4.1 基本用法
  • 6.4.2 dio单例
  • 6.4.3 dio拦截器
  • 6.4.4 dio拦截器链
  • 6.4.5 dio适配器
  • 6.4.6 dio库总结
  • 6.5 异步编程
  • 6.5.1 isolate
  • 6.5.2 event loop
  • 6.5.3 线程模型与isolate
  • 6.5.4 创建单独的isolate
  • 6.5.5 Stream事件流
  • 本章小结
  • 第7章 路由
  • 7.1 路由简介
  • 7.1.1 基本用法
  • 7.1.2 静态路由
  • 7.1.3 动态路由
  • 7.1.4 参数回传
  • 7.2 路由栈
  • 7.2.1 路由栈详解
  • 7.2.2 pushReplacementNamed方法
  • 7.2.3 popAndPushNamed方法
  • 7.2.4 pushNamedAndRemoveUntil方法
  • 7.2.5 popUntil方法
  • 7.3 自定义路由
  • 本章小结
  • 第8章 持久化
  • 8.1 shared_preferences本地存储
  • 8.1.1 shared_preferences的常用操作
  • 8.1.2 shared_preferences举例
  • 8.2 SQLite数据库
  • 8.2.1 sqflite依赖库简介
  • 8.2.2 封装SQL Helpers
  • 8.2.3 sqflite实现员工打卡示例
  • 8.3 文件形式存储
  • 8.3.1 path_provider简介
  • 8.3.2 一个简单的日记本示例
  • 本章小结
  • 第9章 插件与混合工程
  • 9.1 package
  • 9.1.1 添加package的几种方式
  • 9.1.2 更新package
  • 9.1.3 创建自己的package
  • 9.1.4 发布package
  • 9.2 理解Platform Channel
  • 9.2.1 消息传递与编解码器
  • 9.2.2 Platform数据类型支持
  • 9.2.3 MethodChannel简介
  • 9.2.4 SharedPreferences插件源码解析
  • 9.3 混合开发
  • 9.3.1 创建Flutter模块
  • 9.3.2 关联原生工程
  • 9.3.3 编写混合工程代码
  • 9.3.4 热重载混合端代码
  • 9.3.5 aar模块化打包
  • 9.4 FlutterBoost混合方案
  • 9.4.1 框架的由来
  • 9.4.2 使用FlutterBoost改进
  • 9.4.3 FlutterBoost源码分析
  • 本章小结
  • 第10章 项目实战
  • 10.1 实战一:实现一个招聘类App
  • 10.1.1 项目需求与技术选型
  • 10.1.2 服务端设计
  • 10.1.3 Flutter基础架构
  • 10.1.4 启动页面
  • 10.1.5 使用dio实现网络请求
  • 10.1.6 公司列表与详情实现
  • 10.1.7 用WebSocket实现聊天模块
  • 10.2 实战二:实现异常上报系统
  • 10.2.1 实现原理
  • 10.2.2 FlutterError.onError和Zone
  • 10.2.3 异常上报Flutter的实现
  • 10.2.4 异常上报Android端的实现
  • 10.2.5 服务端接收异常上报
  • 10.3 实战项目源码
  • 10.4 性能分析与辅助工具
  • 本章小结
展开全部

评分及书评

评分不足
1个评分
  • 用户头像
    给这本书评了
    3.0
    可作入门书速览,不推荐精读

    选购了多本 flutter 相关书籍,以这本书为始是因为它最短。但是我觉得它可以更短,冗余的图片和代码截图,很多是可以省略的。我是三小时速览的,书中没有太多需要理解的地方,大多都是常识或者可以可官方文档可速查内容,有一些则是相关技术的介绍,如 https 等,可解耦到其他书籍,放这里有点鸡肋。建议有需要了解 flutter 的同学两小时速读,有个大概印象就好,时间再多就不划算了。

      转发
      评论

    出版方

    电子工业出版社

    电子工业出版社成立于1982年10月,是国务院独资、工信部直属的中央级科技与教育出版社,是专业的信息技术知识集成和服务提供商。经过三十多年的建设与发展,已成为一家以科技和教育出版、期刊、网络、行业支撑服务、数字出版、软件研发、软科学研究、职业培训和教育为核心业务的现代知识服务集团。出版物内容涵盖了电子信息技术的各个分支及工业技术、经济管理、科普与少儿、社科人文等领域,综合出版能力位居全国出版行业前列。