APP下载

程序设计课程思政的教学研究初探

2021-06-11杨晓贤翁雯

计算机时代 2021年3期
关键词:应用型本科案例教学程序设计

杨晓贤 翁雯

摘  要: 课程思政建设需要把理想信念、家国情怀、道德修养、工匠精神、奉献社会等元素融入到专业课程的教学过程中。文章探索了程序设计课程的课程思政要素,以知识点为中心,以培育學生的世界观、人生观和价值观为出发点,在提高学生程序设计能力的过程中,激发学生的学习主体性,完善应用型本科人才培养模式。

关键词: 程序设计; 案例教学; 教学实践; 应用型本科; 课程思政

中图分类号:TP311          文献标识码:A     文章编号:1006-8228(2021)03-100-04

Research on the ideological and political education in programming courses

Yang Xiaoxian, Weng Wen

(School of Computer and Information Engineering, Shanghai Polytechnic University, Shanghai 201209, China)

Abstract: The ideological and political education in courses should integrate the belief, patriotism, professional ethics, craftsman spirit and dedication into the teaching process. In this paper, the ideological and political elements in programming courses are explored and taking knowledge as the center, focusing on the cultivation of students' world view, view of life and their view of value, during the process of improving students' programming ability, stimulates students' learning subjectivity and improves the training mode of application-oriented undergraduate talents.

Key words: programming; case teaching; teaching practice; application-oriented undergraduate; the ideological and political education in courses

0 引言

从思政课程到课程思政的转变,体现了党和国家对新时代本科生的三全育人要求。教育部相继出台相关指导文件,就思想政治教育核心元素纳入到专业课程体系中去做了具体部署[1-2]。将理想信念、家国情怀、职业道德、工匠精神、奉献社会等元素融入课堂,引导本科生树立正确的世界观、人生观和价值观。

C语言是计算机程序设计的入门语言之一。应用型本科高校特别重视培养本科生编程能力的教学活动,以计算机为载体,设计软件并采用程序设计语言进行编程实现[3-4]。这不仅需要培养和提高学生的程序设计能力,而且要求坚持并落实把立德树人作为教育的根本任务。在教学过程中,结合传统文化、国家安全、金融政策、科技发展、法律法规等多方面案例,使学生树立为国效力、为国争光的理想信念。

⑴ 树立爱国情怀。中国古代十进位制的算筹记数法在世界数学史上是一个伟大的创造。将它与世界其他古老民族的记数法作比较,其优越性是显而易见的。我国超算“神威·太湖之光”打破了国外的技术封锁,勇夺世界超级计算机500强排名桂冠,真正实现了软硬件系统的完全自主可控,取得了突破性进展。

⑵ 增强民族自信心。课堂上与学生交流学习编程的初心和使命。以微软和思科为代表的软件企业,逐渐形成垄断霸权,每年我国需要花费大量的费用购买正版操作系统和软硬件设备。鼓励学生现阶段认真学习,毕业后有志参与国产操作系统和编程语言的设计和研发。引入国产化概念,让学生了解技术受制于人将对生产和生活带来很大隐患,应厚植爱国主义情怀,培养其奋斗精神。

⑶ 培养大国工匠精神,鼓励学生开展创新实践。程序设计是一项需要程序员做到一丝不苟且逻辑非常缜密的工作。若程序设计存在错误,如计算精度舍入有误差的话,最后将演变为重大灾难。以支付宝和微信为代表的中国软件企业为世界经济繁荣贡献了中国力量,程序每次更新都凝聚着企业员工的大国工匠精神,他们锲而不舍地去修改和测试程序,确保程序正确和安全。

⑷ 树立正确三观。培养新时代软件开发后备人才,夯实我国在软件开发领域的重要地位。结合互联网用户数据泄露问题带来的安全性隐患,树立程序设计与软件开发的安全意识。学好程序设计当做红客,坚决不做黑客,设计编写传播非法软件将承担相应的国家法律责任。

本文将介绍程序设计(C语言)的课程思政建设工作,探索如何将课程思政元素融入到课程教学中从而潜移默化地影响学生,具体包括:课程目标、实施重点、课程体系设计和教学案例介绍等。

1 课程目标和实施重点

程序设计是一门非常重要的专业基础课,教学内容涵盖C语言基础、数据类型、分支结构、循环结构、函数、数组、指针、字符串、结构体、文件操作等主流C语言开发技术。课程重点讲授程序设计的思想和方法及其实现的思路与技能,以过程化程序设计为主。通过上机实践,熟练掌握程序的编码与调试技能。在程序设计课程思政的实践过程中,重点围绕如下三个模块。

第一模块:认识和掌握编程语言。首先通过知识点的讲解,让学生了解语法规则和注意点;其次介绍经典的编程案例,在实践过程中让学生逐步掌握并提高程序设计能力。

第二模块:围绕培养学生的世界观、人生观、价值观,引入预先设计的思政要素案例,引导学生关心我国在计算机软硬件方面的发展现状,增强学生在研发具有自主、可控软件方面的奋斗意识,激发学生立志科技报国的家国情怀。

第三模块:增强学生的知识产权意识。在学习程序设计的同时,引导和强化学生知识产权创造、运用以及保护的意识。通过课堂交流讨论加强工程伦理教育,提升学生的分析论证能力,培养学生追求真理、勇攀科学高峰的责任感与使命感。

2 课程体系设计

2.1 基本要求

首先,本课程要求学生掌握程序设计基础知识,如数据表达、数据处理和流程控制、常用算法和程序设计风格,掌握过程化程序设计方法,以及程序编码与调试的基本知识与技能。注重学生的学习方法、动手能力和团队协作精神的培养。

其次,本课程要求在授课过程中将理想信念、职业美德、家国情怀、工匠精神、社会主义核心价值观等内容融入课堂,鼓励学生以实现中华民族伟大复兴的中国梦为理想信念,自觉肩负时代责任和历史使命。一方面,能将这种使命精神和家国情怀延续到日后从事的软件设计、开发、运营和维护的工作中。另一方面,培养正确的价值观和职业品格,区分黑客和红客,拓展对软件漏洞危害性的认知和网络安全观。

2.2 教学安排

表1给出了程序设计基础的教学内容,主要分为九大部分:引言、数据类型、运算符、表达式、语句;分支;循环;数组;结构体;函数、存储类别和编译预处理;指针;文件;简单算法与程序设计等各部分。

2.3 思政案例教学

挖掘上述教学内容中涵盖的课程思政元素,设计教学内容与思政元素一对一教案。通过查找资料,以及咨询专家,选择恰当的历史典故或背景案例作为思政元素的切入点,综合运用PPT、微视频、互动投影等信息化教学手段,做到思政元素与课程内容相得益彰,在潜移默化之中让学生理解与接受,达到润物细无声的教学效果。

2.3.1 引言、数据类型、运算符、表达式、语句

引言二进制介绍:春秋战国时期,我国古人就已经熟练地使用十进位制的算筹记数法。我國运用十进制的历史比世界上第二个发明十进制的国家古代印度起码早约1000年。提高学生的民族自豪感和自信心,并鼓励学生进一步思考在新时代如何延续古圣先贤的智慧再创辉煌,实现伟大复兴的中国梦。

程序设计课程学习过程中使用的编程软件,如Dev-C++、CodeBlocks、Visual Studio等,均是外国公司设计研发的软件。介绍国产化计算机软件概念,避免长期依赖国外软件的想法,培养学生自主创新、不甘人后的进取心。介绍图灵奖获得者华人计算机学家姚期智院士。2017年姚教授放弃美国国籍成为中国公民,正式转为中国科学院院士。弘扬以爱国主义为核心的民族精神和以改革创新为核心的时代精神,希望学生能认识到自己的时代责任和历史使命。

数据类型的范围存在溢出问题:介绍软件运行安全性问题,包括内存溢出带来的程序问题,例如:1996年“阿丽亚纳-5”运载火箭将64位格式转化为16位格式导致内存溢出而引起火箭发射后爆炸的重大事故;1993年英特尔奔腾芯片的浮点数存在漏洞问题;被除数为0的千年虫问题等。引导学生意识到在依赖科学技术的同时,更应该保持一丝不苟、严谨认真的学习和工作态度。

浮点数计算精度的问题:介绍我国超级计算机建设取得的瞩目成就,激发学生的民族自豪感与自信心,鼓励学生勇攀科学高峰,追求卓越。

学好一门编程语言是一个从编写简单语句到复杂语句的学习与磨练过程,并非一蹴而就。做好一件事情与掌握一门技能一样都是从简单到复杂的过程,需要持之以恒、锲而不舍。

2.3.2 分支与循环结构

设计以“一带一路”和社会主义核心价值观为背景的分支结构程序设计案例,在介绍分支结构语法的过程中提高学生对“一带一路、合作共赢”的理解,将社会主义核心价值观内化为精神追求、外化为自觉行动。

在介绍switch语句时提到case语句的发明者,即图灵奖的获得者查尔斯霍尔,简要介绍他的发明过程和case语句的作用。此外再介绍另一位图灵奖获得者爱德嘉迪克斯特拉,他是最前察觉goto语句有害的科学家,解析他对于goto语句有害的一段分析(goto语句通常与条件语句配合使用,但是在结构化程序设计中一般不主张使用goto语句,以免造成程序流程的混乱,使理解和调试程序都产生困难),介绍他的一句座右铭“Do Only You Can Do”。对这两位科学家的杰出成就以及科学精神的介绍,不仅让学生了解他们严谨的科学方法,而且让学生体会到科学家开拓创新的职业品格和钻研精神,激发学生的科研兴趣。

在讲解循环结构前先介绍循环结构的发明者,艾达洛浮莱斯,她是计算机发展历史中的一位女英雄,突出强调她是女性的身份。倡导科学领域男女平等的一种精神,给女生学好程序设计增强信心。介绍死循环概念,尤其是死循环可能会带来的计算机安全问题,希望学生能对软硬件安全有正确的理解。说明计算机病毒自我复制的特点与循环语句的关系。介绍“熊猫烧香”病毒自动感染硬盘文件特性,以及该病毒设计者最后承担的法律责任。告诫学生须正确利用科学知识为社会发展做积极贡献,坚决抵制一切危害社会的违法行为,明辨黑客和红客概念。

2.3.3 数组

在课堂上展示社会主义核心价值观宣传标语图片,要求学生仔细观察后建立(二维)字符数组按行(国家、社会、公民)存储并打印输出。在讲解数组定义、赋值等知识点的同时教育引导学生把国家、社会、公民的价值要求融为一体,提高个人的爱国、敬业、诚信、友善修养,自觉把小我融入大我,不断追求国家的富强、民主、文明、和谐和社会的自由、平等、公正、法治。

在讲解冒泡排序、选择排序等算法时,激励学生将精益求精的大国工匠精神与勇于探索的创新精神融入到算法设计之中,以提高代码的准确性和执行效率为目标,培养笃实好学的学习态度。

2.3.4 函数

介绍软件著作权以及相关的知识产权问题,未经允许擅自使用他人设计的软件或者相关API函数接口时需要注意是否存在侵犯知识产权问题。采用第三方函数库或者软件存在一定风险,因为无法实现自主与可控。介绍党和国家对发展自主可控软件的期待与要求。激发学生学好程序设计的决心和信心,自觉将知识学习与中华民族伟大复兴的中国梦联系起来。

结构化程序设计既是一种程序设计原则与思路,同时也是一种较好的处事方法。在学习和生活中,遇到复杂棘手的事情,可以先将其分解成若干小问题或若干阶段,然后逐个解决,这样一来看似比较困难的大问题就能迎刃而解了。

2.3.5 指针

准确而灵活地运用指针,可以让程序简洁、紧凑和高效。指针的应用比较复杂,使用比较灵活,初学时可能会遇到困难,鼓励学生多思考、多比较、多上机练习,在实践中不断巩固和掌握,培养学生善于思考、刻苦钻研、不畏艰难的品质。

针对动态内存分配问题,介绍操作系统存在的大多数漏洞能通过指针进行攻击,提高安全编程意识。

2.3.6 结构体和文件部分

采用结构體描述“一带一路”沿线国家的特征,如国名、面积、人口等基本信息,在介绍结构的定义及其使用的过程中,说明“一带一路”是中国在国际舞台上彰显大国担当的一张亮丽名片,激发学生的民族自豪感和新时代使命感。

介绍爬虫在公共文件数据处理方面的法律法规,告诫学生不能编写违法程序。介绍网站用户数据泄露问题带来的安全性隐患,提高学生在数据(文件)存储、数据(文件)操作等方面的安全意识。

3 结束语

本文介绍了程序设计课程思政的教学经验,以立德树人为根本,以理想信念教育为核心,将立德树人潜移默化地渗透在每一堂课。课程思政教学实践需要不断地探索[5-6],要求任课教师充分挖掘并严格选取课程知识点相对应的思政元素,发挥好每门课程的育人作用。在应用型本科教学过程中,融入课程思政的元素,培养学生精益求精的大国工匠精神,激发学生科技报国的家国情怀和使命担当,积极探索人才培养模式改革新路径。

参考文献(References):

[1] 乔菲.加强“课程思政”建设,落实立德树人根本任务[N].人民公安报,2019-10-27(003).

[2] 韩振峰,李辰洋.新中国成立70年来高校思政课课程建设的发展历程及经验启示[J/OL].北京交通大学学报(社会科学版),2019(04):1-9[2019-11-03].

[3] 高洪皓,卞敏捷,高珏,陈章进.基于分类分层和项目制结合的大学计算机基础教学模式探索[J].当代教育理论与实践,2018.10(6):29-33

[4] 唐光义,高俊锋,李继革.课程思政在专业课程中的实践探索——以《软件项目管理》课程为例[J].高教学刊,2019.19:103-105

[5] 孙翠翠,李霞.“课程思政”教学实践探索——以《数据结构》课程为例[J].山东广播电视大学学报,2019.4:21-23

[6] 高洪皓,单子鹏,陈章进,杨利明,高珏.云实验室在大学计算机基础实验教学中的应用[J].电气电子教学学报,2016.38(5):130-133

猜你喜欢

应用型本科案例教学程序设计
基于Visual Studio Code的C语言程序设计实践教学探索
从细节入手,谈PLC程序设计技巧
高职高专院校C语言程序设计教学改革探索
应用型本科院校高等数学课程建设改革
地方新建本科高校转型发展的探索与实践
应用型本科大学英语后续课程建设之必要性探讨
关于应用型计算机专业培养方案的研究
案例教学在机械创新设计课程中的应用
马克思主义基本原理概论课案例教学的几点思考
EXCEL在《投入产出法》案例教学中的应用