[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"detail-sidebar-cat-1-en-105":3,"doc-seo-277692-105":53,"doc-detail-277692-en":127},{"code":4,"msg":5,"data":6},0,"success",[7,14,19,24,29,34,39,44,49],{"id":8,"doc_module":9,"doc_module_name":10,"category_name":11,"show_sort_weight":12,"slug":13},11,1,"Template","Presentations",90,"presentations",{"id":15,"doc_module":9,"doc_module_name":10,"category_name":16,"show_sort_weight":17,"slug":18},12,"Resumes",80,"resumes",{"id":20,"doc_module":9,"doc_module_name":10,"category_name":21,"show_sort_weight":22,"slug":23},14,"Invoices",70,"invoices",{"id":25,"doc_module":9,"doc_module_name":10,"category_name":26,"show_sort_weight":27,"slug":28},15,"Posters",60,"posters",{"id":30,"doc_module":9,"doc_module_name":10,"category_name":31,"show_sort_weight":32,"slug":33},16,"Social Media",50,"social-media",{"id":35,"doc_module":9,"doc_module_name":10,"category_name":36,"show_sort_weight":37,"slug":38},17,"Forms",40,"forms",{"id":40,"doc_module":9,"doc_module_name":10,"category_name":41,"show_sort_weight":42,"slug":43},18,"Letters",30,"letters",{"id":45,"doc_module":9,"doc_module_name":10,"category_name":46,"show_sort_weight":47,"slug":48},21,"Paper Templates",5,"papers-templates",{"id":50,"doc_module":9,"doc_module_name":10,"category_name":51,"show_sort_weight":4,"slug":52},158,"General","general-158",{"code":4,"msg":54,"data":55},"ok",{"site_id":56,"language":57,"slug":58,"title":59,"keywords":60,"description":61,"schema_data":62,"social_meta":120,"head_meta":122,"extra_data":124,"updated_unix":126},105,"en","designing-with-objects-object-oriented-design-patterns-explained-with-stories-from-harry-potter","Designing with Objects - Object-Oriented Design Patterns Explained with Stories from Harry Potter","","A practical guide to object-oriented design patterns that explains each core pattern through narratives inspired by Harry Potter. The book links fundamental OO concepts—such as factories, builders, and prototypes—to realistic software applications, using structured terminology and UML notation to clarify relationships, attributes, and operations. It progresses from learning why design patterns matter and how the explanations are organized, then applies each pattern with story-based demonstrations and code-focused play.",{"@graph":63,"@context":119},[64,80,102],{"@type":65,"itemListElement":66},"BreadcrumbList",[67,71,74,77],{"item":68,"name":69,"@type":70,"position":9},"https://docshare.wps.com","Home","ListItem",{"item":72,"name":10,"@type":70,"position":73},"https://docshare.wps.com/template/",2,{"item":75,"name":11,"@type":70,"position":76},"https://docshare.wps.com/template/presentations/",3,{"item":78,"name":59,"@type":70,"position":79},"https://docshare.wps.com/template/designing-with-objects-object-oriented-design-patterns-explained-with-stories-from-harry-potter/277692/",4,{"url":78,"name":59,"@type":81,"image":82,"author":87,"headline":59,"publisher":90,"fileFormat":93,"inLanguage":57,"description":61,"dateModified":94,"datePublished":95,"encodingFormat":93,"isAccessibleForFree":96,"interactionStatistic":97},"DigitalDocument",{"url":83,"@type":84,"width":85,"height":86},"https://docshare.wps.com/thumbnails/designing-with-objects-object-oriented-design-patterns-explained-with-stories-from-harry-potter/277692.png","ImageObject",442,249,{"name":88,"@type":89},"Rhys","Person",{"url":68,"name":91,"@type":92},"DocShare","Organization","application/pdf","2026-10-21","2026-09-15",true,{"@type":98,"interactionType":99,"userInteractionCount":101},"InteractionCounter",{"@type":100},"ViewAction",9,{"@type":103,"mainEntity":104},"FAQPage",[105,111,115],{"name":106,"@type":107,"acceptedAnswer":108},"What is the purpose of learning design patterns in this book?","Question",{"text":109,"@type":110},"The book explains why learning design patterns matters and why readers should approach them with help from Harry Potter. It also sets expectations for how pattern explanations are organized.","Answer",{"name":112,"@type":107,"acceptedAnswer":113},"How does the book teach object-oriented design patterns?",{"text":114,"@type":110},"Each pattern is introduced with OO design concepts and then illustrated using story-based examples inspired by Harry Potter. The text also ties explanations to practical real-world applications.",{"name":116,"@type":107,"acceptedAnswer":117},"What notations and concepts are used to describe object-oriented structures?",{"text":118,"@type":110},"The book covers the terminology of object-oriented programming and introduces UML notation used in class diagrams. It addresses relationships between classes, including association, aggregation, and composition, plus representing attributes and operations.","https://schema.org",{"og:url":78,"og:type":121,"og:title":59,"og:site_name":91,"og:description":61},"article",{"robots":123,"canonical":78},"index,follow",{"doc_id":125,"site_id":56},277692,1791718523,{"code":4,"msg":5,"data":128},{"doc_id":125,"user_id":129,"nickname":88,"user_avatar":130,"doc_module":9,"category_id":8,"category_name":11,"doc_title":59,"doc_description":61,"doc_content":131,"file_id":132,"file_url":133,"file_type":134,"file_size":135,"view_count":101,"is_deleted":4,"is_public":9,"is_downloadable":9,"audit_status":9,"page_count":42,"language":136,"language_code":57,"site_id":56,"html_lang":57,"table_of_contents":137,"faqs":138,"seo_title":139,"seo_description":61,"update_tm":140,"read_time":8},687207024643,"https://ap-avatar.wpscdn.com/davatar_3d24733baf745e90a7e4bdd5f77d97b2","DESIGNING WITH OBJECTS  \nDESIGNING WITH OBJECTS  \nObject-Oriented Design Patterns  \nExplained with Stories from Harry Potter  \nAVINASH C. KAK  \nPurdue University  \nCover Image: Courtesy from the author  \nCopyright 􀀂c 2015 by John Wiley & Sons, Inc. All rights reserved  \nPublished by John Wiley & Sons, Inc., Hoboken, New Jersey Published simultaneously in Canada  \nNo part of this publication may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, electronic, mechanical, photocopying, recording, scanning, or otherwise, except as permitted under Section 107 or 108 of the 1976 United States Copyright Act, without either the prior written permission of the Publisher, or authorization through payment of the appropriate per-copy fee to the Copyright Clearance Center, Inc., 222 Rosewood Drive, Danvers, MA 01923,(978) 750-8400, fax (978) 750-4470, or on the web at [www.copyright.com. Requests](www.copyright.com. Requests) to the Publisher for permission should be addressed to the Permissions Department, John Wiley & Sons, Inc., 111 River Street, Hoboken, NJ 07030,(201) 748-6011, fax (201)  \n748-6008, or online at [http://www.wiley.com/go/permission](http://www.wiley.com/go/permission).  \nLimit of Liability/Disclaimer of Warranty: While the publisher and author have used their best efforts in preparing this book, they make no representations or warranties with respect to the accuracy or completeness of the contents of this book and speciﬁcally disclaim any implied warranties of merchantability or ﬁtness for a particular purpose. No warranty may be created or extended by sales representatives or written sales materials. The advice and strategies contained herein may not be suitable for your situation. You should consult with a professional where appropriate. Neither the publisher nor author shall be liable for any loss of proﬁt or any other commercial damages, including but not limited to special, incidental, consequential, or other damages.  \nFor general information on our other products and services or for technical support, please contact our Customer Care Department within the United States at (800) 762-2974, outside the United States at (317) 572-3993 or fax (317) 572-4002 .  \nWiley also publishes its books in a variety of electronic formats. Some content that appears in print may not be available in electronic formats. For more information about Wiley products, [visit our web site at www.wiley.com](visit our web site at www.wiley.com).  \nLibrary of Congress Cataloging-in-Publication Data:  \nKak, Avinash C.  \nDesigning with objects : object-oriented design patterns explained with stories from Harry Potter / Avinash C. Kak.  \npages cm Includes index.  \nISBN 978-1-118-58120-9 (paperback)  \n1. Object-oriented programming (Computer science) 2 . Rowling, J. K.–Themes, motives.  \n3. Rowling, J. K.–Characters. 4. Potter, Harry (Fictitious character) I. Title.  \nQA76.64.K3548 2014 005.1􀀃17–dc23  \n2014007132  \nPrinted in the United States of America  \n10 9 8 7 6 5 4 3 2 1  \nCONTENTS  \nPREFACE xiv  \nACKNOWLEDGMENTS xix  \n1 Why Learn Design Patterns and Why Do So with Help from Harry Potter? 1  \n1.1 The OO Design Patterns “Bible” by GoF 2  \n1.2 But What Has Harry Potter Got to Do with OO Design Patterns? 4  \n1.3 Is Familiarity with Harry Potter a Requirement for Understanding This Book? 6  \n1.4 How the Pattern Explanations are Organized 7  \n1.5 The Terminology of Object-Oriented Programming 7  \n1.6 The UML Notation Used in the Class Diagrams 12  \n1.6.1 Association as a Relationship Between Classes 14  \n1.6.2 Aggregation and Composition as Relationships  \nBetween Classes 15  \n1.6.3 Representing Attributes 16  \n1.6.4 Representing Operations 17  \nI CREATIONAL PATTERNS 19  \n2 Abstract Factory 21  \n2.1 The Concept of a Factory in Software 21  \n2.2 Intent and Applicability 22  \n2.3 Introduction to the Abstract Factory Pattern 22  \n2.4 The Abstract Factory Pattern in Real-World Applications 23  \n2.5 Harry Potter S","cbCaiiUTTnHg3jLC","https://ap.wps.com/l/cbCaiiUTTnHg3jLC","pdf",1671115,"English","# PREFACE\n# ACKNOWLEDGMENTS\n# 1 Why Learn Design Patterns and Why Do So with Help from Harry Potter?\n## The OO Design Patterns “Bible” by GoF\n## How the Pattern Explanations are Organized\n## The UML Notation Used in the Class Diagrams\n# I CREATIONAL PATTERNS\n## 2 Abstract Factory\n## 3 Builder\n## 4 Factory Method\n## 5 Prototype","[{\"question\":\"What is the purpose of learning design patterns in this book?\",\"answer\":\"The book explains why learning design patterns matters and why readers should approach them with help from Harry Potter. It also sets expectations for how pattern explanations are organized.\"},{\"question\":\"How does the book teach object-oriented design patterns?\",\"answer\":\"Each pattern is introduced with OO design concepts and then illustrated using story-based examples inspired by Harry Potter. The text also ties explanations to practical real-world applications.\"},{\"question\":\"What notations and concepts are used to describe object-oriented structures?\",\"answer\":\"The book covers the terminology of object-oriented programming and introduces UML notation used in class diagrams. It addresses relationships between classes, including association, aggregation, and composition, plus representing attributes and operations.\"}]","Designing with Objects - Object-Oriented Design Patterns Explained with Stories from Harry Potter | PDF",1789503135]