Abstract
This short note attempts to clarify some fundamental relationships within the domain of programming knowledge. In particular data concepts are discussed. Our aim is to draw a clear distinction between abstraction and generalization. Besides that attention is given to the role of metaknowledge. Deeper methodological understanding of these relationships is crucial for all those studying and practicing programming.
- [1] P. Návrat and I. Mladá. What knowledge is the knowledge based programming based on?: An inquiry into knowledge sources. In I. Plander, editor. Proc. Artificial Intelligence and Information-Control Systems of Robots 89, pages 187-190. Amsterdam. 1989. North-Holland.Google Scholar
- [2] N. Dale and H.M. Walker. A classification of data types. Computer Science Education, 3:223-232. 1992.Google Scholar
Cross Ref
- [3] V. Jonckers. A Framework for Modeling Programming Knowledge. PhD thesis. Vrije Universiteit Brusel. Dienst Artificiele Intelligentie, 1987.Google Scholar
- [4] Koen Bertels, Philip Vanneste, and Carlos De Backer. A cognitive model of programming knowledge for procedural languages. In Ivan Tomek, editor. Computer Assisted Learning 92, Proceedings of the 4th International Conference ICCAL 92, pages 124-135. Springer-Verlag. 1992. Google Scholar
Digital Library
- [5] Timothy S. Gegg-Harrison. Learning prolog in a schema-based environment. Instructional Science. 20(2/3):173-192. 1991.Google Scholar
Cross Ref
- [6] D.M. Kaminski. A knowledge base approach to learning to program in prolog. In I. Tomek, editor. Computer Assisted Learning 92, Proceedings of the 4th International Conference ICCAL92. pages 332-342. Springer-Verlag. 1992. Google Scholar
Digital Library
- [7] P. L. Brusilovsky. Towards an intelligent environment for learning introductory programming. In E. Lemut. B. du Boulay, and G. Dettori. editors, Cognitive Models and Intelligent Environments for Learning Programming. pages 114-124. Springer-Verlag, 1992.Google Scholar
- [8] B. Liskov and J. Guttag. Abstraction and Specification in Program Development. MIT Press, Cambridge and London. 1986. Google Scholar
Digital Library
- [9] L. Molnár and P. Návrat. Programming in Lisp (in Slovak). Alfa, Bratislava, 1988.Google Scholar
- [10] N. Dale and S.C. Lilly. Pascal Plus Data Structures. Algorithms, and Advanced Programming. D.C. Heath and Co., Lexington. 1991. Google Scholar
Digital Library
- [11] D.W. Nance. Pascal: Understanding Programming and Problem Solving. West Publ. Co., St. Paul, 1992. Google Scholar
Digital Library
- [12] E.B. Koffman. Pascal: Problem Solving and Program Design. Addison-Wesley. 1992. Google Scholar
Digital Library
- [13] H. Akkermans. B. Wielinga. and G. Schreiber. Steps in constructing problem solving methods. In N. Aussenac. G. Boy. B. Gaines. M. Linster. J.-G. Ganascia. and Y. Kodratoff, editors. Knowledge Acquisition for Knowledge-Based, Systems - Proc. 7th European Workshop EKAW'93. pages 45-65. Springer-Verlag. 1993. Google Scholar
Digital Library
- [14] S. Ohsuga. How can knowledge-based systems solve large-scale problems?: Model-based decomposition and problem solving. knowledge-Based Systems. 6(1):38-62, 1993.Google Scholar
- [15] V. Rozinajová and P. Návrat. Explicit knowledge representation in support of learning programming. In P. Brna, S. Ohlsson. and H. Pain. editors, Proc. AI-ED 93 World Conference on Artificial Intelligence in Education, page 584, Charlottesville, 1993. Association for the Advancement of Computing in Education.Google Scholar
- [16] P. Návrat and V. Rozinajová. Making programming knowledge explicit. Computers and Education , 21(4):281-299. 1993. Google Scholar
Digital Library
Index Terms
Hierarchies of programming concepts: abstraction, generality, and beyond
Recommendations
Understanding Object Oriented Programming Concepts in an Advanced Programming Course
ISSEP '08: Proceedings of the 3rd international conference on Informatics in Secondary Schools - Evolution and Perspectives: Informatics Education - Supporting Computational ThinkingTeaching Object Oriented Programming (OOP) is a difficult task, both for teachers who have to find the best way to illustrate the concepts and for students who have to understand them. Although the OOP paradigm and its concepts reflect the "real world",...






Comments