论文部分内容阅读
[摘要]App Inventor运用全新的编程思想和创新的积木式编程方式,加上独特的“在线开发”平台,让非专业人员也可以在几分钟内开发出一个实用的安卓APP。App Inventor(以下简称AI)还特别适合中小学生学习程序设计思想及方法,培养中小学生的移动计算思维方式以及“学以致用、以用促学”的学习能力。据悉,2017年广州市初中信息技术新版教材将引入AI教学内容,笔者作为初中信息技术教师,提前对AI进行了学习,通过学习与实践,不断反思和总结,形成了自己的一套学习方法,希望能为今后的教學提供参考。
[关键词]App Inventor;计算思维;开发;实践
AI是一款Android手机应用程序开发平台,是采用OpenBlocks Java Library(开放式积木Jaya库)来创建积木式拼图的模块编程语言。不同于以往的编程软件,AI的开发者不一定是专业的程序员,甚至不需要掌握太多的编程基础知识。由于将枯燥的代码创新为积木式的拼图,不同的代码块有不同的颜色和接口,程序编写过程变得简单、愉快又有趣。
AI项目开发组负责人、麻省理工大学教授Harold Abelson说:“App Inventor编写的应用程序或许不是很完美,但它们却是普通人都能做到的,而且通常在很短时间内就能完成。”因此,AI特别适合中小学生学习程序设计思想及方法,培养中小学生的移动计算思维方式以及“学以致用、以用促学”的学习能力。
AI将逐步进入中小学课堂,它必将在青少年学生中引发一股移动智能终端应用的学习热潮。作为一名初中信息技术教师,笔者在过去的一年多时间里参加了多次由广州市教育局和广州电教馆组织开展的AI应用开发培训,做了大量的实例练习,从模仿到自创,通过实践不断积累经验,学以致用,以用促学。经过不断的交流与思考,从准备、入门、实践再到提高等各个阶段,笔者提炼了一些方法,进行了一些实践和思考,在此略做分享。
一、做足准备,模仿实例,快速入门
学习AI之前要做足准备工作。首先,笔者建议收集几部平时不用的旧安卓手机,最好是不同品牌和不同屏幕大小的,以便测试所开发的APP的兼容性。其次需要一台可以上网的电脑,笔者推荐安装谷歌浏览器(Google Chrome);以及要确保电脑和调测程序用的安卓智能手机接入同一个网段的WIFI。学习者用谷歌浏览器登录广州教科网App Inventor开发服务器平台(app.gzjkw.net),注册一个新账号或者用QQ账号进入AI开发平台。如果没有WIFI网络环境,也可以在电脑上安装离线版,具体安装步骤此处不详述,建议初学者先通过网络版进行入门学习。
进入广州教科网AI开发服务器平台后,我们可以先简单认识一下界面组成和各功能模块,然后就可以开始动手编写第一个APP。它只由一个文本框、一个按钮和一个标签控件组成,通过在文本框中输入内容,触摸按钮后就会在标签中显示刚刚输入的内容。
尝试着模仿完成几个简单的APP实例,我们就可以慢慢地了解AI全新的开发模式,体会到安卓移动应用开发的简单方式,不用编写代码也能编程,瞬间增强了学生学习安卓应用开发的兴趣和信心。如果初学者想要编写一个自己独创的简单的APP,就可能要用到更多的组件和功能块,在开始付诸行动的时候就会容易感到力不从心。这就是学习AI时将会遇到的第一个瓶颈。
二、购买教程,深入学习。不断提高
要想突破第一个学习瓶颈,就需要买几本AI教程(也可以下载电子教程),全面深入地学习AI应用开发。目前一般的AI教程会较全面地介绍AI开发环境与界面组成,以实例开发的形式对内置功能模块、常用控件、屏幕布局、多媒体控件、动画控件、传感器控件、社交控件、存储控件以及通信控件做全面详细的开发应用说明。
通过对教程中大量实例的模仿开发,深入学习和了解AI,体会AI实例教程中的编程思路,特别是认真体会移动应用开发中所特有的传感器、社交、通信以及数据存储与共享,对于培养学生的移动应用计算思维至关重要。
通过一段时间的深入学习,我们便可以自己动手开发简单的安卓APP了。在自主开发过程中,我们往往会因为没有开发经验而走很多弯路,比如出现冗余代码块、运行效率低,甚至遇到一些始料未及而又难以突破的技术难关。这就是学习AI的第二个瓶颈,这个瓶颈往往无法通过教程的学习来突破。
三、找“朋友圈”,交流心得,开拓视野
要想突破第二个学习瓶颈,就需要组建自己的学习“朋友圈”,交流心得,学习经验,开拓视野。首先笔者推荐加入“AI教学研讨群”(QQ群号:450549800),群里有广州教科网AI开发平台的架设技术人员和维护人员,有大中专院校和中小学一线教师,有经验丰富的开发人员,也有像我们一样的初学者。群里分享丰富的AI开发技术与经验,当我们遇到问题时就可以在群里发问,热心的朋友们就会为我们作出解答。
其次笔者推荐关注金从军老师的微信公众号“老巫婆的程序世界”(微信号:lwpdcxs]i),新浪微博“@老巫婆”(http://weibo.com/jcjzl)以及新浪博客“老巫婆”(http://blog.sina.com.crgjcjzhl)。金从军老师担任过大学教师、创业者、销售主管、程序员、开发项目经理、IT培训教师等职务,喜爱游戏及编程,撰写和翻译过多本AI教程,有着丰富的软件开发经验和巧妙的计算思维。她每周都会在微信公众号、博客或微博中发布编程教学文章或者AI教学微课,对我们学习AI编程以及培养计算思维很有帮助。
最后,笔者建议邀请有AI学习和开发兴趣的同行组建开发团队。以笔者所在的广州市从化区中小学信息技术教师同行为例,从化区中小学信息技术教学研究室牵头组建了“思维研习社”,除了进行创新思维研习,还会布置AI学习和开发任务,定期集中分享学习和开发心得,交流经验,分享成果,相互学习,不断提高。
有了自己的学习“朋友圈”,我们就有了更多解决问题的途径,学习中遇到的各种问题就可以迎刃而解,从而突破第二个学习瓶颈。
四、自主开发,学以致用,以用促学
具备了一定的AI应用开发基础后,就可以结合实际应用,尝试自主开发实用的APP,学以致用,以用促学。自主开发APP要进行实际应用的需求分析,设计系统框架结构,编制功能流程图,收集和制作素材,进行界面设计,编写程序块,用事先准备好的多款安卓手机进行调试和兼容性测试,不断完善,最后发布应用。
快速原型模型法是初学者自主开发APP不错的选择。快速原型模型法,即在开发真实系统之前先构造一个原型,在该原型的基础上逐渐完成整个系统的开发工作。快速原型模型的第一步是建造一个快速原型,实现客户或未来的用户与系统的交互,客户或用户对原型进行评价,进一步细化待开发软件的需求。根据客户的需求逐步调整原型,开发人员就可以确定客户的真正需求是什么;第二步则在第一步的基础上开发客户满意的软件产品。
以笔者开发的“教师签到APP”为例,首先进行校园智能化管理的需求分析,再进行系统设计,编制流程图,然后开发一个能实现基本功能的“原型”,测试兼容性。测试通过后又请部分教师进行应用体验,最后按测试反馈的意见和建议进行系统完善,使界面更美观,体验更简便。
五、结束语
在学习和开发AI的过程中,我们要不断总结经验,汲取教训,形成文档,方便维护。特别要注意APP界面美观、应用便捷、数据的存储、共享与安全、流量的控制等,使自己开发的APP更受欢迎。当我们分享发布一个受欢迎的实用APP时,可以体验到成功的乐趣,使自己更有动力寻找目标,进行下一个APP的开发。
本文中有诸多不成熟之处,请广大读者指正,有更好的方法与经验也请读者分享。
[关键词]App Inventor;计算思维;开发;实践
AI是一款Android手机应用程序开发平台,是采用OpenBlocks Java Library(开放式积木Jaya库)来创建积木式拼图的模块编程语言。不同于以往的编程软件,AI的开发者不一定是专业的程序员,甚至不需要掌握太多的编程基础知识。由于将枯燥的代码创新为积木式的拼图,不同的代码块有不同的颜色和接口,程序编写过程变得简单、愉快又有趣。
AI项目开发组负责人、麻省理工大学教授Harold Abelson说:“App Inventor编写的应用程序或许不是很完美,但它们却是普通人都能做到的,而且通常在很短时间内就能完成。”因此,AI特别适合中小学生学习程序设计思想及方法,培养中小学生的移动计算思维方式以及“学以致用、以用促学”的学习能力。
AI将逐步进入中小学课堂,它必将在青少年学生中引发一股移动智能终端应用的学习热潮。作为一名初中信息技术教师,笔者在过去的一年多时间里参加了多次由广州市教育局和广州电教馆组织开展的AI应用开发培训,做了大量的实例练习,从模仿到自创,通过实践不断积累经验,学以致用,以用促学。经过不断的交流与思考,从准备、入门、实践再到提高等各个阶段,笔者提炼了一些方法,进行了一些实践和思考,在此略做分享。
一、做足准备,模仿实例,快速入门
学习AI之前要做足准备工作。首先,笔者建议收集几部平时不用的旧安卓手机,最好是不同品牌和不同屏幕大小的,以便测试所开发的APP的兼容性。其次需要一台可以上网的电脑,笔者推荐安装谷歌浏览器(Google Chrome);以及要确保电脑和调测程序用的安卓智能手机接入同一个网段的WIFI。学习者用谷歌浏览器登录广州教科网App Inventor开发服务器平台(app.gzjkw.net),注册一个新账号或者用QQ账号进入AI开发平台。如果没有WIFI网络环境,也可以在电脑上安装离线版,具体安装步骤此处不详述,建议初学者先通过网络版进行入门学习。
进入广州教科网AI开发服务器平台后,我们可以先简单认识一下界面组成和各功能模块,然后就可以开始动手编写第一个APP。它只由一个文本框、一个按钮和一个标签控件组成,通过在文本框中输入内容,触摸按钮后就会在标签中显示刚刚输入的内容。
尝试着模仿完成几个简单的APP实例,我们就可以慢慢地了解AI全新的开发模式,体会到安卓移动应用开发的简单方式,不用编写代码也能编程,瞬间增强了学生学习安卓应用开发的兴趣和信心。如果初学者想要编写一个自己独创的简单的APP,就可能要用到更多的组件和功能块,在开始付诸行动的时候就会容易感到力不从心。这就是学习AI时将会遇到的第一个瓶颈。
二、购买教程,深入学习。不断提高
要想突破第一个学习瓶颈,就需要买几本AI教程(也可以下载电子教程),全面深入地学习AI应用开发。目前一般的AI教程会较全面地介绍AI开发环境与界面组成,以实例开发的形式对内置功能模块、常用控件、屏幕布局、多媒体控件、动画控件、传感器控件、社交控件、存储控件以及通信控件做全面详细的开发应用说明。
通过对教程中大量实例的模仿开发,深入学习和了解AI,体会AI实例教程中的编程思路,特别是认真体会移动应用开发中所特有的传感器、社交、通信以及数据存储与共享,对于培养学生的移动应用计算思维至关重要。
通过一段时间的深入学习,我们便可以自己动手开发简单的安卓APP了。在自主开发过程中,我们往往会因为没有开发经验而走很多弯路,比如出现冗余代码块、运行效率低,甚至遇到一些始料未及而又难以突破的技术难关。这就是学习AI的第二个瓶颈,这个瓶颈往往无法通过教程的学习来突破。
三、找“朋友圈”,交流心得,开拓视野
要想突破第二个学习瓶颈,就需要组建自己的学习“朋友圈”,交流心得,学习经验,开拓视野。首先笔者推荐加入“AI教学研讨群”(QQ群号:450549800),群里有广州教科网AI开发平台的架设技术人员和维护人员,有大中专院校和中小学一线教师,有经验丰富的开发人员,也有像我们一样的初学者。群里分享丰富的AI开发技术与经验,当我们遇到问题时就可以在群里发问,热心的朋友们就会为我们作出解答。
其次笔者推荐关注金从军老师的微信公众号“老巫婆的程序世界”(微信号:lwpdcxs]i),新浪微博“@老巫婆”(http://weibo.com/jcjzl)以及新浪博客“老巫婆”(http://blog.sina.com.crgjcjzhl)。金从军老师担任过大学教师、创业者、销售主管、程序员、开发项目经理、IT培训教师等职务,喜爱游戏及编程,撰写和翻译过多本AI教程,有着丰富的软件开发经验和巧妙的计算思维。她每周都会在微信公众号、博客或微博中发布编程教学文章或者AI教学微课,对我们学习AI编程以及培养计算思维很有帮助。
最后,笔者建议邀请有AI学习和开发兴趣的同行组建开发团队。以笔者所在的广州市从化区中小学信息技术教师同行为例,从化区中小学信息技术教学研究室牵头组建了“思维研习社”,除了进行创新思维研习,还会布置AI学习和开发任务,定期集中分享学习和开发心得,交流经验,分享成果,相互学习,不断提高。
有了自己的学习“朋友圈”,我们就有了更多解决问题的途径,学习中遇到的各种问题就可以迎刃而解,从而突破第二个学习瓶颈。
四、自主开发,学以致用,以用促学
具备了一定的AI应用开发基础后,就可以结合实际应用,尝试自主开发实用的APP,学以致用,以用促学。自主开发APP要进行实际应用的需求分析,设计系统框架结构,编制功能流程图,收集和制作素材,进行界面设计,编写程序块,用事先准备好的多款安卓手机进行调试和兼容性测试,不断完善,最后发布应用。
快速原型模型法是初学者自主开发APP不错的选择。快速原型模型法,即在开发真实系统之前先构造一个原型,在该原型的基础上逐渐完成整个系统的开发工作。快速原型模型的第一步是建造一个快速原型,实现客户或未来的用户与系统的交互,客户或用户对原型进行评价,进一步细化待开发软件的需求。根据客户的需求逐步调整原型,开发人员就可以确定客户的真正需求是什么;第二步则在第一步的基础上开发客户满意的软件产品。
以笔者开发的“教师签到APP”为例,首先进行校园智能化管理的需求分析,再进行系统设计,编制流程图,然后开发一个能实现基本功能的“原型”,测试兼容性。测试通过后又请部分教师进行应用体验,最后按测试反馈的意见和建议进行系统完善,使界面更美观,体验更简便。
五、结束语
在学习和开发AI的过程中,我们要不断总结经验,汲取教训,形成文档,方便维护。特别要注意APP界面美观、应用便捷、数据的存储、共享与安全、流量的控制等,使自己开发的APP更受欢迎。当我们分享发布一个受欢迎的实用APP时,可以体验到成功的乐趣,使自己更有动力寻找目标,进行下一个APP的开发。
本文中有诸多不成熟之处,请广大读者指正,有更好的方法与经验也请读者分享。