GCO4020/CSC428 - Advanced Object Oriented Techniques In C++
Reference material
GCO4020/CSC428
Bibliography
Textbook
- There is no textbook prescribed for this course.
Further Reading
- 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.
- 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.
- 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.
- Meyers, S., "More Effective C++", Addison Wesley, 1996.
-
More of the same excellent advice.
Reference
- 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.
- 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.
- 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++.
- "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.
- 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