Git在编程教学中的应用探究.pdf
《Git在编程教学中的应用探究.pdf》由会员分享,可在线阅读,更多相关《Git在编程教学中的应用探究.pdf(5页珍藏版)》请在咨信网上搜索。
1、铜陵职业技术学院学报DOI:10.16789/ki.1671-752x.2023.02.0192023年第2期收稿日期院2022-10-18作者简介院郑有庆渊1977-冤袁男袁安徽合肥人袁安徽财贸职业学院讲师袁硕士袁研究方向院计算机教育遥基金项目院2020 年度安徽高校自然科学研究项目重点项目野基于 Hadoop 的大数据存储优化研究冶渊KJ2020A1122冤遥Git 在编程教学中的应用探究郑有庆渊安徽财贸职业学院袁安徽合肥230601冤摘要院企业在开发软件的过程中袁都会使用版本控制工具来追踪文件的变更和协同团队进行并行开发遥 以前一般使用集中式版本控制工具袁例如SVN和CVS等工具遥 分布
2、式版本控制工具git出现后因为其具有分布式去中心化和分支管理尧代码合并等强大功能袁立即风靡全球遥同样git也可以用于编程语言教学遥在教学中袁git可以减轻教师的负担袁提高教师的工作效率曰促进学生的学习袁形成学习共同体遥 也为学生将来在工作中适应企业需求奠定基础遥关键词院git曰版本控制曰学习共同体中图分类号院G712文献标识码院A文章编号院1671-752X渊2023冤02-0096-05一尧引言现在的软件越来越庞大袁 所以企业在开发软件的过程中普遍采用团队合作的方式来进行遥 团队合作开发的过程袁就需要使用到版本控制软件来追踪文件的变更和同步每个工程师的项目进度遥 早期普遍使用的是集中式的版
3、本控制软件SVN或者CVS遥 集中式版本控制是不同版本的代码全部提交到中心服务器袁而服务器一旦宕机袁所有的版本恢复和同步工作都无法进行遥 随着计算机网络技术的发展袁分布式技术现在是非常流行遥 之前国外有收费的分布式版本控制BitKeeper等工具遥 但是开发Linux操作系统的开发者李纳斯窑托沃兹由于管理Linux内核程序的需要袁 不满足于收费的分布式版本库袁 因此开源免费的分布式版本控制工具git由李纳斯窑 托沃兹开发而诞生遥git出现后迅速成为非常流行的版本控制工具遥 尤其是在2008年袁只支持git作为唯一的版本库格式进行托管袁面向开源及私有软件项目的托管平台GitHub网站上线袁为开源
4、项目免费提供git存储袁 无数的开源项目迁移到GitHub上遥 现在企业项目开发基本都是使用git做版本控制遥 分布式相比于集中式的最大区别在于开发者每次代码的更改都可以提交在自己的电脑上形成git仓库袁完成以后可以推送到中心服务器上袁供项目组的成员同步进度遥二尧教学中的困境在教授学生学习项目开发的编程语言时袁 因为创建的项目分层架构袁所以要看学生写的代码袁需要一层层文件夹往下找遥 教师批改学生的代码效率很低遥 而连贯性的项目代码袁 教师要找出两次任务的代码差别袁 也相当困难遥 这给教师的教学和学生的评价带来了困扰遥 在项目代码不断地推进过程中袁需要修改之前已经做好的代码模块袁 很多学生害怕破
5、坏之前的代码功能袁 不干尝试新的代码模块遥 或者在复制原来的项目基础上进行修改尝试遥 这样随96窑窑着课程的推进袁产生众多的复制项目袁难以管理遥 而且在需要多人合作开发项目的时候袁 项目组成员之间互相拷贝项目合并袁 经常产生项目组成员都不知道自己的那个项目是最新的完整功能包的情况遥 在这种情况下袁我们需要借助工具袁来提高我们的教学效率袁促进学生动手学习袁优化我们的学习和实践方法袁git应该是目前非常合适的工具遥三尧git 的功能和教学应用git是分布式的版本控制工具袁在项目合并和同步等场合袁需要集中式的git服务器遥 由于全球最流行的git服务器GitHub服务器在国外袁 国内学校机房联网速度
6、慢以及GitHub创建私有git仓库收费等问题袁笔者自己在局域网中使用gitblit1.8搭建了git服务器作为git的中心仓库供教学使用遥 方便教师推送预习内容和学生推送完成的作业遥 并且记录历史版本袁当需要恢复历史版本的时候袁可以方便地获取之前的版本遥 学生安装git客户端袁 因为git客户端是命令方式袁操作起来不方便袁所以笔者让学生同时安装了图形化界面的客户端工具TortoiseGit袁以方便学生使用遥使用admin管理员账号登录后使用管理员用户创建相应的教师用户teacher遥 教师用户按照学生考号创建学生用户stu01尧stu02等袁 并赋予相应的权限遥 教师使用teacher用户登
7、录gitblit服务器创建项目版本库并给学生用户设置相应的读写权限遥 完成之后gitblit服务器生成相应的访问地址遥 教师推送要求学生预习的代码到创建的版本库遥 学生使用浏览器登录自己的账户袁 就可以看到教师给他们推送的项目遥 学生可以访问教师创建的版本库袁 提前预习相关的项目代码遥 如图1所示遥渊一冤在编程语言教学中使用 git在教学之前袁 教师已经把项目相关的结构和代码通过git推送给了学生袁 学生预习了相应的代码遥在课堂上袁教师讲解相关的知识袁演示相应代码的编写过程袁 学生跟着教师学习编写代码遥 课程从易到难袁不断完善项目的内容遥 例如笔者在叶Java Web开发动态网页曳 这个课程中
8、袁 教授学生request和re-sponse内置对象的知识袁 教师讲解完相应的知识并演示了代码的编写过程后袁 学生自己尝试编写jsp页面的用户登录程序遥编写完成以后袁每个学生通过浏览器并使用自己的用户名和密码登录gitblit服务器并创建一个git仓库且设置相应的所有者和权限遥然后将自己写好的项目袁 提交到本地git仓库默认的master分支袁再推送到自己创建的gitbilit服务器端仓库遥 教师登录后可以看见哪些同学已经提交了项目袁哪些同学还没有提交课堂的编程任务遥并且可以进入学生提交的项目进行查看代码编写是否正确遥随着课程的深入袁教师可以演示在进行用户登录的时候袁使用英文的用户名可以成功
9、登录但是使用中文用户名却无法成功登录的案例遥 教师演示使用中文用户名登录后在控制台显示出来的用户名是乱码袁无法匹配中文的用户名袁所以出现不能成功登录的情况遥 这时教师提出解决问题的办法袁使用 前 面介 绍 过 的request内 置 对 象 的setCharac-terEncoding()方法加上UTF-8参数袁解决form表单post提交来的字符乱码问题遥 教师在接收表单提交的文件中加上该方法袁 运行后jsp页面显示出正常的中文用户名遥学生看完教师的演示后在自己的项目中添加re-quest的setCharacterEncoding()方法袁然后提交到本地的git版本库袁再推送到gitblit
10、的仓库遥 教师登录后袁可以看到学生第二次推送的项目遥 如图2所示遥教师如果需要查看学生是否掌握了表单提交乱码问题的解决办法袁 只需要点击gitblit页面里面二次提交的项目中的野对比冶按钮袁gitblit会显示出第二次提交的项目和第一次提交的项目代码有什么区别遥 教师可以一目了然地知道学生对代码的修改情况袁 而不需要打开学生的项目中的每一个文件来找修改的代码遥 如图3所示遥图 1 教师发布的项目结构图 2 教师查看学生二次推送的项目97窑窑随着教学的深入和项目的扩展袁 教师需要给学生讲解session内置对象并使用session内置对象完成用户的注册和登陆功能遥 创建注册的jsp页面袁提交用户
11、输入的注册信息袁 在接收到用户提交的注册信息后袁判断用户名和密码是否为空袁如果用户名和密码不为空袁使用session保存用户名和密码遥 然后跳转到登陆页面并且用户输入用户名和密码提交遥处理文件的java代码判断登录页面提交的用户名和密码与之前注册的时候保存在session中的用户名和密码是否一致遥当两个用户名和密码都一致时袁在控制台显示用户登陆成功袁 页面跳转到登陆成功页面遥否则在控制台显示登陆失败袁页面重新跳转到登陆页面遥学生在扩展项目代码的时候不但需要增加用户注册的功能袁还要修改原来的用户登陆功能遥学生会害怕增加了注册功能的时候袁代码没有写好袁反而破坏了之前编写的登录功能代码遥 所以在修改
12、代码增加新功能的时候比较畏首畏尾袁不敢放手操作袁实现自己的思路遥 这时很多学生首先是把原来的项目备份袁然后在添加新的功能遥 备份逐渐越来越多袁自己也不知道需要的到底是哪个备份了遥而git的分支功能可以优雅地解决这个问题袁 让学生放开手脚地进行添加和修改袁 不用担心修改错误后破坏了原来的项目功能遥 学生可以先创建一个registBranch分支袁在编写过程中不断地把代码提交到本地的git仓库的registBranch分支袁 而暂时不推送到远程的git版本库遥 在出现问题的时候袁 学生很容易从regist-Branch分支切换到上一次运行正确的分支节点遥 而如果想恢复到之前没有添加注册功能的mas
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Git 编程 教学 中的 应用 探究
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【自信****多点】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【自信****多点】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。