新書推薦:

《
新民说·哲学家与狼
》
售價:HK$
74.8

《
海权与陆权的变局
》
售價:HK$
107.8

《
《西南联大名师课(全10册)》中国历史·中国文学·中国哲学·诸子百家·诗词曲赋·文化常识·人文精神·
》
售價:HK$
657.8

《
天命无常:五代十国 优酷人文·“梅毅说中国史”系列(全三册)
》
售價:HK$
151.8

《
武王墩:亲历2020—2024楚王墓发掘
》
售價:HK$
96.8

《
异化
》
售價:HK$
94.6

《
你的脆弱很正常
》
售價:HK$
60.0

《
鸟墙——康奈尔鸟类学实验室巨幅壁画诞生记
》
售價:HK$
195.8
|
| 編輯推薦: |
|
本教材以App全栈开发为主线,基于“国产为先、国产国际并列”原则,突出“鸿蒙+金仓”,兼顾“安卓+MySQL”,推广软件开发国产平台。帮助读者解决开发App涉及多种环境和语言,项目打通难的问题。本书围绕一个真实项目,通过一个个小案例,引导读者在较短时间内熟悉一个较大规模的App应用系统的开发,以培养App程序员的独立开发能力。包括APP需求分析、鸿蒙App开发体验、鸿蒙App客户端设计、鸿蒙中的数据管理、金仓网络数据库、SpringBoot读取金仓服务器端设计、鸿蒙App与SpringBoot服务器交互、安卓App应用体验、安卓App客户端设计、MySQL网络数据库、JavaWeb读取MySQL服务器端设计、安卓App与JavaWeb服务器交互设计、SpringBoot读取MySQL服务器端设计以及App微信分享实现等。本书可作为高校高年级“软件项目综合实训”课的产学研共建教材或毕业设计参考书。适合作为“App开发”实训课程教材,可供项目经验少的学生开发实用App时参考,也可作为大学生“互联网+”创新创业竞赛的实战指导书,以及作为软件类大学生完成“移动应用类毕业设计”的参考书
|
| 內容簡介: |
|
本教材以“App全栈开发”为主线,基于“国产为先、国产国际并列”原则,突出“鸿蒙+金仓”,兼顾“安卓+MySQL”,推广软件开发“国产平台”,帮助读者解决开发App涉及多种环境和语言,项目打通难的问题。本教材围绕一个真实项目,通过一个个小案例,引导读者在较短时间内熟悉一个较大规模的App应用系统的开发,以培养App程序员的独立开发能力。包括App开发全栈概述、项目需求分析、鸿蒙App开发体验、鸿蒙客户端设计、鸿蒙中的数据管理、用金仓开发网络数据库、读取金仓数据的SpringBoot服务器端设计、鸿蒙App与SpringBoot服务器交互设计、安卓App应用体验、安卓App客户端设计、安卓App存取本地数据库的设计、用MySQL开发网络数据库、JavaWeb服务器端设计、安卓App客户端与服务器端交互设计等。本教材适合作为高年级“软件项目综合实训”课程的产学研共建教材或毕业设计参考书,也适合作为“App开发”实训课程教材,供项目经验少的学生开发实用App时参考,或作为大学生创新创业竞赛的实战指导书,以及软件类相关专业大学生完成“移动应用类毕业设计”的参考书。
|
| 目錄:
|
目录
第1章App全栈开发概述<<<1
1.1什么是App1
1.2App开发流程1
1.2.1HarmonyOS端开发流程1
1.2.2Android端开发流程4
1.3案例介绍4
1.4加强软件生态“国产化”5
小结7
课后练习7
第2章项目需求分析<<<8
2.1本章简介8
2.2功能需求分析8
2.2.1需求获取8
2.2.2功能分析8
2.2.3系统UML建模9
2.3系统用例分析10
2.3.1系统用例图10
2.3.2系统用例描述10
2.4项目数据分析14
2.4.1数据库基本概念14
2.4.2数据库设计的基本过程15
2.4.3系统所涉及的实体及其属性15
小结19
课后练习19
第3章鸿蒙App开发体验<<<20
3.1初识HarmonyOS20
3.1.1HarmonyOS的概述20
3.1.2HarmonyOS的体系结构20
3.2搭建HarmonyOS开发环境22
3.3HarmonyOS项目运行过程分析36
3.3.1HarmonyOS应用程序结构分析36
3.3.2HarmonyOS应用程序运行过程分析37
3.4App案例41
小结43
课后练习44
目录〖2〗〖2〗〖2〗第4章鸿蒙客户端设计<<<45
4.1本章简介45
4.2“查询界面”模块设计与实现45
4.2.1用Select实现下拉列表选项46
4.2.2选择性渲染47
4.2.3ForEach循环渲染表格48
4.3“报考咨询”模块设计与实现49
4.3.1界面设计50
4.3.2查询编辑框和问题输入框的实现51
4.3.3问题列表的实现52
4.3.4问题回复对话框的实现55
4.4“个人基本信息”模块设计和实现57
4.4.1界面设计57
4.4.2用PreferencesUtils实现个人信息存储58
4.4.3用dialogController实现个人基本信息填写59
4.5多页面切换效果设计与实现61
4.5.1多页面切换框架的实现61
4.5.2为选项卡添加对应内容64
4.6绘制趋势图70
小结76
课后练习76
第5章鸿蒙中的数据管理<<<78
5.1本章简介78
5.2方舟数据管理78
ArkData简介78
5.3用户首选项实现数据持久化79
5.3.1接口说明79
5.3.2使用步骤80
5.3.3数据查看83
5.4关系数据库实现数据持久化84
5.4.1接口说明84
5.4.2使用步骤85
5.4.3数据查看89
5.5案例——以“豹考通高考信息提醒”为例91
小结101
第6章用金仓开发网络数据库<<<102
6.1本章简介102
6.2金仓数据库的构建102
6.2.1KingbaseES的应用范围102
6.2.2KingbaseES的特点102
6.2.3KingbaseES下载103
6.2.4KingbaseES安装104
6.3数据库表设计与数据的导入110
6.3.1数据库表的结构设计110
6.3.2建库和建表操作116
6.3.3使用SQL语句建表119
6.3.4SQL语句讲解121
6.3.5将SQL文件导入数据库124
小结125
课后练习125
第7章读取金仓数据的Spring Boot服务器端设计<<<126
7.1本章简介126
7.2Spring Boot开发基础126
7.2.1Spring Boot技术简介126
7.2.2Spring Boot项目开发环境127
7.2.3Spring Boot项目开发基本过程131
7.3App服务器实体层设计与实现138
7.3.1App服务器实体层设计138
7.3.2App服务器实体层实现139
7.4App服务器数据持久层设计与实现142
7.4.1App服务器数据持久层设计142
7.4.2App服务器数据持久层实现142
7.5App服务器业务逻辑层设计与实现149
7.5.1App服务器业务逻辑层设计149
7.5.2App服务器业务逻辑层实现——省控线和个人报考意愿150
7.6App服务器控制层设计与实现157
7.6.1App服务器控制层设计157
7.6.2App服务器控制层实现 ——省控线158
小结159
课后练习159第8章鸿蒙App与Spring Boot服务器交互设计<<<160
8.1本章简介160
8.2客户端和服务器端数据交互基础160
8.2.1HTTP160
8.2.2Axios介绍161
8.2.3网络服务器端返回结果解析——JSON解析164
8.3“省控线查询”模块与服务器端交互的实现164
8.3.1“省控线查询”模块与服务器端交互流程164
8.3.2获取服务器端数据164
8.3.3显示省控线数据列表165
8.4“历年录取线查询”模块与服务器端交互的实现166
8.4.1“历年录取线查询”模块与服务器端交互流程166
8.4.2获取服务器端学校录取线和专业录取线167
8.4.3显示学校录取线(单条数据)和专业录取线列表(整条数据列表)168
8.5“报考咨询”模块与服务器端交互的实现170
8.5.1“报考咨询”模块与服务器端交互流程170
8.5.2获取历史问题列表171
8.5.3“提问”模块实现173
8.5.4“问题回复”模块实现174
8.5.5“查询问题”模块实现176
8.6“个人意愿推荐”模块与服务器端交互的实现177
8.6.1“个人意愿推荐”模块与服务器端交互流程177
8.6.2填写个人基本志愿178
8.6.3获取个人基本信息178
8.6.4显示往年的院校专业推荐179
8.7模拟机运行180
小结181
课后练习182
第9章安卓App应用体验<<<183
9.1本章简介183
9.2开发环境配置183
9.2.1Java语言183
9.2.2Java环境配置184
9.2.3Android Studio下载191
9.2.4Android Studio安装191
9.2.5创建第一个项目: HelloWorld195
9.2.6创建一个虚拟机设备198
9.3本地数据版App案例202
9.4网络数据版App案例203
9.4.1设计网络服务器203
9.4.2Android功能实现205
9.4.3客户端运行效果205
小结206
课后练习207
第10章安卓App客户端设计<<<208
10.1本章简介208
10.2“查询界面”模块设计与实现208
10.2.1用Spinner实现下拉列表选项209
10.2.2事件监听器210
10.2.3ListView列表211
10.3“报考咨询”模块设计与实现211
10.3.1界面设计212
10.3.2问题列表的实现213
10.3.3问题回复对话框的实现214
10.4“个人基本信息”模块设计和实现214
10.4.1界面设计214
10.4.2使用SharedPreferences实现个人信息存储215
10.4.3“个人基本信息填写”对话框实现216
10.5多页面切换效果设计与实现218
10.5.1多页面切换框架的实现219
10.5.2为选项卡添加对应内容222
10.5.3多页面内容填充225
10.6绘制趋势图229
10.6.1绘制图类230
10.6.2用绘图类绘制坐标轴231
10.6.3用绘图类绘制趋势线——源数据来自数组235
10.6.4用绘图类绘制趋势线——源数据来自录取线页面240
10.6.5编写趋势图相关Activity和Fragment244
小结246
课后练习246
第11章安卓App存取本地数据库的设计<<<248
11.1本章简介248
11.2SQLite248
11.2.1了解SQLite248
11.2.2安装SQLite248
11.3创建SQLite数据库251
11.3.1创建bkt数据库251
11.3.2创建area表252
11.3.3插入area表数据253
11.3.4创建school表254
11.3.5导入school表数据255
11.4SQLite数据库操作类与接口259
11.4.1SQLiteDataBase类259
11.4.2SQLiteOpenHelper类260
11.4.3Cursor接口260
11.4.4ContentValues类261
11.5从SQLite获取ListView列表项的值261
11.5.1项目结构261
11.5.2案例流程模块262
11.5.3定义全局变量类262
11.5.4数据库操作辅助类263
11.5.5替换area表数据264
11.5.6替换school表数据266
小结267
课后练习267
第12章用MySQL开发网络数据库<<<268
12.1MySQL数据库的构建268
12.1.1MySQL的应用范围268
12.1.2MySQL的优缺点268
12.1.3MySQL安装269
12.2数据库可视化工具安装与介绍275
12.2.1Navicat for MySQL下载275
12.2.2Navicat for MySQL安装277
12.3数据库表设计与数据的导入280
12.3.1数据库表的结构设计280
12.3.2建库和建表操作280
12.3.3使用SQL语句建表282
12.3.4SQL语句讲解283
12.3.5将Excel表导入数据库284
12.3.6将SQL文件导入数据库288
小结289
课后练习289
第13章Java Web服务器端设计<<<290
13.1本章简介290
13.2服务器开发背景知识290
13.2.1JSP简介290
13.2.2Tomcat服务器290
13.2.3服务器与客户端交互294
13.3了解Java Web技术294
13.3.1DAO设计模式294
13.3.2认识Java Web程序的目录结构295
13.4Java Web 核心技术296
13.4.1JavaBean技术296
13.4.2运行第一个Java Web程序296
13.4.3Servlet技术299
13.4.4HttpServletRequest类300
13.4.5HttpServletResponse类300
13.4.6实战演练300
13.5设计App服务器数据库工具类302
13.5.1JDBC技术302
13.5.2数据库连接类的实现302
13.6设计App服务器业务逻辑类304
13.6.1建立实体类304
13.6.2数据库操作类的实现305
13.6.3练习307
13.7设计App服务器Servlet类308
13.7.1省控线Servlet类的实现308
13.7.2练习310
13.8App服务器端设计巩固310
13.8.1建立问题模块实体类310
13.8.2数据库问题模块操作类311
13.8.3问题模块Servlet类312
小结313
课后练习313
第14章安卓App客户端与服务器端交互设计<<<314
14.1本章简介314
14.2客户端和服务器端数据交互基础315
14.2.1HttpClient315
14.2.2网络服务器端返回结果解析——JSON解析316
14.2.3第三方JAR包导入317
14.2.4客户端与服务器端交互工具类设计319
14.3“省控线查询”模块与服务器端交互的实现319
14.3.1“省控线查询”模块与服务器端交互流程319
14.3.2获取服务器端数据320
14.3.3显示省控线数据列表321
14.4“历年录取线查询”模块与服务器端交互的实现321
14.4.1“历年录取线查询”模块与服务器端交互流程321
14.4.2获取服务器端学校录取线和专业录取线322
14.4.3显示学校录取线和专业录取线列表323
14.5“报考咨询”模块与服务器端交互的实现324
14.5.1“报考咨询”模块与服务器端交互流程324
14.5.2获取历史问题列表325
14.5.3“提问”模块实现326
14.5.4“问题回复”模块实现326
14.5.5“查询问题”模块实现327
小结327
课后练习328
参考文献<<<329
|
| 內容試閱:
|
前言
基于国产操作系统、国产数据库管理系统等国产平台的App应用软件,在信息安全、国产软件生态的打造等方面影响越来越大。但该类软件开发人才目前还比较缺乏,在软件开发课程中,介绍国产软件开发工具的也较少。为此,我们首先专门设计了一个基于“纯血版鸿蒙+金仓数据库+SpringBoot”的App新案例,新编第3~8章等6章内容;其次,改造原版中基于“Android+MySQL+JavaWeb”的App老案例,以适应新的教学目标,调整为新版的后6章;再次,开发了一系列项目程序包、源代码清单文件及操作演示视频,通过二维码将纸质书与数字资源关联,将其有机融入相关章节中。
本教材以“App全栈开发”为主线,基于“国产为先、国产国际并列”原则,突出“鸿蒙+金仓”,兼顾“安卓+MySQL”,推广软件开发“国产平台”。希望帮助读者解决开发App涉及多种环境和编程语言,项目打通难的问题。克服同类教材多数只讲客户端、服务器端或数据库的某一个部分,导致读者常常看很多本书,都搞不通一个项目的困惑。读者通过学习,将克服代码畏难情绪,获得项目经验,增强专业信心;熟悉国产编程工具,提高开发能力,下定报国决心;养成严谨细致习惯,训练系统思维,培养学习恒心。
为便于读者使用本教材,在教材内容、教学设计、课程思政和资源建设等方面做了以下尝试。
在教材内容方面: ①研发教学案例,企业编者传承开发经验,校企共同开发融合“鸿蒙+金仓”和“安卓+MySQL”的一个App大案例——志愿助手“豹考通” ②与Spring Boot服务器端一起,构成基于“鸿蒙+金仓”国产平台的App全栈案例,以及基于“安卓+MySQL”国际平台的案例。
在教学设计方面: ①将大案例拆分为一个个小例子,可独立运行和集成测试,完成“从1到0”的项目拆解,再实现“从0到1”的项目集成; ②从App设计、开发到上线,引导读者边学边做,边检验,学完全书即完成该完整项目,熟悉一个较大规模App的开发全过程; ③功能→实现代码→关键细节,由浅入深,层层递进。
在课程思政方面: ①在研发软件项目时,带领学生熟悉、运用“鸿蒙”操作系统和“金仓”数据库系统等基础平台,将国产平台应用嵌入学生综合能力培养的关键阶段,积极加入“软件国产化”行列。②引入美国等西方国家对我国科技“卡脖子”、华为鸿蒙突围以及近几年IT行业国产替代的成绩等事例,帮助学生树立科技自立自强的信心,把握好“软件国产化”趋势。③将国际上通用的开发平台运用,科学合理引入项目研发中,让学生在研发实践中比较、借鉴,树立开放包容、吸收改进的科学态度,服务新质生产力的发展。④在大案例中,同时使用国内外多个开发平台和多种编程语言。此类案例的调通需要学生更多的耐心与更强的毅力,通过这一实践,培养学生的工匠精神。⑤重视App应用“界面内容”设计,如高考志愿咨询中的“客观评价用户”模块,引导学生关注软件研发中的社会责任。
在资源建设方面: ①除代码库和课件外,增加演示App开发过程的微课视频; ②用二维码与纸质书关联,解决开发细节描述难等问题; ③读者扫描二维码下载代码清单或观看操作视频。将下载的代码复制到开发平台,可减少枯燥的程序输入工作;观看操作视频可以对照学习,提高学习效率。
读者可以根据个人偏好、学习基础与学习目标,基于图0?1的引导,选择下述相应的学习路径。
●大全栈推荐路线: 项目需求分析→鸿蒙App开发体验→鸿蒙客户端设计→鸿蒙中的数据管理→用金仓开发网络数据库→Spring Boot的服务器端设计→鸿蒙App与Spring Boot服务器交互设计→安卓App应用体验→安卓App客户端设计→用MySQL开发网络数据库→Java Web服务器端设计→ 安卓App客户端与服务器端交互设计。
●国产开发平台为主(小全栈): 项目需求分析→鸿蒙App开发体验→鸿蒙客户端设计→鸿蒙中的数据管理→用金仓开发网络数据库→Spring Boot服务器端设计→鸿蒙App与Spring Boot服务器交互设计。
●传统开发平台为主(小全栈): 项目需求分析→安卓App应用体验→安卓App客户端设计→安卓App存取本地数据库的设计→用MySQL开发网络数据库→Java Web服务器端设计→ 安卓App客户端与服务器端交互设计。
软件项目开发实战——App全栈(第2版)〖1〗〖2〗〖2〗〖2〗〖2〗图0?1本教材学习路径图
本教材假定读者具有一定的编程语言基础,对App 开发和软件编程有一定的了解。本教材中有些代码较长,有些模块只列出关键代码。为方便阅读,每段代码都添加了代码编号,部分关键语句加了注释,并给出了程序在资源包中的位置,样例如下。
程序清单4?2Code040202\\\\MyApplication_bkt_4\\\\entry\\\\src\\\\main\\\\ets\\\\pages\\\\Spinner42Page.ets1Row() {
2if (this.selectYear && this.selectProvince) {
3Text(‘${this.selectProvince}地区${this.selectYear}年省控线’)
4.fontSize(30) //字体大小
5.fontWeight(FontWeight.Bold) //字体加粗
6}
7}
8.width(‘100%’)
9.justifyContent(FlexAlign.Center) //居中
10.padding({ top: 20, bottom: 20 })
其中,1、2、…、10为代码行号,中间为代码实际内容,“//”后为注释内容。程序清单的位置也进行了详细标注,便于读者查找。各章代码独立存储在一个文件夹中,在阅读本书时,最好按照教材中的步骤同时实际操作,加深印象,掌握关键技术,不建议直接打开源代码运行来查看最后效果。编程基础较弱者也可泛读全书,体验App开发流程和关键细节。涉及相关技术时,尽可能去参考相关教材或网络资源。为方便学习、交流与资源共享,出版社提供了本教材相关资源的下载。
本教材由钟元生担任主编,负责全书的方案设计、内容策划、案例分解、细节把握、质量控制和统编定稿工作。各章分工如下: 钟元生负责第1章、第2章,并参编其余各章,李浩轩负责第3章,曹雷负责第4章,李普聪负责第5章、第12章,程梓宽负责第6章,欧阳贺麒负责第7、8、9章,邹宇杰负责第10章,高成珍负责第11章,赵圣鲁负责第13章,钟坚负责第14章。欧阳贺麒参加了书稿修订、代码编写等工作。倚动实验室的肖振斌、徐王倩、徐昌鸿、谢锋、李志英、彭兵幸等同学参与了视频制作、课件开发、项目调试等大量工作。
作为一种尝试,我们在本教材编写过程中反复对案例进行修改,对教材结构、教法、编法等进行研究与设计,进行了多次大规模修改,本教材方得以展现在读者面前。尽管如此,本教材中依然有一些不尽如人意的地方,还望读者批评指正,以便将来再版时完善。
编者
于江西财经大学麦庐园
2025年11月
|
|