学习编程计划范文10篇

时间:2024-05-05 05:22:05

导语:这里是公务员之家根据多年的文秘经验,为你推荐的十篇学习编程计划范文,还可以咨询客服老师获取更多原创文章,欢迎参考。

学习编程计划

计算机专业新工科教学改革研究

1教学改革的内容和意义

1.1教学改革的内容.教学改革的目的是为更好地实现专业培养目标,不同的培养目标需要不同的课程体系来实现,计算机专业培养目标的课程体系主要由专业基础课/专业课程组成.专业基础课包括离散数学/数据结构/算法设计与分析等主要的基础课程.专业课程又可以分为软件能力培养和硬件设计能力培养两个主要方面,软件能力培养由一系列的语言课程来完成,包括C/C++程序设计/Java/面向对象程序设计/net程序设计.项目的主要研究内容在于如何对相应的软件能力培养方案部分以及相应的程序设计课程进行优化改进,强化计算机专业学生的编程能力,以适应新的智能时代的要求.程序设计的核心是算法,大数据人工智能时代后,大数据分析、数据挖掘、智能控制、智能算法等算法逐渐成为程序设计的核心.近年来,人类逐渐进入人工智能时代,而人工智能时代的基础就是程序设计,特别是基于智能算法的软件程序设计.教学改革的一个重要措施就是在计算机专业的程序设计课程中,引入智能算法的内容.教学改革计划在教学计划中适当增加一些人工智能(AI算法的学习,尝试开设MATLAB/Python数据分析、数据挖掘、神经网络深度学习等课程,使学生具备一定的大数据人工智能算法基础.这样也带来一些新的问题,首先是在计算机程序设计的教学上,如何合理的安排和设置新的程序设计课程体系,加入新的智能程序设计课程;其次是随着智能算法等算法的出现,算法的理论和实践复杂度和难度大大提升,这就给程序设计的学习带来了新的困难,如何运用直观地、动态地、图示化的方式来讲解算法,让学生能更好的掌握智能算法,是我们教学改革研究的重要内容之一.其次,不管是传统软件程序设计还是新兴的智能算法程序设计,程序设计能力的核心是实际动手编程能力,如果学生只听课,不加强实验,根本无法达到学习目的.因此课程的实验环节设计是课程质量的核心.如何采用各种方法提高学生的实际动手编程能力是研究的重点.另一方面,我们认为程序设计能力的培养是一个长期渐进的提高过程,我校计算机专业的程序设计课程从大学一年级就开始开设,大学一年级开设“C语言程序设计”,后续会继续开设“面向对象程序设计(C++”以及“Java程序设计”,“数据库系统设计”,以及现在新增的“Python程序设计”等.目前存在的一个主要问题是,教师和学生都对程序设计能力培养的连续渐进提高认识不足,对这些课程的教学和学习往往像完成孤立的任务一样,学生拿到学分就结束了,持续性的关注不够,培养效果不理想,需要进行相应的教学改革来加强.1.2教学改革的作用和意义.1发展以智能算法编程能力为核心的计算机专业新工科建设改革,使学生在人工智能(AI时代具备较强的就业能力和良好的职场生存和发展能力.适当开展基于人工智能算法的程序设计,开设MATLAB、Python等人工智能语言的课程,适应大数据人工智能时代的人才要求.2程序设计作为一种思维训练的手段被学界广泛承认.学习编程不但能培养学生的抽象思维能力,逻辑思考能力,不能使学生做事专注细心,提高学生创新创造能力和综合素养并使学生养成良好的学习习惯.3程序设计是计算机学科的大多数其它专业课程,如操作系统、数据结构、数据库技术、编译原理、人工智能等课程必要的实践环节基础,学生程序设计能力差,这些后续课程都不可能学好.提高学生程序设计能力,能有效提高后续课程的学习效果.

2教学改革拟解决的问题和达到的目标

2.1存在的问题.1优化本科培养方案中的程序设计课程设置,鉴于学生的程序设计能力的提高是一个连续渐进的过程(全周期4年,再加上新加入的智能语言如Python等,在教学计划的安排上突出程序设计能力锻炼课程的连续性,在一些程序设计空白学期可以考虑安排增加程序设计的课程设计课等小课程或者项目实习课,让学生专注于程序设计能力的持续提高.2为提高学生程序设计的兴趣和动力,要有一个好的开端,抓好一年级的“C语言程序设计”课程,因为“C语言程序设计”是学生接触的第一门程序设计课,大多数学生都反映难学,小部分学生在学习中期就有了放弃继续学习下去的念头,没有信心与动力,而学生反映的难点主要在动手编程方面,如何在C程序设计课以及后续的程序设计课程中采取多种手段提高学生的动手编程的兴趣、动力是难点.3具体课程教学中存在的其他问题.如教学内容与教学课时之间的矛盾;教师的综合业务水平有待提高;教学方法、方式有待改进;改变重课堂教学,轻实验教学的教学模式.学生方面要改进的问题有:程序设计能力的重要性认识不足,学习目的不明确,学习动力压力不足;逻辑思维能力较弱,想象空间较窄;初学者易产生厌学情绪;重教轻学,重理论轻实践;考试能力强,编程能力弱.4开设Matlab/Python数据分析、数据挖掘、神经网络深度学习等课程,有一定深度和难度(很多原来是研究生课程.如何结合物联网、机器人、大数据相关专业课程的学习,开展人工智能算法的程序设计能力培养,是一个需要考虑的新的领域问题.2.2教学改革的目标.教学改革力图在两个重要方面取得进展,一个是让学生具有大数据人工智能时代要求的人工智能数据分析、挖掘方面的知识并具有相关的智能程序的编程能力.另一方面是通过持续不断的编程训练,让学生的编程能力有质的提升,目的在于提高学生的就业竞争力.1通过结合物联网、机器人、大数据的相关专业课程学习,开展人工智能算法的程序设计能力培养,开设Matlab/Python数据分析、数据挖掘、神经网络深度学习等课程,让学生具有大数据人工智能时代的理论及实践知识,具备智能算法设计编程能力.2通过教学改革,使计算机专业的学生经过大学4年全周期有计划的连续的程序设计能力提升培养,让学生的编程能力达到一个相当高的水平,让学生在毕业时具备较强的程序设计能力,在智能时代具有较强的就业竞争力.3探索并解决合理的计算机专业程序设计能力提升培养的课程培养计划、教学教法改进、理论和实践相结合的教学方法改进等教学改革问题.探索实践新工科的培养方案,探索全面提高学生动手编程能力的教学、实验、实习、工程方案.

3相关教学改革的主要方法和实施

为达到让学生具有一定的大数据人工智能的编程基础,并持续提高编程能力,教学改革优化调整了相关的教学计划,增设了相关人工智能课程;优化了编程类课程的开课时间、顺序、间隔;对编程类课程进行教学改革,普遍采用案例、项目开发、小组开发、上机考试的教学模式加强学生的编程能力;将中国计算机学会(CCF的CSP认证考试作为计算机学生毕业的条件;和国内知名的大企业合作,用企业的技术和环境对学生进行编程能力培训.1开设Python数据分析(18级开始、数据挖掘(16级开始、神经网络深度学习(17级开始课程,让学生掌握大数据人工智能的基础知识,并学习最重要的人工智能语言Python.2优化调整计算机专业教学计划,合理安排程序设计课程的连续性、渐进性,优化了C语言、Java语言、Python语言、数据设计、网络程序设计的课程学时、开课时间等安排,形成对学生的长时间的、持续的编程能力的训练和培养.3理论环节、实践环节的教学改革,加强实践环节,从2016级开始计算机专业的“C程序设计”课程教学中开展提升学生编程能力的教学改革,主要措施有改革课程考核方式,以上机编程作为期中、期末主要考核方式,以此倒逼学生加强编程动手能力.加强学生的基本专业素养,比如作为编程基础的英文打字也被加强,被作为考核内容.①强调程序设计能力的重要性、明确学习目的,激发学习兴趣、动力.②加强实验,从考核环节采用以实际上机编程考核为主倒逼学生动手编程.③基于问题、案例、项目和实际应用结合的综合编程训练.④合理运用多媒体课件演示程序算法,强调算法是编程的核心.4将参加中国计算机学会(CCF的CSP认证考试(一种直接上机的编程考试并取得100分以上成绩作为计算机专业学生毕业的必要条件,直接逼迫学生提高自己的编程能力,直到达到相应的要求.5在昆明市政府和华为公司的大力支持下,组织学生到华为公司进行华为云Devcloud的实训,参训学生大大提高了学生的研发水平和自信心.

查看全文

测绘程序设计课程教学改革研究

[摘要]针对新形势下社会对测绘工程专业学生培养目标的需要,结合测绘工程专业认证背景及社会、学校、学生的实际情况,教师应从可操作的角度对该课程进行教学改革,具体措施有:调整培养计划,协调课程关系;综合系统统筹,梳理教学内容;提升教学条件,改进教学模式;改变评价体系,鼓励个性发展。

[关键词]测绘;教学改革;课程设计;程序设计

新形势下传统测绘工作的“测、算、绘”中的算和绘所占比重越来越大,原因一方面在于野外测绘技术的进步,降低劳动强度的同时提高了野外测量效率;另一方面在于获取的数据量越来越大,数据类型也更加复杂,海量数据的处理和绘制需要依赖于计算机才能顺利完成。在此背景下,社会对高校培养的测绘专业学生的测绘编程能力提出了更高的要求[1-2]。许多高校的测绘工程专业都开设了测绘程序设计这一专业课程,测绘技能大赛新增了测绘程序设计的项目,这些都体现了社会、高校对于测绘专业学生测绘程序设计能力的重视。总之,在新形势下,学生数据处理的能力需要被重视,其核心是重视培养学生的编程能力,让学生掌握测绘数据处理的强有力的工具。测绘程序设计这门课即是解决这个问题的一把关键钥匙。测绘程序设计是一门将编程技术与测绘专业知识结合起来的课程,学习者既要掌握测绘专业的知识,又需通过编程能力将其实现。本课程涉及测量学、测量平差、大地测量学、工程测量学等众多测绘专业课,还涉及数据结构、算法等多方面计算机专业的知识[3-6],课程总体难度偏高,实践性强,对于广大学生来说难以掌握与精通。本文以测绘工程本科专业为例,结合笔者多年的教学经验,提出课程教学存在的问题,给出可行的课程改革方法,以期更好地达成培养高素质测绘工程师的要求目标。

一、课程教学存在的问题及原因分析

我校测绘程序设计课程已开设多年,授课时间安排在大三下半学期,是测绘本科必修课程。我校测绘程序设计的课程培养方案随着时间修订了多次,课程大纲也相应进行了多次修改。从当前结果来看,虽然课程在一定程度上提升了测绘工程专业学生的程序设计能力,但还是存在一些问题,具体问题总结如下。(一)内容多学时少内容多学时少,开课时间需调整。测绘程序设计课程的内容多且涉及面广,现阶段该课程理论和实验都为32学时,与教学内容相比还是略少。因前置课程众多,该课程安排的时间比较靠后,但矛盾的是大部分高校的编程基础课程都安排在大一学期[7]。因此,当课程开始的时候,除少数能坚持课外学习编程的学生,其余学生普遍存在基础不牢固、编程知识已遗忘等问题。(二)课程系统性差课程系统性差,课程内容不均衡。多数教师都是使用自己整理的教案来进行教学,课程暂时没有权威固定教材[8]。教案也因个人的专业背景,或偏理论,或偏实践,方向上也是测量、地信和遥感各有侧重,导致课程存在内容质量参差不齐、讲授顺序不合理等系统性问题。在课程内容上大多遵从前半部分讲编程基础,后半部分讲测绘程序的模式。这种模式比较单一,是否是最佳模式有待进一步讨论。(三)教学模式单一教学模式单一,学生主动性较差。课程教学安排通常是理论+实验的模式,此形式缺乏灵活性,容易产生断裂感,让学生产生不良的情绪。另外,一个班级只有部分学生对编程怀有兴趣,且能不断实践掌握测绘编程技术。而大部分学生编程基础较差,对编程有抵触心理,在课程学习中极易产生消极的情绪,影响学习效果。通过对已经完成课程学习的学生的调研,可知学生抵触心理产生的原因主要有两个方面:一方面是在编程初期容易出现类似错用符号、误解参数含义等不易发觉的小错误,使得程序编译报错或结果出错,大部分学生因此丧失学习编程的信心;另一方面是认为程序设计与己无关,在以后的工作生活中一定不会用到,这往往是部分学生在学习信心丧失后产生的自我心理安慰,但也有部分学生在课程开始前就有这种错误的认知。以上两方面问题产生的原因分别是编程基础不牢固和思想认识不到位。

二、课程教学改革方案

查看全文

计算机程序设计实践教改与革新思索

由于软件编程技术及方法的日新月异和社会对高校计算机相关专业学生的软件能力要求的不断提高,高校的程序设计类课程的门类越来越多,仅面向对象程序设计类课程就有VisualC++,VisualBasic,net编程,Java程序设计等。但长期的教学经验说明,当学生学习了一大堆编程语言后,解决实际问题的能力并没有明显提高,动手能力和创新能力不强,不能较快适应社会对软件开发人才的需求。鉴于此,从程序设计类课程实践教学计划的制定、实践教学质量保障、拓展实验实践教学时间和空间、实践教学项目设计与监督等方面提出一系列改革和创新的思路和方法。

1制定合理的编程类实践课程教学计划

实践教学大纲是实践课程开设质量的重要保证,同时,实践教学计划是整个教学计划的重要组成部分。在制定实践教学计划时,要充分考虑自己学校的特色、学生的实际情况和社会实际需求,以《中国计算机科学与技术学科教程2002(CCC2002)》和《高等学校计算机科学与技术专业实践教学体系与规范》等为指导,以对所培养学生的目标定位为归宿,制定和不断修订实践教学计划。制定系列化的编程类课程体系和编程类课程群[1-2],以Java程序设计实践课程的开设为例,可以分阶段开设,按完整的Java技术路线组织,如在低年级开设“JavaSE程序设计和应用”课程及其实践课程,在较高年级开设“JavaEE程序设计和应用”和“JavaME程序设计和应用”课程及其实践课程。这样,可以有效避免学生在学习了一门编程语言基础后,出现继续深入的困难和技术“断线”现象,如只学完了JavaSE部分的知识,不知道进一步的Java学习方向等[3]。目前,大多数院校开设的程序设计类课程是以专业选修课程的形式进行的,因此,指导学生有针对性地进行选课非常重要,如:学生选修了“Java程序设计”的先修课,在高年级时可以建议其去选修“JavaWeb编程”课程;若学生选修了“VB程序设计”的先修课,在高年级时可以建议其去选修“ASP(ASP.net)Web编程”课程等。在选课系统中增设关于每门课程的内容简介和授课教师的介绍,这样做有以下好处:一是在课程名称字面上就可以看出授课的重点,可以回避学生从一个笼统的“XX程序设计”名称上产生误会,认为这门课可以将该编程语言的所有技术都包含进去;二是通过课程内容简介,让学生更加透明地了解每门不同程序设计课程的授课重点,从而根据自己的知识需求和兴趣有目的地选择课程。所有代程序设计课程的教师共同参与,集思广益地制定实践教学计划。这样做,一方面可以保证实践教学计划的完整和系统,避免低层次的重复和课程冲突;另一方面,可以让教师从更高高度把握实践教学规划,而不仅是只关注自己所教授的那门编程课程。将实践教学系统地规划到理论教学、实验课、课程设计、学年和毕业设计以及创新实践等各个不同阶段和各部分中,逐步落实,如图1所示。

2以实际问题为出发点,以社会需求为归宿

为了切实培养学生发现问题、解决问题、实际动手、交流和表达、持续学习、适应和协调、组织能力等综合能力[4],需要从以下几个方面入手。

2.1实践项目的设计应以实际应用为背景

查看全文

信息技术与幼儿园科学课程的融合

摘要:信息技术与幼儿园科学课程相融合对幼儿发展“核心素养”有关键性意义,也为拓展幼儿园课程内容的方向,促进幼儿教师信息化专业发展起到助推作用。基于对园际差异及园所自主性的忽略,目前少儿编程、STEM教育理念、人工智能和3D打印技术为主的幼儿园信息化科学课程有待于开发新的融合途径。从信息筛选常识课、信息技术工具课、技术模拟实验课、技术实操常态课的新视角解读信息技术与幼儿园科学课程融合的新途径。

关键词:信息技术;幼儿园;科学课程;融合途径

《教育信息化2.0行动计划》施行以来,信息技术与教育教学深度融合已经成为当代教育领域最热门的话题,也是影响新生代未来生活、学习、工作质量的决定性因素之一。作为人类科学启蒙的幼儿园科学活动课程,其与信息化发展的时代轨迹是不可分割的,所以,研究信息技术与幼儿园科学课程的有效融合则成为幼教人新的努力方向。

一、信息技术与幼儿园科学课程相融合的重要意义

1.为发展幼儿“核心素养”奠定基础。2014年,教育部印发的《关于全面深化课程改革落实立德树人根本任务的意见》中明确提出,要发展各学段学生的核心素养体系,明确学生应当具备的适应适应终身发展和社会发展需要的必备品格和关键能力[1]。“核心素养”的基本内涵中包含培养学生的“科学素养”,这与幼儿园五大领域之一“科学领域”的要求不谋而合。事实上,除了“科学素养”以外,“核心素养”还包括“信息素养”“文化素养”“心理素养”等。综合当下信息环境的高速发展和覆盖,“核心素养”已经成为青少年儿童未来生活的基础公民素养。由此可见,在幼儿园的科学课程中,融合当代信息技术,让幼儿具备筛选、辨别、使用信息与技术的能力,扩充科学常识,拥有科学态度,才能更好的服务于幼儿的未来发展。2.为研发幼儿园课程内容拓展方向。幼儿园课程主要由五大领域,即语言、科学、健康、社会、艺术为设置基础,课程内容基本不脱离五大领域的范畴。在传统的幼儿园科学活动课程中,教师作为主导往往是带动幼儿观察、测量、实验或进行科学游戏等。但在信息化高速发展的当下,幼儿园不可避免的引入信息技术软件或硬件,这些设备从一定程度上改变了五大领域课程传统的学习方式,尤其在科学课程中更为明显。《3—6岁儿童学习与发展指南》中的科学领域要求幼儿“初步感知常用的科技产品与自己生活的关系,指导科技产品有利有弊。”[2]信息技术在科学课程中为幼儿呈现的世界是幼儿经验世界之外的,为幼儿对世界的探索兴趣打开了新的大门,也为科学课程提供了更多的教育内容和开发方向。3.促进教师专业能力发展。幼儿园科学课程与其他领域课程相比,其特殊性更加明显。科学课程要求教师具备基本的通识性知识、科学常识、文化常识和专业知识。由于信息化环境渗透在幼儿生活的各个方面,所以,幼儿在家中、幼儿园中、社会中所获取的信息量巨大,但自身的辨别能力有限,吸收标准更各不相同。这就要求教师作为统筹规划者,在科学课上,在一日生活中规范幼儿的科学价值观,吸收准确的科学知识,保有正确的科学态度。这一切的基础均源于教师自身专业能力的高度发展,所以,教师本身信息的择选能力和对技术的甄别与应用能力则成为教好幼儿的首要条件。这种源于工作发展需求的学习与训练,也将成为教师专业发展的源动力。4.有助于幼儿适应未来的学习与生活。幼儿园科学课程绝不是脱离生活本身的“科学研究”,而是和幼儿生活息息相关的“科学探索”。在扁平化的信息社会,人的沟通、学习、工作已经离不开信息技术。幼儿未来也将生活在信息群和技术流之中,小到生活缴费、买东西,大到工作便捷软件和科技产品的使用,均需要幼儿拥有不断探索、学习、使用、适应的能力。在幼儿园信息化科学课程中,不仅要让幼儿学会使用日常的科技产品,也要培养幼儿适应未来生活的信息观和技术观。在科学课程活动中,让幼儿对信息技术的发展拥有较为系统的认知、熟练操作的能力、创新发展的思维、科学实践的精神,来更好地适应未来的世界。

二、信息技术与幼儿园科学课程融合的现有途径

查看全文

软件工程设计教学改革研究

【摘要】针对用人单位对软件的人才需求,以软件工程专业模块化课程体系为研究对象,提出了面向对象程序设计课程体系及教学方法改革。研究如何将本专业其它课程融入其中,整合教学内容。根据不同的教学内容,探索灵活的教学方法,并提出实践教学方法的改革思想,以提高面向对象程序设计的教学质量。

【关键词】面向对象程序设计;Java;课程体系;教学改革

0引言

Java是新一代面向对象编程语言。由于它的优点在不断发展,现已成为目前使用最广泛和最卓越的的面向对象程序设计语言之一,从桌面办公的应用软件到企业级大型复杂的应用软件,再到小型移动设备的嵌入软件,因此此类人才的市场需求与日俱增,一方面人才需求缺口很大,一方面企业很难招聘到合格的Java软件工程师。其主要原因体现在以下几方面。(1)课程内容孤立:教学内容和其它课程知识点的缺乏融合、渗透。(2)教学方法单调:老师只是单纯讲授每节课的知识点。很难激发学生学习兴趣。(3)实践教学滞后:实践项目和实践教学方法滞后,没有完善的实践教学环节。(4)学习方法被动:学生听完教师讲完课,被动地根据实验项目做该节单元实验。本文结合多年的Java教学经验和教学过程中体会,以软件工程专业模块化课程体系为研究对象较,找出面向对象编程和其它课程模块的结合点整合Java教学内容,探索面向对象程序设计的新教学方法和教学手段的改革思想,引导学生自主学习意识,提升授课的效果。

1挖掘软件课程间的结合点,整合教学内容

在整合教学内容时,一方面以软件工程专业模块化课程体系为研究对象,探讨本专业各课程特点,挖掘Java与本专业其他课程教学内容的结合点,另一方面将新技术、新知识融入其中,注意保持与Java技术的发展同步。java教学内容可分为四部分:基础知识(Java语法、数组字符串、工具类)、面向对象(面向对象分析方法、面向对象设计方法、面向对象特征)基本编程技术(多线程技术、异常处理机制、Applet应用编程、图形用户界面设计、输入输处流)综合应用技术(网络编程、数据库编程、多媒体编程等),具体如图1所示。如讲解包、集合和工具类的使用时,可以集合数据结构的线性表、栈、队列、二叉树例子。讲解Java线程生命周期、线程同步、线程死锁时,以操作系统的进程管理为例。讲解String类的使用时,可重点讲解字符串的各种操作,为后续的编译原理中词法分析的实现打下基础。讲解Socket通信、web编程、JSP程序设计结合计算机网络TCP/IP协议等知识点,讲解JDBC时,结合数据库操作相关知识,讲解Java高级编程时,将软件工程、软件测试等相关课程融入其中,总之,整合课程内容时,将本专业相关课程的知识互相融合渗透,完善课程内容体系。

查看全文

计算机编程类网络课程构建探索

1网络课程概述

1.1网络课程的基本涵义教育部现代远程教育资源建设委员会在《现代远程教育资源建设技术规范》(2000)中提出:网络课程就是通过网络表现的某门学科的教学内容及实施的教学活动的总和J。从这个定义看出,网络课程包括两个组成部分:即按一定的教学目标、教学策略组织起来的教学内容及网络教学支撑环境或网络教学平台。其中,教学内容是以提供教学资源为主,网络教学平台是以提供网络教学交流环境和学习工具为主,都是网络课程构建的重点和难点J。

1.2编程类网络课程特点

不同类型的课程本身具有不同的特点,这是开发网络课程时必须考虑的。通过研究计算机编程类课程,我们认为,编程类网络课程具有以下特点:①编程本身是一种技能,应该引导学生快速入门,掌握编程的基本过程;②上机实验操作很重要;③可以导入编程案例引导教学,不断让学生掌握从简单到复杂的案例;④需要随时介绍一些计算机程序编制的技巧;⑤有国家及省级等考试大纲和考题作为部分学习指引;⑥因为编程用到大量的英文单词,所以能够以英语单词作为关键词制作索引;⑦网上资源丰富、学习网站较多,可以向学生推荐j。

2编程类网络课程结构构建

网络课程的结构存在共性,其构建应该符合网络课程的自身特征,同时不同的网络课程的结构根据其特征又有所不同。由于参加网络学习的学生一般都是以自主学习为主,因此该网络课程的构建是以建构主义学习理论为指导,创设了以学生自主学习为主、以协作学习为辅的学习情境。在该网络课程的构建中,我们根据编程类的网络课程的特点,合理编排课程结构,为学生的学习提供了各种学习支持以及文本、视频、音频等多媒体学习资源以供学生学习与参考。在“在线测试与自动评判”模块的设计中,运用了自我反馈策略,对学生的学习情况进行评价并自动反馈评价结果。

查看全文

Java语言程序设计教学论文

摘要:针对Java语言教学中遇到的问题,如何更好地结合该课程的特点,在教学中充分调动学生的积极性,以案例制作来帮助学生理解抽象的理论知识,培养编程能力是亟待研究和解决的问题。本文主要结合作者在Java语言程序设计中的教学实践,介绍案例教学的应用与实施方法。

关键词:Java语言;案例教学;编程能力

随着Internet的迅速发展,Java作为一种面向对象的高级语言得到了越来越广泛的应用。它既具有一般程序设计语言所具有的安全性、多线程等特点,同时又具有独特的平台无关性的优势。为了适应社会的发展,培养更符合市场需求的计算机专业人才,很多高校都陆续开设了Java语言的相关课程。但是在传统的Java语言教学过程中,课堂一般以教师为主导,首先按照教材章节顺序向学生灌输一个个抽象的概念、语法和算法,然后再去布置相关的实践任务让学生在机房实践操作。这种先理论后实践、理论和实践完全割裂的教学方式忽视了学生的互动参与,导致课堂乏味,学生学习兴趣下降,教学内容单纯倚重课堂讲授,学生实训操作练习很少,而且学与做相脱离,不利于学生理解消化课程知识和锻炼编程能力,难以取得理想的教学效果。针对这些问题,教师可以在该课程的教学中引入案例教学,以书本知识点为基础,以案例为依托,使学生在制作案例的过程中逐渐理解Java基本理论知识,在理解理论知识后不断提高Java语言的编程能力[1]。

一、案例教学法的实施意义

案例教学法由美国哈佛商学院提出,通过在课堂教学中由教师围绕案例组织教学,将学生引入特定的情境之中,启发学生分析案例,探讨案例解决方案,实现课堂师生的双向互动和学生学习效果的及时反馈,激发学生学习的积极性,提高教学效果。在Java语言程序设计课程教学中应用案例教学法就是通过实施一个完整的Java案例来组织教学活动,用典型案例把理论知识与实践教学有机地结合起来,把理论知识融入到案例制作之中。教师通过案例实施完成教学过程,学生通过案例制作掌握Java的语言知识和编程技巧,使教学做有机融合,提高该课程的教学效果。与传统教学方式相比,案例教学方法更能充分发掘学生的创造潜能,培养学生学习Java语言的兴趣,提高学生解决实际问题的综合能力[2]。在Java语言程序设计教学中实施案例教学,教学过程通过教学案例的实施过程来开展,通过“提出案例目标--分析案例任务--实施案例--边学边做--总结反馈”的环节分解每个知识点,充分体现学中做、做中学的教学理念,展现互动创新、注重应用、共同协作的教学风格。

二、Java语言程序设计案例教学的实施

查看全文

数控车床编程项目教学法论文

1项目教学法与传统教学方法的区别

首先,在传统的教学中,主要的教学目标就是为了传授知识和技能,而在项目教学法中,是培养学生能够解决问题的能力和学习知识能力。其次,教学形式的不同,传统的教学方法都是以教师为主体,教师一直在讲,而学生为只是负责听,项目教学法是在教师的指导之下,学生进行主动的学习。第三,交流方式的不同,传统的教学方法,学生都是处于被动的位置,而项目教学法是通过分组,学生在一起讨论,和教师一起互动。第四,参与程度,传统的教学方法,学生都是按照教师的指挥来学习,而项目教学法学生可以按照自己的兴趣来进行选择。第五,教学中的特色不一样,传统的教学方法,教师对课堂内容的补充,教师来发现学生的不足之处,而项目教学法教师结合学生各自的优点,来不断的开展教学活动。

2项目教学法在数控车床编程中的应用

2.1对项目进行确定

首先需要对项目进行确定,了解项目中的任务。项目中的任务也需要合理的计划,这是实施项目教学的首要前提,在项目确定的时候有几个因素需要考虑:第一,在项目进行选择的时候要按照教学中的内容,结合教学大纲中的要求,将教学大纲中的知识和每一个项目结合在一起,还需要一定的想象空间,这样不仅能够提高学生学习知识的能力,还能培养学生的创新能力。其次,根据学生的学习水平、学习层次来制定项目的难易程度,来提高学生的学习兴趣,每一个项目都尽量能让学生接受。最后,设定的项目要有一定的实用价值,例如:在在数控车床编程中可以选用一些小酒杯来作为项目中的教学,分析小酒杯中的零件图纸,通过图纸上的尺寸要求,来对尺寸进行控制并进行加工。

2.2制定相应的计划

查看全文

启发式程序设计实训探索与实践

随着以工业互联网为代表的“第四次工业革命”的到来,以及“新工科”概念的提出,国家对工科学生的创新实践能力的培养提出了新的要求[1-2]。对于软件工程专业的学生而言,利用编程语言编写软件程序来解决实际问题是必须掌握的一项基本能力,然而在学生学习编程的过程中,依然存在着重理论轻实践的现象。首先,目前的教材多偏向于理论讲解且缺乏导向性[3],绝大多数教材中的示例比较乏味,而且脱离实际,以至学生不愿意主动去动手实践。其次,课堂教学受场地、设备等限制,往往只能采取讲授式教学。这种教学方法不能有效调动学生的学习积极性,导致学生能理解理论知识,但是实践能力还是没有得到锻炼[4]。最后,学生为了取得高绩点,主观上更愿意将精力放在理论的记忆和理解,而忽略了实际编程能力的训练,导致许多学生考试能得高分,却仍然不会编写程序。针对以上问题,一些教师将项目案例引入程序设计的教学过程中,对激发学生编程兴趣起到了促进作用[5-6],但是这些方法只是对课堂教学的一种补充。为了进一步提高学生的编程实践能力,越来越多的高校将程序设计实训作为一个独立的实践环节加入培养方案中。重庆大学软件工程专业将程序设计实训作为大一年级的专业必修课,作为实践教学体系中重要的一环[7]。

1程序设计实训实施现状分析

1.1程序设计实训的目标。学生在进行实训之前已经初步掌握了面向对象的程序设计思想以及基本的编程理论知识,通过实训,学生需要达到以下目标。(1)学生应理解面向对象程序设计的基本知识,掌握面向对象分析问题的基本方法。(2)学生应该具有运用一种主流程序开发环境(如MicrosoftVisualStudio),将面向对象分析简单问题并将其转化成C++语言代码的能力以及跟踪调试程序错误的能力。(3)学生应具备运用面向对象的思想分析实际问题,并将其进行编程实现的能力。1.2程序设计实训中存在的问题。(1)学生习惯了课堂教学中,教师讲授为主的授课方式,在实践环节中往往表现出主动性不强,过于依赖老师的指导。(2)学生缺乏将实际问题转换成代码的能力,同时也缺乏调试代码和独立解决程序错误的能力。(3)对学生的实训结果评价方式单一,导致学生又回到了以成绩为目的的应试思维模式,使得学生对实践能力的培养失去信心[8]。1.3问题的原因分析(1)学生第一次接触实践类课程,还不适应新的教学内容和教学环境,过于依赖老师的指导[9]。因此,教学方式一旦由老师教授,变为独立开发,就感到无所适从。(2)实训所涉及的项目除了需要用到面向对象程序设计的知识,还需要用到图形编程,网络通信以及数据库等知识。而这些知识并没有在大一的时候学习,因此对部分学习能力较差的学生造成了障碍。(3)学生还保留着高中时期的应试教育的学习习惯,还以考试为目的来学习。对于实训的认识不足,还是以分数为导向,忽略了自身实践能力的培养。

2项目驱动的启发式程序设计实训方法

2.1设计以兴趣激发为目的的实训项目案例。实训项目作为程序设计实训的重要依托,既需要涵盖一定范围的编程知识,又需要激发学生的兴趣。根据程序设计实训的课程目标,结合工程实践的特点,按每个人独立完成一个项目的要求,保证每位学生具有一定量的代码编写量;项目类型以基本单机应用、图形化界面等方面为主。结合学生基础和具体课程安排,拟定实训项目供学生选择。实施的时候将根据学生的测评成绩、兴趣方向等进行选择。表1中列出了部分实训项目案例。这些案例都是根据真实软件项目经过简化后的仿真项目。可以让学生真切地感受到从无到有的软件创造过程,将看不见摸不着的理论学习,变成可以得到实实在在成果的软件项目,从而让学生获得较大的成就感和自信心。2.2采用结合线上多媒体知识补强和线下项目实践的实训方案。为了有效对实训中涉及的知识进行补强,将程序设计实训分为2个阶段:线上知识补强阶段与线下项目实践阶段。2.2.1线上知识补强阶段。在进行实际的项目实训之前,利用网络资源,包括PPT课件、课程视频、慕课等多媒体技术,提前学习实训中所需要的知识。通过一个小课题的实践,结合理论知识的讲解,快速掌握项目开发必备的知识和技能。知识补强以边学边做的形式,避免学习的枯燥,提高学习兴趣和效果。同时,小课题的练习将极大地提升学生的学习信心,对后面的项目实践起到较好的示范作用。从而有效弥补学生实际能力与实训任务之间的鸿沟。2.2.2线下项目实践阶段。在此阶段学生将通过9天的线下项目实践,完成自己所选项目的任务。在实施过程中,通过以下步骤对学生的实训过程进行有效推进和管理。(1)学生根据自己的兴趣自由选择项目。(2)结合项目阶段需求进行重点和难点的理论讲授,同时结合项目进行练习,边学边练、学以致用,减少纯理论授课的枯燥感觉。(3)按照软件能力成熟度集成模型(CapabilityMaturityModelIntegration,CMMI),开展软件工程实践。学生将结合软件工程的理论知识和CMMI项目管理流程,逐步加强系统分析和设计建模能力,完成从项目启动到最后验收交付的全过程。(4)使用任务管理工具,明确个人的项目任务。在任务管理工具中记录任务完成情况,并以任务完成情况作为个人的考核。(5)通过网络提供有关的课件、视频、知识库等资源,使学生可以通过这些渠道学习、温习课程内容,加强对技术的掌握,加深对项目的理解。(6)通过现场指导老师每天的任务检查跟踪,查看学生日志,及时发现存在的问题并予以解决。通过阶段性评审和总结,使学到的知识和技术得到巩固。2.3建立多维度的程序设计实训的评价方法。鉴于程序设计实训的特点,需要改变单一评价方法。通过建立一种多维度的案例教学评价方法,打破学生一直以来的应试思维。该评价方法主要由过程监督及项目评价两个部分组成。1)过程监督。过程监督主要由出勤情况、日报制度、项目总结3方面组成。(1)出勤情况。实训的地点由学院统一安排,学生每天需要准时到达实训教室。学生的出勤情况直接反映出学生的学习状态,对于经常迟到、早退以及缺勤的学生及时纠正,并将出勤情况计入最终成绩。(2)日报制度。让学生每天将实训的进展情况形成日报的形式,总结当天的进展及存在的问题,制定第二天的计划安排,从日报中发现学生的总体进展情况。(3)项目总结。学生在项目完成后,需进行项目总结,评估实训成果,并以此收集学生反馈意见。2)项目评价。在完成了整个实训后,通过项目验收,完成项目交付。项目验收包括对代码规模、功能实现、文档质量等方面的验收。验收的结果与考核密切相关。对学生的项目主要从如下10个维度进行评价。功能:功能完整、准确,符合应用需求;界面:界面设计美观,符合规范;技术:应用最新技术,技术难度高;创新:是否有创新点;演示效果:讲解清晰、演示流畅、重点突出;文档:符合规范,主要是需求、设计、用户手册等文档;规模:代码数量、数据库记录数量;易用性:软件易于理解、学习和使用,如完善的表单验证等;可靠性:出错率低、容错性强、易于恢复;可维护性:可适应不同场景进行灵活设置,易于识别错误和改正等。

3项目驱动的启发式程序设计实训实施效果

查看全文

大学生实践编程能力数字化培养模式

[摘要]计算机类大学生实践编程能力培养中存在教学模式单一、编程兴趣不高、项目训练不足和毕设质量不高等问题,教师应运用现代化的信息手段优化传统的人才培养模式,通过教学理论与教学实践相结合的研究方法,构建面向实践编程能力培养的数字化培养模式,这样可以改善对学生实践编程能力的培养模式。该模式具体由四个方面构成:通过数字化翻转实验教学增加学生的编程训练量,用数字化赛题训练激发学生的编程积极性,以校企深度合作夯实项目实训,以数字化毕业设计提高毕设质量。运用该模式进行人才培养的实践表明,该模式可以激发学生的编程积极性,增加编程训练量,提高学生的实践编程能力。

[关键词]实践编程能力;数字化培养模式;实践能力培养

随着现代信息技术和媒介的快速发展与普及,信息技术与高等教育的结合越来越密切,高等教育的人才培养模式也正在向数字化培养模式转变。利用现代化的信息手段优化传统的人才培养模式,是解决高等教育人才培养问题的一种途径。《教育信息化2.0行动计划》指出要加快教育现代化,强化以能力为先的人才培养理念,支撑和引领教育现代化的发展。高等教育要把大学生的能力培养作为目标,使大学生成为符合国家现代化建设需求的人才。

一、实践编程能力培养中的问题

实践编程能力是高校计算机类大学生的核心能力,培养他们的实践编程能力是提升他们的就业质量和工作能力的重要内容。然而在传统的培养模式中,实践教学环节薄弱,学生的动手机会较少,实践编程能力很弱。我们发现实践编程能力培养中存在以下问题:首先是教学模式单一。传统的实验教学以教师为主体,学生只能被动接受知识。实验教学中教师讲解的时间太多,导致学生没有充足的时间进行实验操作。其次是学生编程兴趣不高。传统实验教学中的很多编程题目都脱离实际,枯燥乏味,学生容易产生倦怠感,对编程的热情不高。再次是项目训练不足。综合类项目训练很少,项目实训的学时也不足,导致学生对项目类的编程不懂如何下手,存在畏惧心理,项目编程能力弱。最后是毕业设计质量不高。传统的毕业设计存在题目偏易、抄袭现象严重、师生互动不足、过程无法监控等问题,低水平的毕设影响了学生编程能力的培养。针对以上问题,我们以数字化培养模式为抓手,探索面向计算机类大学生实践编程能力培养的数字化模式,以达到提高计算机类大学生实践编程能力培养效果的目的。

二、数字化培养模式的研究框架

查看全文