电脑编程技巧与维护
主办单位:工业和信息产业部
国际刊号:1006-4052
国内刊号:11-3411/TP
学术数据库优秀期刊 《中文科技期刊数据库》来源期刊
       首 页   |   期刊介绍   |   新闻公告   |   征稿要求   |   期刊订阅   |   留言板   |   联系我们   
  本站业务
  在线期刊
      最新录用
      期刊简明目录
      本刊论文精选
      过刊浏览
      论文下载排行
      论文点击排行
      
 

访问统计

访问总数:24540 人次
 
    本刊论文
地理信息系统专业学生编程能力培养研究

  [摘 要]编程能力是地理信息系统(GIS)专业学生未来从事GIS专业工作的重要技能,为了满足社会对高层次GIS软件开发人才的需求,GIS专业学生必须提高GIS软件编程能力。通过分析GIS专业中编程能力的重要性,结合笔者的教学实践,提出GIS软件编程能力培养的目标及培养途径,包括合理地设置教学内容、慎重地选择启蒙编程语言、采取多样化的教学方式、鼓励学生参加GIS开发比赛以及强调以实际项目作为毕业设计内容等方法,为提升GIS专业学生的软件编程能力做出了有益的探索。

  [关键词]编程能力 教学质量 GIS

  [中图分类号] G642 [文献标识码] A [文章编号] 2095-3437(2014)17-0025-03

  地理信息系统(Geographical Information System, GIS)是一门集计算机科学、地理学、遥感科学以及测绘科学等多门学科为一体的交叉学科。[1] [2]进入21世纪以来,地理信息系统产业呈现井喷式的发展态势,目前国家已经将GIS软件产业作为重点支持和优先发展的领域。社会对GIS应用软件的数量和质量需求都在不断提升,这使得GIS软件人才的需求也迅速增加。[3]然而,目前GIS专业就业市场上存在的主要矛盾,是虽然每年都有为数众多的GIS专业学生毕业,但是绝大部分学生的GIS应用软件编程能力却难以满足用人单位的要求。[4]因此,高校GIS专业教学必须重视对学生GIS应用软件编程能力的培养。鉴于此,笔者拟结合自己的教学实践,从GIS软件编程能力培养的教学内容、教学手段以及与毕业设计和学科竞赛的关系等诸多方面进行初步的探讨,以期能够提高对学生GIS软件编程能力培养的教学效果。

  一、在专业培养方案和教学计划中突出软件编程能力的地位

  (一)在专业培养方案中强调软件编程能力的重要性

  计算机软件系统是地理信息系统的关键,GIS数据的表达、管理与分析都需要计算机软件系统的支持。[5]因此,计算机软件技术是地理信息系统重要的理论和技术基础。地理信息系统专业培养人才的目标是培养适应社会经济发展需要,具备地图学、测绘遥感和地理信息系统的基本理论、基本知识、基本技能的应用型人才。[6]目前GIS专业毕业生的就业方向大致可以分为四类:第一类是从事GIS软件应用系统开发工作,包括GIS平台软件开发和GIS应用软件二次开发。这一类就业单位主要是GIS软件平台公司(例如北京超图软件股份有限公司、中地数码集团、ESRI中国(北京)有限公司等)、GIS应用软件公司。这一类中还有相当比例的毕业生专门从事计算机软件的开发工作。毋庸置疑,从事这一类工作必须要具备较强的软件开发能力,尤其是从事GIS底层开发的人员。第二类是利用GIS软件解决某些行业的具体应用问题,主要就业单位为各行业的企事业单位。这类工作虽然对于毕业生的软件开发能力要求不如第一类高,但是在解决某些特定问题时也需要利用GIS平台软件进行简单的脚本语言开发,因此对于软件编程能力也有一定的要求。第三类是从事GIS专业的市场工作,包括市场营销和技术支持服务。这类工作对于毕业生的GIS软件编程能力的要求相对较低,但是如果其从事技术支持工作则仍然要求具有一定的软件编程能力。第四类就是转到其他行业,不再从事GIS专业相关工作。每年我院均有一部分学生转到其他行业工作。从以上的就业方向分析可以看出,对于GIS专业学生来说,软件编程能力是不可或缺的重要能力。因此教师在培养目标中一定要重视学生软件编程能力的培养。

  (二)在课程设置中突出软件编程能力的培养

  广州大学地理科学学院充分结合自身的师资特点,非常重视GIS专业学生软件编程等实践应用能力的培养。从表1可以看出,在专业课程中,主要针对软件编程的课程就有8门,包括Visual Basic程序设计、C程序设计、C++程序设计、C#程序设计、数据结构、GIS设计与开发、WebGIS原理及应用、GIS软件工程原理与方法。在2010-2011学年第2学期又增加开设了ArcObjects程序设计课程。其他与计算机专业相关的课程也占了较大比例。而在实践教学方面,我院几乎所有的计算机类和GIS专业课程均配有实践教学环节,实践课程与理论课的学时比例在1.2-2之间。同时还有集中实践教学环节,主要以上机实践为主。总体来看,实践教学环节与理论课的比例较为均衡。目前,我校2013年人才培养计划方案已经编制完成。新方案中继续增加软件编程等实践类课程的比重,同时实践类课程教学环节尤其是编程课程也做到了较好的延续性,例如上一学年开设了程序设计语言课程后,紧跟着就开设GIS设计与开发、ArcObjects程序设计等课程,而不是像以前一样中间间隔一个学年后才继续涉及与GIS二次开发相关的课程。

  二、强化GIS专业师资力量

  目前,我国的GIS教育发展到今天也只有10多年的历史,在此期间虽然师资队伍建设取得了长足进步,但能力建设仍显不足。GIS专业的师资力量往往是由地理学、测绘遥感学、计算机科学和数理等学科方向或领域的教师组合而成[7],真正从本科、硕士到博士阶段都是GIS专业的教师非常少见。以我院地理信息科学系为例,全系10多名专任教师中没有1名是从本科到博士阶段均为GIS专业出身,绝大部分都是学校从硕士阶段开始学习GIS专业知识。因此,建议加大师资力量建设,在目前GIS专业纯正出生的师资力量缺乏的情况下,在地理学、测绘科学、遥感学、计算机科学等各个方向至少配备2-3名教授、副教授或博士。

 三、慎重选择GIS专业学生启蒙程序设计语言

  以笔者自身的学习经历来看,编程能力的培养是一个不断模仿、逐步学习的过程。初始阶段的学习主要是对已有代码的模仿,然后逐步理解,形成自己的编程思维。在此,程序语言的选择是一个比较关键的问题。选择语言应注意语言在特定专业领域的应用情况、语言本身的功能和性能、语言学习的难度、今后发展趋势等问题。[8]目前大部分高校的GIS专业都是将Visual Basic(简称VB)程序设计语言作为入门程序设计语言进行教学。针对GIS专业而言,VB由于在功能、性能等方面的局限性,与大型、海量地理信息系统的要求之间存在一定差距,所以已经逐渐退出了GIS应用软件开发的舞台。C++比较适合作GIS的底层开发,NET与VB和VC相比不仅进行GIS的二次开发的效率较高,而且属于新兴技术。因此建议,如果在师资力量和学生基础都允许的情况下,可以考虑采用C++作为入门教学语言。然而,由于C++作为启蒙语言对于学生来说比较复杂,所以在具体教学中应该注意教学内容、教学方式的把握,可以采用分阶段教学的方式,先讲授C++语言的基础知识,再开设Windows程序设计之类的课程。另一种较为稳妥的思路是首先以Visual Basic语言进行程序设计语言入门,然后再进行C++语言的教学。此外,笔者通过在讲授GIS设计与开发、C#程序设计课程的教学实践中发现,只要课程内容设置得合理,将C#语言作为GIS专业学生的入门程序语言也是有可能的。因此,笔者在编制2013版专业人才培养方案的过程中,提出建议:改用C#作为GIS专业学生的入门程序语言,并最终被新版人才培养方案采纳。目前,采用新版人才培养方案的学生还未进入到学习该课程的学期,因此未能在教学实践中进行探索性尝试,这些需要在未来的教学研究中进一步深入研究。

  四、改变传统实践教学方式

  在实践教学环节方面,要改变传统的学生被动学习的传统模式,即先由教师进行操作演示再由学生模仿教师的操作或者是按照课件进行实验的重现。[9] [10]在这种方式下学生的主观积极性不强,往往是照猫画虎的走过场。[11] [12] [13]为此,教师应该采用多种教学手段来激发学生的学习兴趣,例如可以利用情景教学,使学生对GIS应用项目开发有相对真实的体验。由于绝大部分学生没有参与实际GIS应用项目的开发经验,因此如果只是单纯地讲解理论和技术,会使学生难于理解。在课堂上可以通过分组合作和角色扮演的方式,模拟实际项目开发的部分场景,将枯燥的理论和技术用灵活生动的方式表述出来,这样可以调动学生的学习积极性,提高学习兴趣。

  五、积极参加GIS开发大赛,以赛促学

  目前,各类面向高等院校和科研机构在校学生的GIS开发大赛层出不穷,不少用人单位都将参加GIS大赛的经历作为招聘人才的重要依据。[14] [15]当前,在国内较为主流的赛事主要有由北京超图软件股份有限公司主办的“超图杯全国高校学生GIS应用开发大赛”、由ESRI中国(北京)有限公司主办的“ESRI杯中国大学生GIS软件开发大赛”和武汉中地数码有限公司主办的“中地数码杯全国高校学生MAPGIS二次开发大赛”。GIS开发大赛不仅要求学生具备一定的基础理论知识,而且更加注重考查学生综合运用所学知识解决实际应用问题的能力。根据笔者过往指导学生参加比赛的经验来看,学生普遍反映只要完整地参与了一次GIS开发大赛的全过程,对其GIS应用软件编程开发能力的提升作用非常明显。

  六、以实际项目为例教学,狠抓毕业设计

  据了解,GIS软件二次开发课程在多数高校都是安排在大学三年级进行,而四年级马上就要面临毕业设计。毕业设计是学生本科阶段最后一次完整实践GIS应用项目开发的机会。因此,应该鼓励指导教师和学生依托合作企业,主动选取具有实际应用价值的GIS应用开发项目作为GIS二次开发课程的实践教学内容,教师在课程的教学过程中首先进行初步的尝试,并在次年积极引导学生在该课程的实践教学的基础上延伸为毕业设计的内容。这样既可锻炼学生分析问题并解决问题的能力,又使得学生在开发实际GIS应用系统的过程中真正理解GIS软件设计与开发的理论知识,并极大地提升学生的GIS软件编程能力。

  七、探索GIS专业的“卓越工程师计划”培养模式

  2010年,国家启动了“卓越工程师计划”,旨在培养造就一大批创新能力强并适应经济社会发展需要的高质量各类型工程技术人才。地理信息系统专业也是一门实践性极强的学科,如何培养出高素质、具有很强的实践能力的专业人才是我们必须面对的问题。因此,应该以“卓越工程师计划”为契机,探索如何加强GIS专业学生实践能力的培养。令人欣喜的是已有不少的学校做出了探索性的尝试[16] [17],可以为我们提供借鉴与参考。但是,由于每个学校的师资力量、教学条件和学生素质都大不相同,因此必须结合本校的实际情况进行分析。首先应该分析GIS专业教学模式的现状,并参照“卓越工程师计划”的标准,修改并提出新的实践教学要求、实践教学内容、实践教学方法和模式,从而提高教学水平和教学质量,培养合格的人才。为此,在编制2013-2015年专业发展规划的过程中,笔者据此提出建议实行“卓越工程师计划”的探索,以便在未来的学科建设中进一步深入研究。

  八、结论

  通过以上分析,我们认为可以通过以下几种方式提升学生的编程能力培养效果,具体包括:1.强化GIS专业师资力量;2.慎重选择学生启蒙程序语言;3.优化教学方法,达到启发式教学的效果;4.积极组织学生参加GIS开发比赛从而加强学生的编程能力,同时也提升指导教师的专业素质;5.以实际项目作为GIS二次开发课程教学内容,并进一步拓展为毕业设计内容;6.探索“卓越工程师计划”在GIS专业人才培养中的应用。以上是我们针对如何加强GIS专业学生编程能力培养的一点浅薄意见,以期与同行交流探讨。

特别说明:本站仅协助已授权的杂志社进行在线杂志订阅,非《电脑编程技巧与维护》杂志官网,直投的朋友请联系杂志社。
版权所有 © 2009-2024《电脑编程技巧与维护》编辑部  (权威发表网)   苏ICP备20026650号-8