Block-Based Object-Oriented Programming
Object-oriented programming (OOP) is not only an integral part of computing degrees but also a requirement in non-computing majors such as engineering. Understanding OOP concepts can be difficult for novice programmers, and often leads to the development of misconceptions. This is exacerbated when t...
Saved in:
Published in | IEEE Transactions on Learning Technologies Vol. 15; no. 4; pp. 439 - 453 |
---|---|
Main Authors | , , , , |
Format | Journal Article |
Language | English |
Published |
Piscataway
IEEE
01.08.2022
Institute of Electrical and Electronics Engineers, Inc The Institute of Electrical and Electronics Engineers, Inc. (IEEE) |
Subjects | |
Online Access | Get full text |
Cover
Loading…
Summary: | Object-oriented programming (OOP) is not only an integral part of computing degrees but also a requirement in non-computing majors such as engineering. Understanding OOP concepts can be difficult for novice programmers, and often leads to the development of misconceptions. This is exacerbated when the discipline requires students to learn a technical low-level language such as C++, as is the case in many engineering disciplines. We propose a block-based programming language extension, Blockly-OOP, to help students learn core OOP concepts without the technical complexities associated with traditional textual languages. The Blockly-OOP Learning Environment was developed by integrating Blockly-OOP with learning activities that guide students through programming exercises that target popular OOP misconceptions. An evaluation ( n = 238) in a second-year programming course (CS2) showed that a block-based programming language helps students improve their understanding of object-oriented concepts, warranting further research in this area. |
---|---|
ISSN: | 1939-1382 2372-0050 |
DOI: | 10.1109/TLT.2022.3190318 |