AP Computer Science
Teaching Resources
List of CS Textbooks
(see also the CS publishers list on my CS resources page.
NOTE: New textbooks are being published all the time, so this list is not complete.
Books marked with *'s are recommended (either used personally or used by someone whose opinion I respect).
C++ language reference
- * Lippman/Lajoie, C++ Primer, 3/e; Addison-Wesley
- Musser/Saini, STL Tutorial and Reference Guide; Addison-Wesley
- * Pohl, C++ Distilled; Addison-Wesley
- * Stroustrup, The C++ Programming Language, 3/e; Addison-Wesley
Learning C++ when you know another language
- Dewhurst/Stark, Programming in C++, 2/e; Prentice-Hall
- Eckel, Thinking in C++; Prentice Hall
- * Horstmann, Mastering C++ (An Intro to C++ and OOP for C and Pascal Programmers), 2/e; John Wiley
- Merritt/Stix, Migrating from Pascal to C++; Springer-Verlag
- Pohl, C++ for Pascal Programmers, 2/e; Addison-Wesley
- Winston, On to C++; Addison-Wesley
Details about the language for the more advanced programmer
- Cargill, C++ Programming Style; Addison-Wesley
- Henricson/Nyquist, Industrial Strength C++: Rules and Recommendations; Prentice Hall
- Koenig/Moo, Ruminations on C++; Addison-Wesley
- * Meyers, Effective C++, 2/e; Addison-Wesley
- Meyers, More Effective C++; Addison-Wesley
- Murray, C++ Strategies and Tactics; Addison-Wesley
- * Stroustrup, The Design and Evolution of C++; Addison-Wesley
O-O Design
- * Bergin/Stehlik/Roberts/Pattis, Karel++; John Wiley
- * Horstmann, Mastering Object-Oriented Design in C++; John Wiley
- Horstmann, Practical Object-Oriented Development in C++ and Java; John Wiley
- Johnsonbaugh/Kalin, Object-Oriented Programming in C++; Prentice Hall
- Pohl, Object-Oriented Programming Using C++, 2/e; Addison-Wesley
- * Riel, Object-Oriented Design Heuristics; Addison-Wesley
- * Wirfs-Brock/Wilkerson/Wiener, Designing Object-Oriented Software; Prentice Hall
AP Exam Review material
- * Horwitz, Addison-Wesley's Review for the Computer Science AP Exam in C++; Addison-Wesley
- * Litvin, Be Prepared for the AP Computer Science Exam; Skylight Publishing
CS-1 (APCS-A course; some have minimal coverage of AB material)
- * Adams/Leestma/Nyhoff, C++: An Introduction to Computing, 2/e; Prentice Hall
- * Astrachan, A Computer Science Tapestry; McGraw-Hill
- Cohoon/Davidson, C++ Program Design, 2/e; McGraw-Hill
- Corica/Brown/Presley, A Guide to Programming in C++; Lawrenceville Press
- * Deitel/Deitel, C++ How to Program, 2/e; Prentice Hall
- Friedman/Koffman/Koffman, Problem Solving, Abstraction, and Design Using C++, Vector Version; Addison-Wesley
- * Horstmann, Computing Concepts with C++ Essentials, 2/e; John Wiley
- Knowlton, Introduction to Computer Science using C++; South-Western Educational Publishing (also see Knowlton's MainFunction.com)
- Lambert/Nance, Fundamentals of C++: Understanding Programming & Problem Solving; South-Western Educational Publishing
- Lee/Phillips, The Apprentice C++ Programmer; PWS
- * Litvin/Litvin, C++ for You++ (+ workbook); Skylight Publishing
- Mercer, Computing Fundamentals with C++, 2/e; Franklin, Beedle & Associates
- * Savitch, Problem Solving with C++: The Object of Programming, 2/e; Addison-Wesley
- Staugaard, Structured and Object-Oriented Techniques, 2/e; Prentice Hall
CS-2 (Data Structures course; more than an APCS-AB course)
- * Berman, Data Structures via C++: Objects by Evolution; Oxford University Press
- * Carrano, Data Abstraction and Problem Solving with C++: Walls and Mirrors, 2/e; Addison-Wesley
- Lambert/Naps, Fundamentals of Program Design and Data Structures with C++; South-Western Educational Publishing
- * Main/Savitch, Data Structures and Other Objects Using C++; Addison-Wesley
- Shaffer, A Practical Introduction to Data Structures and Algorithm Analysis; Prentice Hall
- Weiss, Algorithms, Data Structures, and Problem Solving with C++; Addison-Wesley
Combined (close to APCS-AB)
- Lambert/Nance/Naps, Introduction to Computer Science with C++; PWS
Thanks to AP Development Committee member Alyce Brady, Kalamazoo College, for initially massaging this into a web-friendly form.
Back to Mark Stehlik's AP CS page