Object Oriented Software Development Using Java

Xiaoping Jia  
Total pages
November 2002
Related Titles

Product detail

Product Price CHF Available  
Object Oriented Software Development Using Java
188.30 approx. 7-9 days


Object-Oriented Software Development Using Java focuses on developing skills in designing software-particularly in writing well-designed, medium-sized object-oriented programs. It provides a broad and coherent coverage of object-oriented technology, including object-oriented modeling using the Unified Modeling Language (UML), object-oriented design using Design Patterns, and object-oriented programming using Java.

With the popularity of C++ and Java, program design has become as important to individual commercial programmers as it has been to programmers developing immense government-sponsored software projects. Designed for a course on object-oriented design at the Junior-, Senior-, and Graduate-level, Object-Oriented Software Development in Java prepares students for the industry's move toward object-oriented languages by introducing design concepts early and then moving on to Java.


  • Features an applied focus, which develops software design skills, particularly skills in writing medium-sized, well-designed object-oriented programs.
  • Discusses topics of interest for both academia and industry, such as graphical user interfaces, concurrent programming, and distributed computing.
  • Provides a balanced view of object-oriented software development from different perspectives: academia and industry, theory and practice.

New to this Edition

  • Three times the number of design patterns using Java.
  • More exercises included at the end of chapters and new end-of-chapter section with projects.
  • Introduces new section on testing, revisited through the programming samples in the book.
  • Introduces a new section on the iterative software development process, revisited by program examples.
  • Additional chapter for expanded coverage on UML.
  • Advanced features of Java; RMI, JDBC, COBRA.
  • Examples updates to JDK1.4.
  • New Case Study: E-Bookstore.

Table of Contents

1. Object-Oriented Software Development.

The Challenges of Software Development.

An Engineering Perspective.


Iterative Development Processes: RUP and XP.

2. Object-Oriented Modeling Using UML.

Principles and Concepts.

Modeling Relationships and Structures.

Modeling Dynamic Behaviors.

Modeling Requirements with Use Cases.

Case Study: An E-Bookstore.

3. Introduction to Java.

An Overview of Java 2 Platform.

The Java Run-Time Architecture.

Getting Started with Java.

4. Elements of Java.

Lexical Elements.

Variables and Types.


Class Declarations.



A Simple Animation Applet.

5. Classes and Inheritance.

Overloading Methods and Constructors.

Extending Classes.

Extending and Implementing Interfaces.

Hiding Fields and Class Methods.

Applications - Animation Applets.

6. From Building Blocks to Projects.

Organizing Classes.

Contracts and Invariants.

The Canonical Form of Classes.

Design Guidelines.

Unit Testing.

Project Build.

7. Design by Abstraction.

Design Patterns.

Desinging Generic Componenets.

Abstract Coupling.

Design Case Study - Animation of Sorting Algorithms.

8. Object-Oriented Application Frameworks.

Application Frameworks.

The Collections Framework.

The Graphical User Interface Framework.

The Input/Output Framework.

9. Design Case Study: A Drawing Pad.


Iteration 1: A Simple Scribble Pad.

Iteration 2: Menus, Options, and Files.

Iteration 3: Refactoring.

Iteration 4: Adding Shapes and Tools.

Iteration 5: More Drawing Tools.

Iteration 6: The Text Tool.

10. More Design Patterns.

Type-Safe Enumeration Type.

Creational Patterns.

Behavioral Patterns.

Structural Patterns.

11. Concurrent Programming.


Thread Safety and Liveness.

Design Case Study.

12. Distributed Computing.

Socket-Based Communication.

Remote Method Invocation.

Java Database Connectivity (JDBC).

Common Object Request Broker Architecture (CORBA).