面向社区的Scratch编程学习平台的开发研究-以“乐幸编程平台”为例论文

面向社区的Scratch 编程学习平台的开发研究*
——以“乐幸编程平台”为例

杨 惠1,陈明磊2

(1.福建广播电视大学 终身教育服务中心,福建 福州 350003;2.乐幸科技(福州)有限公司 研发管理部,福建 福州 350003)

摘 要: 技术发展日新月异,人们和技术制品的关系越来越密切,学习计算机编程有助于普通社区居民更好地了解技术、适应未来。该研究以图形化编程工具Scratch 为切入点,分析社区居民的学习特点,通过“原型化开发方法”开发设计出一个符合Scratch 教学的远程教育学习平台,利用平台在社区居民中推广Scratch 编程,借由Scratch 进一步推广有关计算机编程的通识教育。平台的实现推动计算机编程通识教育的同时,也为类似实践性课程的远程教育学习平台的设计提供一定的指导作用和借鉴意义。

关键词: Scratch;图形化编程;学习平台;社区教育

一、引言

随着移动互联网、大数据、人工智能技术的发展,人们的生活发生了翻天覆地的变化,技术改变生活,可以预见到未来智能化的技术制品一定与人类的日常生活息息相关,学习计算机编程不仅有助于普通社区居民更好地了解技术、适应未来,也有利于开拓学习者的思维能力,因此在社区居民中推广有关计算机编程的通识教育就显得非常有意义。Scratch 是美国麻省理工学院(MIT)于2007 年5 月开发出来的一款面向青少年的简易编程工具,其图像化编程、简单易上手的特点使得Scratch 非常适合用于编程的推广教育。本研究希望设计出一个符合Scratch 教学的远程教育学习平台,以Scratch 为切入点,利用远程教育的优势使更多的人了解接触图像化编程,让对编程有兴趣的普通社区居民不用因为枯燥的语法而放弃学习编程,使学习者在图形化编程过程中逐步了解编程的逻辑和算法,从而让更多人了解并喜欢上编程,以达到推广计算机编程通识教育的目的。

二、平台设计目标

平台主要服务于社区居民,平台建设目的主要是为社区居民提供一个智能化、个性化的学习环境,普及推广计算机编程知识,因此平台设计希望可以达到以下几个目标:

活性炭纤维具有大比表面积(1000~3000m2/g)和丰富的微孔,微孔体积占总孔体积的90%以上,其在空气中对有机气体的吸附能力比颗粒活性炭高几倍至几十倍,吸附速率快100~1000倍,同时耐酸、碱,耐高温,可再生循环使用,是近年来应用较多的一种吸附剂。

1.用户画像精确化

社区居民学历背景参差不齐、人员组成复杂,年龄从幼儿到老年,跨度非常大,平台应该尽可能准确地对这些人群进行画像,通过平台了解用户的个人特征、学习行为、兴趣偏好,进而对这些用户进行聚类分群,以便平台为用户提供更多个性化的服务,从而满足不同层次人员的学习需求。

2.社会交互高效化

社区教育是一种基于兴趣的松散教育活动,是社区居民基于兴趣自主参与、不以获取学历或职业资格为目标的学习,其非强制性的特点导致学员缺乏重要的外在学习驱动力,自律性差的学员很难坚持持续的学习。社会建构主义认为有效的学习环境应该促进学习者之间的社会性参与和互动[1],为了增加平台对学员的粘性,吸引学员持续不断地通过平台学习,平台设计需要积极结合社交化工具,增强生生之间、师生之间的互动,同时发挥平台的大数据能力,为学员推荐同类学伴,使同类别的学员之间发生高效的社会交互,帮助学员彼此找到认同感和归属感。

3.活动形式多样化

随着移动互联网技术的发展,移动端的访问需求不断增加,平台不仅要考虑PC 端的设计,同时也要考虑Pad 端、手机端的设计,尤其目前微信应用如此普及,平台怎么结合微信做更多的定制开发都是要考虑的。本研究结合乐幸编程平台,通过引入前后端分离技术,前端通过AJAX 技术异步请求后端资源,后端通过JSON返回响应数据交由前端处理数据逻辑,使得业务、数据解耦,既能够支持多终端统一展现,也能够根据用户特征及终端屏幕大小进行数据的个性化展示,从而满足学员多样化个性化的学习诉求。

花园水库位于龙江县济沁河下游,是一座以灌溉为主,结合防洪,兼顾发电等综合利用的大Ⅱ型水利枢纽。枢纽建成后,阻隔了鱼类洄游通道,并对鱼类产卵场造成不利的影响,拟修建垂直竖缝式鱼道过鱼,修建鱼类增殖保护站开展人工增殖放流,作为主要鱼类保护措施。据调查采集鱼类和文献记载,济沁河主要洄游鱼有细鳞鱼、哲罗鱼、雷氏七鳃鳗、黑龙江茴鱼、江鳕等珍贵冷水性鱼,以及鲢、鳙、鲤、银鲫等温水性鱼。鱼道的设计流速主要根据主要过鱼对象的克流能力而定,综合考虑几种过鱼种类的克流能力,鱼道设计流速取1.0 m/s。

4.激励机制实时化

哈佛大学管理学教授詹姆斯认为:“如果没有激励,一个人的能力发挥不过20%-30%;如果施以激励,一个人的能力则可以发挥到80%-90%。”[3]激励机制的实施有利于激发学员的学习动机,提升学员的学习成就感和满足感。平台为了加强激励对学员的正强化作用,以积分系统和等级系统为基础,结合积分商城,让学员随时随地可以兑换学习积分为奖品,实时对学员的学习行为给予激励,提高学员的学习积极性。研究表明比较是激发动机的一个重要因素[4],等级系统的引入就是让学员知道自己和其他学员的等级,起到比较的作用,从而进一步激发学员的学习动机。

后茬玉米播种前,处理T5、T6土壤碱解氮含量显著高于处理 T3,处理 T4、T5、T6 之间差异不显著,处理T4显著高于处理 T1、T2,处理 T4、T3之间差异不显著。其中处理 T6、T5、T4、T3 土壤碱解氮含量相较于前茬收获后分别增加 36.38%、34.64%、26.33%、8.40%,处理T1、T2土壤碱解氮含量比前茬收获后分别增加2.81%、2.05%。数据表明,试验小区经半年的休养其土壤碱解氮含量都有所增加,其中含有沼肥处理的小区土壤碱解氮含量增加显著,并且施加沼肥比例越高的处理土壤碱解氮含量增加越多。

5.学习终端灵活化

活动理论认为,人类是作为与环境互动的一个特殊的要素而产生和存在的,所以活动(感觉的、心理的、身体的)和有意识的加工(学习)不可分割[2]。由此可见,活动对于学习至关重要,平台设计应该支持开展各种形式的活动,活动类型上不仅仅支持线上的活动,还需要支持线下活动的开展,利用远程教育的优势为线上和线下活动搭建桥梁,提升活动参与的便捷性和趣味性,活动形式上应该尽可能丰富多样,比如知识竞赛、作品评比、两两PK、课程闯关、线下活动线上召集令等,方便教师根据不同的学习内容设计有针对性的学习活动。

6.实际操作同步化

Scratch 编程是一门实践性很强的课程,平台除了提供Scratch 的理论教学外,还需要为学员提供同步的实际操练场所,方便学员随时随地通过练习巩固课程内容。为了使学员可以更好地进行操作练习,平台设计需要支持教师为学员搭建学习“脚手架”,比如教师可以根据不同学习程度的学员推送不同的教程,设置教程是否强制观看,使部分学员在操作前先观看教程,以获得更高的练习效率,从而达到事半功倍的效果。

图1 SOA 体系架构图[5]

三、平台总体架构及关键技术

1.总体架构

基于平台的设计目标和业务特点,结合当前IT 互联网业界的先进做法,本研究决定采用面向服务的体系架构(Service Oriented Architecture,简称SOA)进行平台的设计与开发。面向服务的体系架构是一个组件模型,它将不同的功能单元(每个单元可以理解为一个服务)通过定义良好的契约和接口联系起来,比如在此系统中,可以拆分为用户中心、推荐中心、活动中心、课程中心等,这些服务通过一种统一的方式进行通信和数据交换。SOA 架构可以包容、整合各种应用和服务所采用的不同的技术平台、技术路线,具有良好的扩展性。

如图1 所示,SOA 体系架构自顶向下设计为5 层,服务的调用原则是请求自顶向下处理,下层服务不可调用上层服务,具体介绍如下:

智能中心包括学伴推荐和资源推荐,可以为学习者推荐同伴和感兴趣的资源(见图4)。学伴推荐指的是平台通过聚类分析方法,对平台的学员信息进行分析,挖掘出具有共同特点的人群,并对学员推荐与其有共同特点的人员,由学员决定是否关注系统推荐的人选。本研究采用的是K 均值聚类法,选定分析的学员信息包括性别、年龄、文化程度、职业、地区、单位名称、兴趣爱好、政治面貌、民族。

上游污染,到下游才能体现;岸上污染,到水中才能体现;左岸污染,右岸也能体现。在以往“九龙治水、各管一段”的分割管理体制下,河流治污是个难题。

2018年10月30日消息,阿里借道百世收购西安便利店连锁企业爱得宝,并于月底完成交割。2018年7月11日,阿里旗下物流服务公司菜鸟网络,以众包业务和其他业务资源及2.9亿美元现金战略投资最大即时物流平台点我达,成为其控股股东,完成国内即时物流领域最大的一笔投资,这也是菜鸟承担了搭建“国家智能物流骨干网”的任务之后,拿出的第一个大手笔。2018年3月12日,阿里旗下物流服务公司菜鸟网络收购五家配送合作方:万象、昇邦、东骏、芝麻开门和黄马甲,成立“杭州喵递宅配科技有限公司”,由菜鸟100%控股。这意味着菜鸟将在“三通一达”之外拥有一张直营的配送网络,直接对标京东配送。

第二层:接入层,外部流量入口,可以包括C 端用户流量、B 端用户流量、运营端流量等。本层的主要职责包括安全防护(非法流量的拦截,例如DDOS 攻击)、流量转发(例如Web 端与移动端流量的互转等)、负载均衡、域名解析与加速等。

第三层:服务组合层,接入外部请求,进行各种校验,比如权限认证、鉴权、限流、黑白名单、版本控制、安全审计等,然后向下调用各种下游服务,推动处理流程的流转,同时还能够封装内外部其他多个服务,按照业务单元进行数据组装,提供粗粒度的对外接口。

②加强病情监护(Ⅲ):评估神经状态,监测血压、心率、呼吸频率、血氧饱和度,记录体重、腹围变化、24 h尿量、排便次数,性状等;建议完善病因及病情评估相关实验室检查,包括PT/INR、纤维蛋白原、乳酸脱氢酶、肝功能、血脂、电解质、血肌酐、尿素氮、血氨、动脉血气和乳酸、内毒素、嗜肝病毒标志物、铜蓝蛋白、自身免疫性肝病相关抗体检测、球蛋白谱、脂肪酶、淀粉酶、血培养、痰或呼吸道分泌物培养,尿培养;进行腹部超声波(肝、胆、脾、胰、肾,腹水)、胸片、心电图等物理诊断检查,定期监测评估[10]。有条件单位可完成血栓弹力图、凝血因子V、凝血因子Ⅷ、人类白细胞抗原(HLA)分型等。

图2 Scratch 远程学习平台架构

第四层:业务服务层,完成业务人员可理解的业务动作,比如积分商城的兑换规则制定、商品上架、订单审核等粗粒度的业务操作。

第五层:基础服务层,和具体业务无关,如数据库服务、缓存服务、消息中间件、日志处理、大数据的清洗与筛选、图片服务存取等。

本研究最终落地的系统架构图如图2 所示。整个系统搭建以服务为单位,通过开放标准、明确定义的接口调用其他服务或者对外提供服务,方便系统已有的服务可被复用,比如用户中心不仅仅可以服务Scratch 的学习平台,也可以服务其他远程教育的学习平台,从而降低开发成本;无状态的服务设计使得系统具有高内聚低耦合的特点,一方面可以让每个服务只专注自己的业务逻辑,进而提高开发效率,另一方面方便系统水平扩展服务,以满足社区教育教育对象、教育内容灵活多变的需求。

明治维新以后,西洋化的女性摆脱了“家”制度的限制。以男子为中心的社会制度受到挑战,男女平等的意识也逐渐传入了日本。本来一直在追求“良妻贤母”的人生道路,开始了追求个人的道路。藤尾接触的阶层在上流阶层,频繁地交流,“良妻贤母”这种观念崩溃的速度也越来越快。媒体的力量也不可小觑。这样一来,关于女性解放运动的杂志,报纸和书籍也随处可读。在文中,藤尾通过书籍,追求自由和解放的权利的潮流,唤起其内心的天性。

2.关键技术

为了满足上述的平台架构,本文选择Spring Cloud作为开发框架,它集成和组合了许多轻量级的组件,可以为面向服务的体系架构提供一整套完整的解决方案,包括服务的注册和发现、服务的消费和保护、分布式配置管理等[6]。平台的服务组合层封装了业务服务层的多个服务,这使得外部的调用变得更加简单,但对于服务组合层本身来说,如果使用传统的服务封装办法,业务服务层新增服务或者已有服务增加新方法都需要针对服务组合层做相应的开发,从而增加系统后期的维护成本,Spring Cloud 中的Zuul 可以很好地解决这个问题(如图3 所示)。Zuul 作为平台的服务网关,自身也是一个微服务,跟其他服务如用户中心服务、课程服务、积分商城服务等一样,都需要注册在Spring Cloud 的Eureka 服务端上,服务之间通过监听机制可以相互发现,Zuul 通过配置路由规则将外部请求自动转发到指定的业务服务层的服务上,Zuul 的过滤器(ZuulFilter)用来处理公用的服务如权限校验、爬虫检测、安全审计等,这样业务服务层即便新增了服务,Zuul 层也基本不需要修改。平台以服务为单位进行设计与开发,服务之间的封装、调用、整合便利性是选择开发技术时重点要考虑的,Spring Cloud 开发框架不仅可以让平台服务之间的调用变得更容易,其庞大的组件功能、便利的配置方案,也让平台开发效率得到极大地提高。

社区教育对比传统的学校教育,学习方式没有硬性的规定,社区居民想怎么学就怎么学,学习方式可谓五花八门,平台需要能支持多种学习方式,例如项目式学习、团队合作式学习、探究式学习等,为了满足这些需求,平台针对互动和活动模块做了比较多的设计;另外考虑到Scratch 实操性强的特点,平台针对实操模块本土化改造的同时还设计了很多辅助功能,以帮助学员更好地完成实操练习。本文只介绍平台的核心功能模块以及平台3 类角色(管理员、教师和学员)对这些功能模块的操作权限。

图3 Zuul 路由转发图

四、平台核心功能模块

要想从根本上转变教师观念,首先,高校要营造向“双师型”教师学习的热烈氛围,要让每一位教师都将不断提高自身技能和终生学习作为自己努力和奋斗的方向。其次,高校要积极的定期举办教学基本功和技能竞赛。通过竞赛能激发教师学习和提高自身技能的积极性,同时要对表现优异,成绩突出的教师给予一定的物质和精神双向奖励,从而带动落后教师不断努力。最后,给予“双师型”教师崇高的地位,对优秀的“双师型”教师可将其当作典型榜样进行宣传,鼓励全校教师向优秀教师进行学习。

1.智能中心

图4 平台资源推荐页面

第一层:用户层,针对C 端用户和运营人员,包括PC Web、手机H5 移动站、移动App、微信小程序等不同的展现方式。

论坛中心包括学习圈和课程论坛,是学习者用于交流话题和课程的空间,学习圈指的是基于同样的兴趣组成的学习小组,课程论坛指的是针对课程的论坛。管理员通过该模块管理学习圈的话题、论坛的帖子,删除不合法的话题或帖子。教师通过该模块管理所教授课程的论坛,发起主帖、回复学员帖子,分享课程资料等;新增学习圈或加入已有的学习圈,管理学习圈的话题和成员等。学员通过该模块发起主帖、回复其他学员或教师的帖子;新建学习圈或加入已有学习圈,分享学习资料,与教师或其他学员互动等。

全诗中,诗人并未对“乡愁”这一主题进行情感上的描绘,而是对“我”进行了不同时期的状态描述。可以看出,在人生的各个阶段,“我”始终与价值对象处于析取状态,思而不得,四节诗中并未具体描述“乡愁”的心理,却都是在刻画“乡愁”。并且,在“我”所思所欲的价值对象的演变中,由“母亲”到“新娘”,再到坟墓中的“母亲”,最后到“大陆”,“我”所思由生者到死者,由可得到不可得;由“新娘”代表的小家到“大陆”代表的祖国大家,愁绪一层层加深,思念一层层升华。

2.互动中心

互动中心包括论坛中心、问答中心、直播中心和评价中心,方便学员进行探究式、团队合作式的学习。

资源推荐指的是平台通过基于内容的推荐和协同过滤推荐的组合算法为学员推荐适合的学习和活动资源。算法的组合思路是先用基于内容的推荐算法产生一种粗糙的推荐结果,再用基于协同过滤的推荐算法在上述推荐结果的基础上进一步做出更精确的推荐。

问答中心用于发布平台的一些常见问题,方便学员搜索查看。管理员通过该模块增删改问答分类,方便管理问题;增删改学员发布的问题,为问题添加标签;添加学员问题或发布新问题及解答至问题库;配置问答中心生成用户手册、常见问题、软件下载等技术支持文档。教师通过该模块回答学员问题,为问题添加标签;添加学员问题或发布新问题及解答至问题库。学员通过该模块发布问题,回答其他学员的问题,为问题添加标签。

直播中心用于开展直播课堂,教师和学员通过该模块可以实现实时的视频、语音、文字的交流互动。管理员通过该模块对教师的在线直播课堂申请情况进行审核,确定该时段内平台有足够的服务器、网络带宽资源支持,保证直播课堂的通讯质量。教师通过该模块申请开设、正式开展或关闭直播课堂,审核参加直播课堂的学员列表。学员通过该模块申请参加直播课堂,审核通过的学员可以正式参加直播课堂。

评价中心通过发起投票表决、问卷调查、课程评价等互动形式及时获得用户的反馈。管理员通过该模块可以针对课程、教师或平台功能发起投票表决、问卷调查,投票表决、问卷调查可以只面向某一特定群体开放,也可以面向所有用户开放;针对课程增删改评价维度和评价等级。教师通过该模块针对课程、某一问题或事件发起投票表决、问卷调查,投票表决、问卷调查可以只面向某一特定群体开放,也可以面向所有用户开放;针对课程增删改评价维度和评价等级。学员通过该模块参与投票表决、问卷调查和课程评价。

3.活动中心

活动中心用于开展各种形式的活动,增强学员对平台的粘性,帮助学员更好地完成学习目标,活动形式包括作品评比、知识竞赛、两两PK、闯关、线下活动报名等。管理员通过该模块管理活动模板,为不同形式的活动绑定不同的模板。教师通过该模块设置活动信息,绑定活动模板;管理知识竞赛、PK 赛、闯关试题库;设置闯关的关卡数;设置活动报名表单,审核学员报名信息等。学员通过该模块上传作品、投票作品、参加竞赛、发起PK、闯关、报名线下活动等。

4.用户中心

用户中心主要包括风采区、活动区、成果区3 大模块,风采区包括用户身份、用户等级、用户积分、笔记数、关注数、粉丝数,活动区包括我的课程、我的小组、我的活动、我的作品、我的问题、我的建议,成果区包括个人积分、我的证书、我的统计。

风采区主要用于展示用户在平台的等级及威望,方便学员查找到平台的意见领袖,帮助学员筛选所要关注的人。用户身份分为教师和学员,教师等级分为初级、中级、高级、特级,学员等级分为小学生、中学生、大学生、研究生、博士生。

活动区主要是记录用户参与的平台学习、互动、活动等。教师活动区主要显示教师所负责的课程、小组、活动列表,查看学员的课程反馈、小组话题、活动作品,回答学员问题、评论学员作品等。学员活动区主要显示学员所参与的课程、小组、活动列表,发布的问题、建议列表,查看教师和其他学员的问题解答、作品评论等。

成果区主要是对用户在平台学习或教学的成果进行总结归纳,用积分兑换奖品的方式激励用户使用平台。管理员通过积分模块设置各个积分项的分值、积分分值对应的奖品、积分项的启用状态,积分项包括注册、每日签到、添加课程、收藏课程、撰写评论、观看课程、参加活动、上传作品、填写问卷、发布建议等;学员和教师通过该模块可以查看积分的获取明细,用积分兑换奖品等。管理员和教师通过证书模块设置证书的模板、获取规则;学员通过该模块查看并打印证书。管理员通过统计模块设置允许教师和学员查看的统计项目;教师通过该模块查看所授课程的学员学习情况,个人发布资源、学习圈、活动、评论情况;学员通过该模块查看个人的学习情况,包括登录时间、登录时长、登录次数、浏览资源次数、浏览资源时间、搜索资源次数、搜索时间、参与小组数、参与活动数、参与课程数、获得证书数、帖子数、话题数、积分排名等。

5.课程中心

课程中心用于展示平台的课程内容,既可以按课程分类展示,也可以按班级展示,学员可以通过课程分类或者班级的知识地图浏览具体的课程,教师可以通过设置知识地图开展基于项目的教学。管理员通过该模块设置课程分类;批量导入课程信息,课程信息包括课程分类、课程名称、课程介绍、课程学时、课程价格、课程是否上线等;设置课程老师,绑定课程的课件信息等。教师通过该模块设置班级名称、知识地图,知识地图是由各个知识点以及知识点之间的顺序关系组成;绑定知识点对应的课程信息。学生通过该模块查找并观看课程,记录课程笔记,查找他人课程笔记等。

6.实操中心

实操中心整合了Scratch 3.0 开源软件,并对其进行本土化改造,用于学员创作并可通过微信分享Scratch作品。管理员通过该模块配置选择需要显示在实操中心的菜单项,菜单内容包括Scratch 教程、问答中心、作品中心、活动中心、意见反馈等。教师通过该模块发布教程和范例,查看并点评学员作品等。学员通过该模块实际编程,并最终发布H5 作品;通过作品名称或发布者搜索查看、评论其他人的作品。

五、结束语

本文以简单易上手的图形化编程工具Scratch 为切入点,在详细分析社区教育学习者编程学习平台需求的基础上,围绕Scratch 实操性强的特点,设计适合社区居民学习Scratch 的远程教育学习平台“乐幸编程平台”。系统的实现为在社区居民中推广有关编程的通识教育起到推动作用,也为实践性课程教学的远程教育学习平台的设计提供一定的指导作用和借鉴意义,平台智能化推荐的设计为大数据技术在其他学习平台的应用提供一定的参考价值。目前平台已经实现了文章所述的所有功能,并已投入使用,后期随着用户数量的不断增加,希望能从学习者学习风格、学习行为、学习效果等角度做更多的应用研究,多维度对社区学习者进行画像,不断优化平台的智能推荐算法,从而为社区教育的教育内容、教育活动设计提供更多的数据参考。

参考文献:

[1]杨进中,张剑平.基于社交网络的个性化学习环境构建研究[J].开放教育研究,2015,21(2):89-97.

[2]项国雄,赖晓云.活动理论及其对学习环境设计的影响[J].电化教育研究,2005(6):9-14.

[3]李训.激励机制与效率:公平偏好理论视角的研究[M].北京:经济管理出版社,2007.

[4]王英彦,杨刚,曾瑞.在线学习者的激励机制分析与设计[J].中国电化教育,2010(3):62-66.

[5]IBM 在SOA 参考架构标准中的优势[EB/OL].https://www.ibm.com/developerworks/cn/webservices/ws-soa-ref-arch/.

[6]王佳越.基于Spring Cloud 的企业人事管理系统的设计与实现[D].长春:吉林大学,2018.

[7]王宏志.大数据分析原理与实践[M].北京:机械工业出版社,2017.

[8]韦书令.社区教育数字化学习平台建设和资源共享研究[J].成人教育,2017,37(5):32-36.

[9]高凤.基于Scratch 的中小学创新教育平台设计与研究[D].西安:陕西师范大学,2016.

[10]李强,李若瑜.Scratch 3.0 少儿游戏趣味编程[M].北京:人民邮电出版社,2019.

中图分类号: TP393

文献标志码: A

文章编号: 1673-8454(2019)18-0087-05

*基金项目 2017 年度福建省中青年教师教育科研项目(科技类)“基于Scratch 的远程教育学习平台的开发研究”(编号:JAT170929)。

(编辑:鲁利瑞)

标签:;  ;  ;  ;  ;  ;  

面向社区的Scratch编程学习平台的开发研究-以“乐幸编程平台”为例论文
下载Doc文档

猜你喜欢