Building Java Programs: A Back to Basics Approach, 6th edition

Published by Pearson (February 16, 2026) © 2027
  • Stuart Reges
  • Marty Stepp

Title overview

For courses in Java Programming.

A layered approach to new syntax and concepts

Building Java Programs: A Back to Basics Approach ensures students are thoroughly prepared as they work through CS1 material. Teaching “objects later,” programming fundamentals and procedural decomposition are covered before diving into object-oriented programming. By the end of the course, students will have learned about both styles of programming.

The 6th Edition is now a digital-first text, integrated fully in Pearson’s Revel environment that combines narrative text, video content, and other learning aids with scored coding exercises. This revision features new and enhanced topics, new programing exercises, new and revised case studies, expanded content on challenging concepts, and much more.

Hallmark features of this title

  • Focus on problem solving explores “What new problems can be solved with each construct?“ “What pitfalls are novices likely to encounter along the way?” “What are the most common ways to use a new construct?”
  • Emphasis on algorithmic thinking includes breaking a large problem into smaller problems, using pseudocode to refine an algorithm, and grappling with the challenge of expressing a large program algorithmically.
  • Case studies end most chapters, showing how to develop a complex program in stages and how to test it as it is being developed. Each new programming construct is presented in a rich context that can’t be achieved with short code examples.
  • Flexibility as a CS1+CS2 textbook: Chapters that extend coverage cover all the topics from a second CS course, making the book usable for a two-course sequence.
  • JShell integration: This valuable learning tool allows students to explore Java concepts without the overhead of creating a complete program. JShell is introduced in Chapter 2, with JShell examples in each chapter throughout the text.

New and updated features of this title

  • New and augmented topics: For example, file I/O coverage in Ch. 6 now includes coverage of reading data from the Internet; the Appendix now covers Java annotations.
  • New end-of-chapter exercises have been added throughout, with approx. 50 total problems and exercises per chapter; all are class-tested with real students, and solutions for instructors are provided online. New programming projects are provided in some chapters.
  • Improved loop coverage in Ch. 2 adds new sections and figures to help students understand “for” loops and create tables to find patterns in nested loops.
  • Revamped case studies, examples, and other content has been revised or rewritten based on student and instructor feedback. Ex.: Ch. 10 (ArrayLists) case study is rewritten with a new program focusing on elections and ranked choice voting.
  • Updated collection of syntax and idioms in Ch. 10-11 reflects recent releases of Java (such as newsyntax and features related to collections, such as the <> “diamond operator;” collection interfaces such as Lists, Sets, and Maps; and new collection methods). The diamond operator syntax with collections is used in the rest of the text.
  • Expanded self-checks and programming exercises end each chapter, with approx. 50 total problems and exercises per chapter.

Table of contents

  • 1. Introduction to Java Programming
  • 2. Primitive Data and Definite Loops
  • 3. Introduction to Parameters and Objects
  • Supplement 3G Graphics (Optional)
  • 4. Conditional Execution
  • 5. Program Logic and Indefinite Loops
  • 6. File Processing
  • 7. Arrays
  • 8. Classes
  • 9. Inheritance and Interfaces
  • 10. ArrayLists
  • 11. Java Collections Framework
  • 12. Recursion
  • 13. Searching and Sorting
  • 14. Stacks and Queues
  • 15. Implementing a Collection Class
  • 16. Linked Lists
  • 17. Binary Trees
  • 18. Advanced Data Structures
  • 19. Functional Programming

APPENDICES

  • A. Java Summary
  • B. The Java API Specification and Javadoc Comments
  • C. Additional Java Syntax
  • Index

Author bios

About our authors

Stuart Reges is a Principal Lecturer in the Paul G. Allen School of Computer Science and Engineering at the University of Washington. He manages the introductory programming classes, participates in the design of undergraduate curricula, and is involved in K-12 outreach. He held similar positions at Stanford University and the University of Arizona in a career spanning 30 years. In 1985 he won the Dinkelspiel Award for Outstanding Service to Undergraduate Education at Stanford. In 2012 he won the Distinguished Teaching Award, which is the highest teaching award given by UW.

Marty Stepp is a computer science lecturer at the University of Washington, where he teaches intro programming, web programming, and software engineering. Google highlighted his web programming resources in their Google Code for Educators initiative, and he was featured as the Seattle PI’s “Geek of the Week.” Stepp is also the lead author of Web Programming Step by Step with Jessica Miller and Victoria Kirst from the University of Washington. Stepp wrote an online tool for practicing Java problems to accompany the Java textbook Practice-It!. He is also first author of Computing Fundamentals with C#.

From 2004 to 2006, Stepp worked as a computer science lecturer at the University of Washington, Tacoma. Before that he spent a year as a developer at Microsoft® on the Excel® team. Stepp earned a master’s degree in computer science at the University of Arizona in 2003. He has done research in geometric algorithms and security, taught several courses as a graduate student, and was a teaching assistant for several years.

Loading...Loading...Loading...