Experiences in bridging from functional to object-oriented programming

Igor Moreno Santos, Matthias Hauswirth, Nathaniel Nystrom
{"title":"Experiences in bridging from functional to object-oriented programming","authors":"Igor Moreno Santos, Matthias Hauswirth, Nathaniel Nystrom","doi":"10.1145/3358711.3361628","DOIUrl":null,"url":null,"abstract":"Understanding how students' prior knowledge affects their learning of new concepts is essential for effective teaching. The same learning activity, or the same explanation, may have very different effects on students with different prior knowledge. In the context of teaching programming, prior knowledge includes the programming languages students studied in prior courses. In this experience report we describe our observations in teaching object-oriented programming in Java to students who previously learned functional programming in Racket's student languages. We highlight four concrete problems we encountered in teaching the second course in this sequence. We detected and addressed these problems primarily thanks to a teaching assistant who assisted in both of the courses. This experience made us realize the importance of explicitly bridging between languages in introductory programming course sequences. It also showed that the sharing of teaching staff across courses can be an effective way to detect aspects that need bridging.","PeriodicalId":190350,"journal":{"name":"Proceedings of the 2019 ACM SIGPLAN Symposium on SPLASH-E","volume":"18 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2019-10-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"6","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of the 2019 ACM SIGPLAN Symposium on SPLASH-E","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/3358711.3361628","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 6

Abstract

Understanding how students' prior knowledge affects their learning of new concepts is essential for effective teaching. The same learning activity, or the same explanation, may have very different effects on students with different prior knowledge. In the context of teaching programming, prior knowledge includes the programming languages students studied in prior courses. In this experience report we describe our observations in teaching object-oriented programming in Java to students who previously learned functional programming in Racket's student languages. We highlight four concrete problems we encountered in teaching the second course in this sequence. We detected and addressed these problems primarily thanks to a teaching assistant who assisted in both of the courses. This experience made us realize the importance of explicitly bridging between languages in introductory programming course sequences. It also showed that the sharing of teaching staff across courses can be an effective way to detect aspects that need bridging.
查看原文
分享 分享
微信好友 朋友圈 QQ好友 复制链接
本刊更多论文
有从函数式编程过渡到面向对象编程的经验
了解学生的先验知识如何影响他们对新概念的学习是有效教学的关键。同样的学习活动,或者同样的解释,可能对具有不同先验知识的学生产生非常不同的影响。在编程教学中,先验知识包括学生在先验课程中学习过的编程语言。在这份经验报告中,我们描述了我们在向以前用Racket的学生语言学习函数式编程的学生教授Java面向对象编程时的观察。我们重点介绍了我们在这个顺序的第二门课程的教学中遇到的四个具体问题。我们发现并解决了这些问题,主要要感谢一位在这两门课程中都提供帮助的助教。这一经历使我们意识到在编程入门课程序列中明确地在语言之间架起桥梁的重要性。它还表明,跨课程的教学人员共享是发现需要弥合的方面的有效方法。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 去求助
来源期刊
自引率
0.00%
发文量
0
期刊最新文献
Theia: automatically generating correct program state visualizations Towards answering “Am I on the right track?” automatically using program synthesis Microsoft MakeCode: embedded programming for education, in blocks and TypeScript Experiences in bridging from functional to object-oriented programming Evaluating ProDirect manipulation in hour of code
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
已复制链接
已复制链接
快去分享给好友吧!
我知道了
×
扫码分享
扫码分享
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1