Visualcode is a visual notation that uses coloured expressions and graphical environments to describe the execution of Scheme programs. RainbowScheme is a program visualization system which is designed to produce visu...
详细信息
Visualcode is a visual notation that uses coloured expressions and graphical environments to describe the execution of Scheme programs. RainbowScheme is a program visualization system which is designed to produce visualcode representations of step-by-step execution of Scheme programs. This article presents a new approach of teaching recursion using visualcode and RainbowScheme. Experimental evaluation indicates that viewing RainbowScheme:heme-produced visual traces and requiring students to use visualcode to generate visual e valuation steps of recursive programs can enhance the learners' ability to evaluate recursive programs as well as to solve recursive programming problems. (C) 2001 Academic Press.
Previous research studies on introductory programming courses in engineering education in Portugal and Serbia have indicated that although high motivation and high expectations seem to be reported by students, many st...
详细信息
Previous research studies on introductory programming courses in engineering education in Portugal and Serbia have indicated that although high motivation and high expectations seem to be reported by students, many students may fail the course. This prompted a further inquiry into student attitudes, behavior, and achievement, and it also led to the introduction of C Tutor, a widely known program visualization tool, into courses in both countries. As a result, in the present study, self-reported student achievement (grades), self-reported student progress (knowledge improvement and confidence), and self-reported usage and helpfulness of C Tutor were investigated. Anonymous data about students and their experience in the course, which also included the usage of C Tutor, were collected in a survey in Portugal and Serbia. Quantitative methods, including descriptive statistics, clustering, statistical testing of independence, and partial correlation analysis, were applied in analyses of survey data. The distribution of grades differed between the two countries, but overall attitudes were similar. Various uncovered patterns involving student attitudes and usage of C Tutor may serve as a starting point for new research studies.
Unix system calls to create and execute processes are usually hard to understand for novice students. Using graphics for visualizing the behaviour of these system calls can be useful both for the teacher to explain an...
详细信息
Unix system calls to create and execute processes are usually hard to understand for novice students. Using graphics for visualizing the behaviour of these system calls can be useful both for the teacher to explain and for the students to understand them. The problem here is that there is no software specifically addressed to generate graphical representations of these kind of programs, and to develop it would be costly. Instead of developing a complete system to visualize programs that use Unix system calls, we turned to a "cheaper" alternative solution. In this paper we show how we have used the open source graphviz tool to develop a simple way of generating graphical representations of the behaviour of these system calls, thus facilitating the comprehension of this important part in the learning of the Unix operating system.
jGRASP 1.8.7 has integrated three approaches for interacting with its dynamic viewers for data structures: the debugger, the workbench, and a new text-based interactions tab that allows individual Java statements to b...
详细信息
jGRASP 1.8.7 has integrated three approaches for interacting with its dynamic viewers for data structures: the debugger, the workbench, and a new text-based interactions tab that allows individual Java statements to be executed and expressions to be evaluated. While each of these approaches is distinct and can be used independently of the others, they can also be used together to provide a complementary set of interactions with the dynamic viewers. In order to integrate these approaches, the jGRASP visual debugger, workbench, and viewers had to be significantly redesigned. During this process, the structure identifier, which provides for the identification and rendering of common data structures, was also greatly improved by examining the examples from 20 data structure textbooks. The overall result of this integration effort is a highly flexible approach for user interaction with the dynamic data structure visualizations generated by a robust structure identifier.
Educational tools designed to help students understand programming paradigms and learn programming languages are an important component of many academic curricula. This paper presents the architecture of a distributed...
详细信息
Educational tools designed to help students understand programming paradigms and learn programming languages are an important component of many academic curricula. This paper presents the architecture of a distributed event-based visualization system. We describe specialized content provision and visualization services and present two communication protocols in an attempt to explore the possibility of a standardized language.
Visualizing impacts of an optimization pass helps to reason about, and to gain insight into, the inner workings of the optimization pass. In this paper, we visualize the impacts of two procedural abstraction passes. F...
详细信息
Visualizing impacts of an optimization pass helps to reason about, and to gain insight into, the inner workings of the optimization pass. In this paper, we visualize the impacts of two procedural abstraction passes. For this, we modified two procedural abstraction post pass optimizers to visualize for each the difference in machine code before and after optimization by drawing abstracted fragments in the original program. We then explain how the generated visualizations aid in better understanding the optimization passes.
program visualization and animation has traditionally been done at the level of the programming language and its implementation in a computer. However, novices do not know these concepts and visualizations that build ...
详细信息
program visualization and animation has traditionally been done at the level of the programming language and its implementation in a computer. However, novices do not know these concepts and visualizations that build upon programming language implementation may easily fail in helping novices to learn programming concepts. Metaphor, on the contrary, involves the presentation of a new idea in terms of a more familiar one and can facilitate active learning. This paper applies a metaphor approach to object-oriented programming by presenting new metaphors for such concepts as class, object, object instantiation, method invocation, parameter passing, object reference, and garbage collection. The use of these metaphors in introductory programming education is also discussed.
Defining visualization education is still a work in progress. visualization education is not just a subject within computer science. Computer scientists are not always the appropriate choice to teach visualization cou...
详细信息
Defining visualization education is still a work in progress. visualization education is not just a subject within computer science. Computer scientists are not always the appropriate choice to teach visualization courses on their own. visualization is not just mastering a set of concepts but acquiring skills. Student should learn by doing, either using one tool or a variety of tools, depending on the course''s focus.
This workshop will focus on using the new jGRASP viewer canvas which provides an exciting new dimension to dynamic program visualization. The canvas allows students and instructors to organize dynamic viewers of multi...
详细信息
ISBN:
(纸本)9781450326056
This workshop will focus on using the new jGRASP viewer canvas which provides an exciting new dimension to dynamic program visualization. The canvas allows students and instructors to organize dynamic viewers of multiple objects and primitives to quickly form coherent program visualizations. Students can quickly build and save visualizations of their own programs, and faculty can create visualizations and provide them to students with example programs. "Playing" a program in canvas mode brings the visualization to life as objects come into scope and the canvas is updated automatically. All educators who teach Java will benefit from this workshop. It will be especially suitable for instructors who teach CS1 (introduction to programming), CS2 (introduction to data structures), and CS3 (introduction to algorithms), as well as for instructors of AP courses in high schools. jGRASP is a freely available educational IDE (http://***/); no prior experience with jGRASP is expected. Laptop required.
In this paper we survey experiments with program and algorithm visualizations (PAVs) where learning improvements have been detected. We analyze these experiments based on the student's level of engagement with the...
详细信息
In this paper we survey experiments with program and algorithm visualizations (PAVs) where learning improvements have been detected. We analyze these experiments based on the student's level of engagement with the visualizations. There are some features present in most of these, successful, experiments. Therefore they should be taken into account as important factors affecting pedagogical effectiveness of PAVs, these features are: narrative and textual contents, feedback to students' answers and a student centered approach when designing PAV construction kits.
暂无评论