Repository landing page

We are not able to resolve this OAI Identifier to the repository landing page. If you are the repository manager for this record, please head to the Dashboard and adjust the settings.

Introducing novice programmers to functions and recursion using computer games

Abstract

Having got to grips with the basic building blocks of programming, novice programmers must progress to more challenging concepts such as functions and recursion. To get the most from their programming journey novice programmers must attempt to bridge the gap between the solid foundation they have built and the more challenging programming concepts that will help expand their programming armoury. Functions and recursion can present a stumbling block for the novice programmer as they can be difficult to visualise, especially, recursion. The novice programmer can find it difficult to understand the flow of control of a program and this can be compounded by having to understand the backward flow of control of recursion. This unfamiliarity with recursive activities, like Alice, can lead the novice programmer down a rabbit hole of confusion from which they find it difficult to escape, shattering their confidence.The stumbling block for novice programmers is building a mental model of the program stack and subsequently identifying the backward flow of control from the last invocation of the recursive method.Novice programmers can find themselves caught in a web of code that helps little with their ability to understand this powerful programming technique. Hence, the ability to visualise such a technique could open the door to better understanding for the novice programmer. There are many computer games available which are designed to teach programming concepts using a visual interface, requiring the programmer to apply problem solving and computational thinking to derive a solution to the puzzle posed. Such programs offer a way to visualise abstract concepts such as recursion and offer a solution mechanism that does not require the novice programmer to implement their solution steps using a programming language. Offering a program language agnostic approach, the novice programmer, can build an understanding of the concept of recursion such that they should be able to develop an algorithm that could be programmed using any programming language.This paper will discuss an ongoing attempt to introduce functions and recursion to second year Game Design students undertaking a C++ game development module.<br/

Similar works

This paper was published in ResearchOnline@GCU.

Having an issue?

Is data on this page outdated, violates copyrights or anything else? Report the problem now and we will take corresponding actions after reviewing your request.