This article reviews the extensive literature emerging from studies concerned with skill acquisition and the development of knowledge representation in programming. In particular, it focuses upon theories of program comprehension that suggest programming knowledge can be described in terms of stereotypical knowledge structures that can in some way capture programming expertise independently of the programming language used and in isolation from a programmer's specific training experience. An attempt is made to demonstrate why existing views are inappropriate. On the one hand, programs are represented in terms of a variety of formal notations ranging from the quasi‐mathematical to the near textual. It is argued that different languages may lead to different forms of knowledge representation, perhaps emphasizing certain structures at the expense of others or facilitating particular strategies. On the other hand, programmers are typically taught problem‐solving techniques that suggest a strict approach to problem decomposition. Hence, it seems likely that another factor that may mediate the development of knowledge representation, and that has not received significant attention elsewhere, is related to the training experience that programmers typically encounter. In this article, recent empirical studies that have addressed these issues are reviewed, and the implications of these studies for theories of skill acquisition and for knowledge representation are discussed. In conclusion, a more extensive account of knowledge representation in programming is presented that emphasizes training effects and the role played by specific language features in the development of knowledge representation within the programming domain.
The structure and content of programming knowledge: Disentangling training and language effects in theories of skill development
Reprints and Corporate Permissions
Please note: Selecting permissions does not provide access to the full text of the article, please see our help page How do I view content?
To request a reprint or corporate permissions for this article, please click on the relevant link below:
Academic Permissions
Please note: Selecting permissions does not provide access to the full text of the article, please see our help page How do I view content?
Obtain permissions instantly via Rightslink by clicking on the button below:
If you are unable to obtain permissions via Rightslink, please complete and submit this Permissions form. For more information, please visit our Permissions help page.
Related Research Data
Related research
People also read lists articles that other readers of this article have read.
Recommended articles lists articles that we recommend and is powered by our AI driven recommendation engine.
Cited by lists all citing articles based on Crossref citations.
Articles with the Crossref icon will open in a new tab.