๐”– Scriptorium
โœฆ   LIBER   โœฆ

๐Ÿ“

Object-Oriented Design and Patterns

โœ Scribed by Cay S. Horstmann


Year
2005
Tongue
English
Leaves
473
Edition
2
Category
Library

โฌ‡  Acquire This Volume

No coin nor oath required. For personal study only.

โœฆ Synopsis


An object-oriented design text that's student oriented too!Now updated to reflect the innovations of Java 5.0, Cay Horstmann's Object-Oriented Design & Patterns, 2nd Edition continues to offer a student-oriented guide to object-oriented design.Drawing from his extensive experience as a programmer and teacher, Horstmann helps you appreciate the value of object-oriented design principles, and gives you a context for applying these principles and techniques in your own designs. Throughout the text, outstanding pedagogy, carefully developed exercises and examples, and a strong emphasis on problem solving make object-oriented design principles accessible to readers with limited programming experience.Cay Horstmann's Object-Oriented Design & Patterns, 2nd Edition: Integrates the use of Java 5.0 constructs throughout, including generics and the java.util.concurrent library. Presents high-interest examples, including ones from the Java 5.0 library and user-interface programming. Uses concepts such as interfaces, inner classes, reflection, and multithreading to introduce advanced Java language concepts. Encourages you to master topics in object-oriented design, user-interface programming, and practical software development techniques. Illustrates design patterns and their application using the Swing user interface toolkit and the Java collections library. Introduces programming tools such as BlueJ, javadoc, and JUnit.* Provides a crash course in Java for readers who know C++.Other Wiley books by Cay HorstmannBig Java, Second Edition, 0-471-70615-9Java Concepts, Fourth Edition, 0-471-69704-4Big C++ (with Timothy Budd), 0-471-47063-5Computing Concepts with C++ Essentials, Third Edition, 0-471-16437-2

โœฆ Table of Contents


Preface......Page 4
Contents......Page 14
1: A Crash Course in Java......Page 21
1.1 "Hello, World!" in Java......Page 22
1.2 Documentation Comments......Page 26
1.3 Primitive Types......Page 29
1.5 Object References......Page 32
1.6 Parameter Passing......Page 34
1.7 Packages......Page 36
1.8 Basic Exception Handling......Page 38
1.9 Strings......Page 41
1.11 Array Lists and Linked Lists......Page 43
1.12 Arrays......Page 46
1.13 Static Fields and Methods......Page 48
1.14 Programming Style......Page 49
Exercises......Page 51
2: The Object-Oriented Design Process......Page 55
2.1 From Problem to Code......Page 56
2.2 The Object and Class Concepts......Page 59
2.3 Identifying Classes......Page 61
2.4 Identifying Responsibilities......Page 65
2.5 Relationships Between Classes......Page 66
2.6 Use Cases......Page 68
2.7 CRC Cards......Page 70
2.8 UML Class Diagrams......Page 73
2.9 Sequence Diagrams......Page 78
2.10 State Diagrams......Page 80
2.11 Using javadoc for Design Documentation......Page 81
2.12 Case Study: A Voice Mail System......Page 82
Exercises......Page 105
3: Guidelines for Class Design......Page 109
3.1 An Overview of the Date Classes in the Java Library......Page 110
3.2 Designing a Day Class......Page 114
3.3 Three Implementations of the Day Class......Page 118
3.4 The Importance of Encapsulation......Page 129
3.5 Analyzing the Quality of an Interface......Page 138
3.6 Programming by Contract......Page 142
3.7 Unit Testing......Page 151
Exercises......Page 153
4: Interface Types and Polymorphism......Page 157
4.1 The Icon Interface Type......Page 158
4.2 Polymorphism......Page 163
4.3 The Comparable Interface Type......Page 164
4.4 The Comparator Interface Type......Page 167
4.5 Anonymous Classes......Page 168
4.6 Frames and User Interface Components......Page 171
4.7 User Interface Actions......Page 173
4.8 Timers......Page 177
4.9 Drawing Shapes......Page 179
4.10 Designing an Interface Type......Page 184
Exercises......Page 190
5: Patterns and GUI Programming......Page 193
5.1 The Iterator as a Pattern......Page 194
5.2 The Pattern Concept......Page 196
5.3 The OBSERVER Pattern......Page 200
5.4 Layout Managers and the STRATEGY Pattern......Page 203
5.5 Components, Containers, and the COMPOSITE Pattern......Page 213
5.6 Scroll Bars and the DECORATOR Pattern......Page 215
5.7 How to Recognize Patterns......Page 218
5.8 Putting Patterns to Work......Page 220
Exercises......Page 232
6: Inheritance and Abstract Classes......Page 235
6.1 The Concept of Inheritance......Page 236
6.2 Graphics Programming with Inheritance......Page 243
6.3 Abstract Classes......Page 248
6.4 The TEMPLATE METHOD Pattern......Page 256
6.5 Protected Interfaces......Page 260
6.6 The Hierarchy of Swing Components......Page 263
6.7 The Hierarchy of Standard Geometric Shapes......Page 267
6.8 The Hierarchy of Exception Classes......Page 272
6.9 When Not to Use Inheritance......Page 274
Exercises......Page 278
7: The Java Object Model......Page 281
7.1 The Java Type System......Page 282
7.2 Type Inquiry......Page 288
7.3 The Object Class......Page 291
7.4 Shallow and Deep Copy......Page 300
7.5 Serialization......Page 305
7.6 Reflection......Page 307
7.7 Generic Types......Page 314
7.8 JavaBeans Components......Page 322
Exercises......Page 336
8: Frameworks......Page 339
8.1 Frameworks......Page 340
8.2 Applets as a Simple Framework......Page 341
8.3 The Collections Framework......Page 344
8.4 A Graph Editor Framework......Page 354
8.5 Enhancing the Graph Editor Framework......Page 373
Exercises......Page 377
9: Multithreading......Page 381
9.1 Thread Basics......Page 382
9.2 Thread Synchronization......Page 390
9.3 Animations......Page 407
Exercises......Page 414
10: More Design Patterns......Page 417
10.1 The ADAPTER Pattern......Page 418
10.2 Actions and the COMMAND Pattern......Page 421
10.3 The FACTORY METHOD Pattern......Page 426
10.4 The PROXY Pattern......Page 428
10.5 The SINGLETON Pattern......Page 433
10.6 The VISITOR Pattern......Page 435
10.7 Other Design Patterns......Page 442
Exercises......Page 444
Glossary......Page 447
Index......Page 457


๐Ÿ“œ SIMILAR VOLUMES


Object-Oriented Design and Patterns
โœ Cay S. Horstmann ๐Ÿ“‚ Library ๐Ÿ“… 2005 ๐Ÿ› Wiley ๐ŸŒ English

Reviewer: Dr. Alexander Yakhnis, [email protected] I like the book and have taught Spring 2004 Object-oriented Development (CSC 429 ) course at SUNY College at Brockport, New York. I have taught the material from Chapter I through 6. I have also used the material from Ch. 8 Object-Oriented Fra

Object-Oriented Design and Patterns
โœ Cay S. Horstmann ๐Ÿ“‚ Library ๐Ÿ“… 2005 ๐Ÿ› Wiley ๐ŸŒ English

An object-oriented design text that's student oriented too!<br><br>Now updated to reflect the innovations of Java 5.0, Cay Horstmann's Object-Oriented Design & Patterns, 2nd Edition continues to offer a student-oriented guide to object-oriented design.<br><br>Drawing from his extensive experience as

Design patterns.Elements of reusable obj
โœ Erich Gamma, Richard Helm, Ralph Johnson, John M. Vlissides ๐Ÿ“‚ Library ๐Ÿ“… 1994 ๐Ÿ› Addison-Wesley Professional ๐ŸŒ English

Capturing a wealth of experience about the design of object-oriented software, four top-notch designers present a catalog of simple and succinct solutions to commonly occurring design problems. Previously undocumented, these 23 patterns allow designers to create more flexible, elegant, and ultimatel

Design Patterns: Elements of Reusable Ob
โœ Erich Gamma, Richard Helm, Ralph Johnson, John M. Vlissides ๐Ÿ“‚ Library ๐Ÿ“… 1994 ๐Ÿ› Addison-Wesley Professional ๐ŸŒ English

* Capturing a wealth of experience about the design of object-oriented software, four top-notch designers present a catalog of simple and succinct solutions to commonly occurring design problems. Previously undocumented, these 23 patterns allow designers to create more flexible, elegant, and ultimat