《高级语言程序设计》课程思政教学设计

2022-05-16 09:52佘玉梅连会杰
关键词:程序设计民族团结思政

赵 波,佘玉梅,杨 曼,连会杰

(云南民族大学 电子信息工程学院,云南 昆明 650500)

高校肩负着新时代人才培养的重要使命.2016年习近平总书记在全国高校思想政治工作会议上指出:“要用好课堂教学这个主渠道,思想政治理论课要坚持在改进中加强,提升思想政治教育亲和力和针对性,满足学生成长发展需求和期待,其他各门课都要守好一段渠、种好责任田,使各类课程与思想政治理论课同向同行,形成协同效应.”这是以习近平总书记为代表的党中央对新时代高校思想政治工作提出的新目标和新要求,也是指导高校教育教学改革的纲领性文献.在此背景下,“课程思政”应运而生.各个学校都从挖掘思政元素、构建课程思政教学矩阵、教学设计、开展课程思政教学等方面给出了许多好的做法和经验[1-7].但在推进课程思政建设的实践过程中,也不乏将思政元素简单叠加或生硬移植的标签化、形式化、虚假化的做法[8].2020年5月,教育部《高等学校课程思政建设指导纲要》提出:专业教育课程要根据不同学科专业的特色和优势,深入研究不同专业的育人目标,深度挖掘提炼专业知识体系中所蕴含的思想价值和精神内涵,科学合理拓展专业课程的广度、深度和温度,持续改进,不断提升学生的课程学习体验、学习效果,坚决防止“贴标签”“两张皮”[9].2021年4月,教育部在国家级课程思政示范课申报中要求:要“结合本校办学定位、专业特色和人才培养要求,准确把握示范课程的课程思政建设方向和重点,科学设计示范课程的课程思政建设目标,优化课程思政内容供给……”.为此,有必要重新审视专业课程与思政资源之间的内在联系,并结合学校的办学定位、专业特色和人才培养要求,设计高级语言程序设计课程思政的教学方案,才能有效发挥课程思政的育人功能.

1 高级语言程序设计课程思政模型

云南民族大学是一所培养各民族高级专业人才的综合性大学,是教育部、国家民族事务委员会与云南省人民政府共建的省属重点大学,培养的学生涵盖了56个民族.学校自1951年8月1日创建以来,始终以立足边疆、服务边疆、服务民族团结繁荣发展为己任,围绕民族性、边疆性、国际性的办学定位,已成为中国特别是西南各民族高层次、高素质人才培养的摇篮,研究民族问题和民族关系的重要基地,国家和云南对外开放的重要窗口.2017年12月,习近平总书记给我校学生阿丽努尔·阿力木回信,提出了各族同学“要当好新时代民族团结的践行者、促进者、守护者”的期望.

高级语言程序设计是面向云南民族大学工科专业学生开设的一门专业基础课.通过本课程的教学,应让学生掌握高级语言程序设计的基本思想、求解实际问题的一般方法,灵活的思维方式及较强的动手能力,并以此为基础,让学生逐渐掌握复杂程序的设计和实现手段,为后续专业课程的学习打下扎实的理论和实践基础.

按照《高等学校课程思政建设指导纲要》精神,结合学校的办学定位、专业特色和人才培养要求,高级语言程序设计课程在做好专业教学过程中,结合课程特点,从认识论和方法论2个维度构造课程思政模型.即:

思政目标=F(认识论,方法论)

(1)

其中:

认识论={马克思主义科学无神论教育,家国情怀教育,民族团结教育}

方法论={“从上到下,逐步细化”,“条件分治,因事制宜”,“任务分解,团结合作”,“由繁到简,分治递归”,……,“统筹兼顾,恪守伦理”}

认识论维度使学生坚定“马克思主义科学无神论”“家国情怀”和“民族团结”3个信念;方法论维度向学生传授“从上到下,逐步细化”“条件分治,因事制宜”“任务分解,团结合作”“由繁到简,分治递归”等8种处理问题的方法意识(如图1所示).教学过程贯穿科学无神论、家国情怀、做人做事、民族团结四条主线,向学生阐述做人做事的基本道理;社会主义核心价值观;实现民族复兴的理想和责任.

图1 课程思政维度

由于在程序设计课程中如何开展“家国情怀、做人做事”的思政案例已有很多文献做了详细阐述,给出了切实可行的做法,所以文中仅对开展科学无神论教育和民族团结教育进行探讨.

1.1 科学无神论教育

以辩证唯物主义和历史唯物主义为理论基础的马克思主义科学无神论,揭露和批判有神论的虚幻不实和欺骗性,深刻揭示社会变化发展的规律,把人们从有神论的思想观念的束缚中解脱出来,为人们认识和改造世界的实践活动提供科学的世界观指导.在民族院校中开展马克思主义科学无神论教育,对于维护民族团结和国家长治久安,为民族地区培养靠得住,用得上的人才具有重要的意义[10-11].马克思主义科学无神论教育是思政课教学的重点内容,也是难点之一,其涉及的知识和概念抽象,既难讲清也难学懂.通常需要借用自然科学的发现和成就为其佐证.因此,在理工科专业课程中开展马克思主义科学无神论思政教育,是对思政课的最好补充和辅助,更能有效地与思想政治理论课同向同行,形成协同效应.

开设计算机程序设计课程的主要目标之一是向学生传授“利用计算机程序语言描述算法,形成程序,去指挥计算机,获取问题解的知识和认识”.其中讲授到的许多经典算法,以及类似AlphaGo(围棋机器人)战胜职业九段棋手李世石、通过“线程”实现西游记神话中的“孙悟空分身术”等案例,都蕴含着“自然是自己存在的,人是自然的一部分,自然是可以被人认识的;关于世界的知识是通过观察、实验与理性分析而得到的;在自然规律的限制之下,人类的生活由人们自己的能力与责任来主导;人们的生活不受超自然(神)的掌控,就在人们自己手中”的科学无神论思想.这些案例能潜移默化地向学生展示着“曾经的不可能”最终都不再是神话.

1.2 民族团结教育

民族团结教育是民族团结进步事业的重要组成部分,也是民族院校开设的必修课程和思政课程体系的重要组成部分,对民族院校学生做好新时代民族团结的践行者、促进者、守护者具有重要的意义.习近平同志指出:“各族人民亲如一家,是中华民族伟大复兴必定要实现的根本保证.实现中华民族伟大复兴的中国梦,就要以铸牢中华民族共同体意识为主线,把民族团结进步事业作为基础性事业抓紧抓好”[12-13].

高级语言程序设计课程中的一些知识点,例如结构体、函数等都蕴含着民族团结的思政元素,需要教师精准构思,巧妙设计.

2 思政元素挖掘与切入

根据高级语言程序设计课程思政模型设计(式1),制订课程知识与思政元素映射列表(见表1).

3 教学案例

以课程中“结构体的定义和访问”知识点教学为例.

表1 思政元素与切入点映射表

3.1 教学目标

主要是让学生理解结构体类型的作用,掌握结构体类型的定义和引用.所以教学应聚焦在结构体类型的作用,结构体类型的定义和引用上,通过例子讲解使学生对结构体能够达到“认识”“理解”和“掌握”3个层次. 针对结构体的特点和在程序设计中的作用,结合国家脱贫攻坚战略让每一个民族都不掉队的事例(怒江独龙族脱贫案例),开展民族团结教育.

3.2 教学组织

3.2.1 课前准备

要求学生复习在数组章节写过的“卡拉OK大奖赛计分程序”,需要学生回答以下问题:

1) 程序如何存储每位选手的成绩信息?

2) 为什么程序中,只涉及最后得分和选手号?

3) 如果增加参赛选手的姓名信息,程序应如何修改?

3.2.2 课堂教学

1) 教学导入 通过学生管理的例子开始引入教学的主题.在实际问题中,有的数据之间存在内在联系,成组出现.而采用之前学过的变量,很难表示和存储这些具有内在联系的数据.例如:在学生管理中,一个学生的学号、姓名、性别、年龄、成绩、家庭地址等项,是属于同一个学生的,因此如能有一个组合数据,反映它们之间的内在联系,将有利于实际问题的处理.

2) 主题讲授 包含(1)结构体的定义;(2)结构体变量的初始化和引用;

3) 回顾与讨论 回顾在数组章节学习过的“卡拉OK大奖赛”计分程序,并引导学生思考数组章节“卡拉OK大奖赛”计分程序实现中存在的困难和问题;利用结构体应如何改进? 如图2所示,由于数组章节“卡拉OK大奖赛”计分程序将参赛选手的各项信息分别使用一个数组记录,当按照选手最后得分排名次时,除交换成绩数组中的2名选手成绩外,还需要逐一对每项信息数组中的数据进行交换.如果选手信息除最后得分外,包括“选手号、姓名、竞赛歌曲类别……”等信息,则每增加一个信息就需要设计一个存储该信息的数组,且需要完成该项信息的数据交换,以及必须保证与成绩交换的映射顺序一致,否则信息映射就会出错.程序设计繁琐,且对学生来说既困难又容易出错.如果定义一个“选手”结构体类型,那么就可以将n个数组和n个赋值语句精简为一个选手结构体数组和3个赋值语句来实现数组元素交换,不必要考虑选手各项信息映射的一致性问题.程序设计就简单、容易控制,还不容易出错.

图2 卡拉OK比赛计分程序2种实现对比示意

通过讨论和开展对比分析,展示出“将不同类型的数据集合(团结)在一起,反映同一事物的不同属性,才能更有利于解决问题(完成相同的使命)”的道理.并结合国家脱贫攻坚战略让每一个民族都不掉队的事例(怒江独龙族脱贫案例),阐述每一种民族都是中华民族中的一个组成部分(属性),为了国家的富强、民主、文明、和谐,为了中华民族的伟大复兴,都应该团结在一起,求同存异,共同发展,一起进步,共同维护祖国的安全、稳定.每一个师生都要树立自由、平等、公正、法治的社会主义核心价值观.牢记习近平总书记的嘱托,坚决做好新时代民族团结的践行者、促进者、守护者.

教学中,必须在学生接受为了解决同一问题,而将不同类型的数据集合在一起,反映问题对象的各个属性,才能更好地实现问题目标的结构体原理和程序实现方法后.开展思政教育,学生就容易很自然地理解和接受民族团结的意义和重要性,取到很好的思政效果.

4 结语

自2016年提出“课程思政”以来,已有许多相关文献发表,可谓是仁者见仁,智者见智,各具特色,但“教无定法”永远是教学中的治理名言.只有遵循《高等学校课程思政建设指导纲要》精神,并结合学校的办学定位、专业特色和人才培养要求,才是最适合本校自身的课程思政教学方案.其次,在课程思政教学过程中,教师还应完成好以下任务:

1) 必须做好课程准备.由于教学中需要增加课程思政的讨论和教育,教师和学生都应该做好课前准备.教师在课前应该做好教学设计、注重选取合适的教学策略,着重讲授重点和难点部分.把简单易懂的非重点的内容、课程思政需要储备的先验经验等安排在课前,布置学生先行学习.

2) 必须在学生掌握、理解专业课程知识点的基础上融入思政元素.教学理论研究表明,只有当学生发现专业学习中的情景与思政教育情景之间有相似性时,他才能有可能理解和接受思政教育的内容[14].如果在学生没有完全理解、掌握专业课程知识时,融入思政元素,进行思政教育.会让学生感觉牵强、唐突,不但没有好的效果,而且还容易使学生厌倦和反感.

3) 思政元素的选择必须贴合专业知识隐寓的道理.专业知识是显性的,思政元素是隐性的.必须要选择贴合于专业知识隐寓道理的思政元素,才能引导学生在显性教育中,直接体验和潜移默化地获取有益学生个体身心健康和个性全面发展的隐性教育知识.

4) 必须控制好讨论环节的节奏和方向.控制好讨论环节的节奏和方向,既要引导学生向着思政目标前进,又要注重节奏和时间的把控,否则达不到专业教育与“课程思政”的育人效果.

猜你喜欢
程序设计民族团结思政
基于SolidWorks和VBA的电机阶梯轴建模程序设计
以铸牢中华民族共同体意识为主线 持续深化民族团结进步创建工作
———全国民族团结进步创建工作经验
·杨宁出席全省民族团结进步创建现场推进会时强调·打造新时代民族团结进步创建工作升级版
清华大学:“如盐在水”开展课程思政
基于OBE的Java程序设计个性化教学研究
项目化教学在Python程序设计课程中的应用
思政课只不过是一门“副课”?
民族团结之歌
医学专业“Python程序设计”课程教学改革总结与思考
思政课“需求侧”