GCO4020/CSC428 - Advanced Object Oriented Techniques In C++
Reference material

 

GCO4020/CSC428
Bibliography


Textbook

There is no textbook prescribed for this course.


Further Reading

  1. Gamma, E., Helm, R., Johnson, R., & Vlissides, J., "Design Patterns", Addison Welsey, 1995.
This book discusses common design patterns (idioms) useful in many C++ design tasks.
 
  1. Coplien, J., "Advanced C++: Programming Styles and Idioms", Addison Wesley, 1992.
An advanced book which discusses a range of C++ idioms from a fairly theoretical viewpoint.
 
  1. Meyers, S., "Effective C++", Addison Wesley, 1992 (1st Ed), or 1998 (2rd Ed).
A "must see" reference for improving your C++ coding and avoiding some critical pitfalls.
 
  1. Meyers, S., "More Effective C++", Addison Wesley, 1996.
More of the same excellent advice.
 


Reference

  1. Lippman, S., "C++ Primer, 2nd Edition", Addison Wesley, 1991.
An excellent introduction to C++. However, it only deals with pre-ANSI C++, so be careful.
 
  1. Stroustrup, B., "The C++ Programming Language, 2nd Ed.", Addison Wesley, 1991.
Another excellent introductory text, this one from the man who invented most of the C++ language. Written in a more technical style than Lippman's text (which some people prefer). Again, it deals with pre-ANSI C++. There is also a 3rd Edition (1997), which deals with the language as defined by the (proto-)ANSI/ISO standard.
 
  1. Booch, G., "Object-oriented Analysis and Design with Applications, 2nd Edition", Benjamin-Cummings, 1991.
An excellent introduction to object-oriented design, with the advantage that all its examples are in C++.
 
  1. "The Draft C++ Standard", ANSI Document X3J16/96-0225, ISO Document WG21/N1043
The (draft) definitive document on C++. At 700+ pages of highly technical discussion it's only for the stoutest of hearts.
 
  1. Stroustrup, B., "The Design and Evolution of C++", Addison Wesley, 1994.
A historical and philosophical investigation of the evolutionary process which has lead to the current incarnation of C++ (or at least, to the 1994 state of the language). Not essential reading in itself, but useful for understanding the (not always satisfactory) reasons why C++ is the way it is.
 

 


This material is part of the GCO4020/CSC428 - Advanced Object Oriented Techniques In C++ course.
Copyright © Damian Conway, 1997. All rights reserved.

Last updated: Fri Feb 18 13:18:49 2000