第一篇:基于计算思维能力培养的程序设计课程教学模式
基于计算思维能力培养的程序设计课程教学模式
摘 要 在对计算思维、非计算机专业学生的学习特点以及程序设计课程教学特点研究的基础上,提出了“三位一体两重点”的程序设计课程教学模式,旨在帮助学生建立计算机问题求解意识、提高综合应用能力,培养学生的计算思维。
关键词 计算思维 程序设计 计算机基础教育
中图分类号:G424 文献标识码:A DOI:10.16400/j.cnki.kjdkz.2015.06.050
Teaching Mode of Computer Programming Course Based on
Ability Training of Computational Thinking
LI Ruifang,WANG Lili,LIU Jinyue,WANG Yueping,SHI Guiying
(School of Computer & Information Technology,Northeast Petroleum University,Daqing,Heilongjiang 163318)
Abstract Based on the research of computational thinking,learning characteristics of non-computer professional students,and teaching characteristics of computer programing course,the teaching mode of “three aspects-one center-two key” is put forward,which aims to help students to establish the sense of solving problem by computer,improve the comprehensive application ability,and cultivating computational thinking of students.Key words computational thinking;programming;computer basic education
自2006年3月,卡内基?梅隆大学的周以真教授系统地阐述了计算思维的概念;2010年7月“九校联盟(C9)计算机基础课程研讨会”发表联合声明把“计算思维能力的培养”作为计算机基础教学的核心任务以后,计算思维得到了国内计算机基础教育界的广泛重视。①程序设计课程是我校非计算机专业学生普遍开设的一门必修课和基础课,蒋宗礼教授、龚沛曾教授、何钦铭教授和冯博琴教授一致认为程序设计课程是计算思维能力培养的重要内容,对计算思维能力的培养具有重要作用,是典型的计算思维课程。②③④⑤因此,如何在程序设计课程中培养学生的计算思维能力,帮助学生建立计算机问题求解意识,使程序设计课成为名副其实的传授基本知识、提高应用能力、培养计算思维的大学通识教育课程成为新形势下亟需解决的问题。因此,笔者在对计算思维、非计算机专业学生的学习特点以及程序设计课程教学特点研究的基础上,提出了“三位一体两重点”的程序设计课程教学模式,全面培养学生的计算思维能力。计算思维
计算思维最早是由麻省理工学院的Seymour Papert教授于1996年提出的,而把它提到前台,引起人们广泛关注的是美国卡内基?梅隆大学的周以真教授。⑥2006年3月,周以真教授在ACM会刊《Communications of the ACM》上提出了计算思维的概念。周教授认为,计算思维是运用计算机科学的基础概念进行问题求解、系统设计以及人类行为理解等涵盖计算机科学之广度的一系列思维活动。⑦计算思维能力是指人们运用计算思维方法进行思考的能力,通常是通过引导人们学习、掌握这种思维方法,有效地将其用于问题的求解,以达到培养他们的计算思维能力的目的。⑧“三位一体两重点”的教学模式
在对非计算机专业学生的学习特点和需求特点、程序设计课程的教学特点研究的基础上,笔者提出“三位一体两重点”的计算思维能力培养模式,即以学生为主体,着眼于算法思维和系统思维两个重点,从“理论―实践―考核”三个方面,选择正确的教学内容,运用恰当的教学模式与考核方法,将理论与实践紧密结合培养非计算机专业学生的计算思维能力。
2.1 改进课堂教学,推进计算思维能力的培养
针对以往程序设计课程中重语法、轻算法;重基础、轻应用;重统一要求,轻个性发展;学生机械模仿、独立思考和灵活应用能力差等问题,在教学过程中以计算思维中的算法思维和系统思维的培养为契机,对现有教学目标和教学内容进行了重新组织和梳理。算法思维和系统思维是两种重要的计算思维,是利用计算求解具体问题的两大关键点。算法思维的教学重点是设计算法,设计可实现的算法,设计可在有限时间与空间内执行的算法,设计尽可能快速的算法;系统思维的教学重点是设计和实现系统,即系统的构造。⑨在程序设计课堂教学中,强化这两种计算思维,主要包括:
(1)在大一上学期开设的大学计算机基础课程中,对算法的基本概念以及经典的算法策略、算法的评价与分析进行简单讲解,为程序设计课程中讲算法奠定一定的基础。
(2)在程序设计课程的初级阶段,讲课的重点放在分析问题和对问题进行抽象方面。选择一些趣味性强的贴近实际的案例,引导学生体会利用计算机解决问题的思路和方法,着眼于算法,采用案例法、探究法等多种授课模式,培养学生的计算思维和编程兴趣。
(3)在程序设计课程的后期,讲解一些综合性的应用程序。经过前期的学习,学生已经学到了一些零散的基础知识,但对于程序缺乏综合性的感受,“只见树木,不见森林”,因此,课堂上会讲解一些综合性的程序,例如VB程序设计课程可以讲解记事本程序,将菜单、状态栏、通用对话框、文件的读写等知识融合到一体,编写成为一个实用的小程序;同时还可以编写一个画图程序,将图片框、Toolbar、ImageList、画图方法、命令按钮、菜单等融为一体,实现直线、曲线、圆、矩形的动态绘制。逐步培养学生编写综合性应用程序的能力,提高学生的系统思维能力。
2.2 加强实践环节,强化计算思维能力的培养
充分考虑非计算机专业学生的认知能力和习惯,规划上机实践环节的实验流程、实验形式和实验内容。题目先易后难,教师课堂导学和学生自主探索相结合;注重基础同时培养兴趣,必做和选做相结合,使学生通过科学的上机实践环节,体会和理解计算机求解问题的方法和思维模式。
(1)加强学生对上机实验重要性的认识。程序设计课程是一门理论与实践并重,既注重基础知识又需要反复实践的课程。在第一节理论课上,就要和学生讲清楚,程序设计不是听会的,也不是看会的,而是练会的,从而使他们认识到上机实践的重要性,在实践的同时,提高学生发现问题、解决问题的计算思维能力。
(2)精心组织实验内容,强化计算思维。实验内容不仅仅是理论课堂所授知识的简单复习,还要给学生留出创新的空间。所以每节实验课安排7道实验题目,前4道为基础知识,是每个学生必须掌握的内容,旨在使学生通过实验,加强对课堂讲授内容的巩固与理解;后3道为具有一定难度和综合性的题目,旨在让基础较好、能力较强的学生在掌握基础知识的基础上,学会自己分析问题,能灵活地利用所学知识解决相关问题。而且所有的题目都安排了相应的思考题,使学生在解决既有问题的情况下,能举一反三,解决类似的问题,达到知识的活学活用。同时,鼓励学生探索用多种方法解决实验题目,比较优劣,激发学生大胆创新,变被动接受为主动学习,培养学生的计算思维能力。为了提高学生的学习兴趣,还增加了一些学生感兴趣的实际问题,比如在分支程序结构中,安排电话费用计算问题;在循环部分,安排了信息加密、解密的实验内容等。
2.3 完善考核制度,促进计算思维能力的培养
学习考核是检查和评价学生学习效果的重要手段,考核的方式在很大程度上决定了学生的学习态度和学习方法。为了培养学生的计算思维能力的培养,采取了以下措施:
(1)在期末的无纸化考试中,尽量减少对基本概念、语法细节的考核,增加对使用计算机求解问题的思维模式与方法的考核。
(2)增加对学生学习过程中的考核,例如增加现场编程求解问题、课堂问答等考核方式,在潜移默化中培养和提高学生的计算思维能力。
(3)增加小组作业,学生自愿分组、自主选题完成综合性的程序。充分调动学生的主体能动性,培养学生的团队合作能力和综合应用能力。结语
“三位一体两重点”的教学模式,依托学生这一主体,着眼于算法思维和系统思维能力的培养,从“理论―实践―考核”三个方面进行改革,有利于挖掘学生学习的主体能动性,提高学生的学习兴趣,有助于学生体会、理解和领悟计算机求解问题的方法和思维模式,培养学生的计算思维能力。当然,学生计算思维能力的培养不是一门课就能彻底解决的问题,因此,要不断地总结经验,将有效的方法推广到其他的计算机基础课程中,真正地全面提高学生的计算思维能力。
基金项目:黑龙江省高等教育学会“十二五”高等教育科研课题(14Q066)
注释
①②龚沛曾,杨志强.大学计算机基础教学中的计算思维培养[J].中国大学教学,2012(5):51-54.③⑧蒋宗礼.计算思维之我见[J].中国大学教学,2013(9):5-10.④ 何钦铭,陆汉权,冯博琴.计算机基础教学的核心任务是计算思维能力的培养――《九校联盟(C9)计算机基础教学发展战略联合声明》解读[J].中国大学教学,2010(9):5-9.⑤ 冯博琴.对于计算思维能力培养“落地”问题的探讨[J].中国大学教学,2012(9):6-9.⑥ 李廉.计算思维――概念与挑战[J].中国大学教学,2012(1):7-12.⑦ 陈?h.基于计算思维的中学信息技术教育的研究[D].扬州大学,2012.⑨ 聂兰顺,战德臣,宋巧红.计算思维的教学内容与方法研究――以“算法”和“系统”两种问题求解的计算思维为例[J].工业和信息化教育,2013(6):21-27.
第二篇:计算教学与思维能力培养
思维能力是智力的核心,培养学生[此文转于斐斐课件园ffkj.net]的思维能力,一直是数学教育最传统、最重要的目的。思维能力包括推理能力(合情推理能力和演绎推理能力)、抽象能力、概括能力等等。《数学课程标准》中明确指出,要发展学生的推理能力,主要表现在:能通过观察、实验、归纳、类比等获得书学猜想(即合情推理能力),并进一步寻求证据、给出证明或举出反例(即演绎推理能力);能清晰有条理地表达自己的思考过程,做到言之有理、落笔有据;在与他人交流的过程中,能运用数学语言合乎逻辑地进行讨论与质疑。
如果说数学是思维的体操,那么计算就是体操的基本动作,因为学数学总是离不开计算。以前的计算教学,总是教师先把计算方法传授给学生,然后学生按照方法进行大量的、机械的计算练习,目的是计算结果正确,最终把学生培养成了计算的工具。所以一提到计算总是联想到枯燥。在课程改革的今天,我们必须转变观念,激发学生主动参与探究计算法则和算理的形成这一活动过程,引导学生主动建构知识,培养学生[此文转于斐斐课件园ffkj.net]的思维能力。那么如何在计算教学中培养学生[此文转于斐斐课件园ffkj.net]的思维能力呢?《标准》中指出数学教学是数学活动的教学,所谓数学活动就是指观察、类比、猜测、实验、分析、综合、归纳、验证、推理、概括、想象、交流、反思等。思维能力就是在数学活动中培养。
一、创设活动情境,激活学生思维。
计算教学为避免枯燥,要创设与学生生活环境、知识背景密切相关的,又是学生感兴趣的数学活动情境,让学生在观察、类比、猜测等活动中体会知识的来源,激发探究的兴趣。学生不是等待填满知识的容器,而是等待点燃的火把。学生也不是一张白纸,即使是低年级儿童也有着自己的数学活动经验,所以创设情境要有利于唤起学生已有的数学活动经验,激发学生的兴趣,为下一步自主探究计算法则和算理的形成搭建思维的平台。如,教学有余数的除法7÷3=?,先不呈现算式,因为学生已经有6÷3=2的数学活动经历,所以创设这样的情境:有6个梨,如果每3个放一盘,能放几盘?如果平均放在两个盘里,每盘放几个?然后改为:有7个梨,如果每3个放一盘,能放几盘?还剩几个?如果平均放在两个盘里,每盘放几个?还剩几个?让学生动手摆一摆,建立表象,为下一步探索有余数除法的求商方法作准备。这样学生在一个现实的、有趣的问题情境中学习计算,比单纯的为计算而计算思维活跃多了。
二、参与活动过程,发展学生思维。
计算法则和算理属于抽象的知识,而学生的思维则已形象思维为主,如何有效地解决数学知识的抽象性与小学生形象思维为主之间的矛盾?就让学生动手操作,参与活动过程。动手操作的过程是一个手脑并用的过程,是培养学生[此文转于斐斐课件园ffkj.net]技能、技巧,促进思维发展的一种有效手段,所以说儿童的智慧在他的手指尖上。教学中教师可以充分利用教具演示、学具操作、电化教学手段,为学生提供更多的参与机会,尽量让学生不仅用眼看,还要动手、动口、动脑,多种感官协同活动。这样既使学生的思维随着动手操作活动而展开,又使一些抽象的数学知识变为学生容易接受的形象直观的生活常识。如,(1)在教学“9加几的加法”时,让学生摆小棒。左边摆9根小棒,右边摆4根小棒,把它们合起来是多少根小棒?怎样摆才能让别人一眼看出是多少?在操作过程中,放手让学生自己摆,说过程,然后再利用现代化教学手段给学生演示一遍,这样不但培养了动手能力,同时发展了学生的思维能力。(2)教学一个数乘分数的计算法则时,教师先出示题目:“一台拖拉机每小时耕地8000平方米,5小时耕地多少公顷?”然后再出示题目:“一台拖拉机每小时耕地8000平方米,3/4小时耕地多少公顷?”引导学生对两道题目进行观察、类比,从而推出算式:8000×3/4。如何来计算呢?学生可能回有不同的算法,比如把3/4变成小数,8000除以4再乘3,或应用书上的方法等,先鼓励学生算发多样化,再引导学生优化方法。最后出示题目:“一台拖拉机每小时耕地4/5公顷,3/4小时耕地多少公顷?”完全放给学生自主探索,然后演示计算过程,最后让学生讨论归纳出分数乘以分数的计算法则。这样,学生得到的不仅仅是法则。(3)教学商不变性质,先出示一组算式:6÷3=260÷30=2600÷300=2让学生观察有什么规律,接着大胆猜想:是不是所有的除法算式都有这样的规律呢?然后举例验证,最后归此文转自斐.斐课件.园ffkj.net纳出商不变的性质。学生的思维刚趋于平衡,教师接着再打破这个平衡,提出有余数的除法有没有这样的性质呢?学生就会按捺不住要去验证了。如:7÷3=2„„1,70÷30=2„„10,700÷300=2„„100,最后得出商不变,但余数变(这是在整数范围内的说法)。如果学生对余数变不太理解的话,可以再通过摆小棒图片帮助理解。
二、反思活动过程,拓展学生思维。
反思,简单的说就是对过去经历的再认识,数学学习中的反思就是对原有学习经历的回顾、重新思考。弗赖登塔尔强调:“反思是数学的重要活动,它是数学活动的核心和动力。”反思是发现的源泉,是训练思维、优化思维品质、促进知识同化和迁移的极好途径。学生参与数学活动之后,教师要引导学生去反思提出问题、解决问题的过程,从而获得解决问题的经验。反思的内容主要有:对自己的思考过程进行反思,对解题思路,分析过程,运算过程,语言的表述进行反思,对所涉及的数学思想方法进行反思等。教师可以提出一些针对性的具体启发性的问题引导学生主动反思探索的过程。如,今天学习的是什么知识?我学会了多少?我是怎么学会的?还有什么模糊的地方?对书中的哪些地方还存在疑问?等等。然后再组织全班交流反思。通过多方交流,可以集思广益、取长补短,同时也能获得更多的学习信息量。在交流反思中,思维能力得到了拓展。
总之,培养思维能力贯穿于计算教学的始终,教师要充分调动学生的各种感官,在数学活动中开展计算教学,在计算教学中培养思维能力,充分发挥计算教学在思维体操中的作用。
第三篇:操作系统教学中的计算思维能力培养
操作系统教学中的计算思维能力培养
计算思维是指运用计算机科学的思想和方法来求解问题、设计系统和理解人类行为。计算思维所关注的是将计算机学科解决问题的方式应用于其他学科和人们的日常生活中。计算思维自从被周以真教授清晰而系统地提出后,如何培养学生的计算思维能力已经成为教育界与众多学者关注的热点问题。计算思维是涵盖了计算机科学之广度的一系列思维活动。它与计算机和计算技术密切相关,系统化计算思维能力的培养可以贯穿在课程教学中,计算机专业教育应该在计算思维能力培养方面做出表率。
新教学目标的确立
作为计算机系统中核心、复杂的系统软件,操作系统管理着计算机中的各种软件和硬件资源,并在用户与计算机之间起到桥梁作用。国内外高校都将操作系统设置为计算机科学与技术、软件工程等专业的核心课程。
在以往的教学模式中,计算思维的诸要素已经或多或少地渗透到操作系统课程的培养方案和教学大纲中,但因计算思维的概念和培养目标不甚明朗,故执行的效果亦不甚理想。因此在计算思维被明确提出后,计算思维能力的培养也应该随之具体化、清晰化,并将其提升为操作系统课程教学中的一个新的教学目标。
计算思维能力的培养
计算思维的本质是抽象和自动化。计算思维对客观世界进行抽象化表述与研究,并将这个过程用自动化方式实现出来。操作系统的设计原理在很多地方体现了这种抽象、启发式推理、并行处理以及折中的思想。因此在课程教学中,教师应该引导学生体会其中的思想,从而培养学生的计算思维能力。
2.1 抽象思维
抽象思维的本质是运用分析、判断、推理、比较等方式抽取事物本质或共性的思维。对计算机系统资源的抽象,使用户不必了解下层实现细节。抽象模型层次越高,系统功能就越强。例如,图1所示为操作系统的抽象层次结构,是实现计算机的普适化方法,在i/o设备上铺设i/o管理软件。为了支持文件共享,保证信息安全,在i/o管理软件之上铺设文件管理软件。这两层软件分别隐藏了对i/o设备和文件管理操作的具体细节。当在文件管理软件层之上再铺设窗口管理软件后,用户可在窗口环境中方便地使用计算机。
操作系统课程教学中的抽象思维培养为引导并启发学生从原因、作用对象、作用范围和结果等角度来分析进程调度、页面置换和磁盘调度三者的共性。经分析发现,它们都是由进程的选择引起的。在进程争夺处理机时,引起进程调度;在进程发生切换时,引起页面置换;在进程需要磁盘上的资源时,引起磁盘调度。
在教学过程中对教学内容进行分析并加以推理,寻找共性的学习方式,不仅有助于培养学生的抽象思维能力,也有助于学生理解知识内容以掌握知识点之间的联系。
2.2 启发式推理思维
在操作系统课程教学中认真组织教学内容、分析管理对象和任务的特点、逐步提出合理解决方法,可以培养学生的启发式推理思维。
在多道系统中,进程数目往往多于处理机数目,因此处理机就成为了进程竞争的主要资源。在进程调度策略教学中,首先引入符合人类思维模式的先来先服务策略。该策略算法简单,容易实现,但短进程的周转时间往往过长,导致系统吞吐量下降。针对先来先服务策略的不足,引入短进程优先策略。该策略使进程平均周转时间减少,系统吞吐量增加,但短进程优先策略没有考虑到进程任务的轻重缓急。按任务的工作特点设置进程的优先级,级别高的进程优先使用处理机,即为高优先权调度算法。如果进程的任务紧急程度、使用时间等接近,引入时间片轮转调度策略,让进程轮流在处理机上执行一个时间片。
培养学生的启发式推理思维还可从相似情景人手。针对与处理机资源数目少于进程数目类似的现实存在情景银行柜台服务,采用启发式推理,接近现实情况。银行柜台有限,在客户很多的情况下,可以采用先来先排队服务模式;有些客户办理的业务费时较多,为了提高客户整体满意度,可为此类客户开设另一类服务窗口;有些客户经常办理金额较大的业务,为照顾这类对银行效益影响大的群体,设置vip客户。
利用现实存在的情景实例进行启发式推理,有助于培养学生合理的启发式推理能力,可以达到快速找到符合实际且合理的解决方法的目的。在进程运行时,若所访问信息不在内存中,需将它们调入内存。如果内存无可用空间时,系统必须按照页面置换算法从内存中调出一页。为了找到多任务共享的磁盘中的信息,需根据磁盘调度算法查找。操作系统中页面置换算法、磁盘调度算法与进程调度算法的启发式推理思维举例见表1。
2.3 并行处理思维
并行处理思维是一种最大化合理利用资源的思维。并发处理是并行处理思维的产物,它的出现是不可避免的。
存储程序式计算机是以顺序计算为基础的计算机。为了充分利用计算机系统资源,要在顺序计算为基础的计算机系统中引入并发处理。例如,在进程a使用处理机进行计算后,需要输入时,处理机处于闲置状态,i/o设备处于工作状态。此时可采用进程调度算法使其他就绪进程b使用处理机计算。i/o设备与处理机的关系见图2。同一时刻,处理机与i/o设备都处于活动状态。当进程b需要输入时,若进程a就绪,调度就让进程a占用处理机继续计算。对同一个资源,在同一时刻,只有一个进程处于工作状态,见图3。
并行思维可应用到人们的学习、生活、工作中。例如,工作中为提高效率,需要在最短的时间内完成所有工作。当一个工作做到中途需要等待时,可先去做其他工作,直至这个工作可继续执行。
2.4 折中思维
折中思维是培养一种综合各种因素影响,最终达到最好效果的思维能力。在遇到二者或多者不可兼得的情况时,应利用联想、发现,使用折中思维创造性的解决问题。操作系统在设计时,参数选择、算法设计和使用的环境等都需要寻求折中点。观察世界上的著名建筑也会发现,它们大都采用取众家之长的方式创造自己独一无二的风格,这是一种高水平折中。学生在利用联想、发现培养得到的折中思维创造性解决问题的同时,会深刻理解折中思维的内涵。
结语
计算思维的概念清晰化后,已在人们的科学研究、生产和学习中起到越来越明显的作用。培养具有计算思维素养的现代化人才势在必行。在操作系统教学中,将培养计算思维能力作为教学目标,既有利于系统地培养学生中的计算思维能力,又有利于学习、理解操作系统的基本原理与方法。
第四篇:程序设计课程的教学模式构建论文
【摘要】程序设计课程一般是计算机类专业的专业基础课,一般在大一年级第一学期就开始开设。随着大学新生的学习和生活环境的变化,如何让学生尽快融入到专业课的学习中去,这是很多人都关注的焦点,本文研究的就是在课程教学中引入多种教学资源,通过激发学生的学习兴趣,帮助引导学生愉快完成学习任务。
【关键词】新媒体;程序设计课;教学模式构建
0引言
随着社会进步和科学技术发展,Internet规模的不断扩大,各种网络相继出现,各种媒体环境已经进入了崭新的阶段,先进的多媒体系统层出不穷,各种新媒体资源越来越丰富,人们在日常生活、学习、工作中都越来越多地使用它。新媒体和传统的各种媒介相比较还是有很大的区别,表现出了前所未有的新面貌,已经成为当前社会最主要的信息资源的来源和交流的途径。大学生对接受新鲜事物强,越来越多的学生群体在开始了解、使用各种新媒体。大学生的生活和学习也越来越多的在依赖新媒体,他们通过新体查询自己所需要的信息资源,很多时候师生之间、同学之间的沟通也是通过新媒体来实现的。如何在教学中充利用新媒体,促进大学生的学习已经是一个越来越重要的研究课题。
1新媒体环境的概念和作用
传统媒体主要采用传统的大众传播方式,即通过某种机械装置定期向社会公众发布信息或提供教育娱乐平台的媒体,主要包括报刊、户外广告、通信、广播、电视等传统意义上的媒体。传统媒体的特点就是单向的,信息发送者和信息接收者之间是单向的,传统媒介的缺点主要是在时间方面和空间方面具有一定的局限性。新媒体是利用多种技术综合通过电脑、手机、数字电视机等各种终端设备,向用户提供各种信息资源的传播形态。新媒体主要采用声音、图像、动画等于一体,包括网络媒体、手机媒体、平板电脑、高清数字化电视等,能对广大用户同时提供各种丰富多彩的富有个性化的内容。每个新媒体的用户既是信息资源的发送者又是信息资源接收者,每个用户都融会成对等的交流者的个性化交流的媒体,它是双向的具有交互性,更为重要的是它还具有即时性,这在一定程度上解决了时间和空间的局限性。联合国教科文组织对新媒体下的定义:“以数字技术为基础,以网络为载体进行信息传播的媒介。”所以新媒体可以称为是一个数字化新媒体。人们对新媒体的需求及互联网的运用成了家庭中必不可少的生活要素。尤其是当下,随着通信技术的迅速革新,新的媒体广泛普及的情况下,人们可以方便快捷的了解自己所需要知识,探索自己感兴趣的问题。特别是当代年轻的大学生们还会通过各种聊天软件、社交网站、贴吧、论坛等窗口发表自己撰写的文章和观点,浏览别人写的文章,同时还加入了自己的想法和评论。
2程序设计课程的特点与学情分析
作为计算机相关专业的一门入门级的专业基础课程,程序设计课程的学习有利于提高学生的思维能力,对学生后期深人学习计算机专业其它知识有很大的帮助。程序设计课程的特点是动手能力要求高、知识点多、重点难点多、课时少,大部分程序设计课程的学习要求学生在一个学期内由入门转化为熟练编程,顺利通过国家二级考试。程序设计包含语言和算法两个方面,不仅要求学生掌握语言的语法规则,而且要求学生学会运用计算机的编程思想。计算机的编程思想与我们日常生活中处理问题的思路有很大的区别,这就要求学生转变思路,按照计算机解决问题的方式来编程解决日常生活中的实际问题。程序设计课程一般是在大一年级第一学期首先接触的第一门计算机高级编程语言课,大学新生从中学来到大学,计算机水平参差不齐,水平差的直接没有接触过计算机,普遍没有用过具体的计算机编程语言进行程序设计实践。当学生接触程序设计类课程时,普遍感觉内容枯燥、非常抽象、难以理解。很多学生在学期结束谈到对这门课程的感受时,仍有部分同学感觉没有入门。他们感觉读程序还能凑合,但是涉及到编程则非常困难,总有无从下手的感觉,部分学生甚至还毫无编程思想。很多教师也感觉到找不到一个恰当的方法,让学生能够真正的理解融入课程。目前大部分学校在讲授程序设计这一类课程时,教学中仍然多采用传统的讲授教学方法,再配以一些上机实验操作来加强巩固和理解课堂上所讲的一些理论知识点。但是这种教学方法对于计算机程序设计类课程来说,显然是不够的。因为程序设计类课程的特点是内容多、课时少、实践性强。所以,在授课内容处理上既要讲授大量的基础知识、基本概念、基本编程思路和方法,而且还要讲授具体的解题过程和实际应用甚至具体的上机操作。要想让学生掌握课程的精髓,仅仅依靠上面所述的讲授和上机实验是远远不够的。传统的讲授有偏重知识的单向的传授,它重理论轻实践,学生实践能力无法锻炼,学生就不能掌握计算机编程的实际问题解决能力,当学生走上工作岗位时,就无法满足岗位对能力的需要。为了让程序设计课程这门课程的教学达到真正培养学生的实际动手能力与创新精神的目标,提出了新媒体时代下程序设计课程的教学模式,这种教学模式以解决实际问题的程序设计思想作为切入点进行教学,培养学生具有利用软件开发环境解决实际问题的能力。
3新媒体时代下程序设计课程的教学模式
1)激发学生的兴趣
首先要让了解计算机语言的魅力,让学生体验程序设计语言的强大功能,利用它学生自己就能编写出各种有用的软件,这样可以激发学生的学习兴趣。我们可以直接把已经写好各种程序源代码发给学生,让学生在自己的电脑上运行,通过程序的运行告诉学生,这是我们的学习目标,当学生学习完本门课程,学生也可以编写这样的程序水平,甚至可以编写出比这更好的程序。向学生演示的程序有两点值得推荐:1.程序最好是游戏程序,因为大部分同学对游戏是比较感兴趣的,告诉他自己以后能编写出这样的程序,那更是振奋人心的事;2.程序最好是以前的学生编写的,这样对正在学习的学生更具有说服力,证明了本门课程学完确实可以达到这样的目标。
2)知识点模块化
目前我们讲授知识点的一般是按照全国计算机二级考试大纲来进行的。讲授知识点的顺序也是按照大纲的顺序,平铺直叙。学生即使掌握了知识点但不会应用,不能解决实际问题。我们设计的思路是把相关联的知识点放到一个模块中。每个模块可以包含一到两能解决实际问题的应用案例,在讲授新知识前,将案例发给学生,学生根据案例知道要学习什么知识,这个知识学完能达到什么目标,都是解决实际问题的学习目标,学生学习也有兴趣。
3)课前学习任务安排
课前学习的目标是逐步提高学生的自主学习能力。通过自主学习完成对课程基础知识的理解,课前学习的安排主要有以下几方面。1.可以让学生自己通过互联网在线观看教学视频,并完成对学习知识点的在线小测验。在线教学视频的特点是没有空间和时间的限制,学生自己自由选择观看,视频中遇到不懂的或难点,可以暂停或反复多次观看。在线小测验帮助学生了解自己目前掌握知识点的情况,有哪些基础知识还没有掌握,哪些已经掌握了。2.将知识模块的相关案例程序发放给学生,要想写出程序,必须能读懂别人写的程序。学生首先自己学习教材内容,对照教材和教学视频,让学生自己研究下发的案例程序,遇到不懂的知识点进行标注,通过网络中的BBS、QQ群等交流平台向其他同学咨询。学生通过研究程序知道解决相似问题的基本方法。3.试着自己编写程序。教师要布置两种编程题给学生,要求学生独立完成。第一种题目和案例程序相仿,类似于毛笔字的临摹,让每一个学生都能体会运用新知识编程的成功感觉,激起学生的学习热情。第二种题目是本次学习知识的综合应用,这个有学生能做出来,有学生可能做不出来,主要是让学生充分思考如何去解决问题,这个也为课堂教学做下前期铺垫。为了让学生自己练习编程,所以题目的答案是绝对不允许学生在上网去搜索。
4)课堂教学的变革
课堂教学中改变过去那种教师讲,学生听的格局。课学教学主要分成三个阶段:基础知识学习、综合知识学习、职业能力学习。在基础知识阶段主要采取课堂提问的方式,根据需要掌握的知识点设计若干小问题,了解学生掌握情况,针对学生的回答情况,教师再进行适当补充和拓展讲解。根据课堂提问,不仅让教师了解学生课前的学习情况和学生对知识理解力如何,而且让学生对这知识点进行全面学习。我们巩固所识学过的知识的最好方法就是再次接触它!温故而知新通过对知识点的第二次刺激,记忆效果更好,让学生真正记住、掌握知识点。在基础知识阶段主要是一个知识点一个知识点的简单记忆,知识点与知识之间有何关联、如何融通,这就需要综合知识的学习。在这个阶段要解决课前布置的两种题目,特别是第二种题目。教师要检查学生完成作业情况,听取学生的编程思路和方法。对于学生不理解的、重点、难点,教师可以采用多媒体PPT、视频、上机演示等围绕教学目标展示相关问题的发生、发展以及相互关系;特别是可以通过分小组讨论方法鼓励学生自己进行归纳整理,这样学生对知识掌握就会从由表及里的进行更高阶的迁移与应用。在职业能力学习阶段,主要是培养学生如何适应社会工作岗位对能力的要求,学习的知识点是有关软件开发的实践,从而掌握解决实际应用问题的能力。以具体的软件项目开发案例任务为题目,让学生开展小组讨论。按照软件开发的实际步骤,让各个小组发言,各个小组之间找出对方的优点和缺点。教师在最后进行必要的补充和扩展,这样为各个小组课后完成自己的任务打下基础。
5)课后任务的设计
课后的任务的目标是让学生灵活运用所学的知识,锻炼他们的项目开发的能力。这个课后任务在课堂教学的职业能力学习阶段提出,已经让各个小组完成了初步的构思。课后就是各个小组成员通过编程实现本小组的项目。编程过程中可以通过聊天软件如QQ协调相互之间的程序功能和接口,大家一起努力解决遇到的困难,学生合作意识和沟通能力得到了培养。如果遇到的困难解决不了还可以通过聊天软件咨询教师,教师可以通过远程控制软件,远程查看学生的电脑,帮助学生分析问题出现在哪里,协助学生一起调试程序。通过聊天和远程控制,师生之间完全摆脱了时间和空间的限制,学生感觉老师时刻就在自己身边,教师也可以时刻了解学生的任务进展情况,把握好时间。
6)课程考核
传统的课程考核是期末考试,通过最后一次考核很难评价学生的动手能力如何。新媒体时代下的考试不应该仅在最后考试,平时也有考试,在每一单元模块学完、甚至于在每一次上完课后都可以设计在线考试。所以这门课程的期末总评分数应该是如下构成:平时在线考试(30%)+平时作业(40%)+最后的期末考试(30%)。程序设计课的主要目标就是培养学生的动手能力,体现动手能力的就是让学生编程,而平时作业主要是让学生完成的编写程序作业,所以平时作业的成绩占到了40%。作业要求独立完成,不得抄袭已有的程序,同学之间的帮助也不能直接提供源程序,只能是程序的设计思路和算法之类大的框架,具体如何实施的必须学生独立完成,一旦发现违规学生,直接判定此次作业为0分,发现第二次扣除最终作业成绩20分,第三次出现问题作业成绩的40分全部扣完,意味着他期末有可能不及格。期末考试成绩仅占30&,这样可以杜绝平时不学习,到了期末的时候才用功应付考试的现象。
4结束语
总之,程序设计不仅是计算机专业的基础课程,也是适应社会需求的岗位能力课程,合理的课程内容设置配以科学的教学方法,充分利用科学技术技发展带来的教学方式的革新,就一定能促进学生编程能力的提高。学生的编程能力的在一定程度上与学生学习计算机知识的热情有一定关系,激发学生的学习热情又为学完本课程以后其他的计算机相关专业课程带来良好的开端。
参考文献:
[1]杨宁,林丽征,徐梦诗.翻转课堂教学理念下的“现代教育技术”新课程设计与实施[J].中国远程教育,2015(3):61-65.[2]张萍.基于任务驱动理念的高职计算机基础教学探讨[J].教育与职业.2015(6):159-160.
第五篇:《JAVA程序设计》课程教学模式改革的思考
《JAVA程序设计》课程教学模式改革的思考
[摘要]为适应职业教育改革发展需要,针对Java课程的教学做一些思考。在教学方法上做到灌输式教学向导向式教学的改变,并且在授课过程中体现项目驱动的方式,加强实践教学环节的实施和监控,切实做到对java应用能力的培养。
[关键词]java 教学方法 实践教学 应用能力
中图分类号:TP3文献标识码:A 文章编号:1671-7597(2008)1020139-01
Java是1995年由Sun公司组织开发的一种编程语言,其所具备的简单性、跨平台、面向对象、多线程等特点,已经成为当今世界面向对象程序设计的主流。目前,各大高校都开设了《JAVA程序设计》相关课程,考虑到Java 语言的实践性强和开发环境的特殊,结合职业教育改革的发展需要,本人针对该门课程的教学模式改革做了一些思考。
一、传统灌输式教学向导向式教学的转变
在传统的教学过程中,大都是以理论知识灌输和教师为主体,学生学习非常被动。这种方式的教学在很大程度上限制了学生主观能动性的发挥,从而使得课堂气氛沉闷,学生上课走神,最终导致教学效果不理想。随着《国务院关于大力推进职业教育改革与发展的决定》,“以学生为主体,以教师为主导”的新型教育模式被提了出来,这种教育模式要求学校和教师把学生放到应有的学习主体的地位上,充分地发挥教师教导与引导的主动性和学生自主学习的主观能动性,真正达到教学相长,师生互动,寓教于乐,学生自悟与自觉的高水平教育境界,培养德、智、体、美全面发展的具有行动能力和创造能力的高层次社会人才。“互动式教学”、“参与式教学”、“研究型学习”等新的教学方法应运而生。为了培养学生学习兴趣和积极性,切实培养学生使用java语言进行程序开发的能力,所以在教学过程必须打破传统教育教学方式,做好导向式教学。为了更好地体现导向式教学,我将整个教学环节进行了调整,授课过程中更多地增加了提问、小组讨论、实践练习等。例如在讲述java基础语法知识时,我采用与C语言进行对比的方式,列出问题,给出测试题目。引导学生带着问题,自己看书,并通过小测验,加强对理论知识的理解和掌握。
二、项目驱动式方法贯穿整个教学过程
项目驱动教学法作为教育领域中一种比较新的教育教学方法,近年来我国教育界开始吸收并实践这一教学方法。结合职业教育特点和java语言在软件开发中的广泛应用,在此课程的讲授过程中,项目驱动始终贯穿其中。
(一)准备阶段
首先参照企业开发模式将学生划分成小组,确定组长后,由各组组长进行管理。然后根据学生语言基础能力和兴趣,确定企业实际项目。
(二)实施阶段
根据java程序设计大纲所规定的能力单元,将项目切分,渗透到各个相关知识点的讲授中。例如在讲授面向对象基础知识时,有了继承、封装、多态的概念继承,讲到类的定义,就可以要求学生将实际项目中所涉及的各个class文件创建出来,为后期开发做准备。后面讲授多线程、I/O流、图形界面、网络编程、数据库操作等,在实践练习环节都引入实际项目的分模块开发,从而提高教学的深度和广度,在一定程度上也激发学生的积极性和知识扩展性,充分调动学生兴趣,提高教学质量。
(三)检查阶段
在整个教学过程结束后,一个较完整的项目就开发出来了。对此,小组组长要对各组员的项目结果进行检查,教师要对各小组的项目质量进行检查。工作结果要按照预定的目标来进行自我和相互的检查并判断达到的效果如何。此过程锻炼学生的责任心、质量意识及评估方法。同时,教师除对工作计划以内的内容进行检查外,还应对质量保证情况进行检查。
(四)评估阶段
最后,学生完成工作评定,教师完成最终评估。首先学生自己对所做的工作进行工作评定,包括项目的准备、项目实施过程中解决的各种疑难问题、自己所负模块的效果等各方面进行总结;然后指导教师进行最后的工作总结、成绩评定,并找出差距和改正办法。
三、加强实践教学环节的实施与监控
根据《java程序设计》课程的特点,在授课过程中,着重突出学生动手能力的培养,因此该门课程的理论和实践课时比为1:1,授课地点都在机房。但通过听取其他同事对java课程的讲授和对学过java课程的学生的调查,发现很多教师在授课过程中,虽然加重了实践课时的比例,由于对实践环节的落实和监控力度不够,最终导致学生的动手能力没有得到很大很好的提高和改善。因此在教学过程中一定要切实落实实践教学环节的展开,并在实践教学环节中加强学生实践练习的过程和结果的监控反馈力度。采取分组管理的方式,由教师对组长,组长对小组成员进行监督、控制的方式,切实保证教学实践环节人人参与的目标。最后组长要根据各组实践练习情况写出书面总结报告,教师根据各组情况针对集中存在的问题进行反馈。
四、总结
总之,Java教学一定要围绕提高学生实践应用能力展开,注重面向对象编程思想的培养,真正做到培养符合职业教育要求,符合社会需求的实用性人才。教学过程中注重导向式教学,以项目驱动贯穿整个教学过程,并加强实践教学环节的实施与监控力度,这是本人对Java程序教学的几点思考,希望能够抛砖引玉,最终取得良好的教学效果。
参考文献:
[1]郑莉,计算机入门语言讲什么?[J].计算机教育,2006(07),25-26.[2]朱平,Java程序设计教学[J].湖北教育学院学报,2006,23(02),46-48.[3]孙伟,《Java程序设计》课程的教学改革与实践[J].计算机时代,2005(11),84-86.[4]张孝祥,Java就业培训教程[M].北京:清华大学出版社,2003.[5]张哲,陈桂生,在Java语言教学中实施“项目驱动”教学法的实践探索[J].教育与职业,2007年18期.作者简介:
李桂珍,女,汉族,山东德州人,北京工业大学在职研究生,新疆农业职业技术学院软件技术学院助教,研究方向:软件技术;李欣,北京工业大学工程硕士,在读,助教,软件技术方向。