Information Technology Reference
In-Depth Information
confront while learning the concept of variable; Kaczmarczyk et al. ( 2010 ) in-
vestigate learners' misconceptions of core basic computer science topics, e.g.,
memory models and assignment; Chaffin et al. ( 2009 ) suggest using a novel
game that provides computer science learners the opportunity to write code, and
base on visualization-based interaction to learn recursion by depth-first search of
a binary tree; Denier and Sahraoui ( 2009 ) suggest visualizing inheritance in ob-
ject-oriented programs to support learners' comprehension of this concept; Paul
and Vahrenhold ( 2013 ) present results of the assessment of first-year students'
misconceptions related to algorithms and data structures. They related to active
and passive knowledge with respect to the teaching instruments used; Karpierz
and Wolfman ( 2014 ) triangulate evidence for five misconceptions concerning
binary search trees and hash tables, and design and validate multiple-choice con-
cept inventory questions to measure the prevalence of these misconceptions.
Learning skills, e.g., problem solving, debugging, abstraction. For example, Ar-
moni ( 2009 ) analyzes computer science learners' abilities to reduce solutions of
algorithmic problems; de Raadt et al. ( 2004 ) suggest a framework for instruc-
tion and assessment of problem-solving strategies; Edwards ( 2003 ) presents a
vision for computer science education driven by the use of test-driven develop-
ment; Murphy et al. ( 2008 ) present a qualitative analysis of debugging strate-
gies of novice Java programmers; McCauleya et al. ( 2008 ) review the literature
related to the learning and teaching of debugging computer programs; Miller
et al. ( 2014 ) investigated the integration of computational thinking and creative
thinking in CS1 to improve student learning performance according to Epstein's
Generativity Theory.
Learning and teaching programming paradigms , e.g. , functional , logical , procedural ,
object oriented . For example, Van Roy et al. ( 2003 ) discuss the role of programming
paradigms in teaching programming; Stolin and Hazzan ( 2007 ) investigate students'
understanding of programming paradigm; Ragonis ( 2010 ) suggests a pedagogical
approach for discussing fundamental object-oriented programming principles by us-
ing the ADT SET; Haberman and Ragonis ( 2010 ) explore teaching implication with
respect to logic programming and object-oriented Programming; Bunde et al. ( 2014 )
illustrated a variety of relevant language paradigms by presenting parallel implemen-
tations of the Game of Life.
• Learning and teaching programming languages within a particular paradigm,
e.g., with respect to object oriented programming languages: Smalltalk, Java,
C#, Python. For example, Fleck ( 2007 ) discusses Prolog as the first program-
ming language; Moritz and Blank ( 2005 ) explore a design-first curriculum for
teaching Java in a CS1 course; Miller ( 2007 ) explores Python as a learning and
teaching language.
Different teaching methods, e.g., laboratory work, projects-based learning, pat-
terns . For example, Hanks ( 2008 ) explores the advantages of pair programming
while learning computer science; Soh et al. ( 2005 ) report on their framework
for designing, implementing, and maintaining closed laboratories in CS1; Hauer
and Daniels ( 2008 ) address open-ended group projects from a learning theory
perspective; Forišek and Steinov£ ( 2010 ) suggest a set of didactic games and
Search WWH ::




Custom Search