Abstract
The goal of this paper is to present in context the key didactical principles behind the Program by Design curricula, motivate the need for the supporting software, and describe in detail the How to Design Classes component for teaching introductory object oriented program design using Java and Java-like languages. The key innovations are a systematic test-first program design, and the introduction of programming language concepts by designing abstractions based on existing programs.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Barnes, D.J., Kölling, M.: Objects First with Java: A Practical Introduction using BlueJ. Prentice Hall / Pearson Education (2008)
Bootstrap Project, http://www.bootstrapworld.org
Dann, W.P., Cooper, S., Pausch, R.: Learning to Program with Alice, 3rd edn. Prentice Hall, Englewood Cliffs (2012)
Felleisen, M., Findler, R.B., Flatt, M., Krishnamurthi, S.: How to Design Programs. MIT Press, Cambridge (2001)
Felleisen, M., Findler, R.B., Flatt, M., Krishnamurthi, S.: How to Design Programs, 2nd edn., http://www.ccs.neu.edu/home/matthias/HtDP2e/index.html
Felleisen, M., Findler, R.B., Flatt, M., Gray, K., Krishnamurthi, S., Proulx, V.K.: How to Design Classes, http://www.ccs.neu.edu/home/matthias/htdc.html
Findler, R.B., Flanagan, C., Flatt, M., Krishnamurthi, S., Felleisen, M.: DrScheme: A pedagogic programming environment for Scheme. In: Hartel, P.H., Kuchen, H. (eds.) PLILP 1997. LNCS, vol. 1292, pp. 36–388. Springer, Heidelberg (1997)
Klaeren, H., Sperber, M.: Die Macht der Abstraktion, B. G. Teubner Verlag, Wiesbaden (2007)
Neuwirth, E.: http://sunsite.univie.ac.at/musicfun/MidiCSD/
Proulx, V.K.: ReachJava Libraries, http://www.ccs.neu.edu/javalib
Proulx, V.K.: Test-Driven Design for Introductory OO Programming. SIGCSE Bulletin 41(1), 138–142 (2009)
Proulx, V.K., Gray, K.E.: Design of Class Hierarchies: An Introduction to OO Program Design. SIGCSE Bulletin 38(1), 288–292 (2006)
Riley, D.D.: The Object of Data Abstraction and Structures Using Java. Addison Wesley, Reading (2003)
WeScheme, http://www.wescheme.org/
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2011 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Proulx, V.K. (2011). Introductory Computing: The Design Discipline. In: Kalaš, I., Mittermeir, R.T. (eds) Informatics in Schools. Contributing to 21st Century Education. ISSEP 2011. Lecture Notes in Computer Science, vol 7013. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-24722-4_16
Download citation
DOI: https://doi.org/10.1007/978-3-642-24722-4_16
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-24721-7
Online ISBN: 978-3-642-24722-4
eBook Packages: Computer ScienceComputer Science (R0)