Object-Oriented Software Development in Java - Xiaoping Jia

Object-Oriented Software Development in Java

Principles, Patterns, and Frameworks

(Autor)

Buch | Hardcover
507 Seiten
1999
Pearson (Verlag)
978-0-201-35084-5 (ISBN)
49,10 inkl. MwSt
zur Neuauflage
  • Titel erscheint in neuer Auflage
  • Artikel merken
Zu diesem Artikel existiert eine Nachauflage
Provides broad coverage of object-oriented technology. Focusing on design and programming, the book instills the object-oriented way of thinking via the use of design patterns and frameworks, study of the design of the Java Class Libraries, and illustration of incremental software development.
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.

Xiaoping Jia is an Associate Professor of Software Engineering and the Director of the Division of Software Engineering, School of Computer Science, Telecommunications, and Information Systems at De Paul University. His primary research interests are applications of formal methods and object-oriented development methodologies. He has authored several software development tools and is a consultant in GUI design and web-based applications using Java. He is the founder of Aesthetic Software, a company that focuses on developing technologies for web-based application using Java and XML. Professor Jia received his Ph.D. in computer science from Northwestern University. 020135084XAB04062001

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

Erscheint lt. Verlag 9.12.1999
Sprache englisch
Maße 195 x 241 mm
Gewicht 977 g
Themenwelt Informatik Programmiersprachen / -werkzeuge Java
Informatik Software Entwicklung Objektorientierung
Mathematik / Informatik Informatik Web / Internet
ISBN-10 0-201-35084-X / 020135084X
ISBN-13 978-0-201-35084-5 / 9780201350845
Zustand Neuware
Haben Sie eine Frage zum Produkt?
Mehr entdecken
aus dem Bereich
mit über 150 Workouts in Java und Python

von Luigi Lo Iacono; Stephan Wiefling; Michael Schneider

Buch (2023)
Carl Hanser (Verlag)
29,99
Einführung, Ausbildung, Praxis

von Christian Ullenboom

Buch | Hardcover (2023)
Rheinwerk (Verlag)
49,90