民办高校非计算机专业计算思维能力的培养

2022-04-29 03:51张文晓
电脑知识与技术 2022年4期
关键词:Python语言非计算机专业计算思维

摘要:在现代科学技迅猛术发展的今天,计算思维成了很多人都必须掌握的一种思维能力。如何在民办高校非计算机专业中更好地培养学生的计算思维呢?以上海杉达学院为例,构建一门《计算思维与程序设计基础》课程,以培养计算思维为主线,以问题解决为切入点,引入流程图的绘制,并通过可视化编程环境去实现,最后使用Python语言编写成程序。

关键词:非计算机专业;计算思维;Python语言

中图分类号:G642        文献标识码:A

文章编号:1009-3044(2022)04-0163-03

开放科学(资源服务)标识码(OSID):<E:\2022知网文件\4-5\4\8xs202104\Image\image1_7.png>

1 引言

计算思维的定义最早是由美国卡内基ž梅隆大学计算机科学系主任周以真教授提出。周教授认为,计算思维是运用计算机科学的基础概念进行问题求解、系统设计,以及人类行为理解的涵盖计算机科学之广度的一系列思维活动。计算思维的本质是抽象和自动化。计算思维是很多人都必须具备的一种思维能力,如同“读、写、算”能力一样。

如今随着现代科学技术及网络的不断发展,特别是大数据、物联网、云计算、人工智能以及新一代移动通信网络等技术的快速涌现,人们的生活方式、认知结构和思维特征也在不断发生转变,计算思维的力量也被无限放大。计算思维成了在现代社会中发挥职能所必须掌握的一种根本技能。

学习计算思维,不仅有助于人们将生活中遇到的各类复杂问题分解成更小、更易理解的小部分,培养学生逻辑思维能力,提升组织能力,而且可以使学生具备利用计算机思维积极解决自身专业领域问题的能力,改变传统的思维方式和工作方式,更利于学生掌握现代信息社会的处理方式。

计算思维作为人类求解问题的有效工具,无时不在,无处不在。那么在大学计算机基础教学中如何更好地培养学生的计算思维呢? 下面以民办高校非计算机专业的计算思维培养展开研究。

2 研究现状

龚沛曾、杨志强在《大学计算机基础教学中的计算思维培养》一文中提出大学计算机基础教学开展计算思维教学,并不是颠覆原有的课程内容,而是在原有课程内容的基础上进行提高和优化。将原有课程本身无意识的计算思维教学转变为主动的、积极的、有意识的计算思维教学。

何钦铭、陆汉权、冯博琴在《计算机基础教学的核心任务是计算思维能力的培养——《九校联盟 (C9) 计算机基础教学发展战略联合声明》解读》一文中提出C9旗帜鲜明地把“计算思维能力的培养”作为计算机基础教学的核心任务,并不意味着需要将现有的计算机基础教学课程体系和教学内容“推倒重来”,而需要以现有的计算机基础教学培养目标和内容为基础,从计算思维能力培养的要求角度,重新组织和梳理教学内容乃至课程体系,突出体现思维能力的培养。同时,计算机基础教学应该面向各专业计算机应用需求,培养学生基本的计算思维能力。

丁海燕在《计算机程序设计课程中计算思维的培养》一文中提出程序设计课程通常采用C语言作为编程语言,强调将计算思维融入程序设计课程教学内容,培养学生的思维能力。

嵩天、黄天羽、礼欣在《Python语言:程序设计课程教学改革的理想选择》一文中指出计算思维是基于计算机技术的科学思维,Python语言是最接近自然语言的通用编程语言,面向非计算机专业本科生开展Python语言教学是程序设计课程发展的重要历史契机。

笔者作为民办高校的一名计算机基础教学老师,认为对非计算机专业开展程序设计课程,培养计算思维,可以将RAPTOR可视化编程环境和Python语言结合作为培养计算思维能力的语言。

RAPTOR是基于流程圖的可视化程序设计环境,在流程图的实现过程中,引入与程序、算法表达有关的基础概念,使学生形成分析问题的计算思维。RAPTOR能够为程序和算法设计的基础课程教学提供实验环境。RAPTOR允许用户用连接基本流程图符号来创建算法,并可以直接调试和运行算法,产生结果。

Python是一种面向对象、解释型的计算机程序设计语言。其代码简洁易懂,又具有丰富和强大的类库,作为编程入门的语言是最好不过了。

3 基本思路

程序设计课程是计算机学科体系结构中的核心课程,不仅是计算机专业的基础必修课程,也是诸多院校中非计算机专业的公共基础课程。程序设计课程的主要目标是使学生掌握使用程序设计语言实现算法的方法和技能,培养它们的逻辑思维能力,形成计算思维。在将来或者任何时候可以用这种计算思维能力去解决身边的一些问题。

大学第一门计算机基础课程是计算思维培养的一个关键。基于此,对于新生入校第一门课程,我们初步构建了以计算思维和程序设计相结合的课程内容,并命名为“计算思维与程序设计基础”。

本课程仅针对上海杉达学院的非计算机专业部分学生开展。上海杉达学院是一所民办的“应用型”本科院校,学生以文科居多,理工科基础较薄弱,多数学生对计算机仅具有基础应用的能力。因此,课程建设的宗旨是面向编程“零基础”的学生,旨在引导学生具有计算思维能力。课程的设计主要分为三部分:计算思维与算法设计、可视化编程方法和程序设计基础。

首先,在计算思维与算法设计部分,讲解计算机中问题求解的方法,阐明计算机解决问题的过程一般经过以下几个步骤:分析问题à设计算法à编写程序à调试运行,即要把分析问题得到的步骤和方法描述为算法,然后再通过计算机语言编写成计算机可以执行的程序,再进行程序的不断调试与运行,从而得到问题的求解。因此,设计算法是很重要的步骤,它体现的是计算思维的理念。通过引入四种经典算法,枚举法、递推法、分治法和递归法,培养学生具有初步的分析和解决问题的思维,并学会绘制程序流程图来表达算法。

然后,在可视化编程方法部分,使用可视化流程图环境RAPTOR实现上述算法的调试与运行,让学生有兴趣,又觉得不难,还可以使学生更深层次的了解结构化程序设计的基本结构,初步形成计算思维。

最后,在程序设计基础部分,使用程序设计语言Python去编写程序,编写的时候可以参照RAPTOR的流程图进行思维,这样会降低编写程序的难度。通过编写程序,学生抽象的思维得以实现。同时,引入有趣味、循序渐进的案例,让学生体验编程,激发学生对计算机领域科学探索的兴趣,使学生初步具备编程能力,达到“人人懂编程”的目的。

综合上所述,课程建设的基本思路是以培养计算思维为主线,以问题解决为切入点,引入流程图的绘制,并通过可视化编程环境去实现,最后使用Python语言编写成程序。

下面以自助购买门票为例说明。假设某水族馆门票规定:成人(18岁以上)或身高超过1.5米的儿童需购买全票;身高在1.2米和1.5米之间的儿童需购买半票;身高低于1.2米的儿童免票。对于这样一个问题,首先在计算思维的讲解部分,分析能够解决该问题的算法,并绘制出相应的流程图,如图1所示;接着通过可视化编程环境RAPTOR去实现流程图,并运行和调试产生问题的解,如图2所示;最后通过程序设计语言Python编写出相应的代码,并运行和调试,如图3所示。

4 计算思维与程序设计基础课程建设

《计算思维与程序设计基础》课程是面向非计算机专业的大一学生,在第一学期开展。在学校分层教学的引领,计算机应用能力较强,Office软件使用较熟练,且对计算机编程有浓厚兴趣的学生可以通过选修报名的方式参加该课程,学习计算思维和编程的技能。后续对程序设计的高级应用有需要的专业学生,将在本校课程体系的第二、第三层次开展《Python高级编程》。

4.1课程定位

本课程旨在学习和培养计算思维能力,使学生形成利用计算思维积极解决自身专业领域问题的能力。同时,通过程序设计基础的学习,学生可以将抽象的计算思维与实践相结合,培养计算思维能力,增强动手能力。

4.2课程教学内容组织

本课程的教学内容从以下四个方面展开:

1) 信息技术概述:信息与信息技术的概念;信息技术的三个发展阶段,即古代信息技术、近代信息技术和现代信息技术;新一代信息技术的发展,如大数据、物联网、云计算、人工智能、数字媒体和移动通信网络等;计算机中信息的表示与存储;在信息技术飞速发展的同时还要注意信息安全问题,可以依靠信息安全技术从一定程度上来保护个人的信息安全。

2) 计算思维与算法设计:什么是计算思维,主要研究内容和特征是什么,对其他学科的影响;计算机的三大核心思维,即“0和1”的思维、“程序”的思维和“递归”思维;算法的概念与特征,算法的表示,程序流程图各部分表示的功能;结构化程序设计的三种基本结构(顺序结构、分支结构和循环结构),用流程图如何表示?能够读懂和绘制流程图;四种经典算法的设计分析(枚举法、递推法、分治法和递归法)。

3) 可视化编程方法:可视化编程环境RAPTOR的功能介绍和6种符号(赋值、调 用、输入、输出、选择和循环)的使用;RAPTOR中的各种运算符与表达式、常量与变量、数组(一维数组和二维数组)的运用、函数和函数调用、子图与子程序的运用。使用可视化编程环境RAPTOR求解问题时,只需要连接基本流程图符号来创建算法,还可以进行直接调试和运行,得到问题的解。

4) 程序设计基础:Python语言的下载与安装;Python程序的运行;Python程序的基本语句(输入函数、输出语句、赋值语句、变量以及运算符与表达式等);Python程序的基本数据类型(整数、浮点数、复数和字符串)、和组合数据类型(列表、元组、字典和集合);程序的三种基本结构(顺序结构、分支结构和循环结构);函数的运用;文件操作等。

4.3教学方法

课程建设采用“线上+线下”的教学模式。线上平台为智慧树平台,建立课程并上传课程的教学视频和资源。学生可以通过手机App进行学习。在教学中应用翻转课堂、混合式教学等多种教学方法手段,相互结合,以达到较好的教学效果。

4.4课程考核

课程的考核通过过程性评价和形成性评价两方面进行。过程性评价主要侧重于学生的平时作业和阶段性测验;占总评成绩的40%;形成性评价主要是课程整体结束后的考试,占总评成绩的60%。

5 结论

本课程建设共进行了两轮实践,都是在分层教学的前提下进行开展的,只针对非计算机专业的小部分学生开设。在课程的访谈中发现,有部分学生认为课程还是有一定难度的;而也有部分学生表示学习起来非常有兴趣,希望可以开展后续的Python高级编程。这次教学改革的尝试有一定收获,但就如何更好地培养学生的计算思维,取得更好的成绩,还要在不断的教学实践中进行总结和反思,有待后续深入研究。

在当今计算机技术高速发展的背景之下,不论任何专业的学生,都应具有计算思维。未来的人才是以计算思维为核心,与各个领域的专业相结合的复合型人才。因此,计算机基础课程要重视和加强学生计算思维能力的培养。

参考文献:

[1] 陈国良,董荣胜.计算思维与大学计算机基础教育[J].中国大学教学,2011(1):7-11,32.

[2] 龚沛曾,杨志强.大学计算机基础教学中的计算思维培养[J].中国大学教学,2012(5):51-54.

[3] 何欽铭,陆汉权,冯博琴.计算机基础教学的核心任务是计算思维能力的培养——《九校联盟(C9)计算机基础教学发展战略联合声明》解读[J].中国大学教学,2010(9):5-9.

[4] 丁海燕.计算机程序设计课程中计算思维的培养[J].实验技术与管理,2015,32(12):16-18,21.

[5] 嵩天,黄天羽,礼欣.Python语言:程序设计课程教学改革的理想选择[J].中国大学教学,2016(2):42-47.

[6] 谢涛,程向前,杨金成.RAPTOR程序设计案例教程[M].北京:清华大学出版社,2014.

[7] 程向前,周梦远.基于RAPTOR的可视化计算案例教程[M].北京:清华大学出版社,2014.

[8] 董付国.Python程序设计[M].2版.北京:清华大学出版社,2016.

收稿日期:2021-06-10

基金项目:本文系上海市教委2019年上海市高校大学计算机教学改革项目“计算思维与程序设计基础”课程建设的研究成果

作者简介:张文晓(1984—),女,浙江省嘉善县人,讲师,硕士,主要研究方向为计算机基础教学。

猜你喜欢
Python语言非计算机专业计算思维
基于Python语言和支持向量机的字符验证码识别
论Python程序设计语言
基于Python语言的面向对象课程实践教学探讨
非计算机专业计算机基础教学的总结与思考
高校非计算机专业计算机网络基础教学改革探究
程序设计课程中计算思维和应用能力培养问题研究
基于Android的Python语言英汉维电子词典设计与实现
算法的案例教学探析
浅谈艺术专业学生计算思维能力的培养
非计算机专业VF课程教学内容与方法探究