首页

华盛论文咨询网

当前位置:首页>>科技论文

基于项目驱动的移动智能终端应用开发教学探讨

来源:华盛论文咨询网时间:2018-07-25所属栏目:科技论文

  

  摘要:近年来,Android开发工程师的就业前景非常好,国内外各大高校在教学、科研、人才培养方面开始逐步引入Android相关的移动应用开发课程。作为一门新兴课程,其教学方法的研究和实践还处于探索阶段。常规的教学模式以理论课为主,上机实验课为辅,现有的一些基于案例和项目驱动的教学方法,虽然在一定程度上对于提高学生动手能力有一定的帮助,但教学案例不太合理,当前的培养模式,不能满足学生就业和创业的需要。提出一种新的基于项目驱动的移动智能终端应用开发教学模式,让学生具备参与大型Android项目的能力,为学生基于Android的移动互联网创新创业带来帮助,提高学生的实践能力和工程能力。

Android开发工程师

  关键词:项目驱动;移动智能终端;Android开发;创新创业

  1引言

  近年来,Android软件开发工程师的就业前景非常好,国内外各大高校逐步引入了Android程序设计相关的课程,同时Android与移动智能终端相关的科研也慢慢开展。

  作为一门新兴课程,其教学方法的研究和实践还处于探索阶段。常规的教学模式以理论课为主,上机实验课为辅,由于Android的实践性较强,这样的教学模式存在诸多弊端,学生自我探索和训练也面临各种困难。现有的一些基于案例和项目驱动的教学方法,虽然在一定程度上对于提高学生动手能力有一定的帮助,但仍存在着教学案例不太合理,一个案例只对应某一知识点,且案例太小,一旦面对大型的An-droid项目时且APP需要上线,学生不能独立从事开发任务。当前的Android培养模式,与市场与实际脱节较严重,不能满足学生就业的需要,对学生就业质量也有影响,教学案例没有融入当前“互联网+”和基于云计算的移动互联网创业环境,案例过于老旧,很多缺乏网络编程相关案例。

  这样,Android程序设计的教学问题就成了当前一个比较紧迫的任务。本项目提出基于项目驱动的移动智能终端应用开发教学模式,通过设计丰富的项目案例,结合互联网创业,并开展相应的教学实践,研究成果将能够帮助学生提高Android开发能力,让学生更有效地把握大型Android项目,为学生基于Android的移动互联网创新创业带来帮助,开发完整的APP且能参与各种科技创新竞赛,能有效的激励学生的自主学习意识,满足个性化的需求,提高学生的实践能力和工程能力,具有重要的现实意义。

  2课程现状分析

  手机和移动互联网的普及将我们带入一个移动状态下的在线互动时代。根据数据调查显示,我国手机网民规模早已位居世界第一位,中国的移动互联网市场进入了快速发展的黄金阶段。随着移动互联网的业务的不断丰富,人们可随时随地通过手机、平板等移动设备快速获得资讯服务、电子支付、网上购物、社交服务、智慧出行等各项方便快捷的服务,各种创新的应用正深刻地影响着我们的生活,如QQ、微信、支付宝、滴滴、淘宝、美团、美图秀秀、网易云音乐、摩拜等APP,已成为我们生活中不可获取的一部分。

  中国移动互联网的迅猛发展,一方面得益于国家政策的层面,大力推行“互联网+”;另一方面是国家基础网络的提升,4G/5G及家庭网络的提速,人们可实现随时随地上网;另一方面是市场的驱动,各种智能终端的应用开发,其开发成本非常低,这也在一定程度上导致了各种APP不断出现并推向市场。

  2007年,Google公司对外发布了基于Linux内核的新型智能终端操作系统Android。该系统可广泛应用于平板电脑、智能手机、智能电视等。与苹果公司的智能移动终端平台iOS相比,Android具有开放性,获得了终端硬件制造商、运营商的支持,开发门槛更低。Android系统在智能手机市场中处于绝对主导地位,占据的全球智能手机份额远超苹果的iOS。

  Android软件开发工程师的需求与日俱增,Android应用程序开发的就业前景非常好。正是在这种大好形势下,国内外各大高校在逐步引入Android相关的移动智能终端开发课程,以就业为导向,如何能使学生快速熟练的掌握Android应用开发的技能,培养满足企业需求的An-droid开发工程师,是高校Android相关课程教学迫切需要解决的问题。Android应用程序开发作为一门新兴课程,其教学方法的研究和实践还处于探索阶段。

  首先是理论课,主要以教师在课堂讲授为主,内容围绕着Android各知识点展开,然后配合机房的实验课,以学生编程为主,老师做实验指导,内容围绕理论课上的关键知识点来展开。这样的程序开发类课程的传统教学模式存在的诸多的弊端有以下几点。

  (1)无法满足学生的个性化需要。教师按照教学的进度,组织课堂教学。在理论课上讲授知识点,实践课上学生完成“围绕知识点而设计的实验”。整个过程完全在教师的统一掌控下开展。老师没有充分考虑学生之间接受能力的差异及水平的差异,所有的学生编写完成一样的程序作业或任务,无法满足学生个性化需要、达到因材施教。

  (2)课堂教学的效率不高。由于学时学分等政策原因,不能完全取消理论课教学而仅保留实验课。而程序设计课程注重学生实践动手能力的培养,学生需要的是程序开发和调试的过程中解决问题的能力,这就要求课堂教学应以交流、探讨、解决问题为主。

  然而传统的教学以“填鸭式”的传授知识为主,并不会讲解程序开发中的技巧,且受教室的场地约束,在课堂教学中也不便于去展示程序开发中的技巧,老师讲解的知识点,学生不能立刻去尝试,得等到课后或者上机实验课才能去尝试。真正在上机实验时,学生又经常碰到问题,有些是课堂老师讲过的,但是学生又忘记了,因此老师又要花较多时间来对知识点进行重复。

  (3)不利于培养学生的实践能力和自主学习能力。传统的一对多问题讲解和“填鸭式”的教学使学生养成了严重的思维惰性。这就导致了很多学生是被动的接受知识,练习式甚至是验证式的完成老师安排的实践任务,学生不善于钻研和探索,不具备分析问题、解决问题的能力,同时还不具备自主学习能力。然而这些能力都是程序员所必须具备的。

  (4)部分教师虽然在课堂教学中采用了案例教学,但这些案例往往是对特定知识点的练习,与实际的项目开发相差很大,学生毕业后遇到项目开发时不能正确分析具体问题;课后编程作业或编程实验虽然在一定程度上锻炼学生的编程能力,但这些题目往往是针对某个特定的知识点,过于简单,导致很多学生编程作业完成得很好,但实践能力却得不到提升。

  由于立足于“应用程序开发”,Android应用开发课程的教学目标主要是讲授调用Android操作系统应用框架层提供的API、四大组件及相关Java类库的方法,课程目标是培养学生开发Android应用程序和实际工程项目的能力。从授课的内容来讲,难度不是很大,但是问题在于学生“听得懂”只是教学目标的第1步,如何“学得活、做得出”才是难点所在。

  Android作为一门极其注重动手实践能力的课程,传统的“老师讲、学生听”的教学方法只能够达到第1步,但是在加深学生对知识的理解,灵活应用方面则效果较差,即使配合实验课,也因为学时限制和教学进度安排等因素,导致学生只能完成一些简单的原理验证性实验,这对提高学生动手实践能力的作用不是很大。黄锵等提出了以学生为实践主体,直接进行项目实训的一种教学方法,将课程知识内容进行分解和转化,通过项目的形式组织和开展教学,将师生融为一个团队,一起来完成一个完整项目。以项目为导向,与传统的理论讲授模式不同,它可以使学生在动手实践的过程中,边学边做,锻炼学生的实际编程能力,体会软件开发的全过程。从而,学生能够积累软件开发的技能和经验。

  众多研究也表明,基于项目导向的教学方法,是非常适合于Android应用开发的。近几年来,国内外高校不断探索软件工程和程序设计类相关课程的教学研究工作,主要通过引入了CDIO的思想。CDIO的意思是构思(Conceive)、设计(Design)、实施(Implement)和运行(Operate),它强调以产品、生产流程和系统从研发到运行的生命周期为载体。通过系统的产品设计,培养学生的个人专业技能、团队协作和沟通技能、职业技能,培养在企业和社会环境下,对产品和系统进行构思、设计、实施、运行等的综合能力素质。

  对于软件开发来讲,模拟企业工作环境和工作方法,更加贴近企业中软件产品生产开发流程,对于学生未来踏入职场是非常有益的。其核心思想特别强调了以项目驱动的方式,来培养和提高学生软件开发的实践动手能力。虽然目前的这些研究工作对软件工程和程序设计类相关课程的教学方法改革进行了一些实践与探索,但仍然缺乏有效的教学资源、教学案例、教学手段来帮助学生快速深入地理解和掌握软件设计的理论、技术及开发技巧,并切实培养和提高他们软件开发的实践动手能力。

  宋佳喜等提出了基于CDIO理念的Android应用程序开发教学改革,引入了CDIO工程教育理念,以众多小案例进行授课,但是所选取的案例过于简单,对于大型的Android项目,学生还是不能很好的把握,且所选择的案例与当前的“互联网+”时代脱节。如何选择较好的案例这是一个重要的问题,好的案例能够引起学生的极大兴趣。综上所述,虽然现有的一些基于案例和项目驱动的Android教学方法或经验是可以借鉴的,虽然在一定程度上对于提高学生动手能力有一定的帮助,但仍存在着教学案例不太合理,一个案例只对应某一知识点,且案例太小,一旦面对大型的Android项目时,学生不能独立从事开发任务,技术不够扎实。

  当前的培养模式,不能满足学生就业的需要,对学生就业质量也有影响,同时对于学生创业也没有较大帮助,所开发的是小例子、小玩具而不是完整的可以拿得出的产品。由于课程先后顺序的原因,所开发的APP如果需要网络功能,先修课程需要涉及Web开发和网络通信,而现实情况是很多学校在课程先后顺序设置上存在不合理,导致Android教学中往往将Android网络编程这个知识点跳过或者降低要求。

  3教学方式及方法建议

  针对Android程序设计知识结构的特点,形成有效的基于项目案例的训练模式,让学生通过系统学习和训练来掌握Android程序设计的基本技能,有效地提高用Android程序开发大型项目的能力,为创新创业带来一定帮助。要达到上述目标,我们认为应该要设计合理的项目案例,且要将分组协作项目开发思想在教学中落到实处。

  项目案例应融入当前“互联网+”和基于云计算的移动互联网创业环境,案例不能过于老旧。利用阿里云、腾讯云等公有云和SaaS软件服务开放平台,搭建Android后台架构,是一大流行趋势,而学生普遍对此知识比较缺乏。不仅是为了学习Android编程,更重要的是能够运用所学知识能够分析和解决大型An-droid项目,能够为基于移动互联网的创业带来一定帮助,所开发的作品能迅速参加各类学生创新创业作品大赛。

  (1)教学方式。总的思路是“轻理论、重实践”,实验课应占据更多的课时,以随堂实验和课程设计相结合。教学内容不仅包含Android中的基本知识点,还要介绍一些与应用相关的高级知识(如网络编程、地图类、GPS定位、消息推送、多媒体、验证码相关开发知识点)。

  其次是项目案例的介绍。针对每一个知识点,应该选择有代表性并且对学生有一定的实用价值的案例,讲解案例中需要由学生去完成的模块,并介绍实现的方法及思路,以吸引学生的注意力和提高学生的兴趣,项目案例要丰富而且不枯燥,需要与时俱进,结合社会上的热点话题及共享经济和O2O等热门应用。

  (2)案例设计。教学内容不仅要让学生学会Android程序设计的基本方法和Activity、Service、ContentProvider、Broad-castReceiver、Intent等组件及API,更要让学生具备程序思维,能够根据生活中碰到的实际需求,最终转化为产品,实现现实生活中的各种手机和平板APP。此外,重点突出以创业为导向的大型Android工程项目案例设计,设计典型的互联网O2O、移动社交、智慧生活、个性化服务及物联网项目案例,利用阿里云、腾讯云、Bomb移动后端云、极光推送、环信即时通信云、百度地图、科大讯飞等平台,方便地搭建Android后台,充分利用模块化开发的思想。每个案例应由老师完成整体框架,同时设计若干个训练模块。项目训练模块需要由学生亲自去参与,补充相应的代码,完成一定的工作,实现预定的功能,最终生成一个复杂的完整的APP。

  (3)分组协作项目开发。以GitHub为基础,锻炼学生良好的项目协作开发能力,利用GitHub进行代码托管和版本维护。大型Android项目往往需要多人参与,各有分工,如产品经理、前端UI、后台服务、测试、架构师等多个部分。从功能来划分的话,一个项目需实现多个功能,功能可进行划分且并行化地去开发。

  通过GitHub,采用分组的方式,组织4-5人为一个开发小组,一个小组完成一个案例,在老师提供的整体框架基础上,每位组员完成其中的若干个模块,且鼓励学生自由发挥,补充新功能和新模块。通过给学生提供分组协作项目开发真实环境,通过学生代码提交的情况及项目执行情况对学生的成绩进行评定,评定的方式更加客观,完全凭项目的贡献量和代码的提交量来打分,给学生压力,真正提高学生的实践能力。

  4结语

  本文分析了高校开展基于Android的移动智能终端课程及教学存在的问题,阐述了基于项目驱动的Android教学方式和方法,通过设计与时俱进的案例,为学生设计项目训练模块,基于GitHub引导学生进行项目协作开发,让学生真正掌握Android程序设计的知识点和基本技能,提高开发大型Android移动端项目的能力。

  参考文献

  [1]黄锵.项目导向的安卓课程教学探讨[J].电脑知识与技术,2014,10(17):4078-4089.

  [2]李跃飞.基于CDIO模式的翻转课堂教学改革的探索与思考———以《Android程序设计》课程为例[J].信息化教育,2015,(9):182-183.

  [3]郝强.探索《Android手机程序设计》教学中的CDIO教学模式[J].现代工业经济和信息化,2014,(6):81-82.

  [4]姚培娟,张志利.基于案例教学的《Android应用程序设计》的课程教学研究与实践[J].软件导刊,2015,(5):6-7.

  [5]何毅,张坤.基于Android应用开发的项目开发与案例精讲[J].大学教育,2013,(7):83-84.

  [6]宋喜佳,杨亮,刘伟,冯学妮.基于CDIO理念的Android应用程序开发教学改革[J].计算机教育,2015,(10):39-41.

论文发表问题咨询

回到顶部