浅谈中小学生手机应用开发的教学经验
作者(来源):胡 晟    发布时间:2017-09-10

【摘要】中小学生的手机应用开发教学已经在不断地被探索,面对不同年龄段和基础能力的中学生和小学生需要在常用的几种环境搭建方案正确的选用合适的教学软件和教学方案来更好地帮助学生理解和应用手机开发技术。

 

【关键词】手机应用 Android系统 App 教学方法

 

随着Android手机开发教学的普及,其向下渗透的趋势也愈演愈烈,以中小学生为主体的App开发教学正在逐步进入我们的视野,但由于中小学生的计算机基础较为薄弱,加上编程基础的内容非常抽象化,有些内容很难理解,在度过了学生与App的“蜜月期”后,生涩的代码,复杂的调用结构经常会使学生产生厌倦、畏惧心理,这给教学带来了不小的困难。如何将枯燥艰涩难懂的编程内容让学生吸收,这一任务尤为艰巨。笔者通过几年的教学实践,针对如何给中小学生上好Android开发分享一些观点,希望能与同样在探索的教师进行交流和探讨。

1开展手机应用开发的教育背景

1.1中小学生手机用户覆盖情况

根据国家统计局 2015年度发布的统计信息中第十项 【教育、科学技术和文化的数据】可以看出2015年全国中小学生的数量,2015年全国小学生有9360万;初中生有5832.4万人;高中生有3197.1万人,中小学生总计1亿8389.5万人。其中小学生智能手机的普及率达到46.6%,中学生智能手机的普及率达到95%。如此大规模的中小学生都已经成为了智能手机的用户,同时,也需要大量满足不同需求的App来供中小学生用户选择。

1.2中小学生学习手机应用开发的必要性

在教育的道路上,从来不乏对新事物的接纳与探索以及新的课程替代传统课程成为学习的核心。在古代,四书五经替代了农耕方法成为了学习的核心。近现代英语课程、计算机课程便是很好的例子,过去所不存在或不被重视的课程,将来也有可能成为学生必修的教学内容。随着手机和互联网的爆发式增长和渗透,手机应用开发课程成为必修课的那一天似乎也离我们越来越近。
    其实早在20年前,带领我们进行改革开放的伟大领袖邓小平主席就已经说过,“计算机的普及要从娃娃抓起”从此中国开始了最早期的针对儿童的计算机教育。而到了20年后的今天,这句话可能已经要变成“计算机的教学要从每个娃娃抓起”,人人会编程,人人会开发。这似乎将成为一种生活技能,而不是一项科学技能。展望大洋彼岸,美国总统奥巴马参与录制了“编程一小时”活动,他呼吁美国全民编程,“编程关乎美国的未来我们需要孩子们熟练地掌握这些技术
    由此可见,基础教育深入学习计算机编程已经成为教育的趋势。在当前的环境下,微型计算机的使用率正在不断下降,取而代之的是移动端设备,而这些设备绝大部分是Android系统以及iOS系统,其中Android系统的占比远高于iOS系统,因此本文所选择的操作系统为Android系统。在硬件上,本研究也选择了使用率更高的手机作为首选平台。以此来探索中小学生App开发的教育方式。

2Android开发平台现状

2.1方案一:JDK+Eclipse+ADT

这是最早的Android开发平台,由于Android是基于Java的编程语言,所以JDKJava Development Kit)是编写java程序必不可少的环境,在安装完成后还需要对系统进行环境变量的配置。而Eclipse是帮助编写Java代码的工具,他可以使工作效率有效提高,而且支持各种插件,例如Android。而ADTAndroid Development Tools)是为Android开发提供开发工具的升级或者变更,简单理解为在Eclipse下开发工具的升级下载工具。通过它来安装Android SDKSoftware Development Kit)。此方案的优点是成熟度很高,自由性很强,可以用到最新的Android版本功能,网络上的教程也非常多,可参考的资料丰富。缺点是环境搭建复杂,Android工程结构复杂,纯代码显示难度偏高,调试测试也比较困难。此方案比较适合有一定编程基础和代码理解能力的中学生。

2.2方案二:JDK+Android Studio

这是最新的Android开发平台,现在的Android开发已经逐渐转向此平台,原因便是更专一,或者说更好地做到了垂直细分。Android StudioGoogle专为Android开发所设计的平台,它对于Android开发比Eclipse有更好的用户体验和工具支持。同时也有更直观的界面设计预览效果。缺点是由于是近年才推出的新产品,所以在网络上的教学资源相对匮乏,使用方法与Eclipse有区别。此方案较方案一更优秀,但中文的教程和参考资料较少,需要更强的英语功底和代码理解能力,适合高年级的中学生。

2.3方案三:MIT APP Inventor2

这是由MIT实验室研发的适用于中小学生编程初学者的图形化编程软件,它的优点是环境搭建容易,可以通过基于浏览器的编辑工具创建手机APP;手机界面设计比较简单,它精简了几个经典布局,以及常用控件,通过拖动位置,和极少数的参数设置就可以创建出APP界面。缺点是功能太少,并且没有扩展性,用户只能使用APP Inventor所给与的控件进行编程,而无法添加新的组件,要使用新的组件只能等待APP Inventor的更新,而据笔者的使用状况,两年内还未有过重大更新;可移植性太差,由于在APP Inventor中编程的过程是纯图形化的,其内部转换生成的代码文件我们无法获取,所以,如果要进行再编程也只能在原来的工程基础上继续使用APP Inventor进行修改。此方案在三个方案中学习门槛最底,流程清晰,功能简单易懂,动画式的界面设计大大简化了设计界面的大量代码,图形化编程界面最为适合小学生进行手机APP开发。

3.针对不同年龄的孩子,正确地选择开发平台

3.1小学阶段学生平台的选择

小学生阶段对Android学习的困境主要有以下三点:一、由于年龄小,大脑发育程度尚低,对于纯抽象概念的理解更为困难,而编程的概念完全是抽象概念。二、逻辑能力与计算能力不足。三、英语基础薄弱,对于编程的英语词汇难以通过理解来记忆。面对这三个困境,原先的Android开发方式是无法克服这些鸿沟的,但是APP Inventor正是为了这项目标而进行设计的,通过图形化的编程,直观地体现了逻辑的关系,并且可切换为中文的显示内容也让孩子更容易去理解其中的关系。而作为编程的启蒙教育,这种逻辑关系的直白展现,也可以为后期深入学习编程语言打下良好的基础。因此,在小学阶段使用APP Inventor作为教学平台是较好的选择。
    3.2中学阶段学生平台的选择
    中学阶段的学生差异性较小学有了明显的提高,优秀的学生在小学打下良好基础后,已经学习了基本的编程语言基础,而有的学生则刚开始接触编程。因此,初中学生的教学是需要明显差异化的,而基于普遍情况是没有编程基础的,因此笔者依然推荐初中的初学者使用APP Inventor作为首选的开发平台。
    高中生相对于初中生就有着明显的不同了,在这个阶段,高中生的学习能力、逻辑思维能力、抽象概念理解能力都有着不错的基础,因此,可以选择直接学习编程语言,再进一步使用Android Studio进行Android程序的编写。固然很多高中生也是初学编程,APP Inventor是一款最优秀的编程入门工具之一,学习APP Inventor也是合理的选择,但是,由于教学时间的限制,如果学习了APP Inventor对于时间的控制会非常紧张,在高中时段再进行Android Studio的学习将会很难有时间再做出完善的作品。笔者也尝试过对高中生直接教授Eclipse和仅仅教授APP Inventor的两种方式。结果发现,仅仅教授APP Inventor遇到的最大问题就是,控件的瓶颈,由于高中生的思维已经是时代的主流,因此设计的APP也常常用到复杂的功能结合,而APP Inventor无法提供复杂的算法和最新的功能,因此,代码的编写是高中阶段Android开发教学的最好手段。

    4.对不同学段的学生设计教学内容和方法,激发学生编程兴趣
    4.1精心挑选有趣实例,激发学生学习兴趣
    俄国文学家托尔斯泰曾经说过:成功的教学所需要的不是强制,而是激发学生的兴趣。课件调动学生学习积极性,最大限度的激活学生潜在的学习欲望,就是课堂成功的关键。要是学生学好Android手机应用开发,必须让他们对此课程产生兴趣。Android手机应用开发课程是编程类课程中的一种,内容涉及大量代码难以理解、枯燥而又抽象,学生容易产生畏难情绪、厌学心理。因此,教师应精心调血有趣的实例,让学生对教学内容产生兴趣,兴趣有了,学习的效果就更好了。例如,在进行Android手机应用开发的教学时第一堂课笔者现场给学生们延时了一个微信程序的登录,当一个熟悉的微信登录界面展现在屏幕上时,同学们惊呆了。从他们的眼神中,可以看出他们感受到了Android手机开发的神奇。同学们对这门课感兴趣了,有了学习Android手机一个用开发的高度积极性。同时在教学中适当引入新乡有趣的知识,有趣的问题,不仅能吸引学生的注意力,还能激发学生的学习此课程的兴趣,从而使学生更好地学号Android手机的应用开发。
    4.2改进教学方法,让学生通过实践体验乐趣

俗话说:教无定法,学无定法。在教学中应采用案例教学法为主,演示法、讲解法、启发式教学法、分析归纳法多种教学方法相结合的方式。在教学过程中,我们要改变传统的教学方法,尝试从现实生活、学生容易感知的东西出发,采取多种直观、具体、多样化的教学方法,去激发、调动学生的学习热情和兴趣。在教学组织时,以模块设计方式来组织教学,一个案例就是一个模块,通过案例教学法是学生不断地感到学习Android手机引用开发的用途和乐趣。在课堂中,尽量采用启发式教学,教师多提问,多问为什么,引起学生注意,引导学生积极思考答案,自己得出结论,最后教师在补充完善。通过启发式教学法,是学生灵活掌握教学内容。
    5.发挥学生示范作用,提高教学效果
    在进行Android手机应用开发教学过程中,教师除了要精心挑选有趣的实例来激发学生的学习兴趣之外,还可以利用学生的好胜心,采用各种切实可行的有效手段,发挥学生的主体作用。学生示范时,下面的学生的观察会教师示范时更为认真仔细,他们会及时地指出别人编程中出现的问题,同时对自己的编程也是很好的提醒。通过这种方法,教师可以大大激发学生之间学习的竞争意识,相互学习、相互竞争,收到良好的教学效果。
总之,作为一个教学者,笔者将在Android手机应用开发课程教学过程中不断地进行探索和思考,通过不断地改进教学方法和教学手段,来激发学生的学习兴趣,提高教学质量,培养学生的实践能力。

【引用】CNIC36次中国互联网络发展状况统计报告

基于Android手机应用开发教学的探索 敖勇平《科技信息》20142):115