[Book Cover]

Java, Java, Java: Object-Oriented Problem Solving, 1/e

Ralph Morelli, Trinity College, Hartford, CT

Coming December, 1999 by Prentice Hall Engineering/Science/Mathematics

Copyright 2000, 976 pp.
Paper Bound w/CD-ROM
ISBN 0-13-011332-8

[CD Included]


Sign up for future
mailings
on this subject.

See other books about:
    Java--Intro to Programming/CS1-Computer Science

    Java--Intermediate Programming-Computer Science


Summary

Appropriate for Introductory Computer Science Programming courses using Java (CS1 with Java). The author takes an “objects early” approach to teaching Java, with the assumption that teaching beginners the “big picture” early gives them more time to master the principles of object-oriented programming. The text focuses on the motivation behind Java's strengths and the benefits of the object-oriented paradigm. Ideal for students at the introductory level, it provides a solid understanding of objects and methods, concentrating on problem decomposition and program design. A firm grasp on these fundamentals allows the smaller details, and some of Java's advanced features, to fall into place from both instructor and student perspectives.

Features


Objects First Approach—The book introduces the fundamentals of designing objects and methods (Chs. 2-3) before introducing most of the basic language features and structured programming concepts (Chs. 5-8).

  • The objects first approach helps orient the student before introducing lots of language details.
Emphasis on Design and Problem Solving—Throughout the text many examples are developed and presented in a problem-solving style, beginning with a clear problem statement, and proceeding through problem decomposition, method and algorithm design, and Java coding. (See Section 1.11 for an introduction to the design methodology.)
  • Students see how programs are developed from specification through coding and testing.
Emphasis on Object-Oriented Design—Fundamental object-oriented design concepts, such as inheritance and information hiding, are introduced early and presented as an essential part of using an object-oriented language. Each chapter contains an object-oriented Design section, and throughout the text there are drop-in boxes that focus on design. (See Sections 2.7, 3.10, 4.8.)
  • object-oriented design is the programming paradigm most favored by the software industry.
Emphasis on GUIs and Applets—Applets and Graphical User Interfaces (GUIs) are first introduced in Chapter 4 and then used throughout the text. New GUI elements are introduced in almost every chapter, and Chapters 9 and 10 focus entirely on Java's GUI elements. This is an important feature for keeping students' interest and provides a good way to introduce more real-world examples.
  • Students study and develop programs that resemble ones they're used to using.
In the Laboratory Sections—Each chapter concludes with a laboratory exercise, so the text can easily be used to support lab-based CS1 courses. The labs are presented using an incremental problem solving approach. (See Section 1.13 for an example.)
  • Labs help students practice and extend the concepts discussed in the book.
CyberPet Example—The text makes use of a recurring example of a CyberPet, which is first introduced in Chapter 2 as an example of an object with a very simple internal state that can be given simple commands such as “eat” and “sleep” to change its state. The CyberPet class is developed further in Chapter 3 by incorporating more states as well as methods that use parameters and return values. In subsequent chapters, concepts such as inheritance, randomness, animation, threads and networking are illustrated in terms of this example.
  • CyberPet helps to convey simple object-oriented programming principles.
Advanced Topics—Chapters 10-15 introduce advanced features of the Java language. Most of the concepts in these chapters are introduced through carefully designed, real-world problems. For example, in Chapter 14 on Networking, one example is an on-line, multi media directory of homes for a real-estate agency.
  • Advanced sections focus on concepts and features that students are likely to encounter in the workplace.
Associated Website—An extensive website that includes many useful resources, including the Java code for all the examples in the text, detailed lab and programming assignments, online quizzes, solutions to the labs and programming assignments, CGI scripts for automatic creation and grading of quizzes.
  • Students can experiment with all the programs in the book, and use on-line quizzes to help study for exams.


Table of Contents
    Computers, Objects and Java.
    1. Java Program Development.
    2. Objects: Defining, Creating and Using.
    3. Methods: Communicating with Objects.
    4. Applets: Programming for the World Wide Web.
    5. Java Data and Operators.
    6. Control Structures.
    7. Strings and String Processing.
    8. Arrays and Array Processing.
    9. Graphical User Interfaces.
    10. Graphics and Drawing.
    11. Exceptions: When Things Go Wrong.
    12. Recursive Problem Solving.
    13. Threads and Concurrent Programming.
    14. Files, Streams and Input/Output Techniques.
    15. Sockets and Networking.
    16. Data Structures: Lists, Stacks, and Queues.


[Help]

© Prentice-Hall, Inc. A Simon & Schuster Company
Comments To webmaster@prenhall.com