COMP2031 & ENGN2003: Reading
Textbooks
There are two required textbooks for the course. If you would like
to spread the pain of purchasing them, then you'll be pleased to know
that you won't need The C Programming Language until
after the mid-semester break.
- John Lewis and William Loftus.
Java Software Solutions.
Addison-Wesley, 1998.
- Brian W. Kernighan and Denis M. Ritchie.
The C Programming Language, 2nd edition.
Prentice Hall, 1988.
These books can be bought from the Co-op bookshop, which is
located in concessions area, which is area 17 in quadrant 2 of the campus map.
Recommended Texts
This course is an introduction to software engineering using the
Java programming language. There are a awful lot books on Java, most
of which are awfully bad. Here are three that aren't:
- Patrick Henry Winston and Sundar Narasimhan.
On to Java. Addison-Wesley, 1996.
A very introductory book. If you are feeling utterly
lost when it comes to Java, then maybe this is the book for you.
- Ken Arnold and James Gosling.
The Java Programming Language.
Addison-Wesley, 1996.
Kernighan and Ritchie's similarly titled classic The C
Programming Language is the book on C. This
book is an attempt to write the equivalent book for Java. If
you already know how to program and want a book that you can use
both to learn Java and as a reference, then this is an good
choice.
- Stephen R. Schach.
Software Engineering with Java,
Irwin, 1997.
This is a good software engineering textbook, which just happens
to have all its examples given in Java. You couldn't learn Java
from this book, but if you know Java and want to learn about
software engineering then this book is just the ticket.
The Information Pack
The course information pack contains all the required reading
material not in the textbooks. You will need the information pack to
complete the first assignment, so don't delay buying it.
The pack contains the following material:
- Book Chapters:
-
- How to Compile and Run a Simple Program
Patrick Henry Winston and Sundar Narasimhan.
On to Java,
Chapter 2:7-13.
Addison-Wesley, 1996.
- A Quick Tour of Java
Ken Arnold and James Gosling.
The Java Programming Language,
Chapter 1:1-27.
Addison-Wesley, 1996.
- Introduction to Objects
Stephen R. Schach.
Software Engineering with Java,
Chapter 6:140-194.
Irwin, 1997.
- The Programming Process
Russell Winder and Graham Roberts.
Developing Java Software,
Chapter 8:85-103.
John Wiley & Sons, 1998.
- Software Engineering Concepts
Thomas A. Standish.
Datastructures in Java,
Appendix C:475-520.
Addison-Wesley, 1998.
- Articles:
-
- What's in an Object?
Dave Thomas.
What's in an object?
Byte Magazine,
14(3):231-240, March 1989.
- Reusability: The Case for Object-Oriented Design
Bertrand Meyer.
Reusability: The Case for Object-Oriented Design.
IEEE Software,
4(2):50-64, March 1987.
- Applying ``Design by Contract''
Bertrand Meyer.
Applying ``Design by contract''.
IEEE Computer,
25(10):40-51, October 1992.
- Make - A Program for Maintaining Computer Programs
Stuart I. Feldman.
Make - A program for maintaining computer programs.
Software - Practice and Experience,
9(4):255-265, April 1979.
- RCS - A System for Version Control
Walter F. Tichy.
RCS - A System for Version Control.
Software - Practice and Experience,
15(7):647-654, July 1985.
- Literate Programming Simplified
Norman Ramsey.
Literate programming simplified.
IEEE Software,
11(5):97-105, September 1994.
- Mid-Semester Exams:
-
- COMP2031 & ENGN2003: Construction of Program Systems, 1998.
- COMP2031 & ENGN2003: Construction of Program Systems, 1997.
- Final Exams:
-
- COMP2031 & ENGN2003: Construction of Program Systems, 1998.
- COMP2031 & ENGN2003: Construction of Program Systems, 1997.
- COMP2031 & ENGN2003: Construction of Program Systems, 1996.
- COMP2031 & ENGN2003: Construction of Program Systems, 1995.
Feedback & Queries:
Jim Grundy
Date Last Modified: Thu 11 Nov 1999
Universal Ressource Locator: http://cs.anu.edu.au/student/comp2031/reading.html