
The Java-as-a-Second-Language Annotated Bibliography is intended to supplement the class. (It is not a list of required books -- just as the texts listed in a typical bibliography are not required.) As a bibliography, JSLAB will help reduce to a manageable size the hundreds of choices in OO and Java titles.
As an annotated bibliography, JSLAB may further reduce the time we spend on supplementary reading. This is because the annotations will direct us to the salient portions of the listed books. For example, "This book contains the best description of layers I've seen. Read that section but skip the rest."
Eventually, the bibliography will be cross-referenced by subject. For example, there may be a Layers section which lists those books with exceptional discussions of that subject. This may prove useful for those subjects that need a multiperspective presentation in order to be understood fully.
Current entries:
Object Oriented Software Engineering
Object-Oriented Development, The Fusion Method
Software Reuse Architecture, Process and Organization for Business Success
Teach Yourself Java 1.1 Programming in 24 Hours (and The Java Tutorial)
Java 1.1 Certification Study Guide
The Essential Distributed Objects Survival Guide
Design Patterns

Title: Object Oriented Software Engineering
Author: Ivar Jacobson
Year: 1992
ISBN: 0-201-54435-0
Subjects of interest: OO, Process, Reuse, Architecture, Use Cases
Introduction:
Contains a complete introduction to OO and a mature software development process. Written by one of the "three wise men" of OO, namely Booch, Rumbaugh and Jacobson. Of the OOSE processes these three expose as of now in their books, IMHO this is the best. This is due to the integration of Use Cases, the preference for engineering steps instead of artful stabs, and the emphasis on architecture with a solid explanation. 16 chapters, 528 pages.
What to read:
The first 5 chapters, in 105 pages, give a concise introduction to OO, process, and Ivar's approach to all this. The key concept here is that everything should be Use Case driven. Chapter 6, on architecture, explains many concepts, including Use Cases. The rest of the book is optional but good.
reviewer: Jack Harich
Title: Object-Oriented Development, The Fusion Method
Authors: Derek Coleman et al.
Year: 1994
ISBN: 0-13-338823-9
Subjects of interest: OO development (analysis, design, implementation)
Introduction:
for beginners looking to try the OO approach
H-P group combines several OO methods into one coherent process
What to read:
skim the notation in Chapter 2 and then refer back as needed
Chapters 3-5 accompany you through the 3 stages of your OO project
you're done! (I've only glanced at Chapters 6-10, Appendices A-E)
reviewer: Tod Rieger
Title: Software Reuse Architecture, Process and Organization for Business Success
Author: Ivar Jacobson
Year: 1997
ISBN: 0-201-92476-5
Subjects of interest: Reuse, Process, OO, Architecture, Use Cases, Components
Introduction:
The core concept is that your software development process should be reuse driven. This is not easy to understand or do, so Ivar explains and shows how. Intense reuse is a new field with many equally valid approaches. Ivar's is solid but not complete. It's based mainly on Reusable Components, a formal process, and Use Cases. 15 chapters, 497 pages.
What to read:
Chapter 7 on Layered Architecture is the best I've read on that subject. The two leading architectures today are Partitioned and Layered, and Layered is becoming seen as the better of the two, though both are partitioned.
On pages 10 and 11 the concept of "service packages" (SP) as a form of mega-component is explained. The key approach is, an SP is designed to be developed by a single developer, and the SP is designed so well that customers will choose it instead of developing their own custom one. The latter of course is the idea behind all good components.
reviewer: Jack Harich

Title: Teach Yourself Java 1.1 Programming in 24 Hours
Author: Rogers Cadenhead
Year: 1997
ISBN: 1-57521-270-6
Subjects of interest: getting started, the basics, intro to OO
Introduction:
for beginners; assumes no programming experience
24 one-hour lessons; updates
also recommended by Cafe au Lait
What to read:
Chapters 1-4 if you've never programmed (or mess up Hello World)
Chapters 5-8 if you're unfamiliar with Java syntax
Chapters 9-12 helped me see how OOAD translates into Java (magic!)
you're done! (Chapters 13-24 focus on applets)
next stop: the interactive, online Java Tutorial
reviewer: Tod Rieger
Title: Java 1.1 Certification Study Guide
Authors: Simon Roberts and Philip Heller
Year: 1997
ISBN: 0-7821-2069-5
Subjects of interest: Java 1.1 certification
Introduction:
Purpose is to pass the Java Programmer's Certification test.
This book is so well written that it also serves as a useful book to simply learn Java, too.
What to read:
You'll need and want to read every chapter in this book to pass the Certification test. All are excellent and well organized.
This book comes with a very representative test program that has a reasonably large base of questions. Take this test several times a week for several weeks prior to attempting the Sun Certification test.
Reviewer: Curt Smith
Online recommendations:
Good JFC doc is inside the JDK1.2 doc download off the Java Developer Connection site.
There is also a tutorial/training course available.

Title: The Essential Distributed Objects Survival Guide
Authors: Robert Orfali, Dan Harkey and Jeri Edwards
Year: 1996
ISBN: 0471-12993-3
Subjects of interest: CORBA, OLE and OpenDoc
Introduction:
This is a 604 page introduction to the concepts and building blocks of the major distributed object and component systems: CORBA and OLE/COM. (It covers OpenDoc, but that is one less thing to learn these days since its demise.) The authors make what could be a dry subject interesting with their zany humor. They have a bias towards open systems (i.e. not Microsoft's proprietary COM), but they readily admit it and make it clear when they are on their soapbox.
What to read:
Client/Server with Distributed Objects
CORBA: The Distributed Object Bus
Frameworks for Business Objects and Components
OLE/COM: Under the Hood
Component Nirvana: Client/Server with Parts
(You may want to skip over references to OpenDoc and other solutions, like Taligent's CommonPoint, NeXT's OpenStep, and Newi.)
reviewer: Greg Kreis
Title: Design Patterns
Authors: E. Gamma, R. Helm, R. Johnson, J. Vlissides
Year: 1995
ISBN: 0-201-63361-2
Subjects of interest: OO development, design patterns, reusable designs
Introduction:
A catalog of frequently encountered design patterns, the reuse of which can aid OO development.
What to read:
Chapters 1 and (to a lesser extent) 6 offer yet another viewpoint on OO development.
Read the pattern summaries on the inside cover. If any seem familiar or useful, go to the page listed and find out more. Keep a photocopy as a "quick reference".
reviewer: Tod Rieger

Last modified: 10/16/98
|