CECS Home | ANU Home | Search ANU
The Australian National University
ANU College of Engineering and Computer Science
School of Computer Science
Printer Friendly Version of this Document

UniSAFE

Software Construction

Reading and reference materials

Reference Documents

See the online documents and links in comp2100 Reference Documents List.

Textbooks

There is no required textbook for COMP2100. That means you can save a great deal of your money. But you should also consider the benefit of having your own copy of a book you can read in chunks, go back and forwards, reflect on and use for reference in later courses.

This website does contain useful notes, but this is the minimum material. It doesn't replace what you can learn from coming to lectures, and it certainly doesn't replace what you learn by doing the programming examples and really reading other people's programs.


Useful reference books

The recommended book is one that gives you a technical, reference handbook description of Java, including progrmaming examples. I find it useful to have a reasonably uptodate description of the language, and I find it useful to have a fairly brief explanations and examples in a physical book that I can carry around sometimes. I will not you specific page and section references into this book. I expect you to learn to read and use this or a similar book as a normal professional programming handbook.

However much you have programmed in Java before, you may find it helpful to purchase a book specifically about Java. There are literally hundreds of these available and they range from the excellent to the truly awful (incorrect, out of date, just poorly written), so I recommend Schildt as one that I find useful. Horstmann is an alternative, and ranges from an introduction to material at the level of this course.

  • Java The Complete Reference 7th edition (or later)
    Herbert Schildt
    McGraw-Hill/Osborne 2007

  • Big Java by Cay S. Horstmann, edition 2010 (or later), John Wiley and Sons, Inc.
    Set for comp1110

There are lots of useful and relevant books. Here is a short list. I'll try to add to this as we go along. Some, but not all, of these are available from the Hancock library, some in short loan.

The first four books on this list are the more recommended books.

  • Data Structures and Software Development in an Object-Oriented Domain, Java edition
    Jean-Paul Tremblay & Grant A. Cheston
    Prentice-Hall, 2003.

  • Introduction to the Personal Software Process, 1997
    or PSP: a Self-Improvment Process for Software Engineers, 2005
    by Watts Humphrey, Addison Wesley (in ANU library)

  • The Pragmatic Programmer
    Andrew Hunt & David Thomas
    Addison Wesley, 2000.

  • Code Complete 2nd edition
    Steve McConnell
    Microsoft Press, 2004. (in ANU library)


  • Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and Iterative Development, Craig Larman (available online through Safari Books OnLine, via ANU library)

  • Object-Oriented Software Construction (2nd edition)
    Bertrand Meyer
    Prentice-Hall, 1997.

  • The Reflective Practitioner by Donald A. Schön, Basic Books, New York, 1983. in ANU library: CHIFLEY HD8038.A1.S35

  • The Software Conspiracy: Why Software Companies Put Out Faulty Products, How They Can Hurt You, and What You Can Do About It by Mark Minasi, McGraw-Hill, 2000.

  • more advanced reference:

    Design Patterns: Elements of Reusable Object-Oriented Software by Erich Gamma, Richard Helm, Ralph Johnson & John Vlissides, Addison-Wesley, 1995. QA76.64 .D47 1995

  • Human Factors in Software Development by Bill Curtis. Hancock Large Books QA76.76.D47T88 1985


There is no Information Pack

Every professional needs a reference library, and some of the documents you refer to in this course will be the start of your collection. I will provide references or copies in this site in the comp2100 Reference Documents List.

You can choose which documents to print for yourself (so you can scribble in the margins or whatever) or which ones you want to keep referring to online. There is no printed Information Pack (“brick”) available for purchase.

$Revision: 1.4 $ $Date: 2009/02/23 03:42:32 $ Last modified: Tue Jan 11 12:44:35 EST 2011 cwj