By Dale Farris,
Secretary
Golden Triangle PC Club
June 2002
Computing Fundamentals With Java introduces object-oriented programming with
a complete treatment of traditional CSI topics. This wonderful book on Java
is clearly written and includes numerous supporting self-check questions,
exercises, and programming projects. This textbook remains true to the
author's 15-year quest to teach object-oriented programming while retaining
traditional topics, such as control structures and arrays.
Numerous Java examples and Java programming projects, and the case study
that spans Chapters
3-8 show students how objects in object-oriented programs interact with each
other. The programs use 20 classes in all, 11 of which are standard Java
classes.
Students also experience polymorphism through inheritance and interfaces. A
carefully chosen subject of four Java classes allows students to learn
standard Java event-driven programming with graphical user interfaces. Many
programming projects can be completed with either a text interface or a GUI.
The book is written for the introductory computer science class at the
university level, and is appropriate for students with little or no
programming background. Students have tested the book 11 times in various
settings, and more than 1,400 students have used this book. The material was
developed in courses where students had a wide variety of programming
experience, from none to several years experience with other programming
languages. The book recognizes the relevance and validity of object-oriented
programming and design, but not at the expense of traditional computing
fundamentals.
After completing the first 8 chapters, students should be comfortable with
traditional programming concepts, such as problem-solving, control
structure, methods, parameters, and arrays. Students will also have learned
the main concepts of object-oriented programming, such as partitioning
systems into objects, message passing, building classes, polymorphism
through inheritance, and polymorphism through Java interfaces. They will be
able to write programs that use Java classes, and classes written by them
for particular applications.
By the end of chapter 8, students will also have had the opportunity to
observe the development of a relatively complex object-oriented system. The
system is progressively built in sections of Chapters 3 through 8. This
extended case study provides the opportunity for understanding
object-oriented programming in Java. This bank teller system directly uses
11 standard Java classes, plus 10 classes specifically written for this
application.
Chapters 9 through 12 provide additional material sometimes presented in a
first course in programming. These additional topics include exceptions and
Java input/output streams. The objects built in the case study can be made
persistent. Design issues are woven through the text in algorithmic patterns
and object-oriented design guidelines. Chapter 10 presents an
object-oriented software development strategy with role-playing and class/responsibility/collaborator
cards. Chapter 11 presents 2 dimensional arrays and array-processing
algorithms typically presented in a first course, and Chapter 12 introduces
the concept of recursion and how it works in programming.
The textbook is the result of 15 years of reasoning how best to use the
first course in the computer science curriculum, and how best to integrate
object-oriented programming and design.
This textbook can be used as the core textbook in a course that focuses
exclusively on teaching Java programming, as well as a supplement to other
programming classes.
The organization of this textbook emphasizes ease of use by the student,
with great attention to the step-by-step process of using the selected
programming steps and exercises. This high degree of detail to such tedious
organization of this material must have been an enormous challenge to
produce, not only for the author, but for all involved in the superb
design and organization of this wealth of information. The result is a
vastly superior book on how to program in Java that will make
it much easier to learn this skill.
Each chapter sums up the prior chapter, and succinctly presents the key
topics to be covered in the chapter. The topics are well outlined, and the
extensive use of detailed, step-by-step programming lines ensure that
students succeed in getting a grasp of the chapter material. These
programming code scripts are presented in a different font, and are all
presented in the exact outline structure required in real programming. What
a tedious job this must have been to reproduce this complex material in such
a manner that greatly aids in student learning!
Table of Contents
The 12 chapters include the following:
- Program Development
- A Little Java
- Using Objects
- Classes and Interfaces
- Events, Listeners, and a Little Polymorphism
- Selection
- Repetition
- Arrays
- A Few Exceptions, a Little Input/Output, & Some Persistent Objects
- Designing An Inheritance Hierarchy
- More Arrays
- Simple Recursion
The three appendixes include Appendix A, "A Little Javadoc," Appendix
B, "HTML Documentation of Author-Supplied Classes," and Appendix C,
"Answers to Selected Exercises."
The case study that is played out in Chapters 3 through 8 really helps
students apply the techniques they learn as they progress through these
chapters. The case study is an event-driven bank teller application with a
graphical user interface.
At the end of each chapter, author Mercer presents a summary of
the key points in the chapter, a list of the key terms covered, and many
exercises for students to complete. Some of these exercises are answered
in Appendix C, and all are answered in the additional instructor material
available on CD for instructors who adopt this textbook. See below for
information how to contact the publisher regarding these supplemental
instructor materials.
In addition, each chapter also includes many annotated programming tips
that further enhance the chapter content, and many relatively small-scale
programming problems that have been extensively lab-tested to ensure that
the
projects can be completed with little or no instructor intervention. These
amazing programming projects are alone worth the investment in this super
textbook. These programming projects represent a wide range of difficulty,
and students typically complete from 1 to 4 projects per week in an
acceptable amount of time. Virtually all these projects were assigned and
successfully completed by students over the past 11 years. These projects also represent excellent homework assignments
for students in Java classes.
Key Features
The text is designed to be used in a structured, instructor-facilitated
class in Java. With all the many chapter review
questions, practice exercises, and programming projects, this text
could easily be considered the pre-eminent work of choice for anyone needing
a text to support their plans to offer a Java class for their students.
The key features of this book include:
Supplemental activities disk
Object-oriented programming
Traditional topics such as problem-solving, design, arrays, control
structures
Objects early approach
Carefully chosen subset of Java
Case study that covers 7 chapters of topics
Algorithmic patterns
Event-driven programming the Java way
Extensively tested in the classroom and laboratory
Self-check questions
Exercises
Programming Tips
Programming Projects
About the Author
Rick Mercer teaches computer science at the University of Arizona. A
frequent presenter at OOPSLA, he has also been invited to participate in
numerous NSF-funded workshops concerning the implementation of
object-oriented programming in the college computer science curriculum.
This is the 4th textbook for use in CSI. His "Computing Fundamentals with
C++" has been a top seller in the CSI college market.
Target Readers
This is one of the most well organized and effective textbooks on learning
Java you will find on the market. Mercer's super text is tailor-made for any
university or college class in Java programming, and the depth and breadth is here for those wishing to maximize
learning Java.
A special note for instructors of these classes is worthy here. In addition to
the high value you will receive from using this textbook, Franklin, Beedle
& Associates, Inc. (FBA)
also makes available superb instructor resource materials that will
provide everything you need to integrate the use of this text in a class.
I have greatly benefited from these many helpful materials in preparing
for my own class that uses another FBA textbook, and I can highly recommend this
publisher to others wishing to develop a class in Java.
With this venture, the Franklin, Beedle & Associates, Inc. publishing company
solidifies their rapidly growing reputation
for producing excellent textbooks for computer classes that can be
considered by all levels of education. Students working toward computer certification,
as well as any other student, should seriously consider
this superb book that thoroughly covers how to create Java programs.
Recommendation
While many other publishers approach works on Java as
introductory, or conceptual titles, Franklin Beedle & Associates, Inc. has designed a complete and thorough
textbook that
is just right for any college or university course on learning Java. The
text is designed for students with little or no prior programming
experience, as well as for students who have experience with another
programming language. This super text has been class tested 11 times in a
variety of classroom settings, and is written to clearly present
fundamental concepts for beginning programmers. For any Java class, this textbook can well serve any Java instructor
looking for such a thorough and well designed approach to teaching
students Java.
Note that because this book has been organized as a
textbook, it is therefore somewhat larger in scope, as well as size,
since it is targeted to meet the needs of students in organized Java classes. The book
will also be of value to others interested in learning Java, but
not necessarily wanting to enroll in a class. However, self-paced
learners will naturally need to also be self-disciplined enough to walk
through the many included exercises, while understanding that without an
instructor working with the additional instructor material they will not
necessarily have readily available this type of assistance, or answers to
many of the chapter summaries.
Book Contents
719 pages; supplemental Java source code disk; preface; acknowledgments;
tons of coding exercises; 6-chapter case study; student self-checks; chapter
summaries; key terms in each chapter; analysis and design projects;
figures; appendixes; glossary; index
ISBN
1st Edition, 2002
1-887902-47-3
List Price
$60.00
Supplemental Floppy Disk
This marvelous textbook also includes a supplemental floppy disk that
contains all of the Java source code from the textbook. The disk is
divided into a folder for each chapter. Some folders hold files that help
the student complete the programming assignments. The root directory
(folder) on the disk has the files needed by some of the programming
projects. This disk alone is worth the investment in this textbook, as
these files add great value to this already value-laden textbook.
Instructor's Manual
The instructor's manual that accompanies this textbook is available as a
CD to teachers who adopt this textbook. The CD contains solutions to all
programming projects, answers to all the exercises, teaching suggestions
for each chapter, multiple versions of tests that were actually used at
the University of Arizona, and lecture notes for each chapter as
PowerPoint slides. As an instructor of another course based on a Franklin,
Beedle & Associates, Inc. textbook, I can guarantee instructors will be
very impressed, as well as amazed at the quality and quantity of material
this publisher makes available for instructors. Once you begin working
with FBA material in your classes, you will be hard pressed to find
another textbook
publisher that works as hard as FBA to make your class preparation such a
delight.
To obtain a copy of this instructor manual CD, contact the publisher
below.
Publisher
Contact: Christine Collier
Marketing Representative
Franklin, Beedle & Associates, Inc.
8536 SW St. Helens Drive, Suite D
Wilsonville, Oregon 97070
1-800-FBA-BOOK
1-503-682-7668
FAX 1-503-682-7638
ccollier@fbeedle.com
www.fbeedle.com
|