本书特色
“十二五”普通高等教育本科国家级规划教材
1)内容新颖。本书不是Python语言入门的教材,而是使Python进入实用的教材。以Python为承载语言,综合Python软件开发涉及的图形界面、操作系统功能调用、数据库应用开发、网络应用开发、多媒体应用开发。
2)内容更实用。内容实用一直是本书的宗旨。本次修订,增加了大量实例,给读者应用本书内容编写应用程序提供示范。
3)课程思政润无声。本书的课程思政内容,不必占用课堂时间,使读者在潜移默化中了解历史文化,如果再查阅相关资料,必会有更大的收获。
内容简介
《软件开发技术基础 第4版》介绍了软件开发中常用的基本原理、方法和技术。主要内容包括软件开发方法、数据结构及其应用、操作系统及应用程序开发、数据管理及应用程序开发、网络及应用程序开发、多媒体编程技术及实验等。《软件开发技术基础 第4版》以Python语言为程序的承载语言,包括可视化程序设计、进程及线程程序设计、数据库应用程序设计、图形图像和音视频程序设计等内容。除第1章外,每章都有实例并附适量的习题。在实例中融入思政元素,让读者在技术学习中感受中国文化,感受美和力量。
《软件开发技术基础 第4版》结构合理、条理清晰、内容实用,可作为普通高等院校理工类非计算机专业的软件技术、软件开发类课程的教材,也可供相关开发人员参考。
作者简介
赵英良,西安交通大学教授,计算机学院党组织书记。长期从事计算机基础课程教学,获国家级教学成果奖1项,省级教学成果奖3项,主编 “十一五”国家级规划教材3本,“十二五”国家级规划教材1本。。
目录
前言
第1章软件开发方法
11软件工程概述
111软件的特征
112软件工程
113生命周期模型
12软件开发过程
121需求分析
122软件设计
123软件实现
124软件测试
125软件维护
126面向对象软件开发的
常用工具
13计算模式简述
131集中式计算模式
132C/S计算模式
133B/S计算模式
14习题
第2章数据结构及其应用
21数据结构的基本概念
22线性数据结构
221顺序表
222栈
223队列
224单链表
225实例:迷宫寻路
23查找和排序
231查找基本概念
232常用查找方法
233排序基本概念
234常用排序方法
24树和二叉树
241树的基本概念
242二叉树的实现
243二叉树的遍历
244二叉排序树
245实例:哈夫曼树
25图结构
251图的基本概念
252图结构的实现
253图的遍历方法
254实例:最小生成树
26习题
第3章操作系统及应用程序开发
31操作系统概述
311操作系统的概念
312操作系统的类型
313常见操作系统简介
32操作系统的资源管理
321进程管理
322存储管理
323设备管理
324文件管理
325用户接口
33基于Python的Windows操作系统
应用程序设计
331线程和进程
332内存管理和内存文件
333文件管理
334动态链接库和Windows API
335图形界面
34实例:图片浏览器
341功能描述
342问题分析和系统设计
343源程序
35习题
第4章数据管理及应用程序开发
41数据库技术基础
411关系模型的基本概念
412关系规范化理论
413关系数据库设计
414关系数据库标准语言SQL
415非关系数据库
42数据库编程
421数据库管理系统简介
422数据库应用程序设计
423数据库编程实例
43实例:基于Python的可视化图书管理系统
431功能设计与数据库设计
432控制台程序设计
433可视化程序设计
44习题
第5章网络及应用程序开发
51Internet编程基本知识
511网络体系结构
512TCP/IP地址模式
513传输层协议
52Socket编程
521Socket基本知识
522基于TCP的客户端/服务器编程
523基于UDP的客户端/服务器编程
53迭代服务器和并发服务器编程
531迭代服务器编程
532并发服务器编程
54Internet协议模块编程
541使用http眘erver模块实现一个Web服务器
542使用urllib模块获取网页
543使用requests模块进行网页图片提取
544使用bs4模块进行网络爬虫设计
55实例:支持多人聊天的可视化程序设计
56习题
第6章多媒体编程技术
61绘图编程技术
611Matplotlib库概述
612基本图形绘制
613字体、图例和坐标轴
614实现一页多图
615生成GIF动画
62图像编程技术
621图像库Pillow
622图像的简单编辑
623图像几何变换
624绘制几何图形和文字
625图像增强
626图像过滤器
63音视频编程技术
631音频录制与回放
632音频编辑
633视频回放
634视频编辑
64实例:编程语言流行度变化图
65习题
附录实验
实验1利用顺序表实现一元多项式
实验2利用栈计算四则运算表达式的值
实验3二叉树的生成和遍历
实验4学生成绩的查找和排序
实验5Windows多线程程序设计
实验6图片浏览器
实验7数据库的建立和操作
实验8数据库编程
实验9消息回声
实验10访问计数器
实验11搜索网页图片
实验12绘制曲线与折线图
实验13绘制散点图、柱状图和饼图
实验14利用数据生成动画
实验15视频播放器
参考文献
第1章软件开发方法
11软件工程概述
111软件的特征
112软件工程
113生命周期模型
12软件开发过程
121需求分析
122软件设计
123软件实现
124软件测试
125软件维护
126面向对象软件开发的
常用工具
13计算模式简述
131集中式计算模式
132C/S计算模式
133B/S计算模式
14习题
第2章数据结构及其应用
21数据结构的基本概念
22线性数据结构
221顺序表
222栈
223队列
224单链表
225实例:迷宫寻路
23查找和排序
231查找基本概念
232常用查找方法
233排序基本概念
234常用排序方法
24树和二叉树
241树的基本概念
242二叉树的实现
243二叉树的遍历
244二叉排序树
245实例:哈夫曼树
25图结构
251图的基本概念
252图结构的实现
253图的遍历方法
254实例:最小生成树
26习题
第3章操作系统及应用程序开发
31操作系统概述
311操作系统的概念
312操作系统的类型
313常见操作系统简介
32操作系统的资源管理
321进程管理
322存储管理
323设备管理
324文件管理
325用户接口
33基于Python的Windows操作系统
应用程序设计
331线程和进程
332内存管理和内存文件
333文件管理
334动态链接库和Windows API
335图形界面
34实例:图片浏览器
341功能描述
342问题分析和系统设计
343源程序
35习题
第4章数据管理及应用程序开发
41数据库技术基础
411关系模型的基本概念
412关系规范化理论
413关系数据库设计
414关系数据库标准语言SQL
415非关系数据库
42数据库编程
421数据库管理系统简介
422数据库应用程序设计
423数据库编程实例
43实例:基于Python的可视化图书管理系统
431功能设计与数据库设计
432控制台程序设计
433可视化程序设计
44习题
第5章网络及应用程序开发
51Internet编程基本知识
511网络体系结构
512TCP/IP地址模式
513传输层协议
52Socket编程
521Socket基本知识
522基于TCP的客户端/服务器编程
523基于UDP的客户端/服务器编程
53迭代服务器和并发服务器编程
531迭代服务器编程
532并发服务器编程
54Internet协议模块编程
541使用http眘erver模块实现一个Web服务器
542使用urllib模块获取网页
543使用requests模块进行网页图片提取
544使用bs4模块进行网络爬虫设计
55实例:支持多人聊天的可视化程序设计
56习题
第6章多媒体编程技术
61绘图编程技术
611Matplotlib库概述
612基本图形绘制
613字体、图例和坐标轴
614实现一页多图
615生成GIF动画
62图像编程技术
621图像库Pillow
622图像的简单编辑
623图像几何变换
624绘制几何图形和文字
625图像增强
626图像过滤器
63音视频编程技术
631音频录制与回放
632音频编辑
633视频回放
634视频编辑
64实例:编程语言流行度变化图
65习题
附录实验
实验1利用顺序表实现一元多项式
实验2利用栈计算四则运算表达式的值
实验3二叉树的生成和遍历
实验4学生成绩的查找和排序
实验5Windows多线程程序设计
实验6图片浏览器
实验7数据库的建立和操作
实验8数据库编程
实验9消息回声
实验10访问计数器
实验11搜索网页图片
实验12绘制曲线与折线图
实验13绘制散点图、柱状图和饼图
实验14利用数据生成动画
实验15视频播放器
参考文献