仓颉程序设计(配套微课、PPT课件、电子教案、案例素材、习题答案) / 新形态一体化教材
作者: 李方方,崔松健,何淼
出版社:高等教育出版社
- 高等教育出版社
- 9787040662429
- 1版
- 48271581-0
- 16开
- 420
- 电子与信息大类
- 计算机类
- 软件技术
- 高职
本书为“软硬件产学协同人才培养项目”系列教材之一。
本书采用任务驱动形式编写,内容由易到难,由简到繁,逐层深入,逐步递进,全书共分为10个单元,36个典型工作任务和1个综合项目,单元1和单元2主要介绍仓颉编程语言的基础知识,包括仓颉语言的发展历程、开发环境、变量、常量、数据类型等;单元3和单元4主要讲解仓颉的进阶核心知识,包括选择结构、循环结构、break和continue语句的使用、常用的函数、自定义函数、函数的重载、递归、嵌套和闭包等高级应用;单元5~单元7介绍仓颉编程语言的高级核心知识,包括结构体、类和对象、继承、接口、集合对象以及线程和网络编程等;单元8~单元10介绍仓颉开发鸿蒙应用、仓颉连接数据库,最后通过一个综合项目进行实战演练。
本书配有微课视频、教学课件、案例资源等丰富的数字化教学资源。与本书配套的数字课程在“智慧职教”平台(www.icve.com.cn)上线,学习者可登录平台在线学习,授课教师可调用本课程构建符合自身教学特色的SPOC,详见“智慧职教”服务指南。授课教师也可登录“高等教育出版社产品信息检索系统”(xuanshu.hep.com.cn)搜索并下载本书配套教学资源,首次使用本系统的用户,请先进行注册并完成教师资格认证。
本书可作为高等职业院校计算机类专业“仓颉程序设计”课程的教材,也可作为广大软件技术产业从业人员和仓颉语言编程爱好者的自学参考书。
前辅文
单元1 初识仓颉
学习目标
任务1.1 安装仓颉语言工具链
【任务描述】
【知识准备】
1.1.1 仓颉语言的诞生
1.1.2 仓颉语言的特点
1.1.3 仓颉语言的学习资源
【任务实现】
任务1.2 运行第一个仓颉程序
【任务描述】
【知识准备】
【任务实现】
单元小结
课后练习
单元2 变量和数据类型
学习目标
任务2.1 使用变量和常量输出
学生信息
【任务描述】
【知识准备】
2.1.1 标识符
2.1.2 变量的声明
2.1.3 变量的使用
2.1.4 变量的输入与输出
2.1.5 常量的声明和使用
2.1.6 数据类型
【任务实现】
任务2.2 使用字符串输出古诗词
【任务描述】
【知识准备】
2.2.1 字符数据类型
2.2.2 字符串数据类型
【任务实现】
任务2.3 使用操作符计算体重BMI指数
【任务描述】
【知识准备】
2.3.1 算术操作符
2.3.2 关系操作符
2.3.3 逻辑操作符
2.3.4 操作符优先级
【任务实现】
单元小结
课后练习
单元3 流程控制
学习目标
任务3.1 使用if语句实现公司话费计算器
【任务描述】
【知识准备】
3.1.1 流程控制
3.1.2 选择结构if语句
【任务实现】
任务3.2 使用while循环语句计算1~10的阶乘
【任务描述】
【知识准备】
3.2.1 while循环语句
3.2.2 do...while循环语句
【任务实现】
任务3.3 使用for循环计算学生成绩
【任务描述】
【知识准备】
3.3.1 for in表达式
3.3.2 for in遍历序列
3.3.3 循环的嵌套
【任务实现】
任务3.4 使用break和continue语句限制银行卡输入密码次数
【任务描述】
【知识准备】
3.4.1 跳转语句break
3.4.2 跳转语句continue
【任务实现】
任务3.5 使用match表达式计算运输公司用户运费
【任务描述】
【知识准备】
3.5.1 match表达式有匹配值
3.5.2 match表达式没有匹配值
【任务实现】
任务3.6 使用Week枚举判断是否是周末
【任务描述】
【任务分析】
【知识准备】
3.6.1 枚举类型定义
3.6.2 模式匹配表达式与枚举模式
【任务实现】
单元小结
课后练习
单元4 函数
学习目标
任务4.1 使用常用函数判断IP地址的合法性
【任务描述】
【知识准备】
4.1.1 数学math标准库
4.1.2 常用的字符串函数
【任务实现】
任务4.2 使用自定义函数实现银行账户存取款功能
【任务描述】
【知识准备】
4.2.1 仓颉语言函数定义
4.2.2 函数的调用
4.2.3 函数类型
【任务实现】
任务4.3 使用函数重载计算两数之和
【任务描述】
【知识准备】
4.3.1 函数重载定义
4.3.2 函数名相同,函数参数不同
4.3.3 函数名相同,参数不同
4.3.4 不同作用域的函数重载
【任务实现】
任务4.4 使用函数递归输出斐波那契数列
【任务描述】
【知识准备】
4.4.1 函数递归的定义
4.4.2 递归调用两个关键阶段
4.4.3 递归调用三要素
4.4.4 函数递归调用实例
【任务实现】
任务4.5 使用嵌套函数实现图书ISBN检验器
【任务描述】
【知识准备】
4.5.1 嵌套函数的定义
4.5.2 函数的嵌套调用特点
4.5.3 嵌套函数调用实例
【任务实现】
任务4.6 使用闭包函数实现盲盒抽奖
【任务描述】
【知识准备】
4.6.1 函数类型
4.6.2 Lambda表达式
4.6.3 闭包
【任务实现】
单元小结
课后练习
单元5 面向对象
学习目标
任务5.1 使用结构体进行学生成绩管理
【任务描述】
【知识准备】
5.1.1 定义struct类型
5.1.2 struct成员变量
5.1.3 struct构造函数
5.1.4 struct成员函数
5.1.5 创建struct实例
5.1.6 mut函数
【任务实现】
任务5.2 使用类和对象完成图书购书管理功能
【任务描述】
【知识准备】
5.2.1 面向对象的基础知识
5.2.2 类的定义
5.2.3 对象的创建
【任务实现】
任务5.3 使用继承实现图形计算管理
【任务描述】
【知识准备】
5.3.1 继承的基本概念
5.3.2 子类的构造函数
5.3.3 覆盖和重定义
【任务实现】
任务5.4 使用接口实现企业人员信息管理
【任务描述】
【知识准备】
5.4.1 接口的定义
5.4.2 接口的实现
5.4.3 接口的继承
5.4.4 Any接口
【任务实现】
单元小结
课后练习
单元6 集合容器
学习目标
任务6.1 使用Array存储学生信息
【任务描述】
【知识准备】
6.1.1 基础Collection类型概述
6.1.2 Array的创建
6.1.3 访问Array的元素
6.1.4 修改Array的元素
【任务实现】
任务6.2 使用ArrayList实现唱红歌录制系统
【任务描述】
【知识准备】
6.2.1 ArrayList的基本概念
6.2.2 创建ArrayList
6.2.3 访问和修改ArrayList元素
6.2.4 添加和删除ArrayList元素
6.2.5 对ArrayList进行排序、切片、克隆
6.2.6 动态增加ArrayList大小
【任务实现】
任务6.3 使用HashSet实现用户注册管理
【任务描述】
【知识准备】
6.3.1 HashSet的基本概念
6.3.2 创建HashSet
6.3.3 访问HashSet元素
6.3.4 添加和删除HashSet元素
【任务实现】
任务6.4 使用HashMap模拟中英文翻译系统
【任务描述】
【知识准备】
6.4.1 HashMap的基本概念
6.4.2 创建HashMap元素
6.4.3 访问HashMap元素
6.4.4 添加或修改HashMap元素
【任务实现】
单元小结
课后练习
单元7 线程与网络编程
学习目标
任务7.1 使用多线程技术模拟火车票售票系统
【任务描述】
【知识准备】
7.1.1 线程的基本概念
7.1.2 创建线程
7.1.3 访问线程
7.1.4 终止线程
7.1.5 同步机制
【任务实现】
任务7.2 使用Socket编程技术实现网络聊天
【任务描述】
【知识准备】
7.2.1 网络通信的基础知识
7.2.2 Socket编程
7.2.3 HTTP编程
7.2.4 WebSocket编程
【任务实现】
单元小结
课后练习
单元8 鸿蒙应用开发
学习目标
任务8.1 搭建仓颉开发鸿蒙应用的开发环境
【任务描述】
【知识准备】
8.1.1 鸿蒙应用开发
8.1.2 鸿蒙开发环境
8.1.3 使用仓颉开发鸿蒙应用
【任务实现】
任务8.2 使用仓颉开发智慧环保App
【任务描述】
【知识准备】
8.2.1 仓颉工程项目管理
8.2.2 Ability概述
8.2.3 Stage应用模型
8.2.4 仓颉UI文件组织结构
8.2.5 仓颉的应用生命周期
8.2.6 常用组件
【任务实现1】智慧环保App主页面的实现
【任务实现2】智慧环保App新闻详情页面的实现
单元小结
课后练习
单元9 数据库编程
学习目标
任务9.1 连接openGauss数据库
【任务描述】
【知识准备】
9.1.1 openGauss数据库简介
9.1.2 database.sql包简介
9.1.3 opengauss-driver简介
【任务实现】
任务9.2 对openGauss数据库进行操作
【任务描述】
【知识准备】
9.2.1 创建角色
9.2.2 数据增删改
【任务实现】
单元小结
课后练习
单元10 综合项目开发:基于仓颉的网上书店
学习目标
任务10.1 创建工程
任务10.2 构建简单HTTP服务器
任务10.3 封装Web服务器类
任务10.4 创建数据库
任务10.5 项目实现
单元小结
课后练习
前辅文
单元1 初识仓颉
学习目标
任务1.1 安装仓颉语言工具链
【任务描述】
【知识准备】
1.1.1 仓颉语言的诞生
1.1.2 仓颉语言的特点
1.1.3 仓颉语言的学习资源
【任务实现】
任务1.2 运行第一个仓颉程序
【任务描述】
【知识准备】
【任务实现】
单元小结
课后练习
单元2 变量和数据类型
学习目标
任务2.1 使用变量和常量输出
学生信息
【任务描述】
【知识准备】
2.1.1 标识符
2.1.2 变量的声明
2.1.3 变量的使用
2.1.4 变量的输入与输出
2.1.5 常量的声明和使用
2.1.6 数据类型
【任务实现】
任务2.2 使用字符串输出古诗词
【任务描述】
【知识准备】
2.2.1 字符数据类型
2.2.2 字符串数据类型
【任务实现】
任务2.3 使用操作符计算体重BMI指数
【任务描述】
【知识准备】
2.3.1 算术操作符
2.3.2 关系操作符
2.3.3 逻辑操作符
2.3.4 操作符优先级
【任务实现】
单元小结
课后练习
单元3 流程控制
学习目标
任务3.1 使用if语句实现公司话费计算器
【任务描述】
【知识准备】
3.1.1 流程控制
3.1.2 选择结构if语句
【任务实现】
任务3.2 使用while循环语句计算1~10的阶乘
【任务描述】
【知识准备】
3.2.1 while循环语句
3.2.2 do...while循环语句
【任务实现】
任务3.3 使用for循环计算学生成绩
【任务描述】
【知识准备】
3.3.1 for in表达式
3.3.2 for in遍历序列
3.3.3 循环的嵌套
【任务实现】
任务3.4 使用break和continue语句限制银行卡输入密码次数
【任务描述】
【知识准备】
3.4.1 跳转语句break
3.4.2 跳转语句continue
【任务实现】
任务3.5 使用match表达式计算运输公司用户运费
【任务描述】
【知识准备】
3.5.1 match表达式有匹配值
3.5.2 match表达式没有匹配值
【任务实现】
任务3.6 使用Week枚举判断是否是周末
【任务描述】
【任务分析】
【知识准备】
3.6.1 枚举类型定义
3.6.2 模式匹配表达式与枚举模式
【任务实现】
单元小结
课后练习
单元4 函数
学习目标
任务4.1 使用常用函数判断IP地址的合法性
【任务描述】
【知识准备】
4.1.1 数学math标准库
4.1.2 常用的字符串函数
【任务实现】
任务4.2 使用自定义函数实现银行账户存取款功能
【任务描述】
【知识准备】
4.2.1 仓颉语言函数定义
4.2.2 函数的调用
4.2.3 函数类型
【任务实现】
任务4.3 使用函数重载计算两数之和
【任务描述】
【知识准备】
4.3.1 函数重载定义
4.3.2 函数名相同,函数参数不同
4.3.3 函数名相同,参数不同
4.3.4 不同作用域的函数重载
【任务实现】
任务4.4 使用函数递归输出斐波那契数列
【任务描述】
【知识准备】
4.4.1 函数递归的定义
4.4.2 递归调用两个关键阶段
4.4.3 递归调用三要素
4.4.4 函数递归调用实例
【任务实现】
任务4.5 使用嵌套函数实现图书ISBN检验器
【任务描述】
【知识准备】
4.5.1 嵌套函数的定义
4.5.2 函数的嵌套调用特点
4.5.3 嵌套函数调用实例
【任务实现】
任务4.6 使用闭包函数实现盲盒抽奖
【任务描述】
【知识准备】
4.6.1 函数类型
4.6.2 Lambda表达式
4.6.3 闭包
【任务实现】
单元小结
课后练习
单元5 面向对象
学习目标
任务5.1 使用结构体进行学生成绩管理
【任务描述】
【知识准备】
5.1.1 定义struct类型
5.1.2 struct成员变量
5.1.3 struct构造函数
5.1.4 struct成员函数
5.1.5 创建struct实例
5.1.6 mut函数
【任务实现】
任务5.2 使用类和对象完成图书购书管理功能
【任务描述】
【知识准备】
5.2.1 面向对象的基础知识
5.2.2 类的定义
5.2.3 对象的创建
【任务实现】
任务5.3 使用继承实现图形计算管理
【任务描述】
【知识准备】
5.3.1 继承的基本概念
5.3.2 子类的构造函数
5.3.3 覆盖和重定义
【任务实现】
任务5.4 使用接口实现企业人员信息管理
【任务描述】
【知识准备】
5.4.1 接口的定义
5.4.2 接口的实现
5.4.3 接口的继承
5.4.4 Any接口
【任务实现】
单元小结
课后练习
单元6 集合容器
学习目标
任务6.1 使用Array存储学生信息
【任务描述】
【知识准备】
6.1.1 基础Collection类型概述
6.1.2 Array的创建
6.1.3 访问Array的元素
6.1.4 修改Array的元素
【任务实现】
任务6.2 使用ArrayList实现唱红歌录制系统
【任务描述】
【知识准备】
6.2.1 ArrayList的基本概念
6.2.2 创建ArrayList
6.2.3 访问和修改ArrayList元素
6.2.4 添加和删除ArrayList元素
6.2.5 对ArrayList进行排序、切片、克隆
6.2.6 动态增加ArrayList大小
【任务实现】
任务6.3 使用HashSet实现用户注册管理
【任务描述】
【知识准备】
6.3.1 HashSet的基本概念
6.3.2 创建HashSet
6.3.3 访问HashSet元素
6.3.4 添加和删除HashSet元素
【任务实现】
任务6.4 使用HashMap模拟中英文翻译系统
【任务描述】
【知识准备】
6.4.1 HashMap的基本概念
6.4.2 创建HashMap元素
6.4.3 访问HashMap元素
6.4.4 添加或修改HashMap元素
【任务实现】
单元小结
课后练习
单元7 线程与网络编程
学习目标
任务7.1 使用多线程技术模拟火车票售票系统
【任务描述】
【知识准备】
7.1.1 线程的基本概念
7.1.2 创建线程
7.1.3 访问线程
7.1.4 终止线程
7.1.5 同步机制
【任务实现】
任务7.2 使用Socket编程技术实现网络聊天
【任务描述】
【知识准备】
7.2.1 网络通信的基础知识
7.2.2 Socket编程
7.2.3 HTTP编程
7.2.4 WebSocket编程
【任务实现】
单元小结
课后练习
单元8 鸿蒙应用开发
学习目标
任务8.1 搭建仓颉开发鸿蒙应用的开发环境
【任务描述】
【知识准备】
8.1.1 鸿蒙应用开发
8.1.2 鸿蒙开发环境
8.1.3 使用仓颉开发鸿蒙应用
【任务实现】
任务8.2 使用仓颉开发智慧环保App
【任务描述】
【知识准备】
8.2.1 仓颉工程项目管理
8.2.2 Ability概述
8.2.3 Stage应用模型
8.2.4 仓颉UI文件组织结构
8.2.5 仓颉的应用生命周期
8.2.6 常用组件
【任务实现1】智慧环保App主页面的实现
【任务实现2】智慧环保App新闻详情页面的实现
单元小结
课后练习
单元9 数据库编程
学习目标
任务9.1 连接openGauss数据库
【任务描述】
【知识准备】
9.1.1 openGauss数据库简介
9.1.2 database.sql包简介
9.1.3 opengauss-driver简介
【任务实现】
任务9.2 对openGauss数据库进行操作
【任务描述】
【知识准备】
9.2.1 创建角色
9.2.2 数据增删改
【任务实现】
单元小结
课后练习
单元10 综合项目开发:基于仓颉的网上书店
学习目标
任务10.1 创建工程
任务10.2 构建简单HTTP服务器
任务10.3 封装Web服务器类
任务10.4 创建数据库
任务10.5 项目实现
单元小结
课后练习

















