Bibliography
For additional C++ books, articles
and more, please visit the Deitel C++ Resource Center at
www.deitel.com/cplusplus
Abrahams, D. and A. Gurtovoy. C++ Template Metaprogramming: Concepts, Tools, and
Techniques from Boost and Beyond. Boston, MA: Addison-Wesley
Professional, 2004.
Alexandrescu, A. Modern C++ Design: Generic Programming and Design Patterns
Applied. Boston, MA: Addison-Wesley Professional, 2001.
Alhir, S. UML
in a Nutshell. Cambridge, MA: O'Reilly & Associates, Inc.,
1998.
Almarode, J. "Object Security." Smalltalk Report Vol. 5, No. 3 November/December 1995,
15–17.
American
National Standard, Programming Language C++. (ANSI Document ISO/IEC
14882), New York, NY: American National Standards Institute, 1998.
Anderson, A. E. and W. J. Heinze. C++
Programming and Fundamental Concepts. Englewood Cliffs, NJ: Prentice
Hall, 1992.
Arciniegas, F. C++ XML.
Indianapolis, IN: Sams, 2001.
Arlow, J. and I. Neustadt. UML 2 and
the Unified Process: Practical Object-Oriented Analysis and Design, Second
Edition. Boston, MA: Addison-Wesley Professional, 2005.
Astle, D. and K. Hawkins. Beginning
OpenGL Game Programming. Boston, MA: Course Technology PTR, 2004.
Bar-David, T. Object-Oriented Design
for C++. Englewood Cliffs, NJ: Prentice Hall, 1993.
Beck, K. "Birds, Bees, and Browsers—Obvious Sources of
Objects." The Smalltalk Report Vol. 3, No. 8,
June 1994,13.
Becker, P. "Shrinking the Big Switch Statement." Windows Tech Journal Vol. 2, No. 5, May 1993,
26–33.
Becker, P. "Conversion Confusion." C++
Report October 1993, 26–28.
Berard, E. V. Essays on Object-Oriented
Software Engineering: Volume I. Englewood Cliffs, NJ: Prentice Hall,
1993.
Binder, R. V. "State-Based Testing." Object Magazine Vol. 5, No. 4, August 1995,
75–78.
Binder, R. V. "State-Based Testing: Sneak Paths and Conditional
Transitions." Object Magazine Vol. 5, No. 6,
October 1995, 87–89.
Blum, A. Neural Networks in C++: An
Object-Oriented Framework for Building Connectionist Systems. New York,
NY: John Wiley & Sons, 1992.
Booch, G. Object Solutions: Managing
the Object-Oriented Project. Reading, MA: Addison-Wesley, 1996.
Booch, G. Object-Oriented Analysis and
Design with Applications, Third Edition. Reading: MA: Addison-Wesley,
2005.
Booch, G., J. Rumbaugh, and I. Jacobson. The Unified Modeling Language User Guide. Reading, MA:
Addison-Wesley, 1999.
Cargill, T. C++ Programming
Style. Reading, MA: Addison-Wesley, 1993.
Carroll, M. D. and M. A. Ellis. Designing and Coding Reusable C++. Reading, MA:
Addison-Wesley, 1995.
Chonoles, M. J. and J. A. Schardt. UML
2 for Dummies. New York, NY: Wiley Publishing, Inc., 2003.
Coplien, J. O. and D. C. Schmidt. Pattern Languages of Program Design. Reading, MA:
Addison-Wesley, 1995.
Dawson, M. Beginning C++ Game
Programming. Boston, MA: Course Technology PTR, 2004.
Deitel, H. M, P. J. Deitel and D. R. Choffnes. Operating Systems, Third Edition. Upper Saddle River,
NJ: Prentice Hall, 2004.
Deitel, H. M and P. J. Deitel. Java How
to Program, Seventh Edition. Upper Saddle River, NJ: Prentice Hall,
2007.
Deitel, H. M. and P. J. Deitel. C How
to Program, Fifth Edition. Upper Saddle River, NJ: Prentice Hall,
2007.
Dennis, A., B. H. Wixom and D. Tegarden. Systems Analysis and Design with UML Version 2.0: An
Object-Oriented Approach, Second Edition. New York, NY: Wiley Publishing,
Inc., 2004.
Dewhurst, S. C. C++ Common Knowledge:
Essential Intermediate Programming. Boston, MA: Addison-Wesley
Professional, 2005.
Donovan, S. C++ Example.
Indianapolis, IN: Que, 2001.
Duncan, R. "Inside C++: Friend and Virtual Functions, and
Multiple Inheritance." PC Magazine 15 October
1991, 417–420.
Ellis, M. A. and B. Stroustrup. The
Annotated C++ Reference Manual. Reading, MA: Addison-Wesley, 1990.
Embley, D. W., B. D. Kurtz and S. N. Woodfield. Object-Oriented Systems Analysis: A Model-Driven
Approach. Englewood Cliffs, NJ: Yourdon Press, 1992.
Eriksson, H., D. Fado, B. Lyons and M. Penker. UML 2 Toolkit. New York, NY: Wiley Publishing, Inc.,
2003.
Firesmith, D.G. and B. Henderson-Sellers. "Clarifying
Specialized Forms of Association in UML and OML." Journal of Object-Oriented Programming May 1998:
47–50.
Flamig, B. Practical Data Structures in
C++. New York, NY: John Wiley & Sons, 1993.
Fowler, M. UML Distilled: A Brief Guide
to the Standard Object Modeling Language, Third Edition. Reading, MA:
Addison-Wesley, 2004.
Giancola, A. and L. Baker. "Bit Arrays with C++." The C Users Journal Vol. 10, No. 7, July 1992,
21–26.
Glass, G. and B. Schuchert. The STL
<Primer>. Upper Saddle River, NJ: Prentice Hall PTR, 1995.
Gooch, T. "Obscure C++." Inside
Microsoft Visual C++ Vol. 6, No. 11, November 1995, 13–15.
Henricson, M. and E. Nyquist. Industrial Strength C++: Rules and Recommendations.
Upper Saddle River, NJ: Prentice Hall, 1997.
International Standard: Programming
Languages—C++. ISO/IEC 14882:1998. New York, NY: American National
Standards Institute, 1998.
Jacobson, I. "Is Object Technology Software's Industrial
Platform?" IEEE Software Magazine Vol. 10, No. 1,
January 1993, 24–30.
Jaeschke, R. Portability and the C
Language. Indianapolis, IN: Sams Publishing, 1989.
Johnson, L.J. "Model Behavior." Enterprise Development May 2000: 20–28.
Josuttis, N. The C++ Standard Library:
A Tutorial and Reference. Boston, MA: Addison-Wesley, 1999.
Karlsson, B. Beyond the C++ Standard
Library: An Introduction to Boost. Boston, MA: Addison-Wesley
Professional, 2005.
Koenig, A. "What is C++ Anyway?" Journal of Object-Oriented Programming April/May 1991,
48–52.
Koenig, A. "Implicit Base Class Conversions." The C++ Report Vol. 6, No. 5, June 1994, 18–19.
Koenig, A. and B. Stroustrup. "Exception Handling for C++
(Revised)," Proceedings of the USENIX C++
Conference, San Francisco, CA, April 1990.
Koenig, A. and B. E. Moo. Accelerated
C++: Practical Programming Example. Boston, MA: Addison-Wesley
Professional, 2000.
Koenig, A. and B. E. Moo. Ruminations
on C++: A Decade of Programming Insight and Experience. Reading, MA:
Addison-Wesley, 1997.
Kruse, R. L. and A. J. Ryba. Data
Structures and Program Design in C++. Upper Saddle River, NJ: Prentice
Hall, 1999.
Lajoie, J., S. B. Lippman, and B. E. Moo. C++ Primer, Fourth Edition. Boston, MA: Addison-Wesley
Professional, 2005.
Langer, A. and K. Kreft. Standard C++
IOStreams and Locales: Advanced Programmer's Guide and Reference.
Reading, MA: Addison-Wesley, 2000.
Larman, C. Applying UML and Patterns: An Introduction to
Object-Oriented Analysis and Design and Iterative Development, Third
Edition. Upper Saddle River, NJ: Prentice Hall PTR, 2004.
Lee, L., A. Lumsdaine and J. G. Siek. The Boost Graph Library User
Guide and Reference Manual. Boston, MA: Addison-Wesley Professional,
2001.
Lippman, S. B. and J. Lajoie. C++
Primer, Third Edition, Reading, MA: Addison-Wesley, 1998.
Lorenz, M. Object-Oriented Software
Development: A Practical Guide. Englewood Cliffs, NJ: Prentice Hall,
1993.
Lorenz, M. "A Brief Look at Inheritance Metrics." The Smalltalk Report Vol. 3, No. 8 June 1994, 1,
4–5.
Malik, D.S. C++ Programming: From Problem Analysis to Program
Design, Third Edition. Boston, MA: Course Technology, 2006.
Martin, J. Principles of
Object-Oriented Analysis and Design. Englewood Cliffs, NJ: Prentice Hall,
1993.
Martin, R. C. Designing Object-Oriented
C++ Applications Using the Booch Method. Englewood Cliffs, NJ: Prentice
Hall, 1995.
Matsche, J. J. "Object-Oriented Programming in Standard C."
Object Magazine Vol. 2, No. 5, January/February
1993, 71–74.
McCabe, T. J. and A. H. Watson. "Combining Comprehension and
Testing in Object-Oriented Development." Object
Magazine Vol. 4, No. 1, March/April 1994, 63–66.
McGrath, M. C++ Programming in Easy
Steps. Southam, Warwickshire, United Kingdom: Computer Step, 2005.
McLaughlin, M. and A. Moore. "Real-Time Extensions to the UML."
Dr. Dobb's Journal December 1998: 82–93.
Melewski, D. "UML Gains Ground." Application Development Trends October 1998:
34–44.
Melewski, D. "UML: Ready for Prime Time?" Application Development Trends November 1997:
30–44.
Melewski, D. "Wherefore and What Now, UML?" Application Development Trends December 1999:
61–68.
Meyer, B. Object-Oriented Software
Construction, Second Edition. Englewood Cliffs, NJ: Prentice Hall,
1997.
Meyer, B. and D. Mandrioli. Advances in
Object-Oriented Software Engineering. Englewood Cliffs, NJ: Prentice
Hall, 1992.
Meyers, S. Effective C++: 55 Specific
Ways to Improve Your Programs and Designs, Third Edition. Boston, MA:
Addison-Wesley Professional, 2005.
Meyers, S. Effective STL: 50 Specific Ways to Improve Your Use
of the Standard Template Library. Reading, MA: Addison-Wesley,
2001.
Muller, P. Instant UML. Birmingham, UK: Wrox Press Ltd,
1997.
Murray, R. C++ Strategies and
Tactics. Reading, MA: Addison-Wesley, 1993.
Musser, D. R. and A. A. Stepanov. "Algorithm-Oriented Generic
Libraries." Software Practice and Experience Vol.
24, No. 7, July 1994.
Musser, D. R., G. J. Derge and A. Saini. STL Tutorial and Reference
Guide: C++ Programming with the Standard Template Library, Second
Edition. Reading, MA: Addison-Wesley, 2001.
Nierstrasz, O., S. Gibbs and D. Tsichritzis.
"Component-Oriented Software Development." Communications of the ACM Vol. 35, No. 9, September
1992, 160–165.
Pender, T. UML Bible. Wiley
Publishing, Inc., 2003.
Perry, P. "UML Steps to the Plate." Application Development Trends May 1999: 33–36.
Pilone, D. and N. Pitman. UML 2.0 in a Nutshell, Second Edition.
Sebastopol, CA: O'Reilly Media, Inc., 2005.
Pittman, M. "Lessons Learned in
Managing Object-Oriented Development." IEEE Software
Magazine Vol. 10, No. 1, January 1993, 43–53.
Plauger, D. "Making C++ Safe for Threads." The C Users Journal Vol. 11, No. 2, February 1993,
58–62.
Podeswa, H. UML for the IT Business Analyst: A Practical Guide to
Object-Oriented Requirements Gathering. Boston, MA: Course Technology
PTR, 2005.
Pohl, I. C++ Distilled: A Concise
ANSI/ISO Reference and Style Guide. Reading, MA: Addison-Wesley,
1997.
Prata, S. C++ Primer Plus, Fifth
Edition. Indianapolis, IN: Sams, 2004.
Prieto-Diaz, R. "Status Report: Software Reusability." IEEE Software Vol. 10, No. 3, May 1993, 61–66.
Prosise, J. "Wake Up and Smell the MFC: Using the Visual C++
Classes and Applications Framework." Microsoft Systems
Journal Vol. 10, No. 6, June 1995, 17–34.
Ritchie, D. M. "The UNIX System: The Evolution of the UNIX
Time-Sharing System." AT&T Bell Laboratories
Technical Journal Vol. 63, No. 8, Part 2, October 1984, 1577–1593.
Rosler, L. "The UNIX System: The Evolution of C—Past and
Future." AT&T Laboratories Technical Journal
Vol. 63, No. 8, Part 2, October 1984, 1685–1699.
Robson, R. Using the STL: The C++
Standard Template Library. New York, NY: Springer Verlag, 2000.
Rubin, K. S. and A. Goldberg. "Object Behavior Analysis." Communications of the ACM Vol. 35, No. 9, September
1992, 48–62.
Rumbaugh, J., M. Blaha, W. Premerlani, F. Eddy and W. Lorensen.
Object-Oriented Modeling and Design. Englewood
Cliffs, NJ: Prentice Hall, 1991.
Rumbaugh, J., Jacobson, I. and G. Booch. The Unified Modeling Language Reference Manual, Second
Edition. Reading, MA: Addison-Wesley, 2005.
Saks, D. "Inheritance." The C Users
Journal May 1993, 81–89.
Schildt, H. STL Programming from the
Ground Up. Berkeley, CA: Osborne McGraw-Hill, 1999.
Schildt, H. The Art of C++.
Berkeley, CA: McGraw-Hill Osborne Media, 2004.
Schlaer, S. and S. J. Mellor. Object
Lifecycles: Modeling the World in States. Englewood Cliffs, NJ: Prentice
Hall, 1992.
Sedgwick, R. Bundle of Algorithms in
C++, Parts 1–5: Fundamentals, Data Structures, Sorting, Searching, and Graph
Algorithms (Third Edition). Reading, MA: Addison-Wesley, 2002.
Skelly, C. "Pointer Power in C and C++." The C Users Journal Vol. 11, No. 2, February 1993,
93–98.
Snyder, A. "The Essence of Objects: Concepts and Terms." IEEE Software Magazine Vol. 10, No. 1, January 1993,
31–42.
Stepanov, A. and M. Lee. "The Standard Template Library." 31
October 1995 <www.cs.rpi.edu/~musser/doc.ps>.
Stroustrup, B. "The UNIX System: Data Abstraction in C." AT&T Bell Laboratories Technical Journal Vol. 63,
No. 8, Part 2, October 1984, 1701–1732.
Stroustrup, B. "What is Object-Oriented Programming?" IEEE Software Vol. 5, No. 3, May 1988, 10–20.
Stroustrup, B. "Parameterized Types for C++." Proceedings of the USENIX C++ Conference Denver, CO,
October 1988.
Stroustrup, B. "Why Consider Language Extensions?: Maintaining
a Delicate Balance." The C++ Report September
1993, 44–51.
Stroustrup, B. "Making a vector Fit for a Standard."
The C++ Report October 1994.
Stroustrup, B. The Design and Evolution
of C++. Reading, MA: Addison-Wesley, 1994.
Stroustrup, B. The C++ Programming
Language, Special Third Edition. Reading, MA: Addison-Wesley, 2000.
Taylor, D. Object-Oriented Information
Systems: Planning and Implementation. New York, NY: John Wiley &
Sons, 1992.
Urlocker, Z. "Polymorphism Unbounded." Windows Tech Journal Vol. 1, No. 1, January 1992,
11–16.
Van Camp, K. E. "Dynamic Inheritance Using Filter Classes."
The C/C++ Users Journal Vol. 13, No. 6, June
1995, 69–78.
Vilot, M. J. "An Introduction to the Standard Template
Library." The C++ Report Vol. 6, No. 8, October
1994.
Voss, G. "Objects and Messages." Windows Tech Journal February 1993, 15–16.
Wang, B. L. and J. Wang. "Is a Deep Class Hierarchy Considered
Harmful?" Object Magazine Vol. 4, No. 7,
November/December 1994, 35–36.
Weisfeld, M. "An Alternative to Large Switch Statements." The C Users Journal Vol. 12, No. 4, April 1994,
67–76.
Weiskamp, K. and B. Flamig. The
Complete C++ Primer, Second Edition. Orlando, FL: Academic Press,
1993.
Wiebel, M. and S. Halladay. "Using OOP Techniques Instead of
switch in C++." The C Users Journal Vol.
10, No. 10, October 1993, 105–112.
Wilde, N. and R. Huitt. "Maintenance Support for
Object-Oriented Programs." IEEE Transactions on Software
Engineering Vol. 18, No. 12, December 1992, 1038–1044.
Wilde, N., P. Matthews and R. Huitt. "Maintaining
Object-Oriented Software." IEEE Software Magazine
Vol. 10, No. 1, January 1993, 75–80.
Wilson, G. V. and P. Lu. Parallel
Programming Using C++. Cambridge, MA: MIT Press, 1996.
Wilt, N. "Templates in C++." The C
Users Journal May 1993, 33–51.
Wirfs-Brock, R., B. Wilkerson and L. Wiener. Designing Object-Oriented Software. Englewood Cliffs,
NJ: Prentice Hall PTR, 1990.
Wyatt, B. B., K. Kavi and S. Hufnagel. "Parallelism in
Object-Oriented Languages: A Survey." IEEE
Software Vol. 9, No. 7, November 1992, 56–66.
Yamazaki, S., K. Kajihara, M. Ito and R. Yasuhara.
"Object-Oriented Design of Telecommunication Software." IEEE Software Magazine Vol. 10, No. 1, January 1993,
81–87.
Yuzwa, E. Game Programming In C++:
Start To Finish. Boston, MA: Charles River Media, 2006.