Flutter跨平台应用开发

Flutter跨平台应用开发 教材名称: Flutter跨平台应用开发
ISBN号: 978-7-89535-073-1 作者: 许建豪 胡集仪
字数: 346千字 规格:
印制时间: 2023-03-01 出版日期: 2023-03-01
定价: 43.5 元 样章下载: Flutter跨平台应用开发—样章.pdf
购买地址:

       为深入推进党的二十大精神进教材、进课堂、进头脑,落实立德树人根本任务,实施课程思政,南宁职业技术学院“双高计划”建设专业群软件技术专业群教学团队,组织一线教师编写面向高职层次师生使用的《Flutter跨平台应用开发》教材。秉持德技并修的教材编写理念,突出“应用性”“实践性”“项目化”和“递进式”原则,充分体现高职教育特色。教材按照项目教学模式递进组织教学内容,以项目为载体,项目的选择突出Flutter技术应用和Hybrid混合应用开发技能训练,将Flutter开发流程以体系化的课程项目案例贯穿始终,形成“项目-任务”体例结构。通过项目和任务的实践教学,培养造就更多高技能人才,把大国工匠精神、创新精神融入项目任务和教学单元中。
       教材共包含8个项目:
       项目一:简要介绍Flutter的基本概念及总体架构。介绍Flutter SDK的下载方法,Android Studio的安装与配置及制作第一个Flutter项目。
       项目二:介绍Dart语言。包括Dart语言的内置数据类型与注释、变量与常量、函数、选择、分支与循环、面向对象、异步编程、泛型的使用。
       项目三:介绍基本Flutter组件的使用方法。基本组件实现底部导航功能。
       项目四:介绍布局的使用方法。重点介绍事件实现用户信息功能、布局设计和实际应用的具体实施方案。
       项目五:介绍路由的使用方法。重点用户登录功能。
       项目六:介绍动画和手势的使用方法。重点介绍手势实现带有动画效果的页面切换功能。
       项目七:介绍JSON解析方法和Provider的使用方法。基于JSON解析实现分类页面功能。
       项目八:移动电商实战项目,包括登录功能、App首页、商品分类页面、会员中心等功能。
       教材由南宁职业技术学院软件技术专业群许建豪和胡集仪担任主编,负责全套教程的编写思路、体例结构和内容设计,南宁职业技术学院黄伟、禤静、苏叶健担任副主编。编者均为优秀一线教学教师,积累丰富的项目开发经验。教材内容循序渐进,按照初学者学习思路编排,条理性强,语言通俗,容易理解。为便于复习和自学,编写团队还开发了丰富的教学资源,每章均配备丰富的习题。
       在本教材编写过程中,参考了国内外的著作和文献,在此对著作者致以由衷的谢意。同时得到了许多同行和企业专家的帮助和支持,在此一并致谢。特别感谢编委成员辛勤的付出,他们治学严谨,帮助我们解决了教材编写过程中遇到的问题。
限于编者水平,教材中错误和缺点在所难免,欢迎广大读者提出宝贵意见和建议,我们不胜感激。
 
项目一搭建Flutter环境1
1.1任务11 下载Flutter SDK2
1.1.1访问英文官网2
1.1.2访问Flutter中文开发者网站4
1.2任务12 安装与配置Flutter SDK6
1.2.1安装Flutter SDK6
1.2.2配置环境变量6
1.2.3检查Flutter环境9
1.3任务13 安装Flutter开发工具10
1.3.1安装Android Studio10
1.3.2安装Visual Studio Code25
1.4任务14 启动并创建第一个Flutter项目28
1.4.1下载Flutter插件28
1.4.2创建Flutter项目32
1.4.3测试Flutter项目35
1.5扩展与提高36
1.5.1了解Flutter36
1.5.2了解Flutter总体架构36
1.6项目小结37
思政小结37
1.7拓展练习38
项目二认识Dart语言39
2.1任务21 掌握注释与数据类型40
2.1.1注释40
2.1.2数据类型41
2.2任务22 掌握Dart中的变量与常量41
2.2.1变量声明41
2.2.2常量声明43
2.3任务23 掌握内置类型的常用操作44
2.3.1数值类型44
2.3.2字符串45
2.3.3布尔类型46
2.3.4列表46
2.3.5映射47
2.4任务24 掌握运算符的使用47
2.4.1算术运算符47
2.4.2类型判断运算符48
2.4.3条件表达式48
2.4.4级联运算符49
2.4.5条件成员访问符49
2.5任务25 掌握条件选择与循环49
2.5.1条件选择49
2.5.2循环50
2.6任务26 掌握函数的使用52
2.6.1定义函数52
2.6.2函数的参数53
2.6.3匿名函数56
2.6.4箭头函数56
2.7任务27 掌握Dart中的面向对象57
2.7.1类的定义57
2.7.2Getters和Setters58
2.7.3构造方法59
2.7.4类的初始化列表61
2.7.5运算符重载62
2.7.6类的继承63
2.7.7抽象与接口65
2.8任务28 掌握异常处理66
2.9任务29 实现泛型68
2.10任务210 掌握库与导入69
2.11任务211 实现异步编程70
2.12扩展与提高71
2.12.1创建dart文件71
2.12.2编写代码72
2.12.3运行与测试72
2.13项目小结73
思政小结73
2.14拓展练习73项目三基于基础组件实现底部导航功能74
3.1任务31 认识material包74
3.2任务32 认识Widget75
3.3任务33 认识StatelessWidget和StatefulWidget76
3.3.1StatelessWidget76
3.3.2StatefulWidget77
3.4任务34 认识Material组件中的应用程序结构和导航组件79
3.4.1MaterialApp79
3.4.2Scaffold81
3.4.3AppBar82
3.4.4BottomNavigationBar84
3.5任务35 认识ThemeData86
3.6任务36 实战案例:实现底部导航87
3.7项目小结96
思政小结96
3.8拓展练习97
项目四基于布局实现用户信息功能98
4.1任务41 认识基础组件Text98
4.2任务42 认识ListView与ListTile102
4.3任务43 认识Container容器104
4.4任务44 认识BoxDecoration容器107
4.5任务45 认识Row与Column109
4.5.1Row109
4.5.2Column112
4.6任务46 实战案例:实现用户信息114
4.7项目小结119
思政小结120
4.8拓展练习120
项目五基于路由实现用户登录功能121
5.1任务51 认识基本的布局组件121
5.1.1Center121
5.1.2Padding123
5.1.3SizeBox126
5.2任务52 认识基本的表单组件128
5.2.1TextFormField128
5.2.2按钮130
5.3任务53 认识剪裁组件134
5.4任务54 认识路由137
5.5任务55 认识校验组件和事件处理139
5.5.1TextFormField的可选参数139
5.5.2validator 校验140
5.5.3调用数据校验140
5.6任务56 实战案例:实现用户登录143
5.7项目小结151
思政小结151
5.8拓展练习151
项目六基于手势实现页面切换功能152
6.1任务61 了解Flutter中的动画152
6.6.1Animation153
6.6.2Tween153
6.2任务62 实现淡入淡出动画效果154
6.3任务63 实现缩放动画效果157
6.4任务64 实现旋转动画效果159
6.5任务65 实现左右滑动动画效果162
6.6任务66 认识手势组件165
6.6.1Pointers165
6.6.2手势165
6.7任务67 实现手势的垂直滑动166
6.8任务68 实战案例:实现手势实现页面切换动画效果168
6.9项目小结176
思政小结176
6.10拓展练习176
项目七基于JSON解析实现分类页面功能177
7.1任务71 认识JSON文件177
7.1.1JSON简介177
7.1.2JSON的基本语法178
7.1.3JSON对象178
7.2任务72 实现通过Dio发起HTTP请求179
7.2.1引入Dio库到Flutter项目中179
7.2.2HTTP请求方法179
7.2.3获取远程数据180
7.3任务73 使用 dart:convert手动序列化JSON182
7.3.1内连序列化JSON182
7.3.2在模型类中序列化JSON184
7.4任务74 使用代码生成库序列化JSON187
7.4.1在项目中设置json_serializable187
7.4.2以json_serializable的方式创建model类187
7.4.3运行代码生成程序188
7.4.4使用json_serializable模型189
7.5任务75 认识InkWell组件189
7.6任务76 认识Provider191
7.7任务77 实战案例:实现商品分类页面194
7.8项目小结209
思政小结209
7.9拓展练习209
项目八实现移动电商实战项目210
8.1任务81 介绍项目210
8.2任务82 实现登录页面211
8.3任务83 实现APP首页212
8.4任务84 实现商品分类页面213
8.5任务85 实现用户中心213
8.6任务86 实现手势切换页面214
8.7项目小结214
思政小结215
参考文献216
 
     1.适用对象
     本教材可作为高等院校软件技术相关专业的教材,也可作为有关专业技术人员的培训教材,同时也是广大移动应用开发爱好者以及Flutter应用开发爱好者必备的参考教材。
 
      2.学习本教材需要具备的知识和能力基础
      阅读本教材,需要至少熟悉一种编程语言,最好接触过PC客户端、移动开发或Web前端开发中的一种,具有查阅文献资料的基本能力。
 
      3.本教材预期达到的学习效果
      本教材旨在提升学生的知识素养、专业技能与编程兴趣,构建学生在程序设计方面的逻辑思维,逐步提升Flutter编程能力,为移动开发专业课程的程序设计奠定基础。
      预期达到的学习效果如下:
   (1)专业能力效果
     分析并完成实际项目,能够理解并分析需求,培养具有分析能力和解决问题能力的综合素质人才。总结Flutter开发编程思想,理解并熟练运用程序设计中的基本概念;理解模块的概念,运用模块化的思想,提出解决方案。
   (2)素质能力效果
     提升学生的移动开发素质,养成良好的学习习惯,提升分析问题、解决问题的能力。能够与团队成员良好合作,相互协作完成任务,能够针对教师布置的任务自主学习新技术和新方法,并提出解决方案。
   (3)工程能力效果
     理解一个完整的Flutter项目的设计与实施流程,培养学生的工程实践能力,能够根据需求,设计、实现Hybird混合应用开发的全过程。