资源描述
项目式教学的研究与应用
摘要:本文针对高职学生特点,根据教学理论的引导,提出了项目式教学以及实施方法来培养学生的学习积极性和能力体系,并结合计算机专业数据库课程进行了详细实例的阐述。<br> 关键词<br>本文来自:计算机毕业网 :项目教学;高职教育;建构主义;计算机专业<br> <br> 1教学现状<br> <br> 如何有效地加强对当代大学生综合素质与创新能力的培养,以适应信息时代的人才需求,是近年来的一个热门话题,相关的教学改革也进行得如火如荼。但是,主流的教学方法仍然是:<br> (1) 以知识体系为核心的课堂教学<br> 目前,教材基本上都是依据教学内容,以知识体系为顺序组织编排的,前半部分集中介绍基础理论,后半部分重点介绍具体实例,教师在组织教学时,往往基本按照教材编排的顺序讲解,着眼点是把知识介绍给学生,而不是把知识的应用方法教给学生。这样,过多的理论介绍,既增加学生的学习负担,又不能突出教学重点,还会挫伤学生的学习积极性。<br> (2) 以能力为重点的教学方式<br> 教师把教学内容设计成一个或多个具体任务,任务中包含了学生应该掌握的知识与技能,也蕴含了学习者需要的能力训练要求。学生通过完成具体任务,掌握知识点与技能点。这种任务驱动教学,较好地培养了学生的应用能力,但对学科的知识体系掌握较弱。<br> <br> 2学情分析<br> <br> 作为高等教育体制的新的组成部分,高职教育的主要任务是根据市场需求,培养专业对口的高级技术应用性人才。高职院校的生源主要来自参加高考并在本科线外录取的普通高中毕业生和参加对口升学考试的中等职业学校毕业生。对口升学的学生有着较好实践能力,但基础相对高中生源有差距;另外,高职院校学生的自学能力和自控能力都停留在相对比较低的层次上。实践证明,现有的教学模式不适应学生自身的条件,不能很好地满足培养应用性人才的需要。针对此状况,根据教学理论,在高等职业教学中引入了项目式教学方法。<br> <br> 3项目教学法<br> <br> 3.1教学理论引导<br> 建构主义认为,学习是一个积极主动的建构过程,它强调学习的积极主动性、目标指引性、任务真实性、不断反思性和互动合作性。学生是学习过程的主体,通过不断的积极实践,建构自己的新的知识和经验,而不是被动地接受知识。因此要帮助学生投身到与他们将来需要有关的,各种有一定难度的真实任务或解决难题的社会活动中去。<br> 3.2项目教学法<br> 项目教学法是目前一些发达国家普遍采用的一种“实践性”较强的教学方法,是MBA教育经过长期的教学实践,形成的独具特色的教学方法之一,并得到广泛应用。其最初定义是:由学校和企业共同组成项目小组,深入实际,在解决问题的同时,学习和应用已有的知识,在实践的第一线培养解决问题的能力。在这里,是指采取小组讨论、协作学习的方式,应用已有知识和新知识,通过“项目工程”来驱动学生的学习,通过完成项目任务,培养解决问题的能力。项目教学法要求课程单元与任务设计必须达到的前提指标是:<br> 1) 在实践的同时,注重理论的渗透;<br> 2) 项目有激发学习兴趣和创造力的因子;<br> 3) 项目完成过程中突出独立完成与合作完成的能力;<br> 4) 有明确的评分标准,可以对完成的项目是否达到教学目标进行评价。<br> 项目教学法是一种教学策略,借此引导学生对现实生活中的事物进行深入的学习。正确实施项目教学法,学生的学习积极性会被极大激发、自觉地学习并高质量地完成项目作业。<br> <br> 4项目式教学的应用<br> <br> 4.1项目式教学法的一般步骤<br> 首先,“项目”的设计,必须根据学生的学习生活和社会生活确定选题。处于求知年龄的学生是好奇的,但必须使他们对解决问题产生兴趣。因为兴趣。特别是浓厚的兴趣是采取行动的内在动力。<br> 其次是“项目”的实施。围绕项目,教师提出问题,并对总目标和学习模块进行细化。实施过程中要注意分散重点、难点,采用循序渐进的方法;实施时,要考虑“项目”的大小、知识点的含量、前后的联系等多方面的因素。<br> 最后,评价项目教学重在应用能力的培养,所以表达学习成果的方式要提倡多样化。它可以是一篇研究论文、一份调查报告、一本研究笔记、一次口头报告、一件模型、一块展板、一次主题讲演、一个个人网页,一个系统,也可以是一项活动设计的方案等。采取学生自评、学生与教师互评相结合;对小组的评价与对小组每个人的评价相结合;定性评价与定量评价相结合等方法。<br> 4.2项目教学在“大型数据库”教学中的应用<br> 下面,以“大型数据库”课程教学为例,讲述项目教学的应用,为此教学模式抛砖引玉。<br> 以大家熟悉的学生选课系统为核心开展教学。课程开始与学生一起探讨学生选课过程,分析能否将此需要变为数据库系统应用,并以此开始项目的实施。讨论中,引导学生找出与学生相关的各种数据以及与这些数据相关的各种应用,在此基础上,提出选课系统的目标——建立学生、教师、课程、系统数据库管理。<br> 其次,提出存储和使用数据的几种方案,以此为切入点,逐步提问和推出所要介绍的相关理论知识,如数据库系统的基本概念、数据库系统与文件系统的区别等,让学生依据这些理论知识初步设计本系统的库结构。<br> 接着,引导学生去发现所设计库结构的不合理性,以此介绍数据库设计的范式理论、数据完整性等难以理解但又非常重要的知识。再引导学生在系统中实际录入数据,引出表的创建,分析出现问题时如何进行表的管理。为了提高系统的效率而引出建立高效索引;在系统运行中,最担心的就是数据的安全性,由此引入数据库的安全体系,从权限等的配置到视图、触发器的建立等。<br> 然后,提出选课系统实际应用查询,又引入SQL查询语言,最后,将此项目加上外衣,即提出开发工具的协同使用。<br> 考试为过程性考试,要求学生独立开发一个小型系统,来锻炼独立解决问题的能力,同时使他们获得一个进一步学习的机会,将所学知识全面综合系统化。<br> 可见,项目教学法通过提出项目,以解决用户问题为主要目的,巧妙地把教材中介绍的对实践有指导意义的知识点,尽可能地体现于项目中,教学的目的不仅仅是向学生介绍知识,更重要的是通过引导学生把知识应用于案例,培养学生对新知识的应用能力。<br> <br> 5结束语<br> <br> 本文从教学改革的角度出发,针对传统教学模式提出并介绍了项目教学法,但该方法在具体实施时应与启发式教学、讨论式教学、案例教学法等多种灵活的教学手段相结合,做到“教学有法而无定法”。 <br> <br> 参考文献<br> [1] 杨学全. SQL Server 2000实例教程[M]. 北京:电子工业出版社,2005.<br> [2] 何克抗. 建构主义的教学模式、教学方法与教学设计[J]. 北京师范大学学报,1997.<br> [3] 国家教委职业技术教育中心研究所. 以实践为向导的教学方法[M]. 北京经济科学出版社,1998.<br> [4] 王敏. 高等职业教育理论与实践[M]. 辽宁大学出版社,2000.<br> [5] 陈万先. 任务驱动法在计算机教学中的应用探讨[J]. 中国职业技术教育,2003.<br> </p> <p> </p> <p>
</p>
摘要:本文在介绍ACM及程序设计在线评测系统的基础上,给出了基于ACM模式的数据结构实践教学改革措施和实效,对数据结构实践教学进行了有益的探索。<br> 关键词<br>本文来自:计算机毕业网 :数据结构;实践教学;ACM<br> <br> 1ACM竞赛简介<br> <br> ACM国际大学生程序设计竞赛ACM/ICPC(AC-M International Collegiate Programming Contest)是由国际计算机界历史悠久、颇具权威性的组织ACM学会(Association for Computing Machinery)主办,是世界上公认的规模最大、水平最高的国际大学生程序设计竞赛,其目的旨在使大学生运用计算机程序设计理论(包括数学素养、程序设计语言、数据结构、算法分析等)来充分展示学生分析问题和解决问题的能力。竞赛方式以在规定的时间内做题多少,每题成功提交次数和做题时间长短判定名次。该项竞赛从1970年举办至今已历27届,因历届竞赛都荟萃世界各地精英,云集计算机界的“希望之星”,而倍受国际各知名大学的重视和世界各著名IT企业关注,成为全球最具影响力的国际级计算机类竞赛。ACM竞赛不仅培养参赛选手在软件程序开发过程中创造力和团队合作精神,而且也检测选手们在压力下进行创新思维和理性实践的能力,是大学计算机教育成果的直接体现。<br> 中国高校从1996年开始举办ACM竞赛已历时七届,得到国内众多知名高校的积极响应和热心参与,目前更是呈现迅速发展的趋势。由于该竞赛设定一套合理的竞赛排名、挑战规则,提供了一个学习和使用程序设计语言和算法的完整实践模式,让学生以精通编程为荣,形成一个积极向上的自主学习氛围,一些高校已将ACM模式运用到软件基础课程的教学过程中并取得显著效果。<br> <br> 2ACM在线评测系统<br> <br> ACM在线评测系统是一个在线程序与算法设计练习、竞赛的平台。系统可以提供大量的竞赛题供学生练习或竞赛,学生在线提交解决相关竞赛题的程序代码,系统可以自动编译程序代码,生成可执行文件,并根据已存储的测试用例对程序执行测试,返回正确或出错结果。为了将ACM模式推广到C/C++,数据结构、算法分析与设计等课程的实践教学中,我们研制开发了ACM在线评测系统,其主要功能有:<br> ●系统定义了对于提交代码的通过标准,从程序正确性、程序运行总时间、耗费总内存、单用例执行时间、程序返回结果等各个方面考察提交代码,并精确返回各个方面的评测结果;<br> ●不但支持C、C++、PASCAL以及JAVA语言的编译,还定义了一套具有充分可扩展性的编辑器扩充规则,可以在不修改系统任何实现的情况下,通过管理配置文件增加系统可以支持的语言和编译器;<br> ●实现了支持个人申请竞赛以及举行竞赛的功能;<br> ●实现了以RSS聚合方式对竞赛报告进行汇总,用户可以不访问站点通过RSS阅读器自动获得竞赛报告的更新;<br> ●具有可自动管理数据库连接数量的数据库连接池,自动监管每个连接状态,调整系统性能;<br> ●实现了系统在线配置的自调节,定义了自动约束规则。<br> 程序设计在线评测系统无论在稳定性、速度、负荷能力上都超越国内同类型系统,是一个比较成功的设计。为计算机专业各门编程课程提供有效的实验环境。<br> <br> 3基于ACM模式的数据结构实践教学设计<br> <br> “数据结构”课程是计算机专业重要课程之一,侧重介绍软件设计中的基本技术,包括程序设计中所涉及到的各种数据结构、基本运算、各种存储结构以及算法实现和性能分析,排序和查找两种常用运算以及递归技术等内容[1]。通过这些知识的学习和训练,使学生不仅能熟练掌握这些知识,而且还能根据实际问题的需要选择合理的数据结构和算法,从而提高学生软件开发的能力。数据结构实验课程以培养学生软件实践能力为目的,注重学生创造性思维的培养[2]。要求学生学会选择合理的数据结构,设计出相应问题的求解算法;学会如何把书本上和课堂上学到的知识用于解决实际问题,提高分析问题和解决问题的能力,从而具备计算机软件工作所需要的基本能力。但传统的数据结构实验,往往仅够让学生大致掌握基本知识,不能提供充足的学时来分析解决实际问题,学生在课后也很少有渠道获得练习的机会,也不知道如何练习。ACM竞赛具有较长历史,方法成熟,将ACM模式应用于数据结构教学过程中,通过运用现代教育技术改造传统教学方法是非常必要的。<br> 3.1基于ACM模式进行实践教学的优势<br> 1. 基于ACM模式进行实践教学可以通过网络直接进行,不受时间和空间的限制。<br> 2. 在数据结构课程学习中,学生的困难点是不易用数据表达需要求解问题中的客观事物,不易掌握数据之间的关系,缺乏系统解决问题的方法,而这些恰恰是ACM竞赛必备素养。将ACM模式应用于数据结构实践教学中,强化学生的计算机理论修养和实践能力,学以致用,通过实践来真正掌握各种数据表示结构和算法的意义和精髓。<br> 3. 增强学生之间的学术交流氛围,通过举办竞赛,鼓励校园形成竞争、交流的学习氛围,让学生在课余时间有自主进行本学科知识钻研的机会和环境。<br> 4. 培养学生之间的合作精神,通过组队竞赛,让学生体验团队协作的各个方面,为软件项目团队化的合作要求做好准备。<br> 3.2基于ACM模式的实践教学设计<br> 基于ACM模式的数据结构实践教学设计分为三个层次:基本实验、设计型实验和创新实验。基本实验是让学生巩固和深入理解所学的知识;设计型实验是让学生充分发挥其创造力,将所学的知识运用到实际问题的解决;创新型实验是为了增加学生软件设计和开发能力,主要是结合各种课外科技活动、各种比赛、科研项目进行。<br> (1) 基本实验,主要内容有线性表、栈及队列、串、数组与广义表、树与二叉树、图、顺序折半查找、内部排序等[3]。要求学生具体掌握基本的数据结构和方法,能用数据结构描述现实对象及其处理,有较强的问题分析和任务定义的能力。<br> (2) 设计型实验,主要内容包括停车场管理、哈夫曼码编码器、电话号码的查询、学生课程管理系统[4]。要求学生具体掌握算法设计和分析,熟练应用递归思想和方法,具有一定的数据类型设计和系统设计的能力,用数据结构构造复杂软件系统。<br> (3) 创新型实验结合具体科研或学生课外科技活动,要求学生具体掌握基本的软件重用方法,面向过程和面向对象的设计方法,初步形成软件工作者应具备的科学工作作风和方法,其程序的测试可使用ACM方式进行,保证软件的质量。创新型实验的开展为学生申请本科生科技创新项目奠定了很好的基础。<br> <br> 4改革措施及实效<br> <br> ACM模式以解决问题为目标,而解题方法不受限制,可以让学生有更多的创新思维空间。将ACM模式引入到数据结构的实验教学中,激发学生的学习热情和潜力,提高了学生依靠自己努力获取知识的能力。在具体运用中采取了以下几条措施:<br> (1) 将传统的实验题目改编为ACM题目<br> 针对基本实验和设计型实验的实验内容和具体要求,我们从ACM竞赛题中精心挑选相关题目或将原有实验题目改造为ACM试题形式,形成与数据结构实验要求相对应的ACM试题集。将实验教学中传统的以算法为主线的体系结构改为以问题为主线的体系结构,通过具体问题描述给出实验题目,使学生自主选择合理的数据结构和算法进行计算机解题,加深学生对基本概念和基础知识的理解,通过学以致用牢固掌握所学知识。<br> </p> <p> <p>(2) 按难易程度设计每次实验内容<br> 实验内容按难易程度分层次有针对性地进行设计。既要有较简单的基本题目,又要有一些更接近实际系统,具有挑战性的题目,可以满足学生学习过程中不同层次的需求,充分调动他们学习的主动性和积极性。一题多解、新颖有趣的实验内容大大提高学生的设计欲望和创新动力。<br> (3) 以ACM模式进行数据结构实验教学<br> 每次实验前,我们在程序设计评测系统中给出基本实验或设计型实验题目和正确执行的测试数据,按题目的难易程度要求学生在2小时内完成2~3题的实验内容。设计好的程序提交给自动判题系统来判断,判断的结果马上返回。如提交没有通过,学生可修改程序并再次提交。对多次提交不成功的学生,实验教师要给予及时辅导。实验结束时,学生可通过系统清楚的知道自己的排名,这样的实验环境迫使学生在课前认真做好准备,课后强化与数据结构内容相关的ACM试题,而且可以充分调动学生的学习兴趣,从而达到熟练掌握所学内容解决问题的实践教学目的。<br> (4) 自动评测的考核方式<br> 在学期结束时,要求每个学生在规定时间内以独立解题方式,根据已经学过的知识设计算法,编写程序,调试运行,分析运行结果,根据提交成功的题目数量来评定实验考试成绩。<br> 基于ACM模式的数据结构实验教学极大地提高了学生的编程能力和对专业学习的趣味性和挑战性,也为ACM竞赛队员的选拔提供了很好地途径。最近三年,我院在省及亚洲区ACM竞赛中多次获奖,计算机专业的学生也在校大学生科技创新项目获得20余项的资助。事实说明基于ACM模式的数据结构实验教学对程序与算法设计训练卓有成效,在大学生成为计算机软件专业人才的成长中发挥非常重要的作用。<br> <br> 5结束语<br> <br> 基于ACM模式的数据结构实践教学,将理论知识学习和实际应用有机结合,注重编程能力的提高和解题思维能力的训练,引入竞争交流机制,为学生提供了因材施教的途径,激发了学生自主研究性学习的兴趣。通过数据结构实验教学的改革,取得了明显的效果,提高了教学质量和教学水平,对软件开发类课程的教学改革有一定的示范作用。 <br> <br> Reform and Exploration of Data Structure Experiment Teaching Based on ACM Mode<br> Abstract: In this paper, on the basis of introduction ACM and programming judge online, some methods and its experimental results of data structure e
她来到他面前,坐下,一脸惶恐地等待他来给她诊断。他有些恍然,这不是那个曾令他几欲爱得发疯的女孩吗?他依然能从她满脸沧桑里认出她来,而她却对他无动于衷,她也许早已从记忆里忘掉他这样一个年幼时的同学了。<BR> <BR> 那时,他和她在一所乡村中学读书,她是镇长的女儿,容颜出众,衣着光鲜,是学校里师生目光的聚焦点。她就像一只白天鹅,令他不敢目视。他在内心里爱她,也许那爱是青涩的喜欢,还谈不上爱情,可他为此夜不能寐。他从内心里深深地自卑,她是那么漂亮,而他是那么低微,一身旧衣旧裤,少言寡语,永远也不会引起别人注意。<BR> <BR> 他那时发了疯一般学习,他只有从学习中找到一点自尊。每每考试过后,当老师读出分数时,他才会像一颗流星一样在众人面前闪亮一下。<BR> <BR> 他看着面前的这个女人,不由感叹,岁月真是无情,虽然能从她的轮廓里认出她来,却再也找不到她的一丝鲜艳了。她的脸皮轻轻地耷拉着,眼睛大而无神,他本来想和她聊聊他们熟悉的校园生活,可是她未必能记得他,就打消了念头。她向他倾诉身体的不适,令她难以忍受的痛苦,他明白,这种状况非常坏,基本上可以判定为那个恶性的字眼,可他真的不愿她患上这种病。他建议她先去做检查。她默默地听从了,按他开的检查单,一项一项地楼上楼下去做检查。<BR> <BR> 他不明白,她为什么单独一个人来?他暗恋她多年,直到她大学毕业,他还暗地里打听她的消息,听说她后来嫁给一个副县长的公子,才熄灭了对她爱的火焰。等她把各项检查单汇总了交给他时,他认真地看了多遍,没有对她说病情,却和她聊起家庭。她叹息着,告诉他,她现在一个人带孩子过,丈夫早和她分道扬镳了。他听着,忽然觉得心疼。这些年,他原以为她生活得比学生时代更幸福,有人宠有人爱,锦衣玉食,不曾想,却是惨淡度日。从她的衣着她的肤色,就知道她生活过得并不如意,半新不旧的衣服,黯淡灰土的肤色,这是困境里的人才有的状态。<BR> <BR> 他就想,她那时在校园里灿烂的笑,老师表扬,同学羡慕,生活怎么可以这样无情地逆转呢?他不想再在她灰暗的心头放一把刀,他不敢告诉她最后的结果。他怕她承受不起,她的亲人同样不敢面对。<BR> <BR> 后来,她问,“病情怎么样?”他装作若无其事地说:“需要做一个小手术,要尽早。”她信了,他是名医,技术精湛,令她信服。<BR> <BR> 准备手术那天,她早早地来了,陪同她的还有她苍老的父母。他亲自主刀,他想尽心把手术做到好些,让她少些痛苦,术后可以恢复得快一些。等切开腹部,病况比他预想的要严重得多,他一边切除那些坏死的组织,一边想着她年轻时神采飞扬的模样。<BR> <BR> 他悄悄地替她垫上部分医药费。他不敢告诉她,她手术需要的真实医药费用,她只交了一部分,其余是他交付的。为了不让她知道,还对她和她的父母说:“你们年纪大了,这些麻烦的事,我帮你们做了。”她想:“
这个医生真好。”<BR> <BR> 本来,他告诉她手术后很快就可以出院的,却多住了十多天。在他的精心照料下,她恢复得很理想,她的父母很是感激他,给他买了许多东西,他一样也没要,都送到病房里交给了她。她感激得不知说什么好。<BR> <BR> 终于等到她可以出院了。<BR> <BR> 看着她和父母坐进车里走了,他忽然觉得释然。藏在心里多年的爱,总算施予了。那个在他心头蹦跳了十多年的女孩子,一下子遁迹得无影无踪。他知道,潜藏多年的那份爱已从他的心底走了。<BR> <BR> 他回到家,看到妻子,有异样的新鲜。走过去,搂着她,吻了又吻。妻子说:“你怎么了?”他说:“我爱你。”这是真的,他终于发现自己开始真正地爱了。<BR>
</p>
国家973信息技术与高性能软件基础规划项目首席科学家顾钧教授和中国工程院院士李国杰教授指出:“我国的软件开发要算法先行,这样才能推动软件技术的研究与开发,提高我国企业软件产品的技术竞争力和市场竞争力”。算法设计与分析是计算机专业的核心课程,是一门理论性与实践性相结合的课程。通过课程学习学生应掌握常用算法设计策略,提高软件开发设计和解决计算机科学与工程领域中较复杂的实际问题的能力;同时通过学习算法复杂性分析,培养学生在软件开发中注重效率的理念。<br> <br> 1亟待改进的现状<br> <br> 在我校本科生课外实践、毕业设计和研究生考试阅卷工作中,发现学生算法设计能力普遍欠缺,其它普通高校也有类似情况[1]。教材是体现教学内容和教学方法的知识载体,是进行教学的基本工具,分析现有的算法设计与分析教材,不难发现出现以上现象的根本原因。现有教材定位往往偏高,注重理论讲解高深,适合研究生、重点院校本科生使用,这样的教材往往导致学生对算法设计课程产生畏惧心理。现有教材对算法策略的讲解多以问题为章节,没有概括和归纳算法策略的特点,及在同一策略下不同问题的应用差别,学生很难系统地掌握算法策略的应用技能。另外,现有教材普遍只侧重算法效率分析,而缺乏提高效率方法和技巧的介绍,综上所述,深感有教材建设的必要性。<br> <br> 2本教材建设宗旨及其结构设计<br> <br> 根据现状分析,本教材建设以“适用性实用性”为宗旨,定位于普通高校计算机专业本科学生,以素质教育的为需求,注重培养学生解决实际问题的能力。基于此宗旨本书分四个层次: <br> 第一篇“引入篇”包含两章,从问题求解的步骤开始认识算法及其重要地位、并学习算法设计的基本过程、算法效率分析方法;为提高学生的学习兴趣,还对当前主流算法及软件进行了简要介绍(此节可作为选修)。<br> 第二篇“基础篇”,对算法设计基本工具循环、递归机制和数据结构的应用技巧和提高算法效率的方法做了讲解。<br> 第三篇“核心篇”包含两章,主要介绍了常用的几种算法策略,如:枚举法、递推法、分治法、贪婪算法、动态规划及与图搜索有关的算法策略,并对算法策略及其应用进行了总结比较。<br> 第四篇“应用篇”,每节针对同一问题采用不同的数学模型、不同数据结构或不同的算法策略进行算法设计,并进行算法效率上的分析比对。<br> <br> 3教材建设特色<br> <br> 教材建设遵循《中国计算机科学与技术学科教程2002》(“China Computing Curricula 2002”,简称“CCC2002”)知识体系,属于算法和复杂性(AL)的范畴。以AL1.基本算法分析和AL2.算法策略作为教材核心。<br> 教材建设中吸收国内外同类教材[2] [3][4]的优点并加以消化,力争浅显易懂地讲解深奥的算法设计策略和分析方法。在体现“适用性实用性”的宗旨下,本书和现有算法设计的教材相比主要特色有:<br> (1) 重系统性,符合认知规律<br> 本教材结构严谨,章节划分合理、层次分明。特别是教材第三篇“核心篇”摒弃同类教材中根据问题划分章节的方法,通过对算法策略特点的概括和归纳,以同一策略下的应用差别来划分章节,能反映知识点间的联系,符合认知规律。同时,在各章末尾对算法进行比较、总结,使学生能方便、全面地掌握算法策略的本质及其应用体系。<br> (2) 重启发性,体现创新意识<br> 有些算法设计教材中的例题,先给出问题的算法设计结果,再去讲解它们。这样做只能使学生“知其然”而“不知其所以然”。本书中例题要经过问题分析、数学建模、数据结构设计和算法设计后,才给出算法和算法分析。这样讲解富有启发性,利于培养学生“设计”算法的能力,而不是“记忆”算法的能力。同时,改变学生被动接受知识的习惯,养成主动学习的意识。<br> (3) 重适用性,提高学习效率<br> 第二篇“基础篇”是从程序设计到算法设计承上启下的内容,对问题求解的基本方法、算法基本工具的使用及提高算法效率的基本技巧做了必要的总结、归纳,相信这些内容会给普通院校的广大学生有较大的裨益,可以从根本上促使其打好学习算法设计的基础,提高学习效率。<br> (4) 重开放性,培养学科兴趣<br> 第一篇中对现代算法的概览,旨在扩大学生的知识面,提高学生对算法设计学习的兴趣。教材中还介绍了从算法到程序转换中的常见错误和注意事项,引导学生不能仅停留在形式化的算法描述阶段,而是要大胆上机实现,检验算法设计的结果。这样在提高学习本学科兴趣的同时,还能尽快提高学生的实践能力。<br> (5) 重实践性,拓宽思维空间<br> 教材中介绍的算法设计方法与现代的编程方法步调一致,有利于激发学生问题求解的欲望,增强综合应用能力。第四篇“算法设计实践”,每节中针对同一问题采用不同的数学模型、不同数据结构或不同的算法策略进行算法设计,旨在扩展学生解决问题的思路,促使学生灵活运用算法知识,而不是生搬硬套教材中的算法。同时,也可以通过对多种算法设计的分析比较认识算法的优劣。<br> <br> 4教材建设成果<br> <br> 教材已于2006年3月由清华大学出版社出版。教材出版后虽然仅使用一次,但教材初稿已多次作为算法设计与分析课程的讲稿,学生使用后普遍反映良好,他们认为教材将复杂的算法思想进行了高度的概括归纳,以简洁的方式呈现给读者,具有易读、易懂性,实例丰富,非常实用。省内其它院校进修的教师也认为这个教材(讲稿)内容充实,第四篇是全书的一个亮点,非常有利于提高学生的算法设计应用能力;教材没有过多的算法注释,为启发式、探究式、研究式教学方法提供了好的教学平台。2010年6月该教材已被列入国家“十一五”规划教材。 <br> 参考文献 <br> [1] 李海伦,唐全,“程序设计”课程教学改革的研究与实践——加强算法设计教学,提高学生编程能力《 计算机教育 》2005年 7期21-22<br> [2] 王晓东主编《计算机算法设计与分析(第二版)》,电子工业出版社,2004<br> [3] (沙特)阿苏外耶著,吴伟昶等译,《算法设计技巧与分析》,电子工业出版社,2004.8<br> [4] Sara Baase,Allen Van Gelder,《计算机算法——设计与分析导论》第三版,高等教育出版社,2001.6<br> </p> <p> </p> <p>
</p>
随着信息技术的发展,特别是互联网的迅速普及和广泛应用,信息安全的地位越来越重要。信息安全关系到国家安全、经济发展和社会稳定等各个方面。提高信息安全水平的关键在信息安全人才的培养,把握信息安全人才培养需要,明确信息安全人才培养思路,构建合理的信息安全专业课程体系,是每一个信息安全专业的教育工作者义不容辞的责任。<br> <br> 1信息安全人才需求<br> <br> 自上世纪八十年代以来,人们对信息安全的认识经历了通信安全(COMSEC)、信息安全(INFOSEC)和信息保障(IA)三个阶段。通信安全重点考虑信息的机密性,信息安全通过机密性、可靠性、可用性和不可否认性等来全面刻画安全的属性,而信息保障则通过保护、检测、响应和恢复四个环节强调安全应当是一个过程,而非单一的技术或产品。人们对信息安全的认识逐渐深入、全面。与此同时,密码理论与技术、安全协议理论与技术、可信计算理论与技术等信息安全相关理论与技术的研究不断深入,防火墙、入侵检测、VPN等各种安全产品不断发展成熟。<br> 然而,信息安全形势依然严峻。互联网上的恶意活动肆虐,网络钓鱼、垃圾邮件、僵尸网络、特洛伊木马和零日威胁与日俱增。不同的威胁和方法相互贯通,互相利用,如恶意代码可能利用系统及应用程序漏洞来安装后门,然后下载并安装 bot 软件,这些 bot随后用来分发垃圾邮件、建立网络钓鱼站点或发起分布式服务拒绝攻击。利用黑客/病毒技术的“产业链”逐步形成,攻击者利用黑客/病毒技术或窃取机密信息、虚拟财产,变卖牟利,或组建僵尸网络,敲诈勒索。<br> 在信息安全理论技术研究和信息安全实践之间似乎存在着一条鸿沟,无论信息安全理论与技术如何发展,总无法解决信息安全问题,信息安全问题不但没有改善,似乎还有恶化的趋势。事实上,“安全性是一条链,其可靠程度取决于链中最薄弱的环节”。在信息安全链条上,最薄弱的环节并不在于缺少系统的安全理论或成熟的安全技术,而在于严重缺少运用这些理论技术来保障信息安全的人才。信息安全专业人才的匮乏,已经成为信息安全发展的瓶颈。<br> 信息安全作为一项复杂的系统工程,对信息安全人才的需求也是多方面多层次的。根据所从事的工作性质划分,信息安全人才可以分为以下三类:<br> (1) 从事应用型工作的专门人才。他们主要在政府、各企事业单位从事信息系统安全防护体系的建设、管理,安全事件的处置、恢复等技术
工作,以及在生产安全产品的企业中担负系统集成、安全服务的技术工作。对应用型人才的基本要求是具备信息安全理论基础和知识体系、能够从技术上实施信息系统安全防护体系的构建与管理。<br> (2) 从事工程型工作的专门人才。他们主要在生产信息安全产品的企业中从事安全产品软、硬件的开发、实现与测试等工作。对工程型人才的基本要求是具备较为坚实的信息安全理论基础、系统的信息安全知识,能够熟练应用(包括创造性应用)安全原理与知识、具有较强的工程实践能力和良好的团队精神,等。<br> (3) 从事研究型工作的专门人才。他们通常是在攻读更高的学位后,在信息安全科研机构从事信息安全理论、信息安全核心技术的研究工作,或在生产信息安全产品的企业中从事安全技术研究和安全产品的设计工作。对研究型人才的基本要求是要具有深厚的信息安全基础理论、丰富的信息安全知识、创新意识、创新能力,等。<br> 信息安全对人才的需求呈金字塔型结构,信息安全需要大量的应用型人才、适量的工程型人才以及少量的研究型人才。造成当前信息安全理论技术研究和信息安全实践之间存在鸿沟的原因是金字塔型结构的底部——信息安全应用型人才的大量缺失。与信息安全人才需求的金字塔型结构相匹配,信息安全人才培养也应当是金字塔型,只有这样才能满足信息安全的实际需求,降低用人单位和人才自身的再培养成本。<br> 信息安全专业的本科阶段固然是高层次人才培养的打基础阶段,但大部分本科生的培养应当是符合信息安全需求的实用性人才。<br> <br> 2信息安全人才的知识需求<br> <br> 信息安全学科是一个“以信息安全理论为核心,以信息技术、信息工程和信息安全等理论体系为支撑,以国家和社会各领域信息安全防护为应用方向”的跨学科的交叉性学科群体系。该学科交叉性、边缘性强,应用领域面宽,是一个庞大的学科群体系,涉及计算机科学与技术、通信工程、数学、密码学、电子工程等诸多学科的内容。<br> 2.1基础<br> 在信息安全专业的基础知识中,包含了计算机科学与技术、数学、密码学、通信工程、电子工程等方面的基础知识。<br> 计算机科学与技术在信息安全专业中具有突出的作用和地位,计算机基础知识在信息安全专业基础中比例很大,其中硬件基础知识包括计算机原理、汇编语言,等;软件基础知识包括数据结构与算法分析、操作系统原理、中高级语言、面向对象程序设计、软件工程,等;网络基础知识包括计算机网络、网络协议,等。<br> 就数学工具而言,信息安全涉及的数学领域包括:数论、组合数学、抽象代数、图论、形式语言与自动机、格论、数理逻辑、概率论与数理统计、随机过程等数学分支。<br> 密码学是构建信息安全体系的基础,也是实现信息安全技术的主要手段。信息安全专业的密码学基础包括序列密码、分组密码、公钥密码、Hash函数,等。<br> 通信工程基础包括信号处理、通信原理方面的基础知识,电子工程基础则应包括弱电类专业应掌握的电路与电子技术基础知识。<br> 2.2专业知识<br> 信息安全专业知识的内容非常丰富。按照主要内容和研究角度的不同,信息安全具体包含的知识主要有:<br> (1) 密码技术。密码技术主要包括两部分,即基于数学的密码技术(包括序列密码、分组密码、公钥密码、Hash函数、认证码、数字签名、身份识别、密钥管理、PKI技术等)和非数学的密码技术(包括信息隐藏,量子密码,基于生物特征的识别理论与技术)。<br> (2) 安全协议技术。包括各种实用安全协议如IPSec 协议、SHTTP协议,S/MIME协议、电子商务协议等的设计、分析与应用。<br> (3) 安全体系。包括安全体系模型的建立及其形式化描述与分析,安全策略和机制的研究,检验和评估系统安全性的科学方法和准则的建立,运用这些模型、策略和准则的信息系统(如安全操作系统,安全数据库系统等)的研制。<br> (4) 信息对抗技术。包括黑客防范体系,信息分析与监控,入侵检测原理与技术,应急响应系统,计算机取证技术,计算机病毒防治,信息隐藏与检测技术,等。<br> (5) 网络安全与安全产品。包括网络安全整体解决方案的设计与分析,网络安全产品如身份认证产品、CA 和PKI 产品、安全服务器、防火墙、安全路由器、虚拟专用网(VP
展开阅读全文