《Scala编程开发》课程标准(高职).docx
Scala编程开发课程标准一、基本信息学习领域:大数据技术与应用制定时间:2019年6月适用专业:大数据专业所属系部:计算机系参考学时:64学时学 分:4制定人:林平批准人:李瑞兴二、课程性质与任务本课程定位于高职高专层次,是大数据专业的一门重要专业基础课程。本课程 分为基础篇、中级篇、高级篇及分布式框架四大局部,从Scala零基础入门,步步 深入,引导学生由浅入深地学习Scala及其应用。本课程从手把手指引学生皿 Scala语言开发环境开始,详细介绍了 Scala的语法基础,以代码实例形式分别讲解了 Scala面向对象开发及函数式编程;在此基础上进一步深入讲解了 Scala的中高级 语法特性,包括模式匹配、集合、类型参数、高级类型、隐式转化及各语法特性在Spark 源码中的应用解析,并引出Scala的Actor模型及其应用详解。本课程还详细介绍了以 Scala为基础的两大框架Akka和Kafka。课程设计本课程采用理论授课与学生课后上机实践相结合,帮助学生更好消化吸收课程知识。三、教学的目标(一)专业能力目标掌握Scala面向对象编程开发;掌握Scala高阶函数;掌握Scala模式匹配;掌握Scala集合;掌握Scala类型参数;W Scala高级类型;Wi Scala隐式转换;掌握Scala并发编程;(二)方法能力目标具有有限条件下思考问题的能力、理性思维分析能力。初步具有以定性和定量相结合的方法分析和解决大数据方面问题的能力四、课程学习设计(一)设计思路本课程采用理论授课与学生课后上机实践相结合,帮助学生更好消化吸收课程知 识。(二)课程结构序号任务任务任务任务 四任务 五任务 六任务 七任务 八任务 十工作 任务 称Seal a入 门Seal a面 向对 象编 程开 发Scala 高阶 函数Scala 模式 匹配Seal a集 合Scala 类型 参数Seal a高 级类 型Scala 隐式 转换Seal a并 发 编程Kafk a设 计理 念与 基本 架构学时4888848484学时合计:64学时(其中实践教学学时比例为25 %)理论学时:48实践学时:16序号工作任务划分教学目标和主要内容多考 学时知识目标能力目标1任务一:Scala 入门Scala入门1. IScala1. 2Windows 及Linux 下Scale 还亍 环境安装配置1. 3Scala开发环境搭建和IlelloWorld 实例1. 4变量的使用1. 5函数的定义、流程控制、异常 处理42任务二:Scala掌握Scala面向对象编2.1类的定义及属性8面向对象编 程开发程开发2.2 主构造器、私有构造器、构造 器重载2.3 内部类和外部类2.4 4单例对象、伴生对象2. 5继承:超类的构造、重写字段、 重写方法2.6抽象类、抽象字段、抽象方法2. 7trait 特贡3任务三:Scala 高阶函数掌握Scala高阶函数3. 1匿名函数3. 2偏应用函数3. 3闭包3. 4SAM 雌3. 5Curring3.6高阶函数3. 7高阶函数在Spark中的应用84任务四:Scala 模式匹配掌握Scala模式匹配4.1模式匹配简介4. 2模式匹配类型4. 3模式匹配与Case Class4. 4模式匹配应用实例85任务五:Scala 集合掌握Scala集合5. 1可变集合与不可变集合 (Collection)5.2 序列(Seq)5. 3 列表(List)5.4 集(Set)5. 5 映射(Map)5. 6 迭代器(Iterator)5.7集合的架构86任务六:Scala 类型参数掌握Scala类型参数6. 1泛型6. 2界定6. 3类型约束6. 4类型系统6. 5 型变 Variance6. 6结合Spark源码说明Scala港 参数的使用47任务七:Scala 高级类型掌握Scala高级类型7.1单例类型7. 2类型别名7.3自身类型7. 4中置类型7. 5类型投影7. 6结构类型7.7复合类型7. 8存在类型7. 9函数类型87.10抽象类型8任务八:Scala 隐式转换掌握Scala隐式转换8.1隐式转换函数8. 2隐式类与隐式对象8. 3类型证明中的隐式转换8. 4上下文界定、视图界定中的隐 式转换8. 5隐式转换规那么8. 6Spark源码中的隐式转换使用49任务九:Scala 并发编程掌握Scala并发编程9. IScala的Actor模型简介9. 2Scala Actor的构建方式9. 3Actor的生命周期9. 4Actor之间的通信9. 5 fflreact重用线程提升性能9. 6Channel 通道9. 7同步和Future9. 8Scala并发编程实例810任务十:Kafka 设计理念与 基本架构Kafka设计理念与基本 架构10.1 Kafka产生的背景10.2 消息队列系统10.3 3Kafka设计理念10. 4Kafka整体架构10. 5Kafka性能分析及优化10. 6Kafka未来研究方向4五、考核标准.考核方式理论与实践一体化评价。本课程考核含过程考核和结果考核。过程考核重点考察 学生平时出勤、课堂表现、平时作业、小组工程作业、课堂提问。这些成绩作为学生 平时成绩一并计入考核成绩中。占学期总成绩的40%o结果考核即期末考试,占总 成绩的60%,期末考试为标准化题型。1 .考核比例及要求学期总评成绩=平时成绩(40%) +期末成绩(60)过程考核(平时成绩)平时成绩(100%)二出勤(10%) +课堂表现(10%) +平时作业完成(10%) +10次 作业(40) +课堂提问(30%)结果考评(期末成绩)(100%):卷面考试,案例分析。六、教学条件与媒体资源.师资条件我校的大数据课程的主讲教师队伍很庞大,主讲教师都具有相关学科硕士学位及 其以上学位,学缘结构科学,教学团队支持结构合理。1 .教学资源图书馆的藏书较丰富,有国内外知名大数据教材和各类相关书籍。网络资料、多媒体资料教学大纲、授课教案、电子课件(PPT版)、习题考试 题、教学案例、局部主讲教师现场教学录像等教学资源.校内实训场所和设施校内的食堂、超市、多媒体教室都是实验实训场所。4.校外实训基地校外的任何单位和场所都可以成为Scala编程开发习基地。七、其他说明1.主教材Scala开发快速入门周志湖、牛亚真编著,清华大学出版社。2.参考书1陆嘉恒.Hadoop实战.机械工业出版社.2011年2曾大聃,周傲英(译).Hadoop权威指南中文版.清华大学出版社.2010 年.3迪米达克(Nick Dimiduk),卡拉纳(Amandeep Khurana),谢磊.HBase实战中文版.人民邮电出版社;第1版(2013年9月1日)