!"#!$%&$'(')*+&,-./&$01$21(3$&)%)()(%$$写作教学方法在编程课堂中的应用
以7?0'-2教学为例
龚晓静4李明进4温絆芳
电子科技大学成都学院工学院"四川成都")!!*&!
摘4要 编程语言由于需要学生具有逻辑思考&数学&英语等多学科综合能力#其学习难度较大&学习过程较枯燥#容易引起学生的畏难情绪!而写作学习的+字&词&句&段&篇,教学方法恰恰与编程知识的学习步骤不谋而合!根据建构主义的思想#教学是引导学生以原有的经验为基础#建构起新经验的过程!因此#通过对写作教学方法的借鉴#在编程课堂上#教师可以循序渐进地引导学生对编程语言的知识点进行系统学习#增加学习过程的趣味性&参与度和学习者的主动性#从而通过学生熟悉的方法#有效地开启+授之于渔,的学习路径!
关键词 字词句段篇%N L<JX-教学%建构主义
一 概述
党的二十大报告提出数字化转型是教育强国的必经之路%相应地"教育信息化的发展促进了信息技术的教
学普及率"为培养新时代信息科技人才创造了良好的条件%目前"无论是W$)教育还是中高职(大学教育"编程语言的学习已成为课堂中必不可少的内容%
编程语言由于需要学生具有逻辑思考(数学(英语等多学科综合能力"其学习难度较大(学习过程较枯燥"容易引起学生的畏难情绪%以N L<JX-为例"此前做过一次问卷调查"共收到'3份问卷答案%问卷中"当学生被问及学习动力弱的原因时"有0)&11B的学生反馈是思路少"无从下手%#$$由此可见"一部分学生还没有掌握如何学习编程语言%因此"如何引导学生循序渐进地学习知识点(增加学习过程的趣味性"提升学生的学习主动性"成为编程课堂设计的重点和难点%
写作学习的,字(词(句(段(篇-教学方法恰恰与编程知识的学习步骤不谋而合%由于每个学生在小学阶段就对写作进行过系统性学习"对该学习方法已常记于心%因此"将写作学习的方法应用到编程教学中"可以增加学生的熟悉感"便于引导学生用已有的知识结构对编程进行系统性学习和练习%
二 写作教学方法与编程教学方法的关联分析大学python知识点汇总
由字及词(由词及句(由句及段(由段及篇是学习语文的规律"也体现了人们认知世界由易到难(由简单到复杂的过程%在W$)教育中",字(词(句(段(篇-是语文教学的基础和前提%学生没有一定的对字词句段的判断和积累"很难开展后续对,篇-的学习%实际上",字(词(句(段(篇-中"对每一个环节的学习都是下一环节学习的前提%它遵循了语文知识学习的循序渐进过程%#)$
N L<JX-是一种跨平台(开源(免费的解释型高级动态编程语言%随着人工智能技术的快速发展"N L<JX-作为该
领域应用最广的编程语言"也在#H行业日益普及%与F(
U6P6等其他编程语言相比"N L<JX-有其独特的优势%首先"N L<JX-语言聚焦于循环(函数等基本的程序逻辑关系
及功能强大的函数库应用"它是目前最接近自然语言的通用编程语言%其轻语法(弱类型的特点"使得它在实现同样功能时"其代码量是F语音的$*$%m$*C%其次"N L<JX-语言的应用"侧重于培养使用者以计算思维将计算问题转变为计算机程序"从而解决实际问题的能力%因此"它不仅适用于计算机领域的人员"同样也适用于所有需要利用计算机解决各类计算问题的体%#($根据H#"G E)%)(年$月发布的编程语言排行榜"N L<JX-已成为全球最流行的编程语言%对编程语言的教学研究"以N L<JX-为例"有典型的代表意义%
建构主义认为"教学不是将客观知识点直接灌输到头脑的机械传递"而是引导学生以原有的经验为基础"建构起新经验的过程%学生已有的日常经验和知识是其思维发生的基础%#3$以N L<JX-教学为例的编程课堂教学方法改进"正是利用了学生在W$)教育中就已经积累的,字(词(句(段(篇-学习经验"将其移植到编程语言学习中"以建构主义的思想为指导"对编程语言学习开启新路径%
)一*字词$文章的最小单位
字词是文章的最小结构单位"也是理解阅读过程中的最基本条件%在学习写作时"首先要学习的就是字词部分"足够词汇量的积累是后续,句(段(篇-学习的基础%
在N L<JX-中"各种数据类型(运算符(序列可以看作是编程的最小单元"对应于写作学习中的,字词-%如代码,]O/-<&AS16-\0S C'-",C(0(1(A-是常量",S(6-\-是运算
!
&
!科技风"#"$年%月科教论坛
符",AS 1-和,0S C -是表达式"将这些,字词-组合到一起"就形成了一段代码%
)二*句$文章的重要组成部分
句子由字词组成"能表达一个完整的意思%通过句子的含义及相互间的特定关系
"可以清楚地表达整篇文章的思想%在学习写作之初"通常会学习主谓宾等语法的特定结构"并且利用好
词佳句摘抄的形式"临摹已有句型"使学习者快速掌握造句技巧%
在N L <JX -中"每一行代码可以被看作是一个句子"通过不同的字词组合"表达不同的内容"执行后得到不同的结果%N L <JX -语句有两个典型的控制语句结构!选择结构和循环结构%选择结构由,/K 5I 7;I -的主要形式进行体现%循环结构有_J/7I 语句&无限循环'和K X O 语句&遍历循环'两种形式%这就好比写作训练中句型的归纳和应用%学生可以采用固定的句型"准确并清楚地进行表达%同时"也可以借鉴,好词佳句-的积累方式"对实现某一特定功能的经典程序语句进行记录"在后续的应用中直接借用
%这大大提高了编程的效率和质量"亦可以统一代码格式"增
加程序的可读性%
)三*段$文章中相对独立的部分段落"是根据文章或事情的内容"阶段划分的相对独立的部分%一篇文章会有很多段落"每个段落表达比较完整的一个单独的意思%如此布局"使文章结构清晰"便于理解%
在N L <JX -中"函数和模块可以被看作独立的段落%任何完成特定任务的代码块也可以看作一个段落%如图$所示"在利用N L <JX -生成词云的任务中"除去库导入部分的代码外"对主程序代码可以根据不同的任务内容进行分段%将,对词源文件的分词-,生成词云和设置词云参数-,输出图形-划分为不同的段落%如此"便于理解的同时"也将任务进行了分解%学生在学习和练习过程中"可以按段落梳理各段不同的含义"也可以分段落编写程序后进行汇总%增加了编程学习的灵活性"减少了编程学习的难度%
图$对词云主要程序代码分段
)四*篇$一篇完整的文章完整的一篇文章正如完整的一个程序"可以表达作者的总体思想"可以完成整体的程序设计要求%在写作学习中少不了佳作欣赏的环节"无论是说明文(议论文还是其他文体"总是有很多范文"或是结构值得学习"或是好词佳句值得摘抄%在N L <JX -的学习中也是如此%许多教科书都设置了经典算法的学习章节"如词云生成(词频统计(水仙花数的输出等%这些算法作为相对独立的程序任务"每一行代码都是经过反复推敲的"是学习N L <JX -编程中必不可少的例子%如图$所示生成词云的程序"只要熟记基本结构和语句"对于不同的源文件和不同的输出要求"只需要修改其中的读取文件途径(名称"以及生成词云的参数"就可以得到个性化的输出结果"而程序的A%B 内容不需要修改%这大大降低了编程难度%)五*文章结构与程序结构的关联在学习写作之初"往往采用经典的,总+分+总-结构"用第一个段落交代故事背景"最后一个段落总结全文"中间的段落对具体事件进行描述%不
同的段落在文章的不
同位置有着不同的作用"N L <JX -语句亦然%程序编写的主要方法被称为#N "法%#为
/-]:<&输入'"表示一个程序的开始"通
常程序处理的数据需要通过文件输入(网络输入(交互界面输入等各种途径获得%N 为]O X ,I ;;&处理'"表
示程序的主要逻辑"即程序对输入数据进行计算产生输出结构的过程"这个处理方法也称为算法%这一部分是程序的主要部分%"为X :<]:<&输出'"是
程序展示运算结构的方式
"通常通过控制台输出(图形输出(文件输出等形式体现%对于图$所示的程序"代码块$中包含了从文件输入的编程内容"代码块(完成输出任务的编程内容"代码块)则完成了对数据的处理%可见"写作中的,总+分+总-结构与程序编写中的#N "形式刚好一一对应"为编程学习提供了很好的参考依据
%三 依
据写作教学方法对编程课堂进行设计根据写作,字(词(句(段(篇-的学习内容和步骤"不难
对编程课堂进行相应的设计%
科教论坛科技风    年 月
)一*学习N L<JX-语法基础#即+字词,的学习
这部分是学习整个体系架构的第一步"需要熟练掌握的内容有!
$&数据类型
包括数值类型(字符串(布尔型等%相当于学习写作时"先掌握汉字"以便于后续用于组词(造句%
)&运算符与表达式
运算符通常与数值(字符串等数据配合使用%可以将它们看作,标点符号-"而将其与数据连接起来最终呈现的表达式可以看作是词%表达式会作为编程语句的一部分"完成条件判断(计算等功能%
(&序列
包括列表(元组(字典和集合%这也可以看作是由数据这种,字-所组成的,词-%
)二*学习N L<JX-控制语句#即+句,的学习
这部分的学习"通常包括选择结构(循环结构以及常用算法三部分内容%选择结构和循环结构有固定的格式"而常用算法的学习作为范文学习"可以巩固学生对两种结构的理解%常用算法的应用实例包括累加与累乘(求最大数和最小数(枚举法(递推与迭代等%学好了这些经典算法"在后续的编程中则可以直接运用%
)三*学习N L<JX-函数与模块#即+段,的学习
这部分内容包括函数的定义(使用(参数设置(递归调用等"也包括模块的导入和常用模块的介绍%通过本阶段的学习"学生已经掌握了写作段落的能力"为独立完成编程任务做好了准备%
)四*学习N L<JX-文件#即+篇,的学习
N L<JX-语言采用#N"的编程方法"在学习了函数与模块后"学生已经具备了N&数据处理'这一个主要能力%通
过学习如何读取(输出数据到文件"则可以完成#&输入'和
"&输出'的编程任务"从而完整地编写一个程序%这就好比写作时"对于事件的描述"加上开头和结尾"一篇完整的
文章就成形了%
四 教学反馈
以电子科技大学成都学院商学院管理与技术专业$'复合班作为本次教学方法改革的实施对象"该班共有)%位学生参加学习%在N L<JX-教学中"引入了,字(词(句(段(篇-的写作学习方法"并在期末对该方法进行了问卷调查%其问卷主要围绕,引入新方法是否有效-开展"其具体反馈信息如下!
针对问题$,是否认为0字(词(句(段(篇1的学习步骤和N L<JX-学习的步骤相类似-"用$m$%分进行打分&$分为不相似"$%分为非常相似'"ACB的学生给出了0分及以上的反馈%可见"大多数学生认为这两种学习方法是比较类似的%针对问题),采用0字(词(句(段(篇1的学习方式"是否有助于循序渐进地学习N L<JX--"用$m$%分进行打分&$分为无帮助"$%分为非常有帮助'"'%B的学生给出了0分及以上的反馈%可见"大多数学生认为,字(词(句(段(篇-的学习方式对N L<JX-学习是有借鉴意义的%问题$和)的具体分值分布如图)所示!
图)反馈分数与投票数量
最后"学生们也各抒己见"表达了对这两种学习方法相结合的看法%有同学认为,将N L<JX-的学习方法和语文学习方法结合起来很有意思"能够激起学习的情绪"也能更好地去理解和记忆N L<JX-代码-%也有学生认为,最开始的语文学习都是从基础开始学习的"只有先认识字才能看懂词"然后是句(段(篇%N L<JX-也可以这样"和语文的学习一一对应"经典代码的学习也可以在未来的代码中运用借鉴到"N L<JX-
语言和语文一样的"万变不离其宗"最主要的就是灵活-%
五 总结
写作的学习是一个长期性(持续性和复杂性的提升过程"编程语言的学习也是如此%因而"在编程课堂的教学中"教师要将重点从讲解知识点变换为教授学习方法%
,授之以鱼"不如授之以渔-"让学生掌握如何学习"才是提升学习积极性(参与性(趣味性的有效途径%
参考文献
'$(段亚西#徐成振#魏凌华#等&N L<JX-语言程序设计课程教学方法探究'U(&科技风#)%)$)$1*$3%23)&
')(靳彤&+语文方法性知识,研究'!(&山东大学#)%$A&
'((嵩天#黄天羽#礼欣&N L<JX-语言$程序设计课程教学改革的理想选择'U(&中国大学教学#)%$0)%)*$3)231&
'3(郑红娜&从建构主义到社会实在$知识教学的反思与重构'U(&当代教育科学#)%)))%)*$((23%&
基金项目 )%)$")%)(年四川省高等教育人才培养质量和教学改革项目"""/基于思政+人格,引导的+闯关,
式创新创业人才培养模式研究0项目)U n)%)$2$C3'*
作者简介 龚晓静)$'A%"4*#女#四川自贡人#硕士#工程师#研究方向$人工智能与科学&通信与信息系统&职业教育%李明进)$'11"4*#男#海南澄迈人#硕士#副教授#高级工程师#研究方向$嵌入式系统与人工智能%温絆芳)$'AC"4*#江西抚州人#硕士#讲师#工程师#研究方向$电气工程及其自动化!
科技风    年 月科教论坛

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。