软件代码可视化的三维隐喻,帮助学生学习面向对象的概念

H. G. Pérez-González, Alberto S. Núñez-Varela, F. Martínez-Pérez, S. Nava-Muñoz, Cesar Garcia, J. Kalita, R. Juárez-Ramírez
{"title":"软件代码可视化的三维隐喻,帮助学生学习面向对象的概念","authors":"H. G. Pérez-González, Alberto S. Núñez-Varela, F. Martínez-Pérez, S. Nava-Muñoz, Cesar Garcia, J. Kalita, R. Juárez-Ramírez","doi":"10.1109/CONISOFT52520.2021.00043","DOIUrl":null,"url":null,"abstract":"Object-oriented (OO) paradigm learning is not an easy task; the literature reports that regardless of whether this is learned as the first paradigm (objects-first) or vice versa (objects-later) the way to ensure that students really learn OO concepts is unclear. Learning this as a second paradigm (now preferred by 92% of the 25 world-best universities) implies different challenges than those presented in the objects-first paradigm. On the other hand, Software Visualization (SV) is the graphic display of information about a software system. There is an SV called Program Animation (PA) in which the computer determines and shows what happens during the execution of a program. It is based on some metaphor that should facilitate the understanding of programs. Several metaphors have been proposed (City, Solar-system, Islands). Most of them allow users to get a static view of the system and in some cases the exploration of its modules and its dependencies. We have developed a metaphor (and a tool called LabOO) to dynamically represent OO concepts from code. Unlike other PA systems, it aims to track what conceptually happens when a succession of OO instructions is executed. The tool receives as input a program written in an object-oriented language and displays the dynamic representation of what happens (based on the metaphor) when that program is executed. The tool facilitates the learning of concepts such as object, class, inheritance, method, and message. Results of an initial study show promising results about the value of this tool.","PeriodicalId":380632,"journal":{"name":"2021 9th International Conference in Software Engineering Research and Innovation (CONISOFT)","volume":"7 5 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2021-10-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"A 3D Metaphor for Software Code Visualization to Help Students to learn Object-Oriented Concepts\",\"authors\":\"H. G. Pérez-González, Alberto S. Núñez-Varela, F. Martínez-Pérez, S. Nava-Muñoz, Cesar Garcia, J. Kalita, R. Juárez-Ramírez\",\"doi\":\"10.1109/CONISOFT52520.2021.00043\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Object-oriented (OO) paradigm learning is not an easy task; the literature reports that regardless of whether this is learned as the first paradigm (objects-first) or vice versa (objects-later) the way to ensure that students really learn OO concepts is unclear. Learning this as a second paradigm (now preferred by 92% of the 25 world-best universities) implies different challenges than those presented in the objects-first paradigm. On the other hand, Software Visualization (SV) is the graphic display of information about a software system. There is an SV called Program Animation (PA) in which the computer determines and shows what happens during the execution of a program. It is based on some metaphor that should facilitate the understanding of programs. Several metaphors have been proposed (City, Solar-system, Islands). Most of them allow users to get a static view of the system and in some cases the exploration of its modules and its dependencies. We have developed a metaphor (and a tool called LabOO) to dynamically represent OO concepts from code. Unlike other PA systems, it aims to track what conceptually happens when a succession of OO instructions is executed. The tool receives as input a program written in an object-oriented language and displays the dynamic representation of what happens (based on the metaphor) when that program is executed. The tool facilitates the learning of concepts such as object, class, inheritance, method, and message. Results of an initial study show promising results about the value of this tool.\",\"PeriodicalId\":380632,\"journal\":{\"name\":\"2021 9th International Conference in Software Engineering Research and Innovation (CONISOFT)\",\"volume\":\"7 5 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2021-10-01\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"2021 9th International Conference in Software Engineering Research and Innovation (CONISOFT)\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/CONISOFT52520.2021.00043\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"2021 9th International Conference in Software Engineering Research and Innovation (CONISOFT)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/CONISOFT52520.2021.00043","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0

摘要

面向对象(OO)范式学习不是一件容易的事;文献报道,无论这是作为第一范式(对象优先)还是相反(对象后)来学习,确保学生真正学习OO概念的方法都是不明确的。将其作为第二种范式学习(现在25所世界上最好的大学中有92%更喜欢这种范式)意味着与“对象优先”范式所呈现的挑战不同。另一方面,软件可视化(SV)是关于软件系统信息的图形显示。有一种称为程序动画(PA)的SV,其中计算机确定并显示在程序执行期间发生的事情。它基于一些隐喻,这些隐喻应该有助于理解程序。人们提出了几个比喻(城市、太阳能系统、岛屿)。它们中的大多数允许用户获得系统的静态视图,在某些情况下还允许用户探索系统的模块及其依赖项。我们已经开发了一个隐喻(以及一个称为LabOO的工具)来动态地表示代码中的OO概念。与其他PA系统不同,它的目标是跟踪在执行一系列OO指令时在概念上发生的情况。该工具接收以面向对象语言编写的程序作为输入,并显示程序执行时所发生的动态表示(基于隐喻)。该工具有助于学习对象、类、继承、方法和消息等概念。初步研究的结果显示了该工具的价值。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
查看原文
分享 分享
微信好友 朋友圈 QQ好友 复制链接
本刊更多论文
A 3D Metaphor for Software Code Visualization to Help Students to learn Object-Oriented Concepts
Object-oriented (OO) paradigm learning is not an easy task; the literature reports that regardless of whether this is learned as the first paradigm (objects-first) or vice versa (objects-later) the way to ensure that students really learn OO concepts is unclear. Learning this as a second paradigm (now preferred by 92% of the 25 world-best universities) implies different challenges than those presented in the objects-first paradigm. On the other hand, Software Visualization (SV) is the graphic display of information about a software system. There is an SV called Program Animation (PA) in which the computer determines and shows what happens during the execution of a program. It is based on some metaphor that should facilitate the understanding of programs. Several metaphors have been proposed (City, Solar-system, Islands). Most of them allow users to get a static view of the system and in some cases the exploration of its modules and its dependencies. We have developed a metaphor (and a tool called LabOO) to dynamically represent OO concepts from code. Unlike other PA systems, it aims to track what conceptually happens when a succession of OO instructions is executed. The tool receives as input a program written in an object-oriented language and displays the dynamic representation of what happens (based on the metaphor) when that program is executed. The tool facilitates the learning of concepts such as object, class, inheritance, method, and message. Results of an initial study show promising results about the value of this tool.
求助全文
通过发布文献求助,成功后即可免费获取论文全文。 去求助
来源期刊
自引率
0.00%
发文量
0
期刊最新文献
Scrumlity: An Agile Framework Based on Quality Assurance Information Visualization In Adaptable Dashboards For Smart Cities: A Systematic Review Microservices Deployment: A Systematic Mapping Study Automatic Grading of Programming Assignments in Moodle Software Design and Artificial Intelligence: A Systematic Mapping Study
×
引用
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