万本电子书0元读

万本电子书0元读

顶部广告

Flutter开发实例解析电子书

《Flutter发实例解析》融合了移动发领域资深专家多年一线工作经验,精心选取的大量实例项目,手把手带领读者完成多个Flutter实际应用发。循序渐、由浅深,书中操作部分配有二维码视频,使读者身临其境,迅速、深地掌握各种经验和技巧。

售       价:¥

纸质售价:¥65.50购买纸书

62人正在读 | 0人评论 6.2

作       者:王睿

出  版  社:机械工业出版社

出版时间:2021-07-09

字       数:14.0万

所属分类: 教育 > 大中专教材 > 成人/中高职教材

温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印

为你推荐

  • 读书简介
  • 目录
  • 累计评论(0条)
  • 读书简介
  • 目录
  • 累计评论(0条)
Flutter作为一种新兴的跨端发技术,其语言和框架都是全新的,并且知识体系比较庞大,学习起来有一定的难度。对于初学者来说,*迫切的愿望就是能够快速上手,将理论知识转化为实际经验,并在不断的实践中扩充完善知识体系。本书旨在帮助Flutter初学者实现这一愿望。 《Flutter发实例解析》突出实战的特,通过精心选取的大量实例项目,手把手带领读者完成多个Flutter实际应用发。按照循序渐的顺序对这些项目行介绍,从*初的简单番茄计时器、拟物时钟,到后续的笔记应用、Todo应用、技术头条应用,逐步带领读者发出具备地图、定位、网络、数据库、状态管理等功能的复杂应用,*终使读者能够掌握Flutter的中高级发能力。 《Flutter发实例解析》适合不同层次的移动端发工程师、前端发工程师,以及希望快速门Flutter 移动端发的读者阅读学习。<br/>【推荐语】<br/>《Flutter发实例解析》融合了移动发领域资深专家多年一线工作经验,精心选取的大量实例项目,手把手带领读者完成多个Flutter实际应用发。循序渐、由浅深,书中操作部分配有二维码视频,使读者身临其境,迅速、深地掌握各种经验和技巧。<br/>【作者】<br/>王睿(网名Maxiee),Android发工程师,现就职于某一线互联网公司。曾负责参与多款商业项目移动端的研发,有丰富的移动端发经验。过去3年主要研究移动跨端领域,对 React Native、Flutter 等跨端方案均有深研究,并在商业项目中实现大规模落地。同时也作为核心作者推出自研跨端方案 Hummer,目前已源,并在业界得到广泛应用。<br/>
目录展开

前言 PREFACE

CHAPTER 1 第1章 Flutter基础知识

1.1 移动跨端开发技术

1.1.1 移动端应用开发的一般流程

1.1.2 原生开发与跨端开发

1.1.3 移动跨端开发技术的发展历程

1.1.4 跨端技术难点

1.2 Flutter技术

1.2.1 Flutter技术简介

1.2.2 Flutter整体架构

1.2.3 Flutter与同类方案对比

1.3 如何安装Flutter SDK

1.4 配置Flutter开发环境

1.4.1 使用Android Studio进行Flutter开发

1.4.2 使用Visual Studio Code进行Flutter开发

1.4.3 使用在线环境进行Flutter开发

1.5 创建第一个Flutter应用Hello World

1.5.1 如何创建Flutter工程

1.5.2 配置Android模拟器与真机运行

1.5.3 配置iOS模拟器与真机运行

CHAPTER 2 第2章 Dart和Flutter核心概念——零基础开发番茄钟计时器

2.1 番茄钟计时器开发要点

2.2 Dart语言快速上手

2.3 Flutter组件化

2.3.1 组件化思想

2.3.2 无状态组件StatelessWidget

2.3.3 有状态组件StatefulWidget

2.3.4 组件的生命周期

2.3.5 Material和Cupertino组件库

2.4 初识Flutter工程

2.4.1 Flutter工程结构特点

2.4.2 App组件——应用架构的基石

2.4.3 Scaffold组件——页面的骨架

2.5 开发番茄钟

2.5.1 使用Center组件进行居中显示

2.5.2 Text文本展示组件

2.5.3 添加Timer定时器

2.5.4 为按钮添加单击事件控制番茄钟开始

2.6 番茄钟知识扩展

CHAPTER 3 第3章 自定义视图和动画——开发精美的拟物时钟

3.1 拟物时钟开发要点

3.1.1 使用Container定制组件展示效果

3.1.2 使用CustomPaint创建Flutter自定义视图

3.1.3 Flutter动画入门与拟物时钟的开发流程

3.2 基于Canvas和CustomPaint绘制表盘

3.2.1 使用Container绘制外表盘

3.2.2 使用Container绘制内表盘

3.2.3 使用CustomPaint绘制表盘刻度

3.3 基于CustomPaint绘制指针

3.3.1 使用CustomPaint绘制时针与分针

3.3.2 使用rotate Transform偏转指针

3.3.3 使用CustomPaint绘制秒针

3.3.4 使用CustomPaint绘制中心装饰物

3.4 让时针动起来

3.4.1 使用DateTime获取时间信息

3.4.2 通过Timer定时器实现时间自动刷新

3.4.3 通过RotationTransition实现指针转动动画

3.5 拟物时钟知识拓展

CHAPTER 4 第4章 地图+传感器——开发轨迹计步器

4.1 轨迹计步器开发要点

4.1.1 通过Flutter包管理导入扩展包

4.1.2 Flutter Channel原生通信机制介绍

4.1.3 Column、Row横纵向布局组件介绍

4.1.4 轨迹计步器开发流程

4.2 创建轨迹计步器首页

4.2.1 创建轨迹计步器项目结构

4.2.2 创建仪表面板组件

4.3 基于Pedometer库实现计步功能

4.3.1 Pedometer计步器库介绍

4.3.2 通过Flutter Stream监听步数

4.3.3 实现轨迹计步器的计步功能

4.4 基于geolocator库实现定位功能

4.4.1 geolocator定位库介绍

4.4.2 实现轨迹计步器的定位功能

4.4.3 保存轨迹计步器的定位轨迹历史

4.5 基于flutter_map库实现地图功能

4.5.1 flutter_map地图库介绍

4.5.2 使用FlutterMap组件创建地图

4.5.3 通过MarkerLayerOptions展示当前位置

4.5.4 通过PolylineLayerOptions绘制行进轨迹

4.6 轨迹计步器知识拓展

CHAPTER 5 第5章 Socket网络通信——开发属于自己的“微信”聊天工具

5.1 聊天工具开发要点

5.1.1 Dart Socket网络通信框架

5.1.2 Flutter图片资源管理

5.1.3 使用ListView展示长列表数据

5.1.4 通过Navigator进行页面跳转

5.1.5 聊天工具开发流程

5.2 创建首页设置页面

5.2.1 搭建聊天工具Flutter工程

5.2.2 基于NetworkInterface展示本机IP地址

5.2.3 使用TextField实现Server设置项

5.2.4 使用TextField实现Client设置项

5.3 建立Socket通信

5.3.1 创建消息Model并进行JSON序列化

5.3.2 创建Socket通信基类BaseSocketCS

5.3.3 基于ServerSocket创建Socket服务器

5.3.4 基于Socket创建Socket客户端

5.3.5 在_MyAppState中接入Socket框架

5.3.6 双端Socket通信联调

5.4 建立聊天页面

5.4.1 基于ListView实现消息列表

5.4.2 基于Container实现消息组件

5.4.3 基于Navigator实现页面跳转

5.4.4 使用TextField实现消息输入组件

5.5 使用Image组件扩展表情包功能

5.6 聊天工具知识拓展

CHAPTER 6 第6章 数据持久化——开发一款支持Markdown的“印象笔记”

6.1 Markdown笔记开发要点

6.1.1 Flutter下的Markdown展示方式

6.1.2 基于flutter_markdown实现Markdown原生渲染

6.1.3 使用shared_preference存储笔记数据

6.1.4 使用InheritedWidget进行状态管理

6.1.5 笔记应用开发流程

6.2 基于InheritedWidget开发状态层

6.2.1 创建笔记Model

6.2.2 基于StatefulWidget创建NoteStore

6.2.3 在_NoteStoreState中实现笔记增删改查

6.2.4 基于InheritedWidget实现_NoteStoreScope

6.2.5 在NoteStore中完善状态访问接口

6.3 创建笔记应用首页

6.3.1 使用didChangeDependencies进行状态关联

6.3.2 基于Scaffold实现首页抽屉导航布局

6.4 创建笔记编辑页

6.4.1 实现_PageEditorState搭建主要布局

6.4.2 实现getAppBar编辑页工具栏

6.4.3 运行编辑页调试功能

6.4.4 使用TextField实现元信息编辑页

6.5 创建笔记预览页

6.6 创建编辑页工具栏

6.7 Markdown笔记应用知识扩展

CHAPTER 7 第7章 SQLite数据库——开发一款“奇妙清单”Todo应用

7.1 Todo应用开发要点

7.1.1 使用sqflite进行SQLite数据库开发

7.1.2 使用Provider进行Flutter复杂状态管理

7.1.3 Todo应用的业务流程

7.2 基于sqflite实现SQLite数据层

7.2.1 封装项目Model

7.2.2 封装待办事项Model

7.2.3 sqflite数据库初始化

7.2.4 实现项目数据库操作类ProjectManager

7.2.5 实现待办事项操作类TodoManager

7.3 基于Provider实现状态层

7.3.1 实现待办事项状态类TodoState

7.3.2 实现项目状态类ProjectState

7.3.3 使用MultiProvider对外提供状态

7.4 创建Todo应用首页

7.4.1 使用Consumer实现项目列表

7.4.2 创建待办事项列表项组件

7.4.3 使用Consumer2实现待办事项列表

7.5 创建Todo应用项目编辑页

7.5.1 实现项目编辑页整体Scaffold布局

7.5.2 使用showDatePicker编辑创建和截止时间

7.5.3 访问ProjectState实现项目数据保存

7.6 创建Todo应用待办事项编辑页

7.6.1 实现待办事项编辑页整体Scaffold布局

7.6.2 通过自定义对话框实现项目选择

7.6.3 访问TodoState实现待办事项数据保存

7.7 Todo应用知识扩展

CHAPTER 8 第8章 HTTP+WebView——开发“技术头条”让技术先人一步

8.1 技术头条开发要点

8.1.1 Flutter http网络库介绍

8.1.2 GitHub API介绍

8.1.3 使用json_annotation实现高效序列化

8.1.4 Flutter集成WebView实现网页浏览

8.1.5 技术头条的业务流程

8.2 基于http库实现网络层

8.2.1 基于json_annotation创建Model类

8.2.2 基于http库实现GitHub网络访问类

8.2.3 基于Service模式搭建网络层

8.3 创建首页活动Feed流

8.3.1 基于CustomScrollView搭建首页Feed流布局

8.3.2 通过SliverPersistentHeader实现吸顶搜索组件

8.3.3 通过SliverGrid实现九宫格导航

8.3.4 通过SliverList实现Feed流内容展示

8.3.5 接收ScrollNotification事件实现加载更多内容

8.4 创建GitHub公共活动Feed流

8.4.1 基于ListView公共活动Feed流布局

8.4.2 通过listPublicEvents和ScrollNotification加载数据

8.5 通过xpath爬虫实现GitHub Trending页

8.5.1 通过xpath解析GitHub Trending网页

8.5.2 通过ListView对GitHub Trending进行展示

8.5.3 在createGrid中完成路由跳转逻辑

8.6 基于webview_flutter实现WebView页面

8.7 技术头条应用知识扩展

附赠资源 跨平台开发——将Flutter应用扩展到更多平台

1.1 Flutter全平台跨端能力介绍

1.2 使用Flutter开发Web应用

1.2.1 配置Flutter for Web开发环境

1.2.2 实现拟物时钟Web版

1.2.3 实现Markdown笔记Web版

1.2.4 实现技术头条Web版

1.3 使用Flutter开发桌面应用

1.3.1 配置Flutter SDK Windows开发环境

1.3.2 实现拟物时钟桌面版

1.3.3 实现Markdown笔记桌面版

1.3.4 实现技术头条桌面版

1.4 Flutter全平台跨端知识扩展

累计评论(0条) 0个书友正在讨论这本书 发表评论

发表评论

发表评论,分享你的想法吧!

买过这本书的人还买过

读了这本书的人还在读

回顶部