Computing Fundamentals with C++: 3rd Edition
Author: Rick Mercer
Page Count: 448
This long-awaited update to Rick Mercer’s introductory book, first published in 1993, is written for students in a first course in a Computer Science curriculum using the C++ programming language. It is appropriate for students with no programming experience as well as those with programming experience in another language.
Computing Fundamentals with C++, 3rd Edition emphasizes computing fundamentals while recognizing the relevance and validity of object-oriented programming. This book is the result of decades of reasoning about how best to facilitate student learning in the first course of the computer science curriculum, how best to integrate objects and classes into it, and how best to prepare students for the next course.
Traditional Topics. This textbook recognizes the relevance and validity of object-oriented programming while emphasizing traditional computing fundamentals.
Standard C++. Compliant with C++14 and beyond.
Gentle Objects-Early Approach. This third edition maintains the objects-early approach of the first and second editions. Students begin by using existing objects such as string, cin, cout, BankAccount, and Grid for Karel-like (Rich Pattis) programming while honing problem-solving and program-development skills.
Carefully Chosen Subset of Analysis, Design, and C++. Students concentrate on a solid subset of this feature-rich language, with some trickier topics delayed until later chapters.
Not Tied to a Specific System. There is no bias toward a particular operating system or compiler. This textbook presents standard #includes and namespaces according to the ISO standard. All material applies to any computer system using standard C++. All code has been tested with Microsoft Visual C++ on Windows, and GNU g++ on Unix.
Algorithmic Patterns. The first algorithmic pattern, and perhaps one of the oldest—Input/Process/Output (IPO)—is introduced in Chapter 1 and reused in subsequent chapters. The IPO pattern is especially useful to students with no programming experience and to the lab assistants helping them. Other algorithmic patterns introduced in the appropriate places include Alternative Action and Indeterminate Loop.
Extensively Tested in the Classroom and Lab. This textbook was six years in the making. Students supplied many useful comments and suggestions concerning manuscript clarity, organization, projects, and examples.
What’s New in This Third Edition?
This third edition contains dramatic improvements in programming projects, making them more interesting and challenging. Included are projects developed and class-tested at the University of Arizona.
Chapters on inheritance, object-oriented programming and design, operator overloading, and recursion have been removed to make this book more compatible with CS1 curriculum, while adding a few topics from CS2, such as generic collections with templates.
This edition also incorporates a few appropriate newer additions to C++, such as the long-overdue literal nullptr.