Provides an introduction to object oriented programming (OOP) and lays the foundation for covering advanced OOP topics. This book strikes a balance between details about the programming language features and techniques required to solve problems on the computer. It is suitable for students taking their first course in programming.