معرفی کتاب «Software architecture design patterns in Java» نوشتهٔ Partha Kuchana، منتشرشده توسط نشر Auerbach Publications در سال 2004. این کتاب در فرمت pdf، زبان انگلیسی ارائه شده است. «Software architecture design patterns in Java» در دستهٔ بدون دستهبندی قرار دارد.
Software engineering and computer science students need a resource that explains how to apply design patterns at the enterprise level, allowing them to design and implement systems of high stability and quality. Software Architecture Design Patterns in Java is a detailed explanation of how to apply design patterns and develop software architectures. It provides in-depth examples in Java, and guides students by detailing when, why, and how to use specific patterns. This textbook presents 42 design patterns, including 23 GoF patterns. Categories include: Basic, Creational, Collectional, Structural, Behavioral, and Concurrency, with multiple examples for each. The discussion of each pattern includes an example implemented in Java. The source code for all examples is found on a companion Web site. The author explains the content so that it is easy to understand, and each pattern discussion includes Practice Questions to aid instructors. The textbook concludes with a case study that pulls several patterns together to demonstrate how patterns are not applied in isolation, but collaborate within domains to solve complicated problems. Team DDU......Page 1 DEDICATION......Page 6 FOREWORD......Page 16 ABOUT THE AUTHOR......Page 18 ACKNOWLEDGMENTS......Page 19 Table of Contents......Page 7 SECTION I. AN INTRODUCTION TO DESIGN PATTERNS......Page 21 ARCHITECTURAL TO SOFTWARE DESIGN PATTERNS......Page 22 MORE ABOUT DESIGN PATTERNS......Page 23 Source Code Disclaimer......Page 25 SECTION II. UNIFIED MODELING LANGUAGE (UML)......Page 26 MODEL MANAGEMENT DIAGRAMS......Page 27 Class......Page 28 Inner Class......Page 29 Static......Page 30 Generalization......Page 31 Interface......Page 32 Dependency......Page 33 Navigability......Page 34 Aggregation......Page 35 Message......Page 36 Self Call......Page 37 SECTION III. BASIC PATTERNS......Page 38 DESCRIPTION......Page 40 EXAMPLE......Page 41 PRACTICE QUESTIONS......Page 47 DESCRIPTION......Page 48 EXAMPLE......Page 49 Abstract Parent Class versus Interface......Page 50 PRACTICE QUESTIONS......Page 52 EXAMPLE......Page 54 PRACTICE QUESTIONS......Page 55 DESCRIPTION......Page 56 EXAMPLE......Page 57 DIRECT REFERENCE VERSUS ACCESSOR METHODS......Page 58 PRACTICE QUESTIONS......Page 60 EXAMPLE......Page 63 PRACTICE QUESTIONS......Page 64 DESCRIPTION......Page 68 PRACTICE QUESTIONS......Page 73 EXAMPLE......Page 76 PRACTICE QUESTIONS......Page 77 SECTION IV. CREATIONAL PATTERNS......Page 78 DESCRIPTION......Page 79 EXAMPLE......Page 81 PRACTICE QUESTIONS......Page 85 EXAMPLE......Page 87 Static Public Interface to Access an Instance......Page 89 PRACTICE QUESTIONS......Page 91 DESCRIPTION......Page 92 ABSTRACT FACTORY VERSUS FACTORY METHOD......Page 93 EXAMPLE I......Page 94 EXAMPLE II......Page 102 Logical Flow When the Application Is Run......Page 106 PRACTICE QUESTIONS......Page 107 DESCRIPTION......Page 108 SHALLOW COPY VERSUS DEEP COPY......Page 109 Shallow Copy Example......Page 110 Deep Copy Example......Page 112 EXAMPLE I......Page 115 Class......Page 116 EXAMPLE II......Page 119 Class......Page 121 Create a Prototype Factory Class......Page 122 PRACTICE QUESTIONS......Page 124 DESCRIPTION......Page 126 A Side Note .........Page 129 Back to the Example Application .........Page 134 EXAMPLE II......Page 137 EXAMPLE III......Page 144 PRACTICE QUESTIONS......Page 147 SECTION V. COLLECTIONAL PATTERNS......Page 148 DESIGN APPROACH I......Page 149 DirComponent......Page 150 DESIGN APPROACH II......Page 151 PRACTICE QUESTIONS......Page 156 ITERATORS IN JAVA......Page 158 INTERNAL VERSUS EXTERNAL ITERATORS......Page 159 CLIENT/CONTAINER INTERACTION......Page 160 EXAMPLE: EXTERNAL FILTERED ITERATOR......Page 164 PRACTICE QUESTIONS......Page 170 DESCRIPTION......Page 172 DESIGN HIGHLIGHTS......Page 173 EXAMPLE......Page 176 DESIGN APPROACH I......Page 177 DESIGN APPROACH II......Page 181 PRACTICE QUESTIONS......Page 185 Design Idea 1......Page 189 ADDING OBJECTS OF A NEW TYPE TO THE COLLECTION......Page 190 DESIGN APPROACH I......Page 191 DESIGN APPROACH III (COMPOSITE PATTERN)......Page 192 DESIGN APPROACH IV (THE VISITOR PATTERN)......Page 193 Application Flow......Page 194 PRACTICE QUESTIONS......Page 197 SECTION VI. STRUCTURAL PATTERNS......Page 202 EXAMPLE......Page 204 HTMLLogger......Page 207 EncryptLogger......Page 208 ADDING A NEW MESSAGE LOGGER......Page 209 ADDING A NEW DECORATOR......Page 210 PRACTICE QUESTIONS......Page 212 DESCRIPTION......Page 213 EXAMPLE......Page 214 ADDRESS ADAPTER AS AN OBJECT ADAPTER......Page 219 PRACTICE QUESTIONS......Page 225 DESCRIPTION......Page 227 EXAMPLE......Page 228 PRACTICE QUESTIONS......Page 235 DESCRIPTION......Page 237 EXAMPLE......Page 239 IMPORTANT NOTES......Page 244 PRACTICE QUESTIONS......Page 245 DESCRIPTION......Page 251 Proxy versus Decorator......Page 252 Proxy versus Façade......Page 253 RMI Components......Page 254 RMI Communication Mechanism......Page 255 EXAMPLE......Page 256 Compilation and Deployment Notes......Page 264 PRACTICE QUESTIONS......Page 267 DESCRIPTION......Page 268 EXAMPLE......Page 270 Abstraction Implementation Design......Page 271 Design Highlights of the Abstraction Interface Classes......Page 273 PRACTICE QUESTIONS......Page 277 Disadvantage......Page 279 EXAMPLE......Page 280 PRACTICE QUESTIONS......Page 283 EXAMPLE......Page 285 PRACTICE QUESTIONS......Page 288 DESCRIPTION......Page 289 Design Approach III (Final Variables)......Page 290 PRACTICE QUESTIONS......Page 292 When an Object Goes Out of Scope, It Is Believed to Be Garbage Collected Immediately......Page 295 EXAMPLE......Page 296 Exception Scenario 2......Page 297 PRACTICE QUESTIONS......Page 300 DESCRIPTION......Page 301 EXAMPLE......Page 302 PRACTICE QUESTIONS......Page 305 SECTION VII. BEHAVIORAL PATTERNS......Page 307 DESCRIPTION......Page 310 EXAMPLE I......Page 313 Application Flow......Page 319 PRACTICE QUESTIONS......Page 320 CHAPTER 31. MEDIATOR......Page 326 MEDIATOR VERSUS FAÇADE......Page 327 EXAMPLE I......Page 328 User Interface Objects: Mediator Interaction......Page 330 EXAMPLE II......Page 333 PRACTICE QUESTIONS......Page 337 EXAMPLE......Page 338 ID......Page 339 DCClient......Page 342 MementoHandler......Page 343 PRACTICE QUESTIONS......Page 345 DESCRIPTION......Page 347 ADDING NEW OBSERVERS......Page 348 EXAMPLE......Page 349 Subject–Observer Association......Page 353 Logical Flow......Page 355 PRACTICE QUESTIONS......Page 357 DESCRIPTION......Page 359 EXAMPLE......Page 360 Infix-to-Postfix Conversion (Listing 34.8)......Page 364 Construction of the Tree Structure (Listing 34.9)......Page 367 Infix Expression......Page 369 Conversion Algorithm......Page 370 Binary Tree Traversal Techniques......Page 371 Postorder (Left-Right-Node)......Page 372 PRACTICE QUESTIONS......Page 373 STATEFUL OBJECT: AN EXAMPLE......Page 374 EXAMPLE......Page 376 PRACTICE QUESTIONS......Page 388 STRATEGIES VERSUS OTHER ALTERNATIVES......Page 390 SimpleEncryption......Page 391 CodeBookCypher......Page 393 PRACTICE QUESTIONS......Page 400 DESCRIPTION......Page 402 EXAMPLE......Page 403 PRACTICE QUESTIONS......Page 406 Abstract Class......Page 408 EXAMPLE......Page 409 Mod 10 Check Digit Algorithm......Page 414 PRACTICE QUESTIONS......Page 418 EXAMPLE......Page 419 PRACTICE QUESTIONS......Page 423 DESCRIPTION......Page 425 EXAMPLE......Page 428 PRACTICE QUESTIONS......Page 432 SECTION VIII. CONCURRENCY PATTERNS......Page 434 EXAMPLE......Page 435 Approach I (Critical Section)......Page 436 Approach II (Static Early Initialization)......Page 437 PRACTICE QUESTIONS......Page 438 DESCRIPTION......Page 439 EXAMPLE......Page 441 PRACTICE QUESTIONS......Page 444 DESCRIPTION......Page 445 EXAMPLE......Page 446 Use of wait() and notify() in the ParkingLot Class Design......Page 448 PRACTICE QUESTIONS......Page 449 DESCRIPTION......Page 450 Lock Release......Page 451 EXAMPLE......Page 454 PRACTICE QUESTIONS......Page 456 SECTION IX. CASE STUDY......Page 457 KPS HOSTING SOLUTIONS: A BRIEF OVERVIEW......Page 458 Functional......Page 459 BUSINESS OBJECTS AND THEIR ASSOCIATION......Page 460 Enterprise Service Level......Page 461 Generic Interface Contract......Page 463 Sample Interface Contract......Page 464 Task Level......Page 465 Sample Task-Handler Mapping......Page 466 Enterprise Services Design......Page 467 Address Validation......Page 468 Customer Management......Page 469 CONCLUSION......Page 471 SECTION X. APPENDICES......Page 472 APPENDIX A. LIST OF DESIGN PATTERNS......Page 473 WEB REFERENCES......Page 475 hT enis ti uerahibilatitnoo rpurgdani gfor iefnroec doccneretm meebsru isgnb noed dtsee llptasei snae ffceitev ,ocvnneeitna dne oconim cemhtdoo fmirpvoni gtsurtcrulap reofmrnaec .oHewev,rd sidaavtngasei hnrene tnit ehu eso ftsee lahevs itumalet deresrahci tn oht eopssbiliti yfou isgnf bierr iefnroec dopylem rF(PR )ametirla snii stp alec ,rpvodini g aon-nocrrsovi,em ro eevsrtali etsergnhtneni gystsme.Tih sobkop erestn s aedatlides utydo fht elfxerulas rtnetgehingno ferniofcrdea dnp ertserssdec norcte eembmre ssuni gifrb eerniofcrdep lomyrec moopisetp alet.sI tsib sadet o aalgr exeettno nametirlad velepodeo rrpvodideb yht eocsnroitmuw ihhcs utiddet eht cenhlogo yfop aletb noidgnt opurgda etsurtcrulau instu isgnc raob nifrb/eopylem rocpmsoti eametirla.sT ehr seaecr hna drtai letts seweru dnreatek nsap ra tfot ehR bosu trpjoce,to eno fesevar levtnrusei nht eKUG voremnne't sTD-IiLknS rtcuutar loCpmsotiseP orrgmaem.Tehb oo kah sebned segien dof rrpcaitisgns rtcuutar lna diciv lneigenre seskeni gotu dnretsna dht erpniiclpsea dnd segi nethconolygo flpta eobdnni,ga dnf rof nilay ae rnuedgrarudtasea dnp sogtarudta eneigenre stsduiygnt ehp ircnpiel sfoh giwhyaa dnb irgd eneigenreni gna dtsurtcrulae gnnieeirgn.
software Engineering And Computer Science Students Need A Resource That Explains How To Apply Design Patterns At The Enterprise Level, Allowing Them To Design And Implement Systems Of High Stability And Quality.
software Architecture Design Patterns In Java Is A Detailed Explanation Of How To Apply Design Patterns And Develop Software Architectures. It Provides In-depth Examples In Java, And Guides Students By Detailing When, Why, And How To Use Specific Patterns.
this Textbook Presents 42 Design Patterns, Including 23 Gof Patterns. Categories Include: Basic, Creational, Collectional, Structural, Behavioral, And Concurrency, With Multiple Examples For Each. The Discussion Of Each Pattern Includes An Example Implemented In Java. The Source Code For All Examples Is Found On A Companion Web Site.
the Author Explains The Content So That It Is Easy To Understand, And Each Pattern Discussion Includes Practice Questions To Aid Instructors. The Textbook Concludes With A Case Study That Pulls Several Patterns Together To Demonstrate How Patterns Are Not Applied In Isolation, But Collaborate Within Domains To Solve Complicated Problems.
Partha, an enterprise systems architect, collects seven basic software design patterns, five creational patterns, four collectional patterns, 11 structural patterns, 11 behavioral patterns, and four concurrency patterns that have been applied successfully in multiple environments to solve a software application problem recurring under a specific set of conditions. The discussion of each pattern is followed by an example implemented in Java, UML diagrams, and practice questions. Distributed by CRC Press. Annotation : 2004 Book News, Inc., Portland, OR (booknews.com) This book presents a detailed study of the flexural strengthening of reinforced and prestressed concrete members using fibre reinforced polymer composite plates. The authors also discuss plate bonding onto other engineering materials such as steel and cast iron. The book has been designed for practising civil and structural engineers seeking to understand the principles and design technology of plate bonding, and for final year undergraduates and postgraduate engineers studying the principles of highway and bridge engineering and structural engineering The authors contributing to this volume have been immersed in the development of advanced composite materials for strengthening structures for a number of years. During the late 1970s, an architect named Christopher Alexander carried out the first known work in the area of patterns.