查看原文
其他

【课程思政 以案说教】设计类、编写类相关代码过程中层次递进的三个问题——《C/C++语言程序设计》课程思政案例(2)

狮子山下问教问学 狮子山下问教问学 2023-01-05

课程名称:C/C++语言程序设计

学时:64

学分:4

课程类别:专业

授课对象:一年级计算机、大数据专业本科生

课程负责人:章英

课程组成员:李小霞、翟瑞芳、汪毅


01|案例主题

设计类、编写类相关代码过程中层次递进的三个问题。

02|结合章节

第七章 类和对象

03|案例意义

本次课程将结束面向过程的程序设计语言——C 语言,开启面向对象的程序设计语言——C++ 语言。类和对象的学习将突破 C 语言面向过程的程序设计思想。要突破学生已有的程序设计思想,将面临种种困难和挑战。


因此,本次教学将采用循序渐进的方式,引导学生一步步发现问题、分析问题、解决问题,培养学生迎难而上的学习精神。与此同时,结合当下“非洲猪瘟”及猪肉价格日益上涨的这一热点问题,引导学生主动分析如何将本章节所学的知识应用于热点问题,鼓励学生积极探索问题的求解思路和方法,使学生在实际应用中体会勇于克服困难所带来的乐趣,从而树立起迎难而上的学习精神,并在今后的学习中贯彻落实。

04|案例描述

(1)教学重点:本课程的教学重点是类的封装特性。封装特性是采用 C/C++ 程序设计语言进行面向对象程序设计的三大特性之一,在应用于求解实际问题时,能够很好地保护类中的成员。


教学过程中,结合生活应用实例,以代码在编译环境中实际实现的方式,一步步将类的封装特性展现在学生面前,让学生能够对封装特性产生直观和深刻的认识,进而将封装特性应用于热门科研案例中,进一步让学生深刻体会其在面向对象程序设计中的重要性,为学生在后续程序设计中能够很好地运用封装特性指导类的设计奠定基础。


(2)教学难点:本课程的教学难点是类中成员的访问控制。此内容涉及公有Public、私有 Private 和保护 Protected 三种访问控制方式,学生容易弄混淆,从而造成开发的程序难以体现出面向对象的封装特性。


针对类中成员的访问控制这一难题,教学过程中拟采用应用案例代码边执行、边分析的方法,逐步分析代码编译出错的原因,修改代码,引导学生分析归纳,得出三种访问控制方式的特点以及它们之间的区别,从而牢固掌握这三种访问控制方式,并灵活使用它们。


(3)教学过程与方法


① 应用举例:生活中去商店买手机,不同的人群会如何进行挑选呢?激发学习兴趣,并为后续类和对象的应用案例讲解留下案例伏笔。


② 归纳推导:生活去商店买手机的过程,所有备选的手机对象,抽象出它们的共性,得到手机类,从而归纳出类和对象的概念。


③ 案例实现:以手机类的定义为例,按照类的定义的语法结构,实现该类的定义。


④ 剖析问题一:手机对象未被初始化问题。


⑤ 剖析问题二:手机对象的数据保护、数据接口问题。


⑥ 剖析问题三:手机对象的信息安全、数据被篡改问题。


⑦ 计算思维能力的培养:启迪学生将程序要实现的行为归结到类中,将面向过程的程序设计思想转化为面向对象的程序设计思想。

05|案例反思

(1)教学理念:在教学中努力做到思政与知识、能力三者融合,做到思政内容与应用案例的有机结合。以学生为认识主体,发挥学生学习的主动性、积极性、创新性。有计划地逐步引导学生发现问题、分析问题、探索问题、解决问题的能力,培养其迎难而上的学习精神。


(2)教学方法:根据本次课程的教学内容和教学要求,选择了问题式、启发式并以 C++ 编程与热点问题的研究案例相结合的方法展开类和对象的教学过程。


(3)案例分析:案例与本次课的内容贴近,可以很好地引导学生遇到困难时要认真分析、克服困难。案例中有一小部分内容需要用到后续课程的知识,有待学生进一步学习。

06|育人效果与反馈

通过对手机对象的分析,学生普遍感觉案例通俗易懂,对理解类和对象的私有数据成员和成员函数具体较好的引导作用。


另外,课后学生普遍反馈:C++ 语言与“非洲猪瘟”的热点问题应用结合,不仅激发了他们努力学习的动力,更提醒他们在遇到困难时,要主动寻求探索解决问题的方法。

撰稿人 | 章英

当班编辑 | 郑泽旋

责任编辑 | 木夕夕 喻婉芊

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存