About the Book
Problem Solving with Java teaches
the sound problem solving skills that beginning programmers must understand
alongside the basics of object-oriented programming using Java. The book
emphasizes the use of objects and classes from the beginning by providing
the basics of OOP from the start, but delaying the complications of the
AWT, Swing, and more theoretical concepts of OOP until later.
The authors' approach is to design
a worker class or support class for each problem. The worker class has
data fields for storing the problem inputs and it has methods that implement
the algorithm needed to solve the problem. There is a separate application
class that instantiates a worker object, passes data to this object, and
then displays the results returned by the worker object. In this way, the
student is introduced to the importance of object interaction and separation
of concerns from the very beginning. The worker class knows how to solve
the basic problem (units conversion, computation of area, etc.). The application
class knows how to get the data from the user and display it. This approach
better prepares students for the use of applets and GUIs. The worker class
can be used without modification by an applet that performs the functions
of the application class.
JavaPlace Website access card by Addison
Wesley Higher Education
Borland JBuilder 6 Personal Compiler
+ Source Code for Koffman/Wolz, 2/E
by Borland
Features
-
NEW! Covers basic control structures in one
chapter (Chapter 4).
-
NEW! Provides a flexible coverage of GUIs,
allowing students to learn to write GUIs from the start, or hold off on
this material until after students know arrays and vectors.
-
NEW! Revised and updated examples, exercises,
and problems.
-
Contains the classic Koffman five-step problem-solving
approach (state problem, analyze problem, design algorithm, implement,
test/verify) to insure that students get a solid grounding in these fundamentals
of programming.
-
Includes numerous full-length case studies
to show actual implementation of the concepts in each chapter.
-
Contains interviews with famous computer scientists
so students can get a glimpse into various fields and careers.
Related
Books
Introduction to Computer Programming Courses
(Intro
to Computer Programming)
Table of Contents
1. Introduction to Computers, Problem
Solving, and Programming.
Overview of Computers.
Computer Components.
Computer Software.
Processing a High-Level Language Program.
The Software Development Method.
Professional Ethics for Computer Programming.
2. Using Primitive Data Types and
Using Classes.
Primitive Data Types.
Processing Numeric Data.
Introduction to Methods.
The String Class.
Input/Output with Class JOptionPane
and Method println().
Problem Solving in Action.
Anatomy of a Java Program.
Numerical Computations with Class
Math.
Common Errors and Debugging.
3. Object-Oriented Design and Writing
Worker Classes.
A First Worker Class: Class FoodItem.
A Worker Class that Manipulates String
Objects.
A Worker Class that Processes Integers.
Review of Methods.
Simplifying a Solution Using Multiple
Classes.
Formatting Output and Class KeyIn
(Optional).
Applets, AWT, and the Graphics Class
(Optional).
Common Programming Errors.
4. Control Structures: Decisions
and Loops.
Control Structures.
boolean Expressions.
The if Statement.
Decision Steps in Algorithms.
Multiple-Alternative Decisions: Nested
if and switch.
Counting Loops, while and for statements.
State-Controlled Loops.
Putting It All Together.
Debugging and Testing Programs with
Decisions and Loops.
Common Programming Errors.
5. Arrays and Vectors.
Array Declarations.
Processing Arrays and Array Elements.
Operations on Whole Arrays.
Searching and Sorting an Array.
Arrays of Objects.
Multidimensional Arrays-Arrays of
Arrays.
Vectors.
Wrapper Classes for Primitive Type
Data.
Arrays and ArrayList Collection Classes
(Optional).
Common Programming Errors.
6. Class Hierarchies, Inheritance,
and Interfaces.
Class Hierarchies and Inheritance.
Operations in a Class Hierarchy.
Polymorphism.
Interfaces.
Abstract Classes.
Drawing Figures Using an Abstract
Class and Interface.
Packages and Visibility (Optional).
Testing a Program System.
Common Programming Errors.
7. Graphical User Interfaces (GUIs).
AWT, Swing, and Browser-Applet Interaction.
Designing a First GUI.
The Java Event Model.
Using a GUI in an Application.
Components for Making Choices.
Designing a GUI for an Existing Class.
Listener Classes as Inner Classes.
Layout Managers.
Common Programming Errors.
8. Exceptions, Streams, and Files.
Exceptions.
Streams and Text Files.
Using Text Files.
A GUI for Processing the DVD Collection.
Binary Files.
Common Programming Errors.
9. Recursion.
Recursive Methods.
Recursive Mathematical Methods.
Use of the Stack in Recursion.
Recursive Methods with Arrays, Vectors,
and Strings.
Binary Search.
Solving Towers of Hanoi with Recursion.
A Recursive Program with a GUI.
Common Programming Errors.
10. Linked Data Structures.
Linked Lists.
Stacks.
Queues.
Binary Trees.
A Binary Search Tree Class.
LinkedList Collection Class and List
Iterators (Optional).
Common Programming Errors.
Appendix A. Java Resources, Package
psJava, Jbuilder, and HTML Resources.
Appendix B. Java Language Summary.
Appendix C. Packages java.lang and
java.util.
Appendix D. Package java.io.
Appendix E. Package java.awt.
Appendix F. Package javax.swing.
Answers to Odd Self-Check Exercises.
Index. |