当前位置:首页 期刊杂志

初中信息技术主题式单元教学的实践与探索

时间:2024-05-08

邹斌

[摘 要]文章以初中信息技术“走进程序世界”单元教学为例,从教学方案制订、学生学习困难预判、教学活动设计、循证分析等方面阐述初中信息技术主题式单元教学的实践与探索。

[关键词]主题式单元教学;初中信息技术;走进程序世界

[中图分类号]    G633.67        [文献标识码]    A        [文章编号]    1674-6058(2022)17-0085-03

信息技术主题式单元教学是指以信息技术的一个单元为基本单位,以某一个主题或内容为教学核心,在一定的情境化教学背景下,让学生自主建构知识、深入探究学习某一特定学习主题的一种教学模式。在信息技术主题式教学中,教师应结合信息技术的关键能力、必备品格和学科素养的培养目标,科学凝练单元主题,分析、整合单元教学资源,精准制订单元教学方案,精心组织课堂教学。本文以闽教版信息技术(2020年修订版)七年级下册“走进程序世界”单元教学为例,阐述初中信息技术主题式单元教学的实践与探索。

一、精准制订教学方案

在实施初中信息技术主题式单元教学前,教师应认真研读信息技术课程标准、教材,分析学生的具体学习情况,确定单元教学目标和课时教学目标,结合信息技术学科的特点,围绕目标的靶向做好单元教学方案和教学活动设计。

(一)确立单元教学主旨

“走进程序世界”单元主要由程序设计基础、程序设计的三种基本结构和综合活动等三个部分组成。

在学习本单元之前,学生学过文字处理、图片处理、动画制作,甚至学过Scratch编程,绝大多数学生有一定的数字图像处理基础,对解决问题的算法表达有一定的认知基础,但对于编程的认知很少或仅仅停留在操作与实践层面,缺乏对程序实现方法的设计与思考。通过研读中小学综合实践活动课程指导纲要和教学文本材料以及教学基本要求,笔者确立了这一单元的教学主旨:结合具体事例情境,利用流程图描述解决简单的实际问题的算法,利用三种程序结构编写程序解决简单的实际问题,培育学生的计算思维,提升学生的思维品质。

(二)描绘单元知识图谱

“走进程序世界”单元的教学明线是让学生在学习程序设计基础及程序设计的三种基本结构后,能将所学知识运用于“猜价格游戏”“石头、剪刀、布”游戏的程序设计。“基础知识+基本结构+综合活动”的教学模式体现了活动与体验、迁移与应用的深度学习特点。其中,“基础知识”部分要求的关键知识或技能是两个“了解”、一个“掌握”、一个“运用”及一个“操作”:了解程序与指令,了解程序设计语言及其编译;掌握C语言的基本语法;能运用自然语言和流程图描述算法;能编写一个简单程序。“基本结构”部分中的“顺序结构”要求了解数据类型、常量与变量的定义与使用,掌握算术运算与赋值运算,能运用输入函数与输出函数;“分支结构”要求了解关系运算、逻辑运算、三目运算,能运用单分支结构、双分支结构以及理解多分支结构;“循环结构”则要求会运用for循环和while循环。“走进程序世界”单元的教学暗线是问题的解决以及算法的描述。描绘完本单元的知识图谱后,笔者又列出了本单元的预设教学方法和教学设计要点。

(三)分析评估分类,拟定学生学习内容与学习目标的双向细目表

单元教学和课时教学目标的实现,要有明确的知识评估分类与之配套,这便于课时作业、分层作业、单元作业、阶段测评等的设计,有利于教学的诊断、分析、反思、调整和改进,体现了集教、评、学、研于一体,符合教学可观察、可测评、可操作的重要设计理念。教学中,笔者按核心知识和目标归类,把评估要素分为记忆、说明性理解或掌握、探究性理解或灵活运用。“走进程序世界”单元中的这几个评估要素之间是有一定的逻辑递进关系的,与思维的不断推进相紧扣。比如程序及其执行要求达到说明性理解,由于暂时不涉及具体的程序含义与表达,也没有具体语句的描述,因此只需要了解程序与常见程序设计语言。程序设计的一个重要目的是应用程序解决需要解决的问题。因此,在本单元的教学中,教师应引导学生掌握流程图,运用流程图描述具体算法,从而培养学生的计算思维;让学生在反复的实践操作中理解性地记忆数据类型、常量和变量,着重掌握int、float、double的区别以及变量的取名规则和常量的定义;让学生能够探究性理解赋值运算、算术运算、输入与输出函数、if语句、for语句、while语句、关系运算和逻辑运算。对学生学习的评估关键是看他们能不能将所学知识灵活运用于程序编写。

(四)确定教学目标和教学重难点

在“走进程序世界”单元中,通过学习编程的基本知识、C语言的變量等基本概念和printf等基本语句以及顺序、分支、循环三种结构的表达和应用,学生逐步认识到程序和算法是计算机自动化的重要基础工具,并对计算机软件的工作原理有一个全局性的认识,从而逐步建立起计算思维。

具体来说,本单元的教学目标是联系生活实际问题的解决,掌握利用流程图描述简单算法的方法,提高解决问题的能力;了解C语言的基本数据类型和常量及变量,掌握输入与输出函数、算术运算、赋值运算、关系运算、逻辑运算;学会用if语句编写简单的分支结构程序;学会用for循环和while循环语句编写程序解决简单的实际问题。

本单元的教学重点是掌握C语言的基本语法结构、程序及其执行过程;理解数据类型、赋值运算、算术运算;掌握关系运算以及if语句、while语句和for语句,能进行简单的程序功能需求分析并设计流程图。教学难点是运用流程图描述算法;编译和调试程序;掌握输入与输出函数、逻辑运算符及算术运算符“/”“%”“++”“--”的功能;运用if语句、for语句、while语句编写程序解决实际问题;综合应用分支语句、循环语句进行编程和调试。

二、预判学生学习困难

教师要结合教学实践、教研交流和必要的循证分析,预判学生在学习本单元时将会遇到的主要困难,在此基础上优化问题的设计,在问题设计上做足文章,启发、引导、点拨学生深度学习。

首先,初学者容易出现标点符号和语法错误,比如在输入逗号、分号、圆括号、双引号时,将半角字符输入成全角字符;句末“;”、大括号、头文件漏输或输不全;在if语句后直接加“;”从而变成空语句。

其次,学生容易将调用的函数输错,比如调用C语言标准库函数中的格式输出函数printf、格式输入函数scanf时会习惯性地少输入字母“f”;printf格式字符串出现多个输出控制符,但在输出列表中没有对应好或列表中的变量个数少了;前后的数据类型没有匹配好或是不一致,导致出现输出控制符弄错的提示;scanf的变量地址少了“&”,与printf的控制符相混淆;调用随机函数时忘记先通过srand((unsigned) time (NULL))利用时间来获取随机数种子而变成伪随机数。

再次,学生容易在条件表达式的理解和运用上存在偏差,比如因为没有建立起包含关系的概念,所以在理解“或”和“与”的关系时出现混淆,得出不同的取值范围;不能很好地理解取模的运算,不清楚为什么要取模,什么情况下要用上模运算,且容易忽视取模只能是整数运算,不自觉地会带小数进行模运算;对除(“/”)运算中整数除整数得整数不能透彻理解。

最后,学生容易将赋值运算符“=”与关系运算符“==”相混淆。由于学生是首次学习计算机编程语言,他们一看到“=”马上会想到数学中的等于号,对计算机的存储及变量没有建立起相关的概念,而对于语句中的“A1=B1=9;”或是”A1>=B1==9;”更是摸不着头脑。让学生了解赋值运算符“=”与数学中的“等于”是一种什么关系,以及“==”与“=”表示什么,这是教学的难点。

三、精心设计主题式单元教学活动

(一)预学反馈,直切主题

对于本单元中“程序设计基础”部分的程序与指令、程序语言及其编译,教师可课前给学生提供微课程、自主学习单及相应的辅助理解练习等,让学生进行针对性预学。对于流程图,教师则可让学生通过参与完成一项家务活动而掌握其画法。比如可让学生在家长的指导下做一道菜,之后先用自然语言把这道菜的烹饪过程记叙下来,再用流程图把这道菜的烹饪过程画出来,最后在班级群中进行交流。在交流过程中,教师应针对学生暴露出的问题进行有针对性的讲解,为学生扫清学习障碍。此外,数据基本类型、变量和常量、算术运算、逻辑运算、关系运算等都可让学生自主预学,教师可设计一定量的巩固练习来帮助学生理解和掌握。课堂上,教师可借助希沃软件上的双人比赛、填空、连线等游戏活动,来了解学生的自主学习情况,并据此精讲相关重要概念。

(二)紧抓主线,前呼后应

本单元的核心内容是算法和程序,重点培养的核心素养是计算思维。基于此,教学中笔者紧抓案例主线来展开教学,把相关内容串联起来。笔者以自己设计的第一个程序为切入点,引导学生通过printf这个函数,“说出”“HELLO WORLD”或者其他带各种图案的“话语”。学生在这过程中逐步掌握了相关环境参数的设置和程序基本语句的表达要求。对于顺序语句,笔者引入生成随机数的程序,进一步生成随机数种子,再由rand语句随机生成规定范围的随机数。对于分支语句,笔者先以曹天元《上帝掷骰子吗》一书以及一个关于随机数生成的小程序,承、转、启地引入人机单个骰子的掷骰子游戏。由于骰子的点数是随机生成的,由此可引入“随机”大概念,建构骰子点数这一具体事物抽象化成随机数由计算机自动生成的计算思维,判断人和机掷骰子后所得点数的大小后显示输赢结果;再以闽南“博饼”游戏活动为例,由单个骰子过渡到三个甚至六个骰子。在这过程中,笔者根据学生不同学力层次进行分层要求,引导学生自主学习与思考,培养学生的计算思维。学生展示程序编写过程并改进程序,在纠错与改进程序的过程中不断生成新的认知,从而实现深度学习。在此基础上,笔者再逐步强化学生对分糖果、打车计费、青蛙益智接龙、猴子摘桃、韩信点兵、竞猜价格等经典游戏编程实例的学习,充分激发学生的编程兴趣。

(三)综合活动,自我诊断

本单元设计了“猜价格游戏”和“石头、剪刀、布游戏”的程序来展开综合活动。“综合活动”部分,教师既可以通过项目式学习活动来组织教学,也可以从真实情境中提炼出问题,以问题为导向实施任务驱动教学。在综合活动中,教师可引导学生运用一定的編程技能,编写结构清晰、结果正确、界面友好的程序,让学生对程序进行理解、应用与迁移。教师还要引导学生自我诊断评估运用程序解决问题的优势与不足,针对具体问题形成解决的算法,并通过流程图可视化表示,以程序语言来正确表达,再把所理解的算法通过程序表达出来。在课堂中,有的学生在判断语句中把“if  a>b==1”作为条件表达语句,这一课堂生成尤为珍贵。笔者组织学生讨论,引导学生思考“‘==1这一表述是否有错?这样表述是否有必要?”,从而加深学生对逻辑运算的理解,训练学生的计算思维。

四、循证分析

笔者对一学年所任教的三个班级的教学过程和结果及学生填写的调查问卷进行循证分析,结果发现:

(一)学生参与度很高

笔者所任教的三个班级共有161名学生。在本单元的教学过程中,学生自主学习预学单,或是参与游戏环节,或是进行小组合作学习,每个学生都有机会参与活动,并且能自然融入各个分层活动中。每个活动环节总有一个层级适合学生去进阶学习,学生“吃得饱”且“还想吃更多”,持续的思考使学生的思维能力得到了很好的提升。

(二)以真实的游戏情境推进教学,有利于学生计算思维的培养

本单元的教学通过真实的游戏情境来推进。在游戏过程中,笔者引导学生形成解决问题的算法,在此基础上完成流程图的建立,并将流程图转化成计算机语言,把分析出来的需求通过计算机程序语言“说”出来,从而实现问题的解决。学生在真实游戏情境引领下,一步步寻求问题的解决途径,在解决问题的过程中完成程序设计。这样的教学,有利于学生计算思维的培养。

(三)学生的高阶思维能力得到了提高

本单元教学以掷骰子游戏为主线,把零散的知识点串联起来,并创设问题情境引导学生探讨程序设计基础知识、程序设计的三种基本结构,促使学生主动建构知识框架,有效迁移应用知识,进一步给学生提供分层的拓学单,以拓展学生的视野,让学生真正实现深度学习。

[   参   考   文   献   ]

[1]  薛继红.课堂教学诊断与主要教学问题例析[M].北京:北京师范大学出版社,2016:106-107.

[2]  汪昌华.教师教育专业实践教学中循证方法的应用[J].现代中小学教育,2010(5):64-66.

(责任编辑 黄春香)

免责声明

我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!