前言:中文期刊网精心挑选了软件开发基础知识范文供你参考和学习,希望我们的参考范文能激发你的文章创作灵感,欢迎阅读。
软件开发基础知识范文1
关键词:实践内容;实践教学模式;整合;教学方法
1研究背景及意义
培养既懂技术又懂管理的软件高级人才,是各软件学院追求的目标。对软件学院的学生来说,项目实践能力、自学创新能力、团队合作能力和交流表达能力是其职业生涯中所不可或缺的。如何开设学生在校期间的实践课程,对学生进行软件开发基本技能训练,使学生在学习了软件开发技术相关领域的理论知识后,能够充分地锻炼这些能力,顺利就业,并在此后的职业生涯中有所建树,各软件学院针对这些问题都在进行积极的改革与探索。
对于大多数软件学院,制定合理的、适用于软件开发技术快速发展的实践教学模式面临的问题主要有以下两点:
1) 学生实际掌握的软件开发技术水平参差不齐。新入学的工程硕士超过半数来自非计算机专业,这些学生具备相应的专业领域知识优势,但在软件开发技术所必需的软件基础知识方面却存在不足。
2) 软件开发技术包括语言、开发工具及其所使用的开发方法。同时还需要掌握与软件开发技术相关的专业基础知识,以及要了解所开发程序的实际运行平台。各层次、各方面的大量实用产品和技术的推出,以及软件工程硕士的学制短和学科基础差别大的现实都给学生入门学习和系统掌握软件开发领域的核心知识带来巨大困难。
因此,研究和探索一种以动手实践为主导、融合多门传统课程、符合软件工程思想的软件学院实践教学模式,将为软件工程相关知识的进一步学习,提供坚实的理论基础和技能保障。本课题的研究内容,将为软件工程硕士实践教学模式提供借鉴意义,同时,也可为软件相关专业高年级本科生的软件开发技术能力培养提供参考。
2研究内容及主要观点
2.1研究范围和研究目标
本文研究的实践内容和模式主要针对于新入学的工程硕士,是根据软件学院工程硕士入学时掌握的软件开发技术水平参差不齐,部分学生缺少开发设计软件所需要的基本编程能力、基础核心支撑课程知识点的实际情况提出的。我们希望通过大量的实例强化训练和有针对性的讨论辅导,为学生顺利学习、理解和掌握“专业方向领域的知识点”打下坚实基础,为提高学生分析问题、解决问题的能力提供技术平台支撑,具体目标如下:
1) 通过该实践课程的学习,向学生灌输高质量程序设计的观念,使学生具备实际的编程能力,具备学习新语言的基本素质。
2) 通过该实践课程的学习,使学生在熟练掌握语言技能的同时,深入理解算法、数据结构以及与平台(Windows和Linux)有关的进程和网络编程的基础知识,并能够自觉关心软件质量,包括软件的正确性、效率、易用性、可读性(可理解性)、可扩展性和可复用性等。
2.2主要观点
本实践课程强调学生的主体地位,教师的指导作用,采用讲座、小班讨论和实验相结合的方式进行。通过一门常用语言(C++)和两个常用平台(Windows和Linux),培养学生综合运用已学知识的能力,使其深入理解程序工作的本质,为以后解决各种大型实际问题打下坚实的实践基础。实践课程的基本构成是:9次×3小时讲座+6次×3小时实践讨论+实验。
实践内容按专题组织,以C++作为程序设计语言、以Linux/Windows为实践平台,共设置涵盖编译原理、数据结构和算法、操作系统和网络编程等核心基础课程在内的9个专题。每个专题的课程形式包括讲座、实验、实验报告和讨论课4个环节。实践内容的研究、确立和整合围绕以下指导思想进行:
1) 通过动手实践深入理解软件开发基础理论。
2) 提取核心知识点,压缩课时,消除各传统课程之间的隔阂,以适应软件工程硕士学制短和学科基础差别大的现实要求,讲座内容以“专题”进行。实践的题材包括练习、实验和典型案例分析等,实践的手段包括一读、二写、三总结。强调程序设计规范,确保技能的系统性和规范性。
设置讲座的目的是要把各专题核心知识点的来龙去脉介绍给学生,使学生对目前程序设计的关键技术和基础知识有个整体印象。因为虽然目前软件设计技术种类繁多,但究其本质,还是超不出软件工程的基本思想。学生在学校不可能完全熟悉每一项技术,但理解常见技术的应用背景和发展原由却是进行相关应用的前提。
设置实验的目的是让学生通过阅读经典代码和自己动手编程去深入理解程序的工作原理,并通过总结做到举一反三。在熟练掌握基本的编程技巧,学会规范化编程的同时,系统地掌握相关的基础理论知识。
设置讨论课的目的是要解决学生基础差别大,相当部分学生基础薄弱的问题,实现个性化教学和辅导。课程讨论分小组进行,每组10~15人,每专题每小组两小时。讨论课主要用来解决该小组学生在自学和实验过程中所遇到的疑难点,并通过讨论这些疑难点,有针对性地对该小组学习作出总结。
为了便于大家的学习和沟通,学院网站为实践课程设立专门的文档下载、上传区和讨论区。学生可以下载与实践相关的各种文档、案例、讲座内容以及经典参考书目;学生也可以通过上传区提交每周的作业,包括编程源代码和实验报告;学生还可以在该区域进行重点、难点的讨论,提出好的建议,便于课程的改进和课程内容的及时更新,做到与时俱进。
9次讲座内容如表1所示,6次实验课的内容如表2所示。
2.3实施原则
为了使实验课的实际效果落实到实处,学生真正能够从中获益,提高软件开发的基本技能,实践课程的执行和实施必须遵循如下4个原则:
1) 一种语言,两个平台,分专题训练[1]。
软件工程实践以C++为基础,因为相比目前流行的C、Java和C#,C++既是面向对象编程,又具有Java和C#不具备的指针和引用等和内存管理相关的比较直观的技术,同时C++在操作系统、设备驱动程序、视频游戏等领域相比上述语言也存在优势。两个平台为Windows或Linux。考虑该实践课程的主要目的是“学生的计算机领域核心的基础知识的掌握和提升”,知识面涉及编程语言、算法、数据结构、操作系统、编译原理和网络等各个方面,实践内容以“专题”进行,同时也要求实践指导老师具有丰富的项目实战经验。
2) 个性分块和统一指导相结合[1]。
所有学生根据具体基础条件分为15人左右一组,设立小组长。各小组根据自身条件,进行强制集中练习,从而保证上机和实践时间。每周各小组具体的训练内容由指导老师根据小组的具体情况分别指定。学生必须在完成老师指定的任务后才能自行决定训练内容。学生也可对指导老师提出学习内容变更建议,但须征得指导老师同意。
3) 分散训练与集中讨论相结合[1]。
学生在每周针对各小组举行的讨论会上可以提问相关问题。指导老师要回答相关问题并对学生上周的作业数量和质量进行评定,并根据小组所有学生的具体情况指定相互帮教的计划,布置下一周的练习内容。指导老师在学生的整个实践过程的作用是指导、监督并对其中的每一个环节进行考核打分,及时发现问题,及时总结解决,确保所有环节落到实处,不流于形式。
4) 坚持考核评审的原则。
考核采用平时成绩与期末笔试相结合的方式,其中平时成绩占总成绩的40%,笔试成绩占总成绩的60%。平时成绩由指导老师根据平时实际情况给出,主要依据是学生每周完成案例代码和实验报告的质量,笔试侧重于代码阅读、设计能力以及基础概念和原理的理解和掌握。
3结语
通过整合课程内容、强调学生自学和教师辅导相结合的方法,我们在有限的课时内达到了补习软件基础知识和学习面向系统软件开发技术的两个教学目标。学生的反馈调查显示本课程体系得到了学生的高度认可和肯定,取得了一定的成效。但是整个软件市场中依然存在着企业招不到合适的高级软件人才,毕业生就业难的供求矛盾,面对软件开发技术知识体系更新换代快的特点,如何培养能够适应市场发展,具有创新意识的高素质软件人才将一直是我们探索研究的重点。
参考文献:
[1] 覃文忠,万金友. 关于软件学院实施“项目驱动”教学模式的探索[J]. 计算机教育,2004(4):57-58.
[2] 南京大学软件学院工程硕士培养方案[S]. 南京:南京大学软件学院,2006.
[3] 北京大学软件与微电子学院工程硕士培养方案[S]. 北京:北京大学软件与微电子学院,2005.
[4] 张广军. 微软院校课程体系设计理念[R]. 北京:北京航空航天大学软件学院,2005.
[5] 北京航空航天大学软件学院软件工程硕士培养方案[S]. 北京:北京航空航天大学软件学院,2004.
[6] Michael L. Scott. Programming Language―Pragmatics[M]. 裘宗燕,译. 北京:电子工业出版社,2005.
[7] Randal E. Bryant. Computer Systems―A Programmer’s Perspective[M]. 龚奕利,译. 北京:中国电力出版社,2004.
[8] Kenneth C. Louden. Programming Language―Principles and Practice[M]. 黄林鹏,译. 北京:电子工业出版社,2004.
Exploration of Practice Model in Software College
SHEN Xue-ping, YUAN Cang-zhou, WANG Hua-feng
(Software Institute, Beihang University, Beijing 100191, China)
软件开发基础知识范文2
苹果软件开发的具体步骤如下:
硬件环境准备:苹果系列的电脑必须是雪豹以上版本的操作系统,购买Xcode软件。基础知识准备:苹果软件开发使用Objective-C语言,是苹果公司将标准C重新封装使用面向对象的思路进行的改进版本。开工:好的创意开始软件开发,工作在Xcode上进行。软件开发完成后在Xcode上进行虚拟测试,也可以在IPAD上进行实际测试。在IPAD上测试需要将IPAD绑定帐号,测试完成就可以。软件:测试好的软件到软件商店进行申报。首先注册开发者的证书,提供软件和相关说明,提供银行帐号。
(来源:文章屋网 )
软件开发基础知识范文3
(鲁东大学 信息与电气工程学院,山东 烟台 264025)
摘 要:针对实践性较强的软件开发类课程教学中存在的问题,提出引入MOOC翻转课堂模式,在实践过程中有针对性地对学生进行引导,强调 “以学生自学为主,教师引导为辅,在实践中锻炼学生动手能力”。
关键词 :MOOC;翻转课堂;软件开发;动手能力
第一作者简介:周树森,男,讲师,研究方向为机器学习、多媒体分析,zhoushusen@aliyun.com。
0 引 言
近年来,MOOC(massive open online course,大规模开放式在线课程)对教育界产生了较大的影响[1]。如今,任何人都可以在任何一个有互联网的地方学习适合自己的在线课程。翻转课堂是指学生在课余时间观看在线教学视频,在课堂上做作业,遇到问题则向老师和同学请教,这是一种与传统的“教师白天在教室上课,学生晚上回家做作业”方式相反的课堂模式[2]。MOOC与翻转课堂相结合,既可以满足学生的个性化学习需求,又可以在课堂上训练学生思考和交流的能力。教师在软件开发类课程教学过程中发现,很多学生只会死记硬背,靠自己的短时记忆应付考试,编写代码和调试代码的能力欠缺,有的学生甚至到本科毕业也没有写过几行代码。
1 问题分析
以地方本科院校计算机专业为例,一方面,学生的就业率比较低,很多学生毕业后被迫转行,不再从事计算机相关工作;另一方面,我国软件开发类岗位需求量比较大,待遇也比较好,好多企业都招不到合适的程序员。形成这种反差的根本原因是大多数计算机类毕业生动手能力比较弱,而企业需要的是入职后无需培训就能直接工作的员工,这直接造成了很多应用能力欠缺的学生毕业即失业。
2 基于MOOC的翻转课堂简介
MOOC是一种新型的大规模开放网络课程,具有易于使用、费用低廉、覆盖人群广、支持自主学习、学习资源丰富等优点[3],现在几个主要的MOOC平台已拥有数百万注册用户。有了MOOC课堂,学生可以在世界范围内学习自己喜欢的教授主持的相关课程。这是否意味着普通地方高校的普通教师将面临下岗的局面呢?当然不是!MOOC教学的一个最大缺陷就是不能跟学生进行面对面的讨论交流。教师可以让学生在课下自主学习适合自己的MOOC视频,然后在课上积极引导学生讨论某个具体应用实例的实现,帮助学生解答疑难问题,这就是基于MOOC的翻转课堂模式。
中国在线教育从2013年开始集中爆发,平均每天有2.6家在线教育公司诞生。截至2014年9月,获得投资的在线教育企业已经超过60家,其中15家是2014年刚上线的项目,预计2015年中国在线教育市场规模将达1200亿元人民币。各个高校也积极行动,建设开放网络课程,探讨课堂模式创新的实际效果[4]。
和许多新生事物一样,MOOC也是有缺陷的[1],那就是教师与学生、学生与学生之间缺乏有效的、实时的互动。基于MOOC的翻转课堂恰恰弥补了这个不足,大学的翻转课堂可以增进师生互动,还能够及时解决问题,启发学生的创造力。
当然,这种先自学MOOC材料,后课堂讨论的翻转方式也有其不足之处,例如,受限于硬件条件,在大班教学中很难展开,部分学生不会事先自学MOOC材料等。但是,这是一种教育理念的根本性改变,在实践过程中,高校要根据自身的实际情况进行改革,否则效果不会太好。
3 基于MOOC的翻转课堂教学实践
对于实践性比较强的软件开发类课程,教学对象是计算机专业高年级本科生。在教学过程中我们发现,学生的动手能力比较弱,很多学生对代码“望而生畏”。
3.1 提供适合学生的优质MOOC 课程
虽然互联网上已经存在很多MOOC课程,但是找到一个适合自己学习的MOOC课程是比较有难度的,原因有以下几个方面。
(1)教师所讲授课程的教学目的与已存在的MOOC课程的教学目的有偏差。
(2)学生的基础薄弱,很难跟上已存在的MOOC课程的讲课节奏。
教师应该基于讲授课程的教学目的,针对所教学生的基础和接受能力,录制相应的教学视频并上传到网络上供学生课下观看;同时,也可以提供多个MOOC课程供学生参考。
3.2 小班教学,加强师生互动
基于MOOC的翻转课堂的优势在于,可以增进师生互动,及时为每一个学生解决问题,启发学生的创造力。若课堂人数太多,教师在上课过程中很难照顾到每个学生的需求,所以,翻转课堂必须实行小班教学。根据笔者的经验,课堂人数不能多于40人。
翻转课堂的目的是让学生课下学习基础知识,课上来讨论和答疑。教师可以引导学生讨论某个具体应用系统实例的实现,将学生引入该应用系统的需求分析和建模中,然后进行软件体系结构设计这类具体问题的讨论。
在实践过程中,最大的问题是学生从小到大接受的都是应试教育,习惯于上课听课,课下做作业,并且大多数学生不会主动向老师提问,对于课堂上的问题,即使自己会回答,也是被动地等到老师点到名字后才回答。
针对这个问题,教师可以多引导学生改变惯性思维,鼓励学生主动发言,对主动发言的学生进行表扬。另外,在考核机制上,向主动发言、提出有代表性问题的同学倾斜,为其课堂表现加分。这样可以充分调动学生的积极性,让学生变被动为主动,真正做到师生互动,锻炼学生的表达能力、创造能力和分析问题解决问题的能力。
3.3 加强监督,引导学生自学
MOOC和翻转课堂都是舶来品,直接拿到中国的课堂上使用肯定会水土不服。中国学生接受的是填鸭式教学,大多数学生在学习的过程中没有什么乐趣可言,只是在老师和家长的强压下学习。到了大学后,学习只是为了通过每门课的考试,顺利拿到毕业证。在这种功利思想的影响下,又有多少人会按照要求在业余时间学习MOOC教程呢?当然,也有比较好学的学生能够理解翻转课堂的教育理念并在课下自觉学习,但毕竟是少数。
针对学生自控能力比较差的问题,笔者认为教师应该加强监督。教师在上课时设置提问或小测试环节,对学生的基础知识掌握情况进行检查,对没有很好掌握基础知识的同学酌情扣除相应的课堂表现分数。这种监督方式可以很好地督促学生自觉利用课余时间学习基础知识。
另外,还应该发挥网络时代的优势,设置课程在线答疑界面,让学生在课下学习的过程中,对于不理解的问题,随时通过在线答疑界面与老师沟通,这样可以很好地引导学生进行自学,避免学生被某个知识点卡住时失去兴趣或者没有信心继续自学。
3.4 实战教学,答辩考试
学生一般只关心自己期末考试能考多少分,不关心自己的实践能力。但是,当学生踏上社会的时候,公司关心的是他们能否开发实用软件。
为了适应社会的需求,解决学校所学非公司所需的矛盾,教师应该在以下几个方面进行调整。
(1)在讲授实践性比较强的软件开发类课程时,可以引导学生循序渐进地实现一个小的实用软件。
(2)在考核权重的设置上,应该加大平日课堂表现得分的比重,引导学生在课下认真学习打好基础、课上好好表现积极参与,通过日积月累的方式逐渐增强自己的软件开发能力,由量变到质变,而不是临时抱佛脚。
(3)在期末考试时,将传统的卷面考试变成答辩式考试。教师要求学生开发一个实用软件,撰写软件开发的说明文档,制作幻灯片,然后每人都上台作报告,向老师和同学展示自己所做的软件功能、开发用到的核心技术,并现场演示软件。最后,由老师和同学现场提问,根据软件性能和答辩情况对其打分。这种考核方式可以很好地避免学生死记硬背、临时抱佛脚来应付考试的弊病。另外,答辩可以锻炼学生的软件开发实战能力、语言表达能力和临场发挥能力。
通过日常上课过程中的引导、训练以及最终以检测软件开发能力为目的的答辩式考试,学生能够学习到很多软件开发的实战经验,为其能够顺利从一个毕业生转变成公司的合格员工打好基础。
4 结 语
实践性较强的软件开发类课程教学应该以培养学生的动手能力为目标,增强学生解决现实应用问题的能力。引入基于MOOC的翻转课堂模式,可以让学生更好地利用课余时间,基于互联网进行基础知识的学习,从而可以让教师在课堂上有更多的时间对学生进行相关实践应用能力的培养,这对培养合格的计算机相关专业人才有重要意义。2012级计算机科学与技术专业的学生反馈显示,在基于MOOC的翻转课堂模式培养下,大多数学生提高了学习软件开发的兴趣,积极利用MOOC资源自觉充电,在线上平台进行沟通,不断完善自己开发的软件。学生的自学能力和分析问题解决问题的能力不断提高,能够更好地适应社会、服务社会。同时,激发了授课教师对教学的思考,促使教师加深对所授内容广度和深度的理解,从而解答学生提出的各种各样的问题,形成更加浓厚的学术氛围。
参考文献:
[1] 伍民友, 过敏意. 论MOOC及未来教育趋势[J]. 计算机教育, 2013(20): 5-8.
[2] 凡妙然. 基于MOOC的翻转课堂在高校教学中的应用[J]. 软件导刊, 2014(9): 189-191.
[3] 叶俊民, 王敬华, 李蓉. MOOC背景下的高校教师角色转型[J]. 计算机教育, 2014(9): 10-13.
软件开发基础知识范文4
【关键词】CDIO;软件工程;能力培养
1 背景与理念
CDIO工教育模式是近年来国际工程教育改革的最新成果。CDIO代表构思(Conceive)、设计(Design)、实现(Implement)和运作(Operate),它以产品研发到产品运行的生命周期为载体,让学生以主动的、实践的、课程之间有机联系的方式学习工程。
CDIO包括了三个核心文件:1个愿景、1个大纲和12条标准。它的愿景为学生提供一种强调工程基础的、建立在真实世界的产品和系统的构思-设计-实现-运行(CDIO)过程的背景环境基础上的工程教育。它的大纲将工程师必须具备的工程基础知识、个人能力、人际团队能力和整个CDIO全过程能力以逐级细化的方式表达出来,使工程教育改革具有更加明确的方向性、系统性。它的12条标准对整个模式的实施和检验进行了系统的、全面的指引,使得工程教育改革具体化、可操作、可测量,并对学生和教师都具有重要指导意义。。
《软件工程与UML建模》课程是软件技术专业提高综合能力的一门课程,它在学生具有对局部问题的解决能力的基础上,培养学生解决全局问题的能力,训练和积累“工程经验”。CDIO工程教育模式,特别适合《软件工程与UML建模》这类综合性课程,构思(Conceive)、设计(Design)、实现(Implement)和运作(Operate)正对应了软件开发流程的整个生命周期。
2 教学改革与实践
CDIO 工程教育理念提出了系统的能力培养教学大纲,包括 4 类一级能力、17 组二级能力(如表 1 所示)、以及 73 种具体能力,范围涵盖了学生的理论知识,个人素质和发展能力、协作能力以及大系统适应和调控能力。
表1 CDIO能力大纲
一级能力
二级能力
1 技术知识和推理能力
1.1 基础科学知识
1.2 核心工程基础知识
1.3 高级工程基础知识
2 个人职业技能和职业道德
2.1 工程推理和解决问题
2.2 实验中探寻知识
2.3 系统思维
2.4 个人技能和态度
2.5 职业技能和道德
3 人际交往技能:团队协作和交流
3.1 团队精神
3.2 交流
3.3 外语交流
4 企业和社会的构思,设计,实施和运行(CDIO)系统
4.1 外部和社会环境
4.2 企业及商业环境
4.3 构思与工程系统(conceiving and engineering system)
4.4 设计
4.5 实施
4.6 运行
2.1 基础知识
对于软件工程与UML建模课程,基础知识的教学是至关重要的。在这个环节我们采取的策略主要体现在两个方面:一是,根据学生的实际情况,选择教学的重点内容,选择适当的案例贯穿教的内容;二是,在面授过程中,充分利用网络资源有效地培养学生获取信息、掌握信息、运用信息和处理信息的能力,同时采取启发式教学方法,调动学习者的主动性和参与性,为应用能力的提高提供保证。
2.2 个人职业能力
在课程教学中,通过案例的实现培养学生的职业技能,同时培养其职业道德。首先,我们要帮助学生树立一种思想――工程必须经过多次回顾、反复修正、不断创造及深入探索,是一种不断追求卓越的过程。其次,提倡自主的构思、设计、实践和操作。鼓励学生把软件工程的思想时时刻刻的用于自己平时的各项软件相关的活动中,把各种课程设计和校内实践活动都当作实质的工程项目,自行安排进度和控制。这种方式能更好的提升学生的工程能力。
2.3 人际团队能力
任何一个优秀的作品都是一个集体智慧的结晶,软件开发更是离不开软对的协作和交流。我们在课程中强调小组的概念,无论是学生在课堂讲解,还是课程实践项目,均以组为单位,锻炼学生的协作能力。同时对组里的学生角色进行周期调换,让学生理解项目组中的不同角色,从不同角度增加协作和沟通能力。课程评价中也以组为单位,这样增加了学生的小组意识。
2.4 工程系统能力
在上述三点的基础上,最终需要着手于项目的设计、实施,保证学生的知识和能力的双重获取,旨在提高学生的“创新能力”和“具有工程实践能力” 的要求,达到市场所需的软件工程师的标准。因此,项目的选择在整个教学过程中起着举足轻重的作用。
项目要求既能涵盖尽可能完整的理论要求,又能让学生通过努力的情况下顺利完成。我们主要采取以下几种方式进行项目的选择:一是,通过校企合作企业开发完毕的现有小型项目,指导学生再次开发,这是比较好的一种开发项目选择,每个评审阶段可以将学生的文档与项目原文档比较学习,学生能更有针对性的学习和理解各个阶段文档的重要性和写作规范;二是,承接小型项目开发。这个项目开发课题是没有先例可查,具有一定的风险和挑战难度,对于没有软件工程经验的学生来说,具有一定的挑战意义,对教师的个人技术素质要求也比较高,实施起来难道相对比较大;三是,从自身需求获得项目需求,比如学生宿舍管理、课程管理,教师管理系统,小型图书管理系统等等。这样的项目一般相对需求简单,易于理解,相对容易实施。
3 总结
本文主要是借鉴CDIO工程教育理念,以软件工程与UML建模课程为载体,培养学生CDIO所要求具备的多种能力。通过对学生进行访谈发现,学生普遍反映这种融合CDIO理念的教学方法非常适合他们的学习,案例教学很好的促进了他们对基础知识的学习,并且对以工程化的思想开发软件有了深刻的认识,基于项目和基于小组学习的实践教学的安排促进了学生的团队协作和沟通能力的提高,实际的软件开发能力和项目组织与管理的能力也得到了极大的锻炼和提高。
参考文献:
[1]CDIO简介.http:///
[2]韩智.基于 CDIO 理念的软件工程课程教学改革[J].2010
[3]陶永芳,商存慧.CDIO 大纲对高等工科教育创新的启示[J].中国高教研究,2006(11):81-83
软件开发基础知识范文5
关键词:教学模式;Java课程群;课程体系
中图分类号:G436文献标识码:A文章编号:16727800(2012)007018102
作者简介:裴承丹(1983-),女,湖北荆州人,硕士,武汉长江工商学院工学院计算机系讲师,研究方向为计算机学科教学。
1Java 课程群建设的背景
随着社会的发展,企业越来越倾向于招聘能够直接满足岗位技能需求的软件开发应用型人才。为了更好地与社会需求接轨,笔者所在的学校从2009级开始,在计算机专业专科的教学中实施“2+1”教学模式,即2年的校内专业学习,加上1年的校外专业实习。这样的教学模式,对校内的专业学习提出了更高的要求:学时缩短,但对学生动手能力的要求更高——学生在2年的专业学习后必须具备马上上岗或者经过短期培训后即能上岗的能力。这就要求对现有的课程进行充分的整合与提炼,删除重复过时的内容,增加人才的竞争能力和提高人才培养素质的新内容,以提高教学效率,也就是进行课程群的建设。
课程群建设与传统的课程体系建设不同,它的基本思想是把内容耦合紧密、存在内在关联、属同一个教学目标的一类课程作为一个课程群组进行建设,打破课程之间的壁垒,从专业培养目标层次的角度把握课程内容的分配、实施、保障和技能的实现。课程群建设弱化了课程的独立性,强化了课程之间的联系,突出课程为共同专业培养目标的服务特征,课程群在形式上弱化课程个性概念,强化课程内容之间的融合、交叉和关联,围绕课程群的培养目标,强调每门课程教学内容的取舍,以提高教学效率和教学质量。
Java技术相关岗位是计算机各专业最重要的就业方向之一,有着广泛的市场需求。笔者所在系的计算机专业开设了一系列的Java课程,如Java语言程序设计、Java语言程序设计课程设计、Java Web开发、Java项目实训等,但这些课程的教学没有达到应有的效果。后续课程的教学中,老师会花费大量的时间进行补差工作,课程之间重复的内容较多,导致规定的教学目标不能正常达到,真正能独立动手写程序的学生非常少。因此,如何将这一系列课程有效地组织起来,使培养的学生能够更好地适应企业Java软件开发岗位的能力需求,成为Java课程群建设的主要目标。
2Java课程群建设的主要内容
2.1Java课程群设置的主要思路
根据课程群研究的一般方法,为了将学生培养成具有良好的Java软件开发能力的人才,考虑到专科学生的学习能力,加上在校学习时间只有两年,我们选择了5门相关的课程组成了Java课程群:Java语言程序设计、Java 语言基础开发课程设计、Java Web编程技术、Java Web开发课程设计、Java软件开发综合实训。为了充分利用有限的学时将学生培养成合格的软件开发人才,从系统的角度,根据Java开发人才的培养规律,对Java课程群的所有课程内容进行了整合与结构优化,删除重复知识,保障重要知识点的教学,使课程群各组成课程之间关系密切、逻辑性强,内容相对科学,有利于教师的教学和学生的学习。
2.2完整的课程体系
组成Java课程群的5门课程具有不同的课程目标,但又相互衔接、联系紧密,共同构成了培养Java软件开发人才的课程体系。这几门课程涵盖了Java技术的主要应用领域,在课程设置时基于“理论够用,强调实践”的原则,保障学生既能够对技术有充分的理解,又能动手实践。这5门课程的教学目标如表1所示。
2.3课程群重要知识点设计
根据对某些软件开发企业的调研和毕业生反馈的信息,针对专业学生的学习能力和学习特点,列出了Java课程群的重要知识点和具体的技能要求,要求上课过程中教师应针对这些知识点和技能进行重点的训练,通过多个案例的讲解和分析,加上学生自己的实践练习,务必使学生牢固地掌握这些知识点。由于Java语言基础开发课程设计和Java Web开发课程设计两门课程是分别针对Java语言程序设计和Java Web编程技术两门课程而设置的重要实践环节,所以重要知识点的讲解主要集中在Java语言程序设计和Java Web编程技术两门课程中,具体知识点和技能要求如表2所示。
课程名称教学目标
Java语言程序设计掌握Java语言的基础知识,熟悉Java类库,会用Java语言进行面向对象程序设计
Java 语言基础开发课程设计通过几个小型Java项目的开发,培养学生的Java编程能力,加深学生对Java基础知识的理解,加强学生面向对象编程的能力
Java Web编程技术通过对JSP 2.0技术的学习,培养学生进行动态网页设计的能力,使学生能够熟练使用JSP进行动态网页设计及开发Web网站
Java Web开发课程设计通过几个web项目的开发,使学生熟练掌握JSP及相关技术,掌握web开发的流程
Java软件开发综合实训通过实训,让学生掌握EJB应用开发、Java持久性API的使用及相关服务的应用
课程名称重要知识点技能要求
Java语言
程序设计Java语言基础
面向对象编程技术
Java异常处理
图形用户界面设计
Java基本类库
文件处理
多线程编程
网络编程熟练掌握Eclipse或NetBeans等集成开发工具进行Java开发的方法
Java Web编程技术Web编程基础--HTML、XML、JavaScript
Servlet
软件开发基础知识范文6
计算机二级公共基础知识考试大纲基本要求:
1、掌握算法的基本概念。
2、掌握基本数据结构及其操作。
3、掌握基本排序和查找算法。
4、掌握逐步求精的结构化程序设计方法。
5、掌握软件工程的基本方法,具有初步应用相关技术进行软件开发的能力。