object-oriented Design Heuristics
Rating: reading: 15860 [American]arthur j.riel Translator: Bao Zhiyun Publishing House: People's post and Telecommunications publishing house Category: Software Engineering/SW Technology > Object-Oriented Sales Chart edition: July 2004 1th Edition, 1th Printing ISBN ISBN: 7-115-12336-5 Publication date: July 2004 Folio: 787*1092 1/16 words: 527,000 words page: 374 Price: 42.0 $ Price: $29.4 Save 12.6 yuan (30%) VIP member Price: $29.4 Save $12.6 (30%) Diamond VIP Member Price: $29.4 Save $12.6 (30%) Best collocation According to the order statistics, the reader of the purchase of this book generally with the UML style (buy a book to give "UML practical details", first buy first, gift up to the end) (Shaofeng Wang), special recommendation to you: Total Price: 60.0 yuan together purchase price: 43.1 yuan (save 16.9 yuan)
--------------------------------------------------------------------------------readers who bought the book also purchased:
Explore requirements-pre-design quality (Zang Emily Wang Shei/translate) Agile Software Development: principles, patterns and practices (Aaron/translation) Enterprise Application architecture model (Wang Huimin Zhou Bin) Uml:java Programmer's Guide (bilingual edition) (Huangxiaochun) UML and Schema Application (original book 2nd edition) (Fangliang)
--------------------------------------------------------------------------------Description: This book provides insight into improving object-oriented design. A total of 11 chapters, summed up more than 60 object-oriented design (OOD) guiding principles. These experience principles cover the important topics from classes to objects, mainly emphasizing their relationships, including relevance, use, inclusion, single inheritance, and multiple inheritance, to object-oriented physical design. This book will help you understand the interplay between experiential principles and the popular concept of "design patterns". You can use the experience principle to discover the problems in one aspect of the design, while the design pattern provides the solution.
This book is valuable to all levels of developers. Beginners can use this book to go to the fast track of object-oriented programming; The veteran who wants to improve their level of object-oriented development will benefit from this book's insightful analysis. "Ood" provides a way to make you a better software developer.
Perhaps many readers have read or heard of effective C + +, the book. "Ood" was evaluated by readers as "effective C + + in the field of object-oriented design"-just as effective C + + can help you move toward the C + + expert level, the Ood can help you enter the temple of Ood. "Ood" does not describe the RUP and other methodological frameworks, or the UML or C + + language, which is a rare book on the market for purely design experience. In fact, the title of the original book heuristics a word is the meaning of experience, but I think "object-oriented design experience," such a title is more boring, changed to the name of the present. Perhaps many readers have seen or heard of the book "Design Patterns" and are familiar with or recite the 23 classic patterns that have been summed up in the book. But I wonder if you know which mode you should use on what occasion, and why should you use that mode? Remember that the pattern is easy, it is difficult to learn, because in practice the scene is changeable, it is difficult to determine that a certain pattern should be adopted. And that is one of the problems that this book solves, and the 60-odd principles of experience are the things that capture the unchanging nature behind ever-changing appearances.
--Bao Zhiyun
Preface to the book RELATED links
English book information (Amazon)
Chinese book Information
Related Books Link Market price: ¥ 42.0 yuan Dearbook Price: ¥ $31.5 Content Introduction Directory
This book provides insight into the improvement of object-oriented design. A total of 11 chapters, summed up more than 60 object-oriented design (OOD) guiding principles. These experience principles cover the important topics from classes to objects, mainly emphasizing their relationships, including relevance, use, inclusion, single inheritance, and multiple inheritance, to object-oriented physical design. This book will help you understand the interplay between experiential principles and the popular concept of "design patterns". You can use the experience principle to discover the problems in one aspect of the design, while the design pattern provides the solution.
This book is valuable to all levels of developers. Beginners can use this book to go to the fast track of object-oriented programming; The veteran who wants to improve their level of object-oriented development will benefit from this book's insightful analysis. "Ood" provides a way to make you a better software developer.
Preface to the 1th chapter of object-oriented programming the 2nd Chapter Object-oriented model of building materials 3rd chapter on the relationship between action-oriented and object-oriented 4th class and object 5th Chapter Succession Relationship 6th Chapter Multiple Inheritance 7th Chapter Association relationship 8th chapter related to specific class ... View Details >> Translator profile Open Bao Zhiyun (astragalus): Computer Science major youth students, has been "Astragalus" as the pseudonym in the "Programmer" "procedural Spring" and other publications published a number of technical articles, and was awarded the "Programmer" magazine 2001 top ten authors; 2002 and teammates. Together to represent the school to participate in the ACM/ICPC International University Student Program Design Competition Asia Pacific Competition and achieved success. Directory
The 1th chapter of object-oriented programming 1.1 revolutionaries, reformers and object-oriented paradigm 1.2 Frederick Brooks View: Non-fundamental complexity and fundamental complexity 1.3 Waterfall Model 1.4 Iteration Model 1.5 construction Prototypes: 1.6 software reusability in the same language and in different languages 1.7 Glossary of Excellent designers ' classes
2nd Class and object: Object-oriented paradigm of building materials class 2.1 and object guidance 2.2 messages and methods 2.3 class coupling and cohesion 2.4 Dynamic semantics 2.5 abstract class 2.6 Role and Class Glossary experience principles Summary
3rd application layout: Different layouts for action-oriented and object-oriented 3.1 applications 3.3 questions: All-round (behavioral) 3.4 system-poor distribution of function 3.5 question: All-in-one (data performance) 3.6 Problem: Overrun Role of Class 3.7 proxy class 3.8 Purpose study: Summary of empirical principles for individual entities and control class glossary
4th. Class and Object Relationship 4.1 class and object relationship guidance 4.2 use relationship 4.3 to implement 6 different ways to use relationships 4.4 use relationship experience principle 4.5 to precisely adjust two classes of collaboration between 4.6 contains the relationship 4.7 class between the semantic constraints 4.8 attributes and The contained class 4.9 contains a more empirical principle of the relationship 4.10 uses and contains a relationship 4.11 value contains a summary with reference to the experience principle of the inclusion glossary
5th 5.1 Inheritance Relationship Guide 5.2 Override base class method 5.3 in a derived class use the Protection Area 5.4 inheritance hierarchy width and depth 5.5 C + + division: Private, protected, and public inheritance 5.6 a real-world example of specificity 5.7 experience original Then: Seek the balance of design complexity and flexibility 5.8 a real-world generalization example 5.9 polymorphism mechanism 5.10 Inheritance as an issue of reuse mechanism 5.11 Scheme for implementing interrupt-driven architecture with inheritance 5.12 The inheritance hierarchy is confused with property 5.13: The inherited requirements and object dynamics Semantics 5.14 using inheritance to hide the implementation of a class 5.15 mistake an object as inheriting class 5.16 to create a class 5.17 in a derived class when you want to make a generalization of the object as required to mask the base class method at run time 5.18 the implementation of the optional part of the object is 5.19 there is no problem with the optimal solution 5.20 multiplexing components and Summary of experience principles for the glossary of reusable Frames
The 6th Chapter multiple inheritance 6.1 Multiple inheritance Guidance 6.2 multiple inheritance common misuse 6.3 Multiple inheritance of the proper use 6.4 non-fundamental complexity in multiple inheritance languages 6.5 uses multiple inheritance for framework 6.6 with multi-inheritance: Design mixin 6.7 dag multiple Relay 6.8 Optional included bad implementations result of improper DAG multiple Inheritance Glossary Experience principle Summary
7th Relationship 7.1 Association Guidance 7.2 Implementing correlation with reference attributes 7.3 Implementing association with third-party class 7.4 A summary of empirical principles on the trade-offs between inclusive and associative relationships
8th. Data and behavior related to a particular class 8.1 related and object-related data and behavior guidance 8.2 uses a meta-class to represent class-related data and behavior 8.3 to implement class-related and object-related data and behavior using language-level keywords 8.4 in C + + meta-class 8.5 useful abstract classes, but not base-class terminology Table Experience Principle Summary
9th. Object-Oriented physical design 9.1 The role of object-oriented logical design and physical design 9.2 creating object-oriented wrapper 9.3 persistence in object-oriented systems 9.4 memory management issues in object-oriented applications 9.5 minimum public interface for reusable components 9.6 secure shallow copy 9.7 Parallel object-oriented programming 9.8 a summary of the experience principle of object-oriented design glossary with non-object-oriented language
10th. The relationship between empirical principles and models 10.1 empirical principles and Model 10.2 Design transformation Model transitivity 10.3 Design Transformation mode reflexivity 10.4 Other design transformation mode 10.5 future research
11th chapter on the use of empirical principles in object-oriented design 11.1 ATM problem 11.2 selection Methodology 11.3 The first attempt to generate the ATM object Model 11.4 adds behavior to our object Model 11.5 Explicit case analysis of non-fundamental complexity 11.6 between different address objects Delivery message 11.7 transaction processing 11.8 back to the ATM field 11.9 other miscellaneous problems 11.10 Summary
Appendix A summary of Experience principles in Appendix B C + + memory leaks Appendix C C + + instance selection
"Ood"