| |
| |
| |
Object-Oriented Software Development | |
| |
| |
The Challenges of Software Development | |
| |
| |
An Engineering Perspective | |
| |
| |
Object-Orientation | |
| |
| |
Iterative Development Processes: RUP and XP | |
| |
| |
| |
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 | |
| |
| |
| |
Introduction to Java | |
| |
| |
An Overview of Java 2 Platform | |
| |
| |
The Java Run-Time Architecture | |
| |
| |
Getting Started with Java | |
| |
| |
| |
Elements of Java | |
| |
| |
Lexical Elements | |
| |
| |
Variables and Types | |
| |
| |
Statements | |
| |
| |
Class Declarations | |
| |
| |
Packages | |
| |
| |
Exceptions | |
| |
| |
A Simple Animation Applet | |
| |
| |
| |
Classes and Inheritance | |
| |
| |
Overloading Methods and Constructors | |
| |
| |
Extending Classes | |
| |
| |
Extending and Implementing Interfaces | |
| |
| |
Hiding Fields and Class Methods | |
| |
| |
Applications - Animation Applets | |
| |
| |
| |
From Building Blocks to Projects | |
| |
| |
Organizing Classes | |
| |
| |
Contracts and Invariants | |
| |
| |
The Canonical Form of Classes | |
| |
| |
Design Guidelines | |
| |
| |
Unit Testing | |
| |
| |
Project Build | |
| |
| |
| |
Design by Abstraction | |
| |
| |
Design Patterns | |
| |
| |
Desinging Generic Componenets | |
| |
| |
Abstract Coupling | |
| |
| |
Design Case Study - Animation of Sorting Algorithms | |
| |
| |
| |
Object-Oriented Application Frameworks | |
| |
| |
Application Frameworks | |
| |
| |
The Collections Framework | |
| |
| |
The Graphical User Interface Framework | |
| |
| |
The Input/Output Framework | |
| |
| |
| |
Design Case Study: A Drawing Pad | |
| |
| |
Planning | |
| |
| |
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 | |
| |
| |
| |
More Design Patterns | |
| |
| |
Type-Safe Enumeration Type | |
| |
| |
Creational Patterns | |
| |
| |
Behavioral Patterns | |
| |
| |
Structural Patterns | |
| |
| |
| |
Concurrent Programming | |
| |
| |
Threads | |
| |
| |
Thread Safety and Liveness | |
| |
| |
Design Case Study | |
| |
| |
| |
Distributed Computing | |
| |
| |
Socket-Based Communication | |
| |
| |
Remote Method Invocation | |
| |
| |
Java Database Connectivity (JDBC) | |
| |
| |
Common Object Request Broker Architecture (CORBA) | |