Object-Oriented Software Development Using Java (Hardcover)

Xiaoping Jia

  • 出版商: Addison Wesley
  • 出版日期: 1999-10-15
  • 定價: $1,400
  • 售價: 5.0$700
  • 語言: 英文
  • 頁數: 550
  • 裝訂: Hardcover
  • ISBN: 020135084X
  • ISBN-13: 9780201350845
  • 相關分類: Java 程式語言Object-oriented
  • 立即出貨(限量) (庫存=1)

商品描述


Description

Object-Oriented Software Development in Java provides broad and coherent coverage of object-oriented technology, teaching object-oriented design and construction using Java to students with some experience programming in any language. Focusing on design and programming, educator and practitioner Xiaoping Jia instills the object-oriented way of thinking through the use of design patterns and frameworks, study of the design of the Java Class Libraries, and illustration of incremental software development.

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.

Back to Top


Appropriate Courses

Object-Oriented Design; Java—Intermediate Programming.

Back to Top


Features

  • Features an applied focus which develops software design skills, particularly skill in writing medium-sized, well-designed object-oriented programs.
  • Uses the Java 2 platform, including coverage of Swing, collections, and RMI.
  • Covers object-oriented modeling using UML, object-oriented design using design patterns, and object-oriented programming using Java.
  • Includes an introduction to software engineering and how object-oriented developments fit into the software engineering process.
  • 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.
Back to Top


Table Of Contents

1. Object-Oriented Software Development.
Software Development.
An Engineering Perspective.
The Desirable Qualities of Software Systems.

A View of the World.
Principles and Concepts.
Classes and Objects.
Modularity.
Abstraction and Encapsulation.
Inheritance.
Association.
Modeling Dynamic Behavior.

Object-Oriented Development.
The Micro and Macro Processes.
Case Study: An On-Line Bookstore.


2. Introduction to Java.
The Architecture of Java.
Simple Programs.
A Simple App.
Simple Applet.


3. Elements of Java.
Lexical Elements.
Character Set.
Identifiers.
Primitive Types and Literals.
Operators and Expressions.

Variables and Types.
Variable Declarations.
Type Compatibility and Conversion.
Reference Types.
Arrays.

Statements.
Statement Labels.
Statement Blocks.
Simple Statements.
Compound Statements.
Multi-Level Breaking.

Class Declarations.
Class Syntax.
Creating and Initializing Objects.
Accessing Members.
Method Invocation and Parameter Passing.
Static Fields and Methods.
Object Reference.
Interfaces and Abstract Classes.
Strings.
Wrapper Classes

Packages.
Exceptions.
A Simple Animation Applet.

4. Classes and Inheritance.
Overloading.
Inheritance.
Constructors of Extended Classes.
Subtypes and Polymorphism.
Overriding Methods.
Restriction.

Extending and Implementing Interfaces.
Hiding Fields and Static Methods.
Designing Classes.
Avoiding Public Fields.
Separating Interface From Implementation.
File Organization.
The Canonical Form.
Class Organization.
Documentation.
Unit Testing.

Applications - Animation Applets.
Getting Parameters.
An Idiom for Animation.
Using Double-Buffering.
Reading Files In Applets.


5. Design by Abstraction.
Design Patterns.
Designing Generic Components.
Factorization.
Generalization.
Abstract Coupling.

Design Case Study: Sorting Animation.
The Initial Implementation.
Separating the Algorithms.
Separating the Display Strategies.


6. Object-Oriented Application Frameworks.
Application Frameworks.
The Collections Framework.
Abstract Collections.
Interfaces of Collections.
Implementations of Collections.
Iteration.
Ordering and Sorting.

The Graphical User Interface Framework.
The Widgets.
Layout Managers.
Handing Events.
Frames and Dialogs.

The Input/Output Framework.
The Byte Streams.
The Character Streams.
Random Access Files.


7. Design Case Study: A Drawing Pad.
Iterative Development.
Iteration 1: A Simple Scribbling Pad.
Iteration 2: The Control Panel.
Iteration 3: The Drawing Tools.
Iteration 4: More Tools.
Handling The Keyboard Input.
Drawing Filled Shapes.


8. Concurrent Programming.
Threads.
Creation of Threads.
Controlling Threads.

Thread Safety and Liveness.
Synchronization.
Cooperation Among Threads.
Liveness Failures.

Design Case Study: Tic-Tac-Toe Game.

9. Distributed Computing.
Socket-Based Communication.
Server and Client Sockets.
Servers and Clients Using Sockets.
Design Case Study.

Remote Method Invocation.
The Architecture.
Using RMI.
Design Case Study.

Distributed Computing with Non-Java Applications.
Java Database Connectivity.
Common Object Request Broker Architecture.


Glossary. 020135084XT04062001


Back to Top



Supplements


General Supplements

  • Online Source Code
    See "CS Supplement List" on PIRL for more information.



Back to Top

商品描述(中文翻譯)

《Java中的面向對象軟件開發》提供了廣泛而一致的面向對象技術覆蓋範圍,教授具有任何語言編程經驗的學生使用Java進行面向對象設計和構建。教育家和實踐者賈曉平通過使用設計模式和框架、研究Java類庫的設計以及漸進式軟件開發的示例,培養了面向對象思維方式。隨著C++和Java的普及,程序設計對於個人商業程序員和開發大型政府資助軟件項目的程序員一樣重要。《Java中的面向對象軟件開發》設計用於初級、高級和研究生級別的面向對象設計課程,通過早期引入設計概念,然後轉向Java,為學生們為行業向面向對象語言的轉變做好準備。

適合的課程包括面向對象設計和Java中級編程。

特點包括:
- 以應用為重點,培養軟件設計技能,特別是編寫中型、設計良好的面向對象程序的技能。
- 使用Java 2平台,包括Swing、集合和RMI的覆蓋範圍。
- 使用UML進行面向對象建模,使用設計模式進行面向對象設計,使用Java進行面向對象編程。
- 包括軟件工程介紹以及面向對象開發如何適應軟件工程過程。
- 討論學術界和工業界都感興趣的主題,如圖形用戶界面、並行編程和分布式計算。
- 提供從不同角度(學術界和工業界、理論和實踐)的面向對象軟件開發的平衡觀點。

目錄包括:
1. 面向對象軟件開發
2. Java簡介
3. Java元素

以上是對《Java中的面向對象軟件開發》的翻譯。