Always Learning

Java Software Solutions: Foundations of Program Design, 6/E
John LewisVirginia Tech
William Loftus

ISBN-10: 0321532058
ISBN-13:  9780321532053

Publisher:  Addison-Wesley
Copyright:  2009
Format:  Paper Bound w/CD-ROM; 832 pp
Published:  02/26/2008


Print this content

In this section:


Description

As the worldwide best seller for introductory programming using the Java programming language, Java Software Solutions is the premiere model of text that teaches a foundation of programming techniques to foster well-designed object-oriented software. Heralded for its integration of small and large realistic examples, the authors emphasize building solid problem-solving and design skills.

The Sixth Edition introduces improvements that make the text a better teaching and learning tool. Revolutionary Video Notes featuring author John Lewis work in conjunction with the text to visually explain challenging topics and in-text Programming Projects. New vignettes explaining real-world software failures emphasize why good design is important, and novel section-level exercises let students check their comprehension before moving on.


Features

  • Hallmark features of the Lewis series
    • Introduces a software methodology early and revisits it throughout to ensure that students build sound program-development skills
    • Includes numerous programming examples, both small and large, that include the program output, sample run, or screenshot display
    • Provides a wealth of end-of-chapter programming projects, varying in difficulty level, so students can practice their design skills and implementation of Java programs
  • Cornerstones of the text
    • A measured approach to objects first teaches students to use objects before learning to write them. Classes–both using and writing classes–are covered in Chapters 3 and 4 before arrays are addressed in Chapter 7.
    • Sound programming practices teach students how to write good software, not just how to program. Through examples and discussions, students learn how to solve problems and implement solutions using foundational software-engineering techniques.
    • Fully implemented examples demonstrate specific concepts. Because students learn best through examples, small, readily understandable examples are intertwined with larger, more realistic ones.
    • Graphics and GUIs are excellent examples of object orientation—and excellent motivators for students. An optional Graphics Track section covers graphics and GUIs at the end of each chapter, allowing for flexibility of coverage.
  • Chapter features
    • Each chapter begins with a list of Chapter Objectives and a short introduction to the chapter topics to orient students.
    • Key Concepts highlight fundamental ideas and important guidelines throughout the chapter and are summarized in the end-of-chapter material.
    • All programming examples are presented in clearly labeled listings. The code is colored to visually distinguish comments and reserved words, and followed by the program output, a sample run, or a screenshot where appropriate.
    • Syntactic elements of the Java language are discussed in special highlighted syntax diagram sections. Diagrams clearly identify the valid forms for a statement or construct. Syntax diagrams for the entire Java language are presented in Appendix L.
  • Review materials
    • The Key Concepts presented throughout the chapter are summarized at the end.
    • Short-answer Self-Review Questions review fundamental ideas and terms. Answers are provided at the end of the problem sets.
    • Probing Exercises require computations and/or the analysis or writing of code fragments. While they may deal with code, these exercises generally do not require any online activity.
    • Programming Projects require the design and implementation of Java programs. They vary in level of difficulty, and all are available within MyCodeMate.
  • A Student Resource CD-ROM, packaged with every new text, includes source code, JDK 6.0, jGrasp IDE, NetBeans IDE, TextPad®, DrJava, and Eclipse.
  • MyCodeMate provides a wide range of tools that students can use to help them learn programming concepts, prepare for tests, and earn better grades. A complimentary subscription is offered when an access code is packaged with a new copy of Java Software Solutions. Subscriptions may also be purchased online. Visit MyCodeMate for more information.
  • The Lewis series
    • Programming with Alice and Java, the newest book in the Lewis series, uses Alice to teach object-oriented programming concepts in a fun and understandable manner, and then uses a game-like application called ThunkIt to springboard into Java.
    • Java Foundations is the comprehensive resource for a multi-term introduction to programming course sequence that includes coverage of data structures.
    • Java Software Structures, Second Edition, is ideal for a CS2 / Data Structures course, and embraces the enhancements of Java 5.0, where all structures and collections are based on generics.
    • NEW! VideoNotes, created by author John Lewis, provide extra examples and demonstrate how to solve problems. Icons throughout the text— two to three per chapter— and a complete index of the videos on the inside covers indicate where a VideoNote accompanies a particular chapter topic or an end-of-chapter Programming Project. The Video Notes are available to instructors and students on an open-access website.


New To This Edition

  • NEW! VideoNotes, created by author John Lewis, provide extra examples and demonstrate how to solve problems. Icons throughout the text— two to three per chapter— and a complete index of the videos on the inside covers indicate where a VideoNote accompanies a particular chapter topic or an end-of-chapter Programming Project. The Video Notes are available to instructors and students on an open-access website.
  • NEW! Vignettes discussing real-world software failures—interspersed throughout the text—provide context for the skills students are learning and demonstrate why good design is vital. Each vignette provides a narrative of a software failure due to poor design and its consequences, and explains the things that the software designers could have considered to improve the design.
  • NEW! Section-level exercises offer students a self-review opportunity before moving on to a new topic. Three to four exercises are placed throughout each chapter to cover main concepts.


Table of Contents

Chapter 1. Introduction
Computer Processing
Hardware Components
Networks
The Java Programming Language
Program Development
Object-Oriented Programming

Chapter 2. Data and Expressions
Character Strings
Variables and Assignments
Primitive Data Types
Expressions
Data Conversion
Interactive Programs
Graphics
Applets
Drawing Shapes

Chapter 3. Using Classes and Objects
Creating Objects
The String Class
The Random Class
The Math Class
Formatting Output
Enumerated Types
Wrapper Classes
Components and Containers
Nested Panels
Images

Chapter 4. Writing Classes
Classes and Objects Revisited
Anatomy of a Class
Encapsulation
Anatomy of a Method
Constructors Revisited
Graphical Objects
Graphical User Interfaces
Buttons
Text Fields

Chapter 5. Conditionals and Loops
Boolean Expressions
The if Statement
Comparing Data
The switch Statement
The while Statement
Iterators
The do Statement
The for Statement
Drawing with Loops and Conditionals
Determining Event Sources
Dialog Boxes
More Button Components

Chapter 6. Object-Oriented Design
Software Development Activities
Identifying Classes and Objects
Static Class Members
Class Relationships
Interfaces
Enumerated Types Revisited
Method Design
Method Overloading
Testing
GUI Design
Layout Managers
Borders
Containment Hierarchies

Chapter 7. Arrays
Array Elements
Declaring and Using Arrays
Arrays of Objects
Command-Line Arguments
Variable Length Parameter Lists
Two-Dimensional Arrays
The ArrayList Class
Polygons and Polylines
Mouse Events
Key Events

Chapter 8. Inheritance
Creating Subclasses
Overriding Methods
Class Hierarchies
Visibility
Designing for Inheritance
The Component Class Hierarchy
Extending Adaptor Classes
The Timer Class

Chapter 9. Polymorphism
Late Binding
Polymorphism via Inheritance
Polymorphism via Interfaces
Sorting
Searching
Designing for Polymorphism
Event Processing
File Choosers
Color Choosers
Sliders

Chapter 10. Exceptions
Exception Handling
Uncaught Exceptions
The try-catch Statement
Exception Propagation
The Exception Class Hierarchy
I/O Exceptions
Tool Tips and Mneumonics
Combo Boxes
Scroll Panes
Split Panes

Chapter 11. Recursion
Recursive Thinking
Recursive Programming
Using Recursion
Recursion in Graphics

Chapter 12. Collections
Collections and Data Structures
Dynamic Representations
Linear Data Structures
Non-Linear Data Structures
The Java Collections API

Appendices
Appendix A Glossary
Appendix B Number Systems
Appendix C The Unicode Character Set
Appendix D Java Operators
Appendix E Java Modifiers
Appendix F Java Coding Guidelines
Appendix G Java Applets
Appendix H Regular Expressions
Appendix I JavaDoc Documentation Generator
Appendix J The PaintBox Project
Appendix K GUI Events
Appendix L Java Syntax
Appendix M The Java Class Library

Index


Next Edition(s)

  • Java Software Solutions: Foundations of Program Design, 7/E
    Lewis & Loftus
    ©2012  |  Addison-Wesley  |  Paper; 832 pp  |  Instock
    ISBN-10: 0132149184  |  ISBN-13: 9780132149181
    Brief Description  |  More Info



Back to top

Print this content

In this section:


Product Tours

View Sample Video Notes Here
Revolutionary Video Notes featuring author John Lewis work in conjunction with the text to explain challenging topics and in-text Programming Projects.
myCodeMate -- Your Own TA, Just a Click Away
This text is available with myCodeMate, a completely Web-based, textbook-specific homework and programming resource for your Introduction to Programming course.


Sample Chapter

View a Sample Chapter PDF:/samplechapter/0321532058.pdf


Author Bios

John Lewis is the co-author of several Java programming language textbooks: Java Software Solutions, Java Software Structures,Java Foundations, and Programming with Alice and Java. He received his BS, MS, and PhD degrees from Virginia Tech.


Backcover Copy

Java Software Solutions is the premier text for teaching beginning programmers how to design and implement high-quality software using Java. Instructors trust the book's focus on developing high-quality software using Java. Instructors trust the book's focus on developing problem-solving and design skills alongside solid programming techniques. Students appreciate its clear writing and wealth of realistic programming examples. The Sixth Edition introduces improvements that make this book an even more useful teaching and learning tool.

 

KEY FEATURES

  • A measured approach to objects teaches students first how to use objects and then how to write them.
  • Fully implemented examples demonstrate specific concepts -- small, readily understandable examples are intertwined with larger, more realistic ones.
  • An optional Graphics Track covers graphics and GUIs at the end of each chapter, allowing for flexibility of coverage.
  • Extensive review and practice features include end-of-chapter questions, exercises, projects, and new end-of-section exercises.
  • NEW! Software Failure vignettes discuss real-world flaws in software design, encouraging students to adopt sound design practices from the beginning.
  • The text is completely compatible with Java 6.0.
  • NEW! Video Notes, presented by the author, explain topics visually in an easy-to-follow format, giving students the extra help they need to grasp important concepts. Each chapter has multiple Video Notes that walk students through examples and problem solutions. Conveniently accessible on www.aw.com/lewis or CD-ROM (available separately).

myCodeMate is a Web-based, textbook-specific homework tool and programming resource for an introduction to programming course. It provides a wide range of tools that students can use to help them learn programming concepts, prepare for tests, and earn better grades in the introductory programming course. Students can work on programming problems from this text or homework problems created by their professors and receive guided hints with page references and English explanations of compiler errors. Instructors can assign textbook-specific or self-created homeowrk problems, preset style attributes, view students' code and class compiler error logs, and track homework completion. A complimentary subscription is offered when an access code is ordered packaged with a new copy of this text. Subscriptions may also be purchased online. For more information visit www.mycodemate.com.

 

Back to top

Print this content

In this section:


Websites and Online Courses

Blackboard for Java Software Solutions: Foundations of Program Design, 6/E
Lewis
©2009  |  On-line Supplement  |  Version 6.2.3  |  Open Access  |  Live
ISBN-10: 0321558383  |  ISBN-13: 9780321558381
Instructors, request content (at no cost)  |  View Demo  |  More Info

Companion Website for Java Software Solutions: Foundations of Program Design
Lewis & Loftus
©2009  |  Addison-Wesley  |  Website  |  Live
ISBN-10: 0321558391  |  ISBN-13: 9780321558398
More Info

Java Software Solutions: Foundations of Program Design -- Instant Access, 6/E
Lewis & Loftus
©2009  |  Addison-Wesley  |  Website  |  Live
ISBN-10: 0321532082  |  ISBN-13: 9780321532084
More Info

WebCT for Java Software Solutions: Foundations of Program Design, 6/E
Lewis & Loftus
©2009  |  On-line Supplement  |  Open Access  |  Version 4.1X  |  Live
ISBN-10: 032155857X  |  ISBN-13: 9780321558572
Instructors, request content (at no cost)  |  View Demo  |  More Info

Back to top

Print this content

In this section:

Online Lab Manual, Lab Manual Source Code, and Lab Manual Solutions for Java Software Solutions: Foundations of Program Design, 6/E
Lewis & Loftus
©2009  |  Addison-Wesley  |  On-line Supplement  |  Live
ISBN-10: 0321532139  |  ISBN-13: 9780321532138

Show Downloadable Files
 | More Info

Solutions for Java Software Solutions: Foundations of Program Design, 6/E
Lewis & Loftus
©2009  |  Addison-Wesley  |  On-line Supplement  |  Live
ISBN-10: 0321532120  |  ISBN-13: 9780321532121

Show Downloadable Files
 | More Info

Source Code and Errata for Java Software Solutions: Foundations of Program Design, 6/E
Lewis & Loftus
©2009  |  Addison-Wesley  |  On-line Supplement  |  Live
ISBN-10: 0321532104  |  ISBN-13: 9780321532107

Show Downloadable Files
 | More Info

Test Bank for Java Software Solutions: Foundations of Program Design, 6/E
Lewis & Loftus
©2009  |  Addison-Wesley  |  On-line Supplement  |  Live
ISBN-10: 0321532090  |  ISBN-13: 9780321532091

Show Downloadable Files
 | More Info

PowerPoint Slides for Java Software Solutions: Foundations of Program Design, 6/E
Lewis & Loftus
©2009  |  Addison-Wesley  |  On-line Supplement  |  Live
ISBN-10: 0321532074  |  ISBN-13: 9780321532077

Show Downloadable Files
 | More Info

TestGen for Java Software Solutions: Foundations for Program Design, 6/E
Lewis & Loftus
©2009  |  Addison-Wesley  |  On-line Supplement  |  Live
ISBN-10: 0321532066  |  ISBN-13: 9780321532060

Show Downloadable Files
 | More Info

Back to top

Blackboard for Java Software Solutions: Foundations of Program Design, 6/E
Lewis
©2009  |  On-line Supplement  |  Version 6.2.3  |  Open Access  |  Live
ISBN-10: 0321558383  |  ISBN-13: 9780321558381
Instructors, request content (at no cost)  |  View Demo  |  More Info

Companion Website for Java Software Solutions: Foundations of Program Design
Lewis & Loftus
©2009  |  Addison-Wesley  |  Website  |  Live
ISBN-10: 0321558391  |  ISBN-13: 9780321558398
More Info

Java Software Solutions: Foundations of Program Design -- Instant Access, 6/E
Lewis & Loftus
©2009  |  Addison-Wesley  |  Website  |  Live
ISBN-10: 0321532082  |  ISBN-13: 9780321532084
More Info

WebCT for Java Software Solutions: Foundations of Program Design, 6/E
Lewis & Loftus
©2009  |  On-line Supplement  |  Open Access  |  Version 4.1X  |  Live
ISBN-10: 032155857X  |  ISBN-13: 9780321558572
Instructors, request content (at no cost)  |  View Demo  |  More Info

Back to top


Websites and online courses

Blackboard for Java Software Solutions: Foundations of Program Design, 6/E
Lewis
©2009  |  On-line Supplement  |  Version 6.2.3  |  Open Access  |  Live
ISBN-10: 0321558383  |  ISBN-13: 9780321558381
More Info

Companion Website for Java Software Solutions: Foundations of Program Design
Lewis & Loftus
©2009  |  Addison-Wesley  |  Website  |  Live
ISBN-10: 0321558391  |  ISBN-13: 9780321558398
More Info

Java Integrated Development Environment Resource Kit Premium Website
Addison-Wesley
©2011  |  Addison-Wesley  |  Website  |  Live
ISBN-10: 0132576678  |  ISBN-13: 9780132576673
More Info

Java Software Solutions: Foundations of Program Design -- Instant Access, 6/E
Lewis & Loftus
©2009  |  Addison-Wesley  |  Website  |  Live
ISBN-10: 0321532082  |  ISBN-13: 9780321532084
More Info

WebCT for Java Software Solutions: Foundations of Program Design, 6/E
Lewis & Loftus
©2009  |  On-line Supplement  |  Open Access  |  Version 4.1X  |  Live
ISBN-10: 032155857X  |  ISBN-13: 9780321558572
More Info


Websites and Online Courses

Blackboard for Java Software Solutions: Foundations of Program Design, 6/E
Lewis
©2009  |  On-line Supplement  |  Version 6.2.3  |  Open Access  |  Live
ISBN-10: 0321558383  |  ISBN-13: 9780321558381
Instructors, request content (at no cost)  |  View Demo  |  More Info

Companion Website for Java Software Solutions: Foundations of Program Design
Lewis & Loftus
©2009  |  Addison-Wesley  |  Website  |  Live
ISBN-10: 0321558391  |  ISBN-13: 9780321558398
More Info

Java Software Solutions: Foundations of Program Design -- Instant Access, 6/E
Lewis & Loftus
©2009  |  Addison-Wesley  |  Website  |  Live
ISBN-10: 0321532082  |  ISBN-13: 9780321532084
More Info

WebCT for Java Software Solutions: Foundations of Program Design, 6/E
Lewis & Loftus
©2009  |  On-line Supplement  |  Open Access  |  Version 4.1X  |  Live
ISBN-10: 032155857X  |  ISBN-13: 9780321558572
Instructors, request content (at no cost)  |  View Demo  |  More Info

Print this content

Give your students a choice! PearsonChoices products are designed to give your students more value and flexibility by letting them choose from a variety of text and media formats to best match their learning style and their budget.

Pearson Higher Education offers special pricing when you choose to package your text with other student resources. If you're interested in creating a cost-saving package for your students, see the Packages Tab.

  • Java Software Solutions: Foundations of Program Design, CourseSmart eTextbook, 6/E
    Lewis & Loftus
    ©2009  |  Addison-Wesley  |  Electronic Book; 832 pp  |  Available
    ISBN-10: 0321557964  |  ISBN-13: 9780321557964
    Brief Description  |  More Info  |  Students, buy access

  • Pearson Custom Computer Science
    Pearson
    ©2009  |  Addison-Wesley  |  On-line Supplement  |  Live
    ISBN-10: 0135075483  |  ISBN-13: 9780135075487
    Brief Description  |  More Info


Back to top

Log in to the Instructor Resource Center

Login name: 

  Password: 

Forgot login/password?  |  Need to redeem an access code?

        

Instructor Resource Center File Download

This work is protected by local and international copyright laws and is provided solely for the use of instructors in teaching their courses and assessing student learning. Dissemination or sale of any part of this work (including on the World Wide Web) will destroy the integrity of the work and is not permitted. The work and materials from this site should never be made available to students except by instructors using the accompanying text in their classes. All recipients of this work are expected to abide by these restrictions and to honor the intended pedagogical purposes and the needs of other instructors who rely on these materials.

Cancel     I accept, proceed with download

Print this content

Pearson Higher Education offers special pricing when you choose to package your text with other student resources. If you're interested in creating a cost-saving package for your students contact your Pearson Higher Education representative.

Back to top