收藏 分销(赏)

改革主观题的评判方法使程序设计回归真.doc

上传人:xrp****65 文档编号:7034736 上传时间:2024-12-25 格式:DOC 页数:19 大小:376KB
下载 相关 举报
改革主观题的评判方法使程序设计回归真.doc_第1页
第1页 / 共19页
改革主观题的评判方法使程序设计回归真.doc_第2页
第2页 / 共19页
点击查看更多>>
资源描述
改革主观题的评判方法,使程序设计回归真实 摘要:程序设计中的主观题自动评判历来是一个难题,我们提出了一个全新的程序设计主观题自动评判方案,并完成了系统的设计开发。本文则较为详细地给出了改革的主导思想、系统的功能和使用效果。<br>  关键词<br>本文来自:计算机毕业网 :程序设计;主观题;自动评判;测试用例<br>       <br>  1问题的提出<br>  <br>  程序设计如同作文一样,是主观性很强的训练,哪怕是同一个题目,不同的人、不同的方法,使得程序的质量和效率都完全不同。正是由于这一点,教师需要对每个学生的程序细节逐一评判,才能真正了解学生掌握的程度。而面对越来越多的学生和高负荷的工作,教师要做到完全细致的人工评判和对学生的个别指导是很困难的。所以长期以来,各种考试中的这种主观题也沿用无纸化考试的一般方式,即A、B、C、D选择题,或者挖个洞叫“填空”的填空题。例如国外知名度较高的程序员考试,国内的全国计算机等级考试也不例外。这对程序设计来说,无异于竞猜游戏,对学生学习程序设计,特别对培养学生编程能力带来了极大的障碍。而这种障碍迟迟不能解决的主要原因是主观题的评判机理问题,就如同学生的作文不能让机器判分一样。<br>  自1999年起,我们以C语言程序设计课程为龙头开始建设教学支撑平台,围绕主观编程题的评判方法进行了深入的调研和研究,于2003年建立了C语言程序设计课程网络教室和课程网站,在此基础上,引进了国外的先进系统,采用了网络技术、数据库技术、面向对象技术和分布式技术支持,完成了在全真环境下对主观编程题进行自动评测的系统开发,并先后开发了网上考试系统、辅导答疑系统及其它辅助教学软件,对教学和测评是强有力的支持,加强了对学生能力的培养,提高了教学质量。<br>  <br>  2主观题自动评判方法<br>  <br>  所谓自动评判,就是要让学生提交的程序经过语言处理系统的编译器进行实际编译运行,将其结果返回到课程评测系统中,其流程如图1所示。<br>  其中的核心部分是自动测评系统,它完成的主要功能是接收源程序,在实际编译环境下按预先设置好的测试用例进行测试评判,并提交到远程环境进行相似性比对,最后将所有结果进行统计分析。<br>  <br>  3自动评测系统的设计与实现<br>  <br>  3.1自动评测功能设计<br>  在技术方面,我们首先引进了被国际上许多高校采用的、开源的moodle系统作为教学辅助管理系统,该系统具有支持多种教学资源管理、方便师生交流等功能。在此基础上,我们借鉴了ACM国际大学生程序设计竞赛中采用的程序测试方法,自行开发完成了针对C语言主观编程题进行自动测试的功能,实现了对学生提交的程序按事先设计好的测试用例逐一由系统完全自动编译并投入运行,自动进行运行结果统计分析。<br>  图2是学生看到的题目及测试用例。其中包括题干、教师设计的公开测试用例(程序的输入和预计的输出)、题目进程控制(开启时间、折扣时间和关闭时间)、题目分数(正常得分和折扣比例)等信息。其中的测试用例是保证程序设计质量的有效措施,教师可以通过设计适当的测试用例全面测试学生程序,提高和锻炼学生的编程能力。可以为每一道题设计多个公开的或保密的测试用例,例如对于题目7-3而言,不仅需要学生调试出程序的结果,而且需要通过题目设定的1个公开的测试用例和2个保密的测试用例。系统将按照测试用例的执行情况评价程序并给出成绩。<br>  <br>  图3是学生提交程序的界面。提交的程序是学生在本地的开发平台自己调试通过的源程序。通过“提交”窗口,系统在后台对学生的程序进行自动编译,对每个测试用例进行实际运行,然后将评判结果即时返回学生。<br>  <br>  为了对学生学习过程实施有效监控,我们将美国斯坦福大学强大的实时程序比对功能嵌入到该系统中,通过相似度分析控制学生的编程质量。图4是学生看到的测试结果。<br>  <br>  通过自主进行的二次开发工作,成功实现了对主观编程在真实的环境下进行自动评判。这样彻底改变了以往在静态环境下“编写”动态程序设计的局面,使学生真正得到了实际操作的训练,通过即时评价,激发了学生的兴趣。<br>  3.2自动统计功能设计<br>  图5界面是教师看到的每一题目学生完成的总体情况,图6是教师看到的每个学生的每个测试用例通过的情况。通过这个系统,扩展了教学空间,强化了教学过程监控,方便了师生交流互动。<br>  任课教师可以通过这个系统看到学生平时作业和上机练习,控制学生的学习进度,及时发现学生存在的问题。学生的全部作业和上机答案均通过课程支撑平台提交,任课教师也可以通过课程支撑平台为每一道题目设置作业的最后提交时间,以便控制课堂教学整体进度。同时,在教学过程中,教师通过“网络考试系统”定期公布各章小测验题目,要求学生通过网络进行自测,根据自测结果自己调整学习方法和学习进度。教师通过学生的自测情况掌握全校学生的学习情况,分析学生学习过程中的难点。 <br>  <br>  <br>  4结束语<br>  <br>  借助于先进的技术支撑,针对主观题的评判测评问题所研发的测评系统,解决了长久以来程序设计课程的测试评价难题。应用这种测评方式,加强了对学生学习过程的有效管理,也为学生提供了全真的学习和评判的环境,有利于能力培养。这套系统还有许多不完善之处,希望得到同行专家的批评指正。 <br>  <br>  参考文献:<br>本文出自: 计算机毕业网<br>  [1] 中国高等院校计算机基础教学改革课题研究组. 中国高等院校计算机基础教学课程体系[M]. 北京:清华大学出版社,2006.<br>  [2] 教育部高等学校计算机科学与技术教学指导委员会. 关于进一步加强高等学校计算机基础教学的意见(试行)[M]. 北京:高等教育出版社,2006.<br> </p> <p> </p> <p> </p> <P>程序员如何“突围”</P>向阳生涯的个人咨询客户数据显示,近50%的个人客户为工作年限在3年以内的职场人。虽然他们来自不同行业、不同职位,但遇到的问题却有相似之处——长期在一线岗位上工作,要晋升却找不到突破口,考虑跳槽、转行但不确定因素太多……这些问题其实是职业生涯探索阶段的常见病。 <BR>   <BR>  进入IT行业是众多年轻人的职业梦想。然而,一旦身入其中,几年下来后却发觉头顶的光环渐渐散去,职业梦想似乎也不再有当初想象中那么美好。被称为IT蓝领的程序员,工作强度大,整天面对机器感觉自己也像个编码机器,而且信息技术更新换代快,“饭碗”看上去也不是那么稳定。 <BR>  近日,向阳生涯职业咨询机构就接待了一位名叫Jacky的IT公司的程序员。大学时代的Jacky,有近2/3的时间是在校园的机房里度过的。那时的他疯狂地对电脑编程着上了迷。毕业前,Jacky早早地被一家IT公司“锁定”,担任程序员。进了公司后,Jacky拥有火一般的热情,参与了公司很多项目,深得上司欢心。公司的器重,再加上个人的良好表现,Jacky的薪水比以前的同学多了一倍。一晃两年多过去,Jacky在公司里的地位看似稳定,但他自己却越来越感到困惑: <BR>  首先,程序员的工作强度很大,Jacky一直在超负荷运转,工作状态就一个字——累。由于IT行业的特殊性,他还必须不断地更新知识;其次,现在的IT业不比以往,面对大量涌入的职场新人,IT程序员的竞争相当激烈;此外,在金融危机的影响下,Jacky的工资已经很长时间没有涨过,和其他同学相比,他的工资也不再有那种领先优势;还有一点让他感到非常不安,他感觉自己的竞争力在缩水,不知道下一步职业发展去向何方。 <BR>  针对程序员Jacky的困惑,顶级就业力专家、向阳生涯资深职业规划师闫岭认为,Jacky的处境代表了IT行业中程序员群体的问题。向阳生涯的研究发现,近年来,IT人才市场从业人员的整体年龄趋于年轻化,25岁以下的择业者占求职人数的70%左右。年轻人才给市场注入了活力,也使得IT行业的竞争更加白热化——人才流动性很大,岗位相对不稳定;更关键的是,如果在职业生涯最初的3至5年内得不到晋升或转型,随着年龄的增长,程序员很容易因为长期的高强度工作而产生职业倦怠,并且在技术更新的大潮中面临竞争力衰退的残酷事实。 <BR>  为此,闫岭建议,像Jacky一样陷入职业发展困境中的IT程序员应当重新评估自己的职业兴趣、能力及性格,立足个人核心竞争力,积极寻求新的职业发展方向,实现职业生涯发展的“突围”。具体来说,程序员的转型策略可以从以下三大方向寻求职业“突围”。 <BR>   <BR>  方向一:向IT培训师突围 <BR>  如今,IT培训市场蛋糕相当大,利润空间可观,行业发展前景看好。科班出身且拥有丰富编程实战经验的IT程序员可朝培训师方向转型。一开始,可以在IT公司内部担任培训工作,积累转型的能力,为将来到IT专业培训机构担任老师奠定基础。与程序员岗位相比,IT培训师的工作压力相对比较适中,且比较稳定,无明显的年龄限制,值得程序员视其为长远发展的目标。 <BR>  但这一转型也要综合考虑自身的优劣势。以上文中谈到的程序员Jacky为例,他的优势是拥有丰富的编程、项目经验,曾参与过许多成功案例,而他的不足是缺少培训工作经验。因此,Jacky如果要向培训师转型,还需要接受一些专业训练,提高培训师所需的职业技能。 <BR>   <BR>  方向二:向IT营销人员转型 <BR>  IT与其他行业不同,由于技术性较强,营销人员一般也须有较强的技术背景。互联网公司、电子商务公司和软件公司目前都需要有技术背景的营销人员。另外,电子商务的火爆,使得传统企业开始重视电子商务营销,也需要有技术背景的营销人员。这类工作薪水不低,加上提成应该可以拿到高于一般程序员的薪水,同时也相对比较稳定。 <BR>  以Jacky为例,他的优势是广泛涉猎了各种编程软件和工具,对IT行业也有相对深入的了解,为他转向营销提供了较宽厚的平台。与此同时,Jacky面临的挑战是:过去的工作主要是跟机器打交道,而营销工作恰恰需要跟人打交道,这对Jacky来说是一个很大的挑战。因此,Jacky需要加强沟通与人际交往的能力。此外,最好进一步通过测评和专家深度挖掘和分析,来确认Jacky是否具备营销人员的特质。 <BR>   <BR>  方向三:向项目管理挑战 <BR>  如果说前面两条出路转型的不确定因素比较多,那么项目管理可以说是Jacky更便捷的发展之路。软件项目经理是目前人才市场上炙手可热的人才,有丰富经验、外语好的软件项目经理最是抢手。根据向阳生涯管理研究中心的数据显示,在不少大型IT企业中,软件项目主管的薪水是同层次主管中最高的,年薪平均达15万元。不仅如此,优秀的项目经理在组织内朝高层管理人员发展的空间也很大。 <BR>  对Jacky这样有技术、有能力、参与过多个软件开发项目的人,对项目管理也并不陌生。这是Jacky向项目管理方向发展的优势。但是,Jacky虽然以往参与过不少项目的开发,不过一直是项目团队里普通的一分子,没担任过项目主管。而通常企业在招聘项目经理时,都要求有带领团队进行项目开发的经验,这是他的劣势。因此,Jacky需要参加项目管理方面的专业培训课程,增长自己在流程管理、沟通协调等方面的能力,积累资本,逐步向项目管理岗位迈进。 <BR>  向阳生涯职业咨询机构提醒大家,通常情况下,职业发展不可能一步到位,大部分成功的职业经历都是在一次次理性的择业决策中实现的。所谓理性,首先要有明确的职业目标,之后每一次跳槽、转型、充电都是在向着职业的终极目标一步一步迈进。这样的职业发展才能事半功倍。向阳生涯衷心希望,各位IT业迷茫的“Jacky”能够尽快定位自己的职业目标,早做打算。 <BR> <P>&nbsp;</P> </p> 摘要:我院基于“做中学”的教学理念,以项目为载体,研究“面向对象程序设计”和“数据结构”课程的有机结合。本文介绍了我院的改革方案及实施效果。<br>  关键词<br>本文来自:计算机毕业网 :课程融合;做中学;项目驱动<br>       <br>  1引言<br>  <br>  “面向对象程序设计”和“数据结构”是信息学科相关专业本科生的必修课程,也是专业基础课程。“面向对象程序设 计”课程通过全面、系统地介绍面向对象程序设计的基本概念、分析方法、设计方法、基本语法和编程方法,使学生能深刻理解和领会面向对象程序设计的特点和风格,类的封装性、继承性和多态性与程序的安全性、结构性和灵活多样性之间的关系,进而掌握面向对象的程序设计方法和编程基础,并具备解决一般程序设计问题的能力;“数据结构”课程有助于学生更有效地组织数据、设计高效的算法、完成高质量的程序以满足错综复杂的实际需要,强调数据的组织方式和解决问题的思想。<br>  在实际的教学过程中,学生对这两门课程的掌握和运用不尽人意。一方面,相当部分学生虽然学过了“面向对象程序设计语言”课程,但在“数据结构”课程中却难以利用面向对象的思想设计和实现相关的数据结构和算法,影响了学生对数据结构课程知识的掌握;另一方面,数据结构和算法是 计算机科学的核心问题,很多学生在学习的过程中没有意识到这一点,以至于到了实际项目中不知道运用所学的“数据结构”知识来解决实际问题。<br>  <br>  2问题分析<br>  <br>  “面向对象程序设计”和“数据结构”课程作为非常重要的专业基础课,各高校在课时分配和课程建设方面都非常重视,出现上述问题的原因主要是课程设置和教学方式上存在问题。<br>  在现代教学体系中,从抽象数据类型和面向对象观点来讨论数据结构已经成为一种主流,使得“面向对象程序设计”和“数据结构”两门课程构成了强相关的课程。但在当前的实际教学中,这两门课程被一直被设定为相互独立的课程,课程间的教学出现了相互脱节现象,而且这种<br>   <br>  现象在许多高校的教学中普遍存在。<br>  在实践环节上,由于课程设置上的相对独立,也使得两门课程在实践教学方面有相当的重复,虽然总体的实践教学学时很多,但各自侧重点在实践教学中没有有效地体现,使得学生“事倍功半”,收效甚微。课程中实验项目过于单一和相对独立,也使得实践环节与实际项目联系过于松散,学生运用所学知识解决实际问题的能力和实际工程能力很难得到锻炼,也难以培养软件开发中所必须的团队合作精神。<br>  <br>  3课程改革方案及实施<br>  <br>  针对目前“面向对象程序设计”和“数据结构”这两门课程教学中存在的问题,我们将这两门课程进行有机结合,探索采用教师指导下的以项目为驱动的“做中学”教学方式进行教学。精心设计项目,将面向对象的设计思想、程序设计语言和数据结构课程教学内容恰当地融入到所设计的项目当中,有效整合两门课程中的重叠部分,突出各自的侧重点。面向对象程序设计教学采用“做中学”(Learning By Doing)以及“按需教学”(Teaching On Demand)的方式进行教学,使学生在具体项目过程当中在掌握和熟练运用高级语言的特征的同时,深入理解和巩固相应的数据结构知识;教学采用的项目与实际项目接轨,提高学生利用所学知识解决实际问题的能力;在教学过程中以项目组的方式组织学生,培养学生的团队合作精神,提高学生的职业素养。<br>  3.1课程项目<br>  为了有效整合这两门基础课,我们精心设计了“Mini数据库”项目,该项目较好地包含了“数据结构”中线性表、字符串、二叉树、索引、查找、排序、文件等章节的主要内容。通过该项目实现了“数据结构”和“面向对象程序设计”课程内容的有机融合。<br>  Mini数据库分为三个模块:基本数据模块,数据库内核模块,数据库管理界面模块。其中,数据库管理界面模块呈现数据库管理的总界面风格及形式,在项目具体实施过程当中,这一块不作太多要求以免转移项目重点,学生可以只完成控制台形式界面。<br>  基本数据库模块定义基本数据结构,采用哈希表和二叉树结构,负责读出业务数据的存储,包括对最基本数据的查询,删除,修改和添加等操作。其结构如图1所示。其中Index类创建索引,Matrix类以顺序表形式存放所有数据,并且该类的设计融入了可利用空间表、模拟指针等思想,对学生在数据结构设计方面有较大的启发作用。<br>  <br>  数据库内核模块(如图2所示)主要负责对文件中数据进行读写操作,实现定义表及表的属性,设置主键和外键,定义表之间的关联以及实现表的更改等功能。<br>  <br>  Mini数据库项目所涉及到的数据结构基本上基于本科教材中介绍的常用数据结构,部分数据结构在课本的基础上稍做修改便可用于该项目,部分需要对教材所介绍的相应数据结构进行重新设计以适于项目。每一个数据结构都有其相关的代价和效益权衡,要完成项目,学生需要对多种数据结构的有效性进行评估来决定在什么情况下需要采取哪种数据结构。通过该项目我们希望达到三个目的:<br>  (1) 使学生熟悉一些常用的数据结构,这些常用的数据结构形成了一个程序员的基本数据结构工具箱,对于实际中的很多问题,工具箱里的数据结构便是理想的选择;<br>  (2) 引入“权衡(tradeoff)“的概念,在项目中通过分析不同数据结构的代价和效益来讨论“权衡”的概念;<br>  (3) 评估数据结构或算法的有效性,在项目过程中引导学生分析工具箱中哪一种数据结构最适合解决项目中的某一问题,这种技术也使得程序员能够判断自己或别人发明的新数据结构的价值。<br>  3.2教学方式及实践<br>  Mini数据库系统在难度和复杂度上较传统实验高,如何引导学生在学习“数据结构”课程的同时完成该项目是一个值得研究的问题。我们的做法是:首先在教师指导下让学生全面了解所要完成项目的整体结构,在学习“数据结构”课程的过程中结合所学知识逐步完成系统的各个模块,最终完成整个项目。<br>  我们采用集课堂理论教学、开放实验、每周讨论、网上答疑等多环节组成的立体化教学方式进行教学。<br>  在课堂理论教学部分,根据所设计的项目我们对教学内容进行适当调整,强调所学内容在项目中的应用。完成相关理论知识的讲授后,指导学生如何运用所学知识解决课程项目中的问题,并且理论教学中部分内容采取“做中教”方式进行,教师在现场编写程序完成教学任务,帮助学生克服“编程难”的心理阴影,培养学生分析问题和解决问题的能力以及养成良好的编程风格,该方法深受学生欢迎。<br>  实验上机部分,学生以项目组的形式进行组织,3~4名同学为一组,共同完成课程项目,培养他们的团队合作能力。为了防止项目组中个别动手能力弱的学生不参与或少参与课程项目的设计与实现工作,在课程项目进行的同时,我们布置了相应的课程实验,课程实验与教学内容直接相关,并且对课程的项目有直接帮助作用,每一个学生都要单独完成课程实验内容。为了给学生提供良好的实验环境,我们采取开放实验形式,为学生提供了专门实验室。指导教师以office hour的形式解答学生问题,并且每个班配备了一名指导教师和一名助教。<br>  为了克服简单的“说教”型教学,每一周由指导教师或助教召集开展“每周讨论”活动,学生以自愿方式参与“每周讨论”。“每周讨论”以学生为主体,由学生讲解他们所设计的代码以及所遇到的问题,特别鼓励学生将上一周在课程项目或课程实验中所遇到的问题提出来,由参与学生一起讨论问题的解决办法。为了鼓励学生积极参与 “每周讨论”活动,我们对积极参与讨论和提出问题的学生在平时成绩上予以体现,下一步我们将考虑对由学生评选“每周讨论”活动积极分子,并给与奖励。<br>  课程网站是课程教学的有机组成部分,我们逐步建立了相对完善的课程网站。课程网站在为学生提供课程资源、发布课程项目和实验任务的同时,为学生提供了网络交流平台。在“学习交流”板块中,学生可以提出学习中遇到的问题,回答其他学生的提问。为了及时解决学生的提问,我们安排了教师和助教进行网络值班。为鼓励学生积极提问和回答其他学生问题,网上“学习交流”模块中设计了加分功能,学生所得分数将作为平时成绩的重要组成部分。<br>  采用上述方式,我们在湖南大学软件学院2004级和2005级本科生中进行了试点,每次挑选了30多位学生参加。第一次挑选的学生在全年级中属于较为优秀的学生,完成情况非常好,其中两位同学进入微软亚洲工程院实习,并将他们在本课程中完成的项目作为一个亮点向实习单位介绍;第二次参加的学生的整体素质处于全年级中等水平,也顺利完成了整个项目。在前两届学生成功试点的情况下,目前我们对2006级本科生全面采用上述教学方式进行“数据结构”和“面向对象程序设计”两门课程的教学,通过近一个学期的教学,从教学的效果来看,学生的动手能力整体上较上几届学生有明显改观,并且学生的学习积极性也大大提高,90%以上的学生项目组能够按照教学进度完成项目内容。 <br>   <br>  参考文献:<br>本文出自: 计算机毕业网<br>  [1] 温莉芳,刘江. 美国名校计算机科学专业本科教学体系现状分析[J]. 计算机教育,2004,(8):40-43.<br>  [2]D.S. Malik. C++ Programming: Program Design Including Data Structures[M]. 北京: 电子工业出版社,2003.<br>  [3]凌小宁,边耐政,林亚平,黄学东. 以学生为中心的做中学软件教学模式[C]. 2007全国高校软件工程教育年会论文集[A].北京:高等教育出版社.<br> </p> <p> </p> <p> </p> 摘要:课程建设与改革是高等学校提高教学质量的核心和关键,而课程群建设是高等院校课程建设和课程改革的一个新的发展趋势。本文介绍了我院在Java课程群建设方面的具体做法。<br>  关键词:课程群;Java;培养模式<br>      <br>  1Java课程群建设的意义<br>  <br>  课程建设与改革是高等学校提高教学质量的核心和关键,是高校教学改革的重点内容。而课程群建设是高等院校课程建设和课程改革的一个新的发展趋势,是推动高校专业课程的优化整合,深化课程改革、教材建设、师资队伍建设以及各种教学资源的优化配置的重要手段。课程群建设弱化了课程的独立性,强化了课程之间的联系,突出课程为共同专业培养目标的服务特征,课程群在形式上弱化课程个性概念,强化课程内容之间的融合、交叉和关联,围绕课程群的培养目标强调每门课程的教学内容的取舍,以提高教学效率和教学质量。课程群建设改变了过去课程改革中一门课程孤军作战的传统模式,强调课程建设的系统特性和规模效应。就当前高校教学改革的大的趋势来看,课程群建设是专业培养目标实现的有效保证,是提高教学质量的一条新的途径。<br>  Java技术相关岗位是计算机各专业最重要的就业方向之一,有着广泛的市场需求。在计算机专业课程体系不断完善的过程中,逐渐形成了一个直接面向软件企业Java开发岗位的系列课程,如何将这一系列课程有效地进行组织,使培养的学生能够更好地适应企业Java软件开发岗位的能力需求,是Java课程群要解决的主要问题。把围绕一个技能培养目标的、包含于若干课程中的技能点抽象出来,在一个更高的层次上连贯起来,使该技能的培养随课程教学的推进而不断递进、加深与拓展,逐步实现与培养目标的重合。<br>  Java课程群由Java语言程序设计、Web开发技术(Java)、JavaEE、Java技能实习、Web课程实践(Java)、Java项目实训六门课程组成,共640学时。为了充分利用这640学时将学生培养成合格的Java软件开发人才,我们需要从系统的角度,根据Java技术发展和人才培养的规律对Java课程群所有课程进行内容的整合与结构的优化,才能形成课程群建设规模效益,才能删除重复知识,保障关键知识的教学,使课程群各组成课程之间关系密切、逻辑性强、知识具有递进性,内容相对科学,便于组织教学。<br>  <br>  2Java课程群建设的主要内容<br>  <br>  2.1设计了系统的Java软件开发人才的培养模式<br>  2.1.1完整的课程体系<br>  Java课程群由六门相互独立又联系紧密的课程组成,它们有着不同的课程目标,但又衔接紧密,共同构成了一个培养Java软件开发人才的课程体系。这六门课程涵盖了Java技术的主要应用领域,并且每一种技术都由一门理论课程和一门实践课程组成,保障了学生对技术的充分理解和应用。这六门课程相互配合,为学生搭建了一个关于Java技术相对完整的知识体系和能力体系。下面是这六门课程各自的教学目标:<br>  “Java语言高程序设计”<br>  使学生掌握Java语言的基础知识,熟悉Java类库中最主要的类,掌握和面向对象程序设计的基本原则和特点。<br>  “Java技能实习”<br>  通过几个Java小项目的开发,培养学生Java编程能力,加深学生对Java语言的基础知识和面向对象程序设计的理解<br>  “Web开发技术(Java)”<br>  以JSP2.0作为动态网页的开发技术,培养学生进行动态网页设计的基本技能,并使学生能够熟练地利用JSP进行中等难度的动态网页编程及使用JSTL或流行Web框架进行web应用的开发。<br>  “Web课程实践(Java)”<br>  通过本课程的学习使学生掌握开发Web项目的流程和JSP及相关的技术,使用JSP及相关技术,完成一个Web应用。<br>  “JavaEE”<br>  了解并掌握Java企业级开发相关的技术,包括Web应用开发、EJB应用的开发、Java持久性API的使用以及相关服务的使用。<br>  “Java项目实训”<br>  通过实训,让学生知道企业内软件开发的流程,掌握在主流框架下进行开发所需具备的技术和工具。通过参与实际项目的训练,加强学生的理论基础,并使学生的动手能力得到提高,从而使学生达到企业用人的要求。<br>  2.1.2环环相扣的实践教学<br>  和任何一种软件开发技术一样,Java技术的教学必然要将实践教学放在重中之重。在使用例题讲解知识点的基础上,在课程群里“Java语言程序设计”、“Web开发技术(Java)”和“JavaEE”这三门偏重于传授知识的课程中大量使用案例教学,将陈述性知识与过程性知识整合、理论知识与实践知识整合;在课程群中“Java技能实习”和“Web课程实践(Java)”这两门实践课程中,主要使用项目教学,在指导学生进行Java虚拟项目开发的工作过程中来传授相关的课程内容,既使学生在不断实践中掌握了理论知识,又加深了学生对Java基础部分知识的理解。同时由于学生在进行项目开发时,很多时候需要自己去分析问题和解决问题,所以也培养了学生探究性学习的能力。为期4个月的Java综合实训,针对企业的岗位职业能力需求进行综合训练,使学生对以前学习的知识能够融会贯通。最后,学生进入东软信息学院实训创业中心(SOVO)或者校外实训基地(东软各地研发中心、合作企业)进行毕业实习,独立完成一个项目开发过程,最终培养出的学生能够满足企业Java相关的软件开发、软件维护和软件测试等岗位的职业能力要求。<br>  2.1.3丰富的课外活动<br>  东软信息学院是一所笔记本大学,这不仅体现在每个学生拥有自己的笔记本电脑,还体现在学院方便的网络环境。在院内的任何场所,学生都可以通过网络接口连接上网,访问网络资源。充分利用学生人手一台的笔记本电脑和覆盖每个教室和学生寝室的高速校园网络,大量地开展随堂实践和课后实践,并且积极组织课外兴趣小组、Java程序设计大赛和各种社团活动,引导学生合理应用笔记本电脑进行学习、研究、训练、创作、交流等,在一个开放的学习环境中不断提高自己的程序设计能力。<br>  下图为Java软件开发人才培养模式的示意图。<br>  <br>  2.2对课程群中课程知识点进行统一的规划与整合<br>  根据对企业的岗位调研以及对毕业生跟踪调查反馈的信息,在东软集团资深Java软件工程师的协助下,全面分析使用Java进行软件项目开发时所需要的职业能力,把岗位对本课程所要求的知识和能力进行分解,合理地分配到课程群中和各门课程中实现,进行课程群的开发与设计。07年我们针对Java课程的教学内容,对大连、北京和上海30家软件开发企业以问卷调查的形式进行调研,调研的主要内容就是在实际的项目开发中涉及的Java的知识点及每个知识点在实际中所占的比重,根据这个调查结果,我们对课程群内所有课程的知识点进行了重新组织,统一进行规划,并将所有知识点划分为三个层次,第一个层次为关键知识点,由这些核心知识点组成了培养Java软件开发人才的关键路径,我们认为学生只要掌握了这些关键知识点,就能成为一名基本合格的Java软件开发人才,我们对这些关键知识点进行了重点保障,加大了课时,并在多门课程群的课程中反复强化。第二个层次的知识点为重要知识点,这些知识点在形成学生的岗位技能中起重要作用,并对关键知识点起支撑和强化作用。第三个层次为必要知识点,这些知识点在形成学生的岗位技能中起补充作用。Java课程群建设的另一个主要作用在于为我们建立Java课程的持续改进机制起到支撑作用,在我们对课程的教学进行动态监控的过程中,如果发现学生对关键知识点的掌握程度未达到预定要求时,我们会从必要知识点和重要知识点中抽取一定的学时来保障关键知识点的教学。<br>  表1为Java课程群所有知识点的统一规划,分为核心知识点、重要知识点和必要知识点三部分。<br>  <br>  <br>  2.3建立符合课程群特色的教材体系<br>  Java课程群曾经大量采用经典引进教材,但在实际教学中我们发现这些教材或多或少存在着一定的问题,不能完全适应Java课程的教学实际。从2006年开始,课程群中课程的授课教师吸取国外经典教材的优点,结合我院办学特色和学生特点编写了一系列教材,除了2008年新开设的“Java技能实习”外,其余所有课程都有了自编教材。这些教材适应我院办学特色,基础性和实用性并重,并针对课程群进行了优化,体现了Java课程群建设的思想。<br>  近三年来,为激发学生学习兴趣、帮助学生自主学习的立体化教材建设和参考资料建设投入了大量的精力。到目前为止,已经初步建立了集多媒体教材、文字教材、网络辅助教学课件、网上资源于一体、有机结合的立体化教材体系,其中有“Java语言程序设计”、“Web开发技术(Java)”和“Java项目实训”三门课程已经建立了课程网站,拥有大量的学习资源,使用效果良好,受到了广泛好评。<br>  <br>  3展望<br>  <br>  Java课程群建设的研究和应用刚刚开始,还有很多问题没有解决,比如如何对现有教材进行改造,使之更符合课程群的建设。根据近两年Java课程群建设的应用情况,我们坚信Java课程群建设会真正起到提高Java技术教学效果的作用。 <br>   <br>  参考文献<br>  [1] 陈正东. 计算机多媒体技术专业课程群建设的思考[J]. 电脑开发与应用,2008,(5).<br>  [2] 李慧仙. 高校课程群三论[J]. 煤炭高等教育,2006,(7).<br> </p> <p> </p> <p> </p> 1 名师心得<br>  <br>  作为高校教师,教学与科研是最本职的两项工作,都需要持之以恒、投入热情,才能把工作做好。教学工作涉及人才培养,更是高校的根本任务,需要更大的责任心与耐心。近几年来,虽然科研与管理任务越来越重,但我在教学上的投入与热情始终未减。<br>  对于课程教学及其改革,除了需要投入、责任和热情外,更需要思路、方法与手段上的把握。在思路上,需要符合学校的办学理念,适应社会的发展和科学技术的变革,坚持以学生为本、为学生的未来发展着想;在方法上,“授人以鱼不如授人以渔”,注意讲解思路,善用启发式教学,注重学生良好学习方法及动手实践能力的培养,更需要注重学生自主学习能力、创新思维能力的培养;在手段上,善于在教学各个环节中使用现代化教学手段,我从1988年开始利用业余时间进行计算机辅助教学软件开发至今,已经深刻体会到了现代教育手段在教学应用中的价值。<br>  学生选择浙江大学是对浙大的信任,学生选择我的课程更是对我的信任,老师没有理由辜负学生的期望与信任。不断提升自己的教学水平,持之以恒地积累好改革经验,认真上好每堂课,讲好每个知识点,是我对自己在教学上的要求与目标。<br>  值得骄傲的是:浙江大学近十年来的毕业生中,有十五分之一是我的学生!<br>  <br>  2 名师寄语<br>  <br>  学生个人的成长需要知识、能力和素质协调发展,宽与专不可偏废;对计算机专业学生来说,实践很重要,需要在不断实践中掌握知识、培养能力、形成素质;光注意知识积累还不够,学习方法的获得、分析与解决问题能力的提高更加重要;光注意专业知识的学习还不够,综合素质的培养更重要。<br>  “折中(trade off)”是计算机领域的核心概念,同样也是学生个人成长中需要掌握的一种方法,学生需要在有限的时间内选择最适合自己的学习与发展方向。<br>  <br>  3 名师名言<br>  <br>  ●学生选我的课是对我的信任,我没有理由辜负学生的期望与信任。<br>  ●社会在变,人在变,不变的是学习、学习再学习,要知道“山外青山楼外楼”。<br>  专业本领是走向社会的敲门砖,而综合素质则是立足社会的依靠。 <br> </p> <p> </p> <p> </p> 摘要:本文针对“C程序设计”课程教学中存在的问题,探讨“C程序设计”课程的教学体系和模式,强调以培养学生分析问题能力、解决问题能力和创新能力在“C程序设计”教学中的重要性。<br>  关键词:C程序设计;教学体系;教学模式<br>  <br>  面向电子类专业大一新生开设的“C程序设计”是大学生入学后学习的第一门程序设计课程,它将对学生一生的程序设计技术、能力、风格和习惯产生深远的影响。然而,通过多年的教学实践和调查研究,我们发现许多学生在学完“C程序设计”课程后,不能用C语言独立编程解决实际问题,不能有效地将理论知识和实
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传
相似文档                                   自信AI助手自信AI助手

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服