面向智慧农业的Android 应用开发课程教学案例设计与实践
2024-06-01魏玉震赵敏胡文军
魏玉震 赵敏 胡文军
摘要:文章以农业智能化进程中的移动终端应用软件开发为切入点,首先阐述了农业智能化的基本内涵,继而介绍了Android应用开发课程的核心内容及其在计算机专业教学体系中的重要地位。文章进一步探讨了Android应用开发在推进农业智能化进程中的功能作用,以及当前该课程在教学实践中普遍存在的问题。基于此,提出了融合理论知识、行业实践和探索创新于一体的案例式、启发式、探索式教学模式,旨在优化Android应用开发课程中理论讲授与项目实践的配比,创设适应农业智能化新场景的教学案例。通过实施本教改方案组织具体教学活动,旨在全面提升学生运用系统工程思维解决农业智能化实际问题的能力。
关键词:智慧农业;Android应用开发;案例教学;协同创新;产学融合
中图分类号:TP391 文献标识码:A
文章编号:1009-3044(2024)10-0168-04
0 引言
中共中央连续发布的“一号文件”始终强调农业农村优先发展的战略,坚持城乡融合发展,并注重科技创新与制度创新的双重驱动[1]。智慧农业作为信息化、数字化、智能化时代背景下的必然趋势,其本质是集成应用最新的计算机科学技术、现代通信技术、生物工程技术以及相关前沿科技,依靠数字信息技术实现农业生产全过程的科学决策[2]。
信息化与智能化是未来社会发展的重要趋势,也是我国农业现代化转型升级的关键路径。在日常生活中,人们最为直观地感受到信息化与智能化的载体便是移动终端的各种应用程序,例如通过智能手机应用进行导航、购物、通讯、娱乐等。鉴于社会对移动应用开发的巨大需求,高等院校在制定计算机类专业培养方案时,普遍将移动应用开发课程纳入课程体系之中,然而实际教学效果并不理想,突出表现为学生在实践与创新能力方面的欠缺,不能有效地将所学知识转化为实际应用能力[3]。问题产生的主要原因有两点:首先,传统的教学方式通常按照教材的知识结构线性推进教学进度,导致學生难以将理论知识与实际应用情境相结合,对课程内容难以形成深入理解和灵活运用[4]。其次,移动应用开发课程普遍存在教学案例系统性不足的问题,尽管多数案例覆盖了界面设计、后台代码设计、数据库设计等多个知识点,但对于具体行业需求分析、业务逻辑设计等方面的讲解不够深入,导致学生在参与过程中难以找到强烈的代入感,进而难以形成系统性工程思维[5]。这一点显然与教育部倡导的,旨在培养具备实践能力、创新能力和国际竞争力的高素质复合型新工科人才的理念不符[6]。
系统性工程思维是成长为高素质复合型新工科人才的必备素质,因为在解决复杂工程问题时,往往需要将底层理论方法、行业实际需求以及反复实践结合起来,而这三者间是可以互相促进的[7]。农业问题本身就具有很强的系统性,在智慧农业的大背景下,对计算机工程与农业工程交叉领域的复合型人才需求尤为迫切。智慧农业的实际应用场景有助于提升学生对农业问题的系统性认知,激发他们解决具体行业问题的代入感与成就感,从而促进计算机专业人才培养的质量提升[8]。当前,农产品的透明销售与流通是农业智能化的重要体现,例如利用AI模型预测农产品在不同时段的销售情况[9],借助区块链技术实现农产品质量、产地的可靠追溯以及流通环节的智能化管理[10],这些都为计算机工程与农业工程交叉领域的复合型人才培养提供了理想的切入点。
1 教学案例设计
在设计教学案例时,应当综合考量课程特点、教学目标、学生水平以及相关产业的实际应用情况[11]。因此,首先需明确教学案例设计的原则,如本教学改革研究以智慧农业应用场景为导向,运用Android应用开发课程知识解决本地特色农业问题。其次,制定适宜的教学内容与教学计划,如根据教学案例特点安排基础教学与实践教学的比例。然后,根据既往教学经验及类似教学案例对教学重点和难点进行分析解读。
1.1 教学案例设计原则
智慧农业涵盖众多领域,部分领域因其复杂性和专业性较高,不宜作为初学Android应用开发课程的教学案例。例如,由中国水稻研究所开发的“知稻”App,囊括了肥料、农药、种子、气象、土壤湿度、病虫害防治等全方位信息,且对水稻生长周期进行了专业化细分管理,此类复杂应用对于初学者来说难度偏高[12]。在设计教学案例时,不仅要确保学生掌握相关技术方法,还要结合本地产业特色,便于学生在开发过程中产生共鸣和代入感,从而提升教学效果。以湖州为例,茶叶为其特色农产品,同时也是我国茶文化的重要发源地,当地盛产安吉白茶、长兴紫笋、莫干山黄芽等多种知名茶叶品种,深受广大师生熟悉[13]。然而,我国茶叶市场存在诸如产地造假、价格混乱、缺乏量化评价标准等诸多问题,阻碍了茶叶市场的健康发展[13]。因此,本研究以推广本地特色茶叶、规范茶叶市场为目标,设计了Android 应用开发课程的教学案例。
按照Android应用开发的一般流程与应用场景,首先引导学生对移动应用的系统功能结构进行规划。针对推广本地特色茶叶和解决茶叶市场混乱问题的需求,指导学生对问题进行梳理和拆解,构思应用程序的功能结构(如图1所示)。教学设计的整体原则遵循“问题导向”→“理论框架建构”→“实际案例分析”→“延伸思考与拓展”→“互动交流讨论”。
1.2 教学内容设计
面向智慧农业应用场景的Android 应用开发课程,旨在借助启发式案例增强教学效果,并非忽视基础知识与技术技能的教学,而是要合理编排教学内容,确保学生能够构建起知识系统的整体框架,避免将多个知识点混杂堆砌进行机械化、灌输式的教学[12]。首要任务是对教学案例所需开发规模及其所涉知识点进行具体分析,以便合理设定基础教学与实践教学的比例。对于基础的UI界面设计、常用组件(如Activity、Service、Content Provider、Broadcast Re?ceiver、Intent等Android基础知识),要做到详略得当,避免对过于晦涩的知识点进行过度阐述;而对于XML 基础语法、Java基础语法以及常规使用的包和类等知识点,则应重点传授其学习和运用方法,使学生能够在项目开发过程中自行解决代码相关问题。
在开展针对具体应用案例的项目开发前,除讲解开发背景和基本理论框架外,本研究在初期增设了体验环节,即介绍与项目相近的优秀App产品,如“云上智农”“一亩田”“慧种田”等,让学生亲身体验,感受优质App在UI界面布局、业务逻辑设计上的独特之处,为学生独立开发App提供优质的参照基准。教师引导学生思考这些App背后采用了哪些关键技术,例如UI界面运用了哪些组件、这些组件是如何在后台进行管理和交互的、不同界面间的Activity如何实现场景切换和数据传递、组件怎样与Service建立绑定与解绑关系、客户端数据采取何种机制存储、如何搭建服务端等技术细节,促使学生自我审视在技术层面上存在的短板,并思考采取何种策略解决技术难题。
1.3 重点与难点分析
教学过程中的重点与难点是学生技术能力突破的关键节点,故而在教学中须重视对两者进行解析。Android应用开发课程的特色在于强调实践能力,即运用所学知识体系构建高质量App产品,然而现实中,很多学生虽能熟记课程知识点,但在运用所学解决实际产业问题时却显得力不从心。在引入智慧农业场景进行启发式案例教学时,并非仅提出案例和要求,而不关注对学生开发过程的分析和指导,教师应适时跟进学生在开发过程中遇到的难题,整理归纳学生反映的问题[14]。
在案例开发实践中,大多数学生面临的难点大致可分为业务层面和技术层面。业务层面具体表现为需求分析不准确、系统设计欠佳。如需求分析文档书写不规范乃至缺失,导致后续原型图与UI设计工作受阻;案例中牵涉茶叶消费者、生产者、销售者、检测机构等多个角色,多数学生对不同角色需求之间的关联分析不够精细,影响App 整体功能的实现;系统设计缺乏创新性且功能模块不够完整,业务流程图绘制不准确,存在逻辑缺陷。技术层面主要体现为布局管理器设计不合理,未充分考虑界面在不同屏幕尺寸设备上的适配问题;客户端数据库创建操作不熟练,在设计数據表和实体类封装时常出现错误;大部分学生选用Spring Boot搭建App服务端,但对于Spring Boot核心技术和运行流程理解不足,一旦遇到问题,不易找到解决方案。针对业务难点,引导学生遵循标准化商业App开发流程,做好茶叶市场的深度调研、撰写规范的需求分析文档、绘制精准的原型图和系统设计图,以此培养学生的商业化App项目开发实践能力。针对技术难点,则进一步深化UI界面设计的细节讲解、SQLite数据库的创建与使用教程、Spring Boot核心技术原理以及相关文档查询方法的教学,以巩固学生的专业技术基础并提升自主解决问题的能力。
2 教学案例实践
“纸上得来终觉浅,绝知此事要躬行”,计算机专业教育尤其需要深入产业实践,这样才能促进理论与实践的有机结合,并全面培养学生解决系统性工程问题的能力[15]。从项目推进角度看,实训通常可以划分为三个阶段:项目分析与可行性验证、基础功能实现与优化、项目成果展示。考虑到实际商业App开发中常采用团队协作模式,并且本案例中若要在基础功能基础上实现创新,可能需要多名学生组成小组共同完成较大规模的开发,故在此基础上增设第四个实训阶段——协同创新实训,以提升学生的团队协作能力。
2.1 行业分析与方案设计实践
本App开发项目旨在整合茶叶生产、销售、消费者以及检测认证机构等多方资源,提升茶叶生产者的市场竞争优势,为茶叶销售者和消费者搭建安全可信的交易渠道,提高检测认证机构的检测资源利用率,进而实现经济效益和社会效益的共享。要求学生通过实地调研、咨询业内专家和从业者、查阅相关资料等方式,深入了解茶叶产业链的现状和瓶颈问题,结合实际情况制定出满足各方利益诉求、切实可行的项目总体开发方案。接着,指导学生从自身技术实力、时间条件和其他相关支持条件出发,合理评估项目完成的可能性,如面临较大挑战,可适度降低开发难度。通过这一阶段实训,可以增强学生的行业调研能力、项目策划与管理能力、项目分析与决策能力,以及撰写相关文档的专业素养。
该实训阶段的产出成果应包括书面形式的项目需求分析报告、系统架构功能图、系统业务流程图、项目可行性分析报告以及项目开发时间计划表,根据学生提交材料的完整性、规范性、合理性对该阶段成效进行量化评价。
2.2 代码实施与优化实践
实现基础功能的基础是熟练掌握编程语法知识并熟练运用集成开发环境。为此,需指导学生选择恰当的开发工具。对于Android应用项目客户端开发,谷歌公司推出的Android Studio是最常用的选择,相比IntelliJ IDEA和Eclipse,Android Studio的配置更为便捷,建议学生采用Android Studio进行客户端开发[16]。考虑到Java语言在服务器端开发中具有稳定、跨平台、安全、API丰富等优势,建议学生基于Java选择相应的应用框架和IDE,如在安装Spring插件的IntelliJIDEA 或Eclipse 中进行Android 应用项目的后端开发[17]。对于初次接触全栈开发的计算机专业本科生,推荐使用易于学习、开源免费的MySQL作为后端数据库。在项目前后端基础功能实现后,进行项目编译、测试、优化及部署。此阶段将理论设计方案转化为实际软件产品,因此是整个实训过程的核心。要求学生根据系统架构功能图设计App UI界面,依照系统业务流程图编写App逻辑代码,并在安卓模拟器(AVD) 上进行初步调试,确保UI界面在不同Android版本和屏幕尺寸下都能正常显示,确保客户端业务逻辑符合茶叶生产者、销售者、消费者、检测者等各方预期。此外,还需学生根据客户端用户需求,设计相应数据库表结构,编写能实现用户注册、登录、下单、查询、删除、新增、编辑等功能的后端代码,并将后端代码部署至云端或服务器上进行测试与优化。通过该阶段实训,将进一步巩固学生对编程基础语法的理解和掌握程度、提高使用常见IDE的熟练程度,以及提升学生对农业领域Android应用项目全栈开发的综合技能。
该实训阶段的成果应包括客户端所有代码、服务端所有代码、客户端安装包apk文件、服务端登录入口地址以及书面形式的使用说明书,根据学生提交代码质量、真机功能测试结果、说明书质量对该阶段效果进行量化评价。
2.3 多维度专业表达能力训练
在真实的商业App开发中,产品展示与宣传扮演着至关重要的角色。然而在计算机专业本科教学中,往往忽略了对学生专业表达能力的培养,尤其是训练学生以专业身份向不同受众介绍和推广自己开发的产品。通过向茶叶生产者、销售者、消费者、检测者等不同用户群体展示和讲解自己开发的App产品,可以显著提升学生的语言组织能力和表达水平,同时收集各方建议以不断优化产品。在这一实训阶段,要求学生全面总结所开发的App,模拟向不同用户群体演示和解说App产品的开发目的、详细使用步骤(参见图2 所示)、后期维护方案,并阐述该App能为用户提供哪些具体价值以促进产品的推广普及。现场观众有权提问或提出建议,讲解学生需妥善回应所提问题或根据建议提出初步改进建议。通过这一阶段实训,学生将更全面地认识自己开发的产品,其专业表达能力将得到显著提升,为今后进入实际工作岗位积累宝贵经验。
该实训阶段的成果应包括产品介绍PPT文件和针对现场问答的记录文档,根据学生的现场讲解表现和提交文档质量进行量化评价。
2.4 协同创新训练与能力提升
鉴于知识储备的局限性和长期以来应试教育的影响,对于大部分计算机专业本科生而言,单靠个体力量在项目开发中实现创新较为艰难,因此,采用小组交流讨论、分工合作的方式以促进协同创新至关重要,这有助于提升项目创新品质及学生团队协作能力[18]。创新应具备明确的目标导向,在本课程项目中,引导学生聚焦于解决茶叶市场缺乏统一量化评价指标、价格紊乱、存在假冒伪劣商品等痛点问题作为创新工作的切入点。按自由组合原则,将每5名学生划归为一个小组,小组内部共同探讨项目的创新策略,并依据最终确定的方案进行任务分工。比如,部分小组选择将基于区块链的溯源体系作为项目创新亮点,以这一实例来阐述学生的协同创新过程。首先,小组成员围绕茶叶种植、加工、销售全流程进行深度探讨,构思出一套基于区块链技术的茶叶信息管理系统框架。随后,小组将整个系统框架细分为供应链信息维护系统与可信溯源系统两个子系统,并绘制出这两个子系统的业务流程图(如图3所示),继而依据业务流程细化工作量,协商确定每位成员的具体开发任务。最后,整合各成员编写的代码,进行测试、调试和完善,在原有项目基础上成功嵌入基于区块链技术的茶叶信息维护模块,并展示其实际功能(如图4所示)。通过这一阶段实训,有助于强化学生的团队协作精神与实践能力,加深他们对高质量创新的认识,并提高其创新能力。
该实训阶段的产出成果应包括书面形式的创新方案报告、任务分工明细表,以及创新模块的所有源代码、测试报告、详细说明文档,依据创新高度和团队协作规范化程度对各小组进行量化评价。
3 课程实施效果总结
本教改项目立足于湖州师范学院的国家级一流本科专业——计算机科学与技术专业及其依托的浙江省现代农业资源智慧管理与应用研究重点实验室,遵循习近平总书记在浙江工作期间来校视察时提出的“因地制宜、体现特色、服务地方”的办学方针,紧密联系地方产业特性,旨在培育兼具计算机工程与农业工程交叉背景的高层次复合型人才。项目选取计算机专业的核心课程——Android应用开发课程作为改革切口,精心设计了一整套教学案例与评价机制,旨在全面提升学生的专业基础知识掌握、行业分析调研、项目实施操作、团队协作互动以及创新能力。
就学校层面而言,本研究可为计算机专业本科人才培养方案的制定提供重要参照,有力推动构建“学生素养综合化、培养规划个性化、工程实践全程化、成才路径多样化”的培养体系,为地区经济发展持续输送高质量的信息技术人才。对于计算机专业教师,本研究则能够为Android应用开发课程的教学案例设计与教学计划编制注入新理念,通过对接地方具体产业难题,增强学生在项目实践中解决问题的真实体验,有效激发学生的学习积极性。而对于计算机专业学生来说,本研究有助于明确他们的学习目标定位,明晰社会对计算机专业人才能力的需求标准,开辟卓有成效的学习路径。
参考文献:
[1] 于文静,严赋憬,韩佳诺.全面推进乡村振兴 加快建设农业强国——中央农办主任、农业农村部部长唐仁健解读2023 年中央一号文件[J].农村财务会计,2023(3):5-8.
[2] 王瑶.乡村振兴背景下乡村产业融合路径研究[J].智慧农业导刊,2023,3(10):144-147.
[3] 张中秋,束元,黄必栋.移动应用开发课程教学改革与探索[J]. 计算机时代,2023(1):113-115,119.
[4] 吕金娜,向尕,吴丽花.基于应用技术能力培养的移动应用开发实践教学探索[J].计算机教育,2023(5):194-197.
[5] 王竹婷,夏竹青,孙欣欣,等.应用型高校Android移动应用开发课程建设探索[J].电脑知识与技術,2021,17(9):144-145.
[6] 代张音,江泽标.新工科创新型人才培养现状调查及分析[J]. 科教文汇,2023(11):6-10.
[7] 李金义,宋丽梅.新工科形势下系统工程思维和学习力的培养探究[J].科教导刊,2018(3):48-49,54.
[8] 马丽,杨之音,韩永奇,等.面向工程认证与新工科的农业院校计算机专业创新人才培养研究与实践[J].智慧农业导刊,2023,3(5):111-114.
[9] 黄雨.基于深度学习的农产品供需匹配模型研究[D].华北水利水电大学, 2022.
[10] 程彬彬,刘长娥,蔡小昂,等.区块链在农业上的应用现状及发展前景[J].农业与技术,2022,42(24):172-176.
[11] 张雄涛,黄旭,曾孟佳,等.本科生人工智能教学模式和实训体系的探索与实践[J].湖州师范学院学报,2021,43(2):89-93.
[12] 魏玉兰,李兵,王培良,等.校企协同下的机械设计课程教学变革与实践[J].湖州师范学院学报,2017,39(12):35-40.
[13] 刘秋彬.中国茶叶市场的发展现状与未来分析[J].福建茶叶,2014,36(4):2-5.
[14] 张平平,李侗.基于学生反馈对计算机科学与技术专业教学改进的探讨——以成都师范学院为例[J].成都师范学院学报,2018,34(7):120-124.
[15] 刘三荣,徐丽,张强,等.基于工程教育专业认证的计算机组成原理混合式教学组织模式[J].计算机教育,2021(3):104-107.
[16] 李娜,李晶晶.基于移动智能终端的Android应用开发课程教学改革研究[J].电脑知识与技术,2022,18(27):110-112.
[17] 杨敏,徐万明,田新宇,等.基于Spring Boot框架和Android的会议管理系统设计与实现[J].信息与电脑(理论版),2022,34(12):94-96.
[18] 蔡振春.地方本科院校创新创业教育与专业教育的深度融合[J].湖州师范学院学报,2021,43(6):16-19.
【通联编辑:唐一东】