APP下载

写作教学方法在编程课堂中的应用

2023-09-19龚晓静李明进温苾芳

科技风 2023年23期
关键词:建构主义

龚晓静 李明进 温苾芳

摘 要:编程语言由于需要学生具有逻辑思考、数学、英语等多学科综合能力,其学习难度较大、学习过程较枯燥,容易引起学生的畏难情绪。而写作学习的“字、词、句、段、篇”教学方法恰恰与编程知识的学习步骤不谋而合。根据建构主义的思想,教学是引导学生以原有的经验为基础,建构起新经验的过程。因此,通过对写作教学方法的借鉴,在编程课堂上,教师可以循序渐进地引导学生对编程语言的知识点进行系统学习,增加学习过程的趣味性、参与度和学习者的主动性,从而通过学生熟悉的方法,有效地开启“授之于渔”的学习路径。

關键词:字词句段篇;Python教学;建构主义

一、概述

党的二十大报告提出数字化转型是教育强国的必经之路。相应地,教育信息化的发展促进了信息技术的教学普及率,为培养新时代信息科技人才创造了良好的条件。目前,无论是K12教育还是中高职、大学教育,编程语言的学习已成为课堂中必不可少的内容。

编程语言由于需要学生具有逻辑思考、数学、英语等多学科综合能力,其学习难度较大、学习过程较枯燥,容易引起学生的畏难情绪。以Python为例,此前做过一次问卷调查,共收到94份问卷答案。问卷中,当学生被问及学习动力弱的原因时,有62.77%的学生反馈是思路少,无从下手。[1]由此可见,一部分学生还没有掌握如何学习编程语言。因此,如何引导学生循序渐进地学习知识点、增加学习过程的趣味性,提升学生的学习主动性,成为编程课堂设计的重点和难点。

写作学习的“字、词、句、段、篇”教学方法恰恰与编程知识的学习步骤不谋而合。由于每个学生在小学阶段就对写作进行过系统性学习,对该学习方法已常记于心。因此,将写作学习的方法应用到编程教学中,可以增加学生的熟悉感,便于引导学生用已有的知识结构对编程进行系统性学习和练习。

二、写作教学方法与编程教学方法的关联分析

由字及词、由词及句、由句及段、由段及篇是学习语文的规律,也体现了人们认知世界由易到难、由简单到复杂的过程。在K12教育中,“字、词、句、段、篇”是语文教学的基础和前提。学生没有一定的对字词句段的判断和积累,很难开展后续对“篇”的学习。实际上,“字、词、句、段、篇”中,对每一个环节的学习都是下一环节学习的前提。它遵循了语文知识学习的循序渐进过程。[2]

Python是一种跨平台、开源、免费的解释型高级动态编程语言。随着人工智能技术的快速发展,Python作为该领域应用最广的编程语言,也在IT行业日益普及。与C、Java等其他编程语言相比,Python有其独特的优势。首先,Python语言聚焦于循环、函数等基本的程序逻辑关系及功能强大的函数库应用,它是目前最接近自然语言的通用编程语言。其轻语法、弱类型的特点,使得它在实现同样功能时,其代码量是C语音的1/10~1/5。其次,Python语言的应用,侧重于培养使用者以计算思维将计算问题转变为计算机程序,从而解决实际问题的能力。因此,它不仅适用于计算机领域的人员,同样也适用于所有需要利用计算机解决各类计算问题的群体。[3]根据TIOBE 2023年1月发布的编程语言排行榜,Python已成为全球最流行的编程语言。对编程语言的教学研究,以Python为例,有典型的代表意义。

建构主义认为,教学不是将客观知识点直接灌输到头脑的机械传递,而是引导学生以原有的经验为基础,建构起新经验的过程。学生已有的日常经验和知识是其思维发生的基础。[4]以Python教学为例的编程课堂教学方法改进,正是利用了学生在K12教育中就已经积累的“字、词、句、段、篇”学习经验,将其移植到编程语言学习中,以建构主义的思想为指导,对编程语言学习开启新路径。

(一)字词:文章的最小单位

字词是文章的最小结构单位,也是理解阅读过程中的最基本条件。在学习写作时,首先要学习的就是字词部分,足够词汇量的积累是后续“句、段、篇”学习的基础。

在Python中,各种数据类型、运算符、序列可以看作是编程的最小单元,对应于写作学习中的“字词”。如代码“print(8>7and6>5)”,“5、6、7、8”是常量,“>、and”是运算符,“8>7”和“6>5”是表达式,将这些“字词”组合到一起,就形成了一段代码。

(二)句:文章的重要组成部分

句子由字词组成,能表达一个完整的意思。通过句子的含义及相互间的特定关系,可以清楚地表达整篇文章的思想。在学习写作之初,通常会学习主谓宾等语法的特定结构,并且利用好词佳句摘抄的形式,临摹已有句型,使学习者快速掌握造句技巧。

在Python中,每一行代码可以被看作是一个句子,通过不同的字词组合,表达不同的内容,执行后得到不同的结果。Python语句有两个典型的控制语句结构:选择结构和循环结构。选择结构由“if…else”的主要形式进行体现。循环结构有while语句(无限循环)和for语句(遍历循环)两种形式。这就好比写作训练中句型的归纳和应用。学生可以采用固定的句型,准确并清楚地进行表达。同时,也可以借鉴“好词佳句”的积累方式,对实现某一特定功能的经典程序语句进行记录,在后续的应用中直接借用。这大大提高了编程的效率和质量,亦可以统一代码格式,增加程序的可读性。

(三)段:文章中相对独立的部分

段落,是根据文章或事情的内容,阶段划分的相对独立的部分。一篇文章会有很多段落,每个段落表达比较完整的一个单独的意思。如此布局,使文章结构清晰,便于理解。

在Python中,函数和模块可以被看作独立的段落。任何完成特定任务的代码块也可以看作一个段落。如图1所示,在利用Python生成词云的任务中,除去库导入部分的代码外,对主程序代码可以根据不同的任务内容进行分段。将“对词源文件的分词”“生成词云和设置词云参数”“输出图形”划分为不同的段落。如此,便于理解的同时,也将任务进行了分解。学生在学习和练习过程中,可以按段落梳理各段不同的含义,也可以分段落编写程序后进行汇总。增加了编程学习的灵活性,减少了编程学习的难度。

(四)篇:一篇完整的文章

完整的一篇文章正如完整的一个程序,可以表达作者的总体思想,可以完成整体的程序设计要求。在写作学习中少不了佳作欣赏的环节,无论是说明文、议论文还是其他文体,总是有很多范文,或是结构值得学习,或是好词佳句值得摘抄。在Python的学习中也是如此。许多教科书都设置了经典算法的学习章节,如词云生成、词频统计、水仙花数的输出等。这些算法作为相对独立的程序任务,每一行代码都是经过反复推敲的,是学习Python编程中必不可少的例子。如图1所示生成词云的程序,只要熟记基本结构和语句,对于不同的源文件和不同的输出要求,只需要修改其中的读取文件途径、名称,以及生成词云的参数,就可以得到个性化的输出结果,而程序的80%内容不需要修改。这大大降低了编程难度。

(五)文章结构与程序结构的关联

在学习写作之初,往往采用经典的“总—分—总”结构,用第一个段落交代故事背景,最后一个段落总结全文,中间的段落对具体事件进行描述。不同的段落在文章的不同位置有着不同的作用,Python语句亦然。

程序编写的主要方法被称为IPO法。I为input(输入),表示一个程序的开始,通常程序处理的数据需要通过文件输入、网络输入、交互界面输入等各种途径获得。P为process(处理),表示程序的主要逻辑,即程序对输入数据进行计算产生输出结构的过程,这个处理方法也称为算法。这一部分是程序的主要部分。O为output(输出),是程序展示运算结构的方式,通常通过控制台输出、图形输出、文件输出等形式体现。对于图1所示的程序,代码块1中包含了从文件输入的编程内容,代码块3完成输出任务的编程内容,代码块2则完成了对数据的处理。可见,写作中的“总—分—总”结构与程序编写中的IPO形式刚好一一对应,为编程学习提供了很好的参考依据。

三、依据写作教学方法对编程课堂进行设计

根据写作“字、词、句、段、篇”的学习内容和步骤,不难对编程课堂进行相应的设计。

(一)学习Python语法基础,即“字词”的学习

这部分是学习整个体系架构的第一步,需要熟练掌握的内容有:

1.数据类型

包括数值类型、字符串、布尔型等。相当于学习写作时,先掌握汉字,以便于后续用于组词、造句。

2.运算符与表达式

运算符通常与数值、字符串等数据配合使用。可以将它们看作“标点符号”,而将其与数据连接起来最终呈现的表达式可以看作是词。表达式会作为编程语句的一部分,完成条件判断、计算等功能。

3.序列

包括列表、元组、字典和集合。这也可以看作是由数据这种“字”所组成的“词”。

(二)学习Python控制语句,即“句”的学习

这部分的学习,通常包括选择结构、循环结构以及常用算法三部分内容。选择结构和循环结构有固定的格式,而常用算法的学习作为范文学习,可以巩固学生对两种结构的理解。常用算法的应用实例包括累加与累乘、求最大数和最小数、枚举法、递推与迭代等。学好了这些经典算法,在后续的编程中则可以直接运用。

(三)學习Python函数与模块,即“段”的学习

这部分内容包括函数的定义、使用、参数设置、递归调用等,也包括模块的导入和常用模块的介绍。通过本阶段的学习,学生已经掌握了写作段落的能力,为独立完成编程任务做好了准备。

(四)学习Python文件,即“篇”的学习

Python语言采用IPO的编程方法,在学习了函数与模块后,学生已经具备了P(数据处理)这一个主要能力。通过学习如何读取、输出数据到文件,则可以完成I(输入)和O(输出)的编程任务,从而完整地编写一个程序。这就好比写作时,对于事件的描述,加上开头和结尾,一篇完整的文章就成形了。

四、教学反馈

以电子科技大学成都学院商学院管理与技术专业19复合班作为本次教学方法改革的实施对象,该班共有20位学生参加学习。在Python教学中,引入了“字、词、句、段、篇”的写作学习方法,并在期末对该方法进行了问卷调查。其问卷主要围绕“引入新方法是否有效”开展,其具体反馈信息如下:

针对问题1“是否认为‘字、词、句、段、篇的学习步骤和Python学习的步骤相类似”,用1~10分进行打分(1分为不相似,10分为非常相似),85%的学生给出了6分及以上的反馈。可见,大多数学生认为这两种学习方法是比较类似的。针对问题2“采用‘字、词、句、段、篇的学习方式,是否有助于循序渐进地学习Python”,用1~10分进行打分(1分为无帮助,10分为非常有帮助),90%的学生给出了6分及以上的反馈。可见,大多数学生认为“字、词、句、段、篇”的学习方式对Python学习是有借鉴意义的。问题1和2的具体分值分布如图2所示:

最后,学生们也各抒己见,表达了对这两种学习方法相结合的看法。有同学认为“将Python的学习方法和语文学习方法结合起来很有意思,能够激起学习的情绪,也能更好地去理解和记忆Python代码”。也有学生认为“最开始的语文学习都是从基础开始学习的,只有先认识字才能看懂词,然后是句、段、篇。Python也可以这样,和语文的学习一一对应,经典代码的学习也可以在未来的代码中运用借鉴到,Python语言和语文一样的,万变不离其宗,最主要的就是灵活”。

五、总结

写作的学习是一个长期性、持续性和复杂性的提升过程,编程语言的学习也是如此。因而,在编程课堂的教学中,教师要将重点从讲解知识点变换为教授学习方法。“授之以鱼,不如授之以渔”,让学生掌握如何学习,才是提升学习积极性、参与性、趣味性的有效途径。

参考文献:

[1]段亚西,徐成振,魏凌华,等.Python语言程序设计课程教学方法探究[J].科技风,2021(17):4042.

[2]靳彤.“语文方法性知识”研究[D].山东大学,2018.

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

[4]郑红娜.从建构主义到社会实在:知识教学的反思与重构[J].当代教育科学,2022(02):3340.

基金项目:2021—2023年四川省高等教育人才培养质量和教学改革项目——《基于思政“人格”引导的“闯关”式创新创业人才培养模式研究》项目(JG20211549)

作者简介:龚晓静(1980— ),女,四川自贡人,硕士,工程师,研究方向:人工智能与科学、通信与信息系统、职业教育;李明进(1977— ),男,海南澄迈人,硕士,副教授,高级工程师,研究方向:嵌入式系统与人工智能;温苾芳(1985— ),江西抚州人,硕士,讲师,工程师,研究方向:电气工程及其自动化。

猜你喜欢

建构主义
基于建构主义理论的计算机教育
旁批:建构主义视域下的语文助读抓手——以统编初中教材为例
借鉴建构主义思想培养财会专业人才
著作权法的作品观:从本质主义到建构主义
建构主义理论指导下语境词汇策略的思考与实践
从建构主义下分析高职院校顶岗实习的必要性
英语语法教学的建构主义策略浅谈
建构主义学习设计六要素在英语教学中的应用
建构主义教学模式在医学教学中的应用
多媒体技术在建构主义教学模式中的应用