新書推薦:
《
存在与结构:精神分析的法国转向——以拉康与萨特为中心
》
售價:NT$
240.0
《
生成式人工智能:AIGC与多模态技术应用实践指南
》
售價:NT$
495.0
《
石油帝国的兴衰:英国的工业化与去工业化
》
售價:NT$
445.0
《
古典的回響:溪客舊廬藏明清文人繪畫
》
售價:NT$
1990.0
《
根源、制度和秩序:从老子到黄老学(王中江著作系列)
》
售價:NT$
550.0
《
索恩丛书·北宋政治与保守主义:司马光的从政与思想(1019~1086)
》
售價:NT$
345.0
《
掌故家的心事
》
售價:NT$
390.0
《
农为邦本——农业历史与传统中国
》
售價:NT$
340.0
|
編輯推薦: |
本书针对零基础读者讲解Dart编程语言基础和Flutter开发框架的应用程序,注重实际开发,讲解技术范例和项目案例,适合Dart和Flutter初学者使用,也适合跨平台移动开发的技术人员参考。
|
內容簡介: |
本书针对零基础的读者,以一个个“易学、易用、易扩展”的技术范例和“有趣、经典、综合性”的项目案例实现过程为载体,由浅入深、循序渐进地介绍了完整的Dart编程语言基础和Flutter开发技术知识体系。书中包含大量的图文解析和微课视频,手把手地带领读者进入基于Flutter开发框架的跨平台应用程序开发世界,既**限度地降低了读者的学习门槛,又让读者在“教、学、做”深度融合的体验中快速入门Flutter开发技术。 本书注重实际项目开发,提供的技术范例和项目案例全面系统地展示了开发Flutter项目的过程、方法、技术和架构。既适合作为Dart和Flutter初学者的入门级书籍,也适合作为从事跨平台移动开发的技术人员及教育、培训机构人员的参考书。
|
關於作者: |
倪红军,副教授,泰州市“311高层次人才工程”培养对象,研究方向为移动应用开发。曾获得Google奖教金、校青年教师教学十佳、泰州市自然科学优秀论文二等奖等奖项。
|
目錄:
|
第1章移动应用开发技术1
1.1概述1
1.1.1原生开发技术1
1.1.2跨平台开发技术1
1.2Flutter基本架构与特性5
1.2.1基本架构5
1.2.2特性6
1.3Flutter开发环境搭建7
1.3.1搭建Windows系统下的开发环境7
1.3.2搭建Mac OS系统下的开发环境14
第2章Flutter项目结构21
2.1项目结构21
2.1.1个Flutter项目21
2.1.2目录结构24
2.2工程架构25
2.2.1工程项目主要文件25
2.2.2Flutter项目调试29
第3章Dart程序设计基础31
3.1Dart语言概述31
3.1.1发展31
3.1.2特点31
3.2基本语法32
3.2.1变量和常量32
3.2.2数据类型35
3.2.3运算符43
3.2.4控制流程46
3.2.5注释50
3.3函数51
3.3.1函数的声明51
3.3.2函数的使用51
3.3.3匿名函数、箭头函数及闭包54
3.4异常55
3.4.1异常的定义55
3.4.2异常的使用56
第4章Dart面向对象程序设计58
4.1类58
4.1.1面向对象的基本特征58
4.1.2类的定义和使用59
4.1.3构造方法60
4.1.4存储器和访问器62
4.2类的继承63
4.2.1继承的定义63
4.2.2父类方法的覆写64
4.2.3继承中的多态65
4.2.4构造方法的调用66
4.3抽象类67
4.3.1抽象类的定义67
4.3.2接口69
4.3.3混入69
第5章Dart高级编程71
5.1泛型71
5.1.1泛型的定义71
5.1.2泛型的使用72
5.2异步75
5.2.1Future75
5.2.2async和await77
5.2.3Stream78
第6章基本组件80
6.1概述80
6.1.1MaterialApp80
6.1.2Scaffold88
6.1.3Widget97
6.2登录界面的设计与实现99
6.2.1Text组件99
6.2.2TextField组件102
6.2.3按钮组件113
6.2.4案例: 登录界面的实现117
6.3注册界面的设计与实现122
6.3.1复选框组件122
6.3.2日期和时间组件126
6.3.3RichText组件131
6.3.4案例: 注册界面的实现133
6.4图片浏览器的设计与实现138
6.4.1单选按钮组件138
6.4.2Image组件141
6.4.3CircleAvatar组件144
6.4.4裁剪组件146
6.4.5Slider组件147
6.4.6案例: 图片浏览器的实现148
第7章布局组件153
7.1概述153
7.1.1单孩子布局组件153
7.1.2多孩子布局组件157
7.2仿今日头条关注页面的设计与实现163
7.2.1开关组件163
7.2.2SingleChildScrollView组件165
7.2.3案例: 关注页面的实现168
7.3仿今日头条展示页面的设计与实现173
7.3.1ListTile组件173
7.3.2ListView组件175
7.3.3RefreshIndicator组件179
7.3.4视频播放插件181
7.3.5页面间传递数据185
7.3.6案例: 展示页面的实现187
第8章数据存储与访问195
8.1概述195
8.1.1keyvalue存储访问机制195
8.1.2File存储访问机制195
8.1.3数据库存储访问机制196
8.1.4网络数据存储访问机制196
8.2睡眠质量测试系统的设计与实现196
8.2.1进度指示组件196
8.2.2shared_preferences插件199
8.2.3案例: 睡眠质量测试系统的实现202
8.3随手拍的设计与实现211
8.3.1对话框组件211
8.3.2BottomSheet组件216
8.3.3Card组件218
8.3.4ExpansionPanel组件219
8.3.5path_provider插件221
8.3.6案例: 随手拍的实现226
8.4实验室安全测试平台的设计与实现238
8.4.1GridView组件239
8.4.2顶部导航标签组件243
8.4.3sqflite插件245
8.4.4实验室安全测试平台的实现251
8.5天气预报系统的设计与实现260
8.5.1表单组件260
8.5.2flutter_webview_plugin插件263
8.5.3http网络请求266
8.5.4HttpClient267
8.5.5原生http请求库270
8.5.6第三方dio请求库273
8.5.7案例: 天气预报系统的实现274
参考文献285
|
內容試閱:
|
Flutter是谷歌开发的一套开源的跨平台开发框架,它全面支持移动、Web、桌面和嵌入式平台,帮助开发者通过一套代码库高效构建多平台应用。自2018年12月4日谷歌正式发布Flutter 1.0版本后,全球越来越多的公司开始采用Flutter开发框架进行跨平台移动端应用开发,Flutter新技术逐渐进入了移动应用开发者的视野,越来越多的开发者也逐渐投入到Flutter的学习和开发中。
本书编写的目的就是帮助零基础学习跨平台开发的读者,既要学习Flutter开发技术,又要掌握解决实际问题的能力,提高实际项目的开发水平,从而快速成为一名合格的Flutter开发工程师。本书摒弃传统软件开发类书籍逐个知识点介绍的编排模式,而采用“案例诠释理论内涵、项目推动实践创新”的编写思路,既讲解项目的实现过程和步骤,又讲解项目实现所需的理论知识和技术,让读者掌握理论知识后会灵活运用,并在新项目开发中拓展创新。
本书提供教学大纲、教学进度、教学课件、程序源码等,读者可登录清华大学出版社网站下载使用;还提供140个约3000分钟的微课视频同步讲解,读者先扫描封底刮刮卡中的二维码,再扫描书中相应位置的二维码,即可以边看边学、边学边做,真正实现“教、学、做”的有机融合,提升从案例模仿到应用创新的递进式项目化软件开发能力。
全书共8章,内容安排如下。
第1章移动应用开发技术。介绍移动应用开发中原生开发和跨平台开发的特点、常用开发框架等,包括Flutter的基本架构和特性、Windows和Mac OS平台下Flutter项目开发环境的搭建步骤等。
第2章Flutter项目结构。介绍Android Studio开发环境下Flutter项目的创建步骤、Flutter项目目录结构、默认入口文件(main.dart)的构成及项目的运行和调试方法。
第3章Dart程序设计基础。介绍Dart语言的发展、特点、辅助开发工具及语法基础。包括常量、变量、数据类型、运算符、流程控制语句、数组(List)、集合(Set)、映射(Map)、函数及异常的使用方法和应用场景等。
第4章Dart面向对象程序设计。介绍面向对象的基本概念、类的声明、成员变量与成员方法的定义和使用方法,以及构造方法、类的继承、抽象类、接口的定义和使用方法等。
第5章Dart高级编程。介绍泛型的定义、使用方法和应用场景,同步和异步的概念,并结合文件(目录)同步、异步操作相关API的使用方法阐述同步、异步的应用场景等。
第6章基本组件。介绍Text、TextField等文本类组件,Image、CircleAvatar等图片类组件和MaterialApp组件的常用属性和使用方法,并结合多个技术范例和“登录界面”“注册界面”“图片浏览器”等项目案例阐述文本样式组件、输入框装饰器组件、第三方插件Fluttertoast及image_picker的使用方法和应用场景。
第7章布局组件。介绍Container、Padding等单孩子布局组件,Row、Column等多孩子布局组件的常用属性和使用方法,并结合多个技术范例和仿今日头条的“关注页面”“展示页面”等项目案例阐述Switch、SwitchListTile、SingleChildScrollView、ScrollController、ListTile、ListView、RefreshIndicator等组件的使用方法,以及video_player和chewie视频播放插件、GestureDetector组件的手势事件、路由及页面间数据传递的方法和应用场景。
第8章数据存储与访问。介绍keyvalue存储访问机制、File存储访问机制、数据库存储访问机制和网络数据存储访问机制的工作原理和应用场景,并结合多个技术范例和“睡眠质量测试系统”“随手拍”“实验室安全测试平台”“天气预报系统”等项目案例阐述LinearProgressIndicator、AlertDialog、SimpleDialog、BottomSheet、Card、ExpansionPanel、GridView、PopupMenuButton、Tabbar、PageView、Form和TextFormField组件的使用方法,以及shared_preferences插件实现keyvalue键值对存储访问数据、sqflite插件实现SQLite数据库操作、HttpClient实现GET和POST请求、http和Dio插件实现网络请求的方法和应用场景。
与同类图书相比,本书有以下特点:
(1) 编写理念新颖: 采用“案例诠释理论内涵,项目推动实践创新”的编写理念组织内容,内容编排上以案例为载体,既向读者展现案例的实现过程和步骤,也详细阐述案例实现时所需的理论知识和开发技术。
(2) 案例典型实用: 直接选取“易学、易用、易扩展”的技术范例和“有趣、经典、综合性”的项目案例,既可以激发读者的学习兴趣,巩固理论知识和强化工程实践能力,也可以将这些案例的解决方案创新应用到其他项目中。
(3) 配套资源丰富: 随书配套全部技术范例和项目案例的微课视频,读者不仅可以随时随地扫码观看重点、难点内容的讲解,还可以下载教学课件、教学大纲、习题和程序源代码等教学资源,以便更好地学习和掌握Flutter开发技术,提高实际开发水平。
(4) 内容系统全面: 依据Flutter官方开发文档选取侧重实战的知识点和应用场景,读者既可以系统地掌握理论知识,也可以提高分析和解决问题的能力。
(5) 读者覆盖面广: 由浅入深的知识点体系重构和系统全面的知识点应用场景解析,既可以让零基础的初学者快速入门并掌握Flutter的开发技术和开发技巧,也可以让具有一定编程基础的开发者从书中找到合适的起点,进一步提升项目开发和创新能力。
本书在编写过程中得到了清华大学出版社编辑的大力支持,周巧扣、李霞、叶苗等在资料收集和原稿校对等方面做了一些工作,在此一并表示感谢。
由于作者理论水平和实践经验有限,书中疏漏和不足之处在所难免,恳请广大读者提出宝贵的意见和建议。
倪红军
2021年4月
|
|