Learning JavaScript Design Patterns: a JavaScript and React developer's guide
Do you want to write beautiful, structured, and maintainable JavaScript by applying modern design patterns to the language? Do you want clean, efficient, manageable code? Want to stay up-to-date with the latest best practices? If so, the updated second edition of Learning JavaScript Design Patterns...
Gespeichert in:
1. Verfasser: | |
---|---|
Format: | Elektronisch E-Book |
Sprache: | English |
Veröffentlicht: |
Beijing
O'Reilly
April 2023
|
Ausgabe: | Second edition |
Schlagworte: | |
Online-Zugang: | DE-1050 |
Zusammenfassung: | Do you want to write beautiful, structured, and maintainable JavaScript by applying modern design patterns to the language? Do you want clean, efficient, manageable code? Want to stay up-to-date with the latest best practices? If so, the updated second edition of Learning JavaScript Design Patterns is the ideal place to start. Author Addy Osmani shows you how to apply modern design patterns to JavaScript and React--including modules, mixins, observers, and mediators. You'll learn about performance and rendering patterns such as server-side rendering and Islands architecture. You'll also learn how architectural patterns like MVC, MVP, and MVVM are useful from the perspective of a modern web application developer. This book explores: Architectural patterns for structuring your components and apps More than 20 design patterns in JavaScript and React, applicable for developers at any level Different pattern categories including creational, structural, and behavioral Essential performance patterns including dynamic imports and code-splitting Rendering patterns such as server-side rendering, hydration, Islands architecture, and more Additionally, you'll explore modern JavaScript syntax like JavaScript modules, React patterns like Hooks, higher-order components (HOCs), and more, to stay ahead in the ever-evolving world of web development |
Beschreibung: | 1 Online-Ressource (xvi, 279 Seiten) |
ISBN: | 9781098139834 |
Internformat
MARC
LEADER | 00000nam a2200000 c 4500 | ||
---|---|---|---|
001 | BV049064931 | ||
003 | DE-604 | ||
007 | cr|uuu---uuuuu | ||
008 | 230725s2023 xx o|||| 00||| eng d | ||
020 | |a 9781098139834 |9 978-1-098-13983-4 | ||
035 | |a (OCoLC)1392137372 | ||
035 | |a (DE-599)BVBBV049064931 | ||
040 | |a DE-604 |b ger |e rda | ||
041 | 0 | |a eng | |
049 | |a DE-1050 | ||
084 | |a ST 250 |0 (DE-625)143626: |2 rvk | ||
100 | 1 | |a Osmani, Addy |e Verfasser |0 (DE-588)1026169062 |4 aut | |
245 | 1 | 0 | |a Learning JavaScript Design Patterns |b a JavaScript and React developer's guide |c Addy Osmani |
250 | |a Second edition | ||
264 | 1 | |a Beijing |b O'Reilly |c April 2023 | |
300 | |a 1 Online-Ressource (xvi, 279 Seiten) | ||
336 | |b txt |2 rdacontent | ||
337 | |b c |2 rdamedia | ||
338 | |b cr |2 rdacarrier | ||
505 | 8 | |a Cover -- Copyright -- Table of Contents -- Preface -- Structure of the Book -- Conventions Used in This Book -- Using Code Examples -- O'Reilly Online Learning -- How to Contact Us -- Acknowledgments -- Chapter 1. Introduction to Design Patterns -- History of Design Patterns -- What Is a Pattern? -- An Everyday Use Case for Design Patterns -- Summary -- Chapter 2. "Pattern"-ity Testing, Proto-Patterns, and the Rule of Three -- What Are Proto-Patterns? -- The "Pattern" Tests -- Rule of Three -- Summary -- Chapter 3. Structuring and Writing Patterns -- The Structure of a Design Pattern | |
505 | 8 | |a Well-Written Patterns -- Writing a Pattern -- Summary -- Chapter 4. Anti-Patterns -- What Are Anti-Patterns? -- Anti-Patterns in JavaScript -- Summary -- Chapter 5. Modern JavaScript Syntax and Features -- The Importance of Decoupling Applications -- Modules with Imports and Exports -- Module Objects -- Modules Loaded from Remote Sources -- Static Imports -- Dynamic Imports -- Import on Interaction -- Import on Visibility -- Modules for the Server -- Advantages of Using Modules -- Classes with Constructors, Getters, and Setters -- Classes in JavaScript Frameworks -- Summary -- Related Reading | |
505 | 8 | |a Chapter 6. Categories of Design Patterns -- Background -- Creational Design Patterns -- Structural Design Patterns -- Behavioral Design Patterns -- Design Pattern Classes -- Summary -- Chapter 7. JavaScript Design Patterns -- Creational Patterns -- The Constructor Pattern -- Object Creation -- Basic Constructors -- Constructors with Prototypes -- The Module Pattern -- Object Literals -- The Module Pattern -- Module Pattern Variations -- Modern Module Pattern with WeakMap -- Modules with Modern Libraries -- The Revealing Module Pattern -- Advantages -- Disadvantages -- The Singleton Pattern | |
505 | 8 | |a State Management in React -- The Prototype Pattern -- The Factory Pattern -- When to Use the Factory Pattern -- When Not to Use the Factory Pattern -- Abstract Factories -- Structural Patterns -- The Facade Pattern -- The Mixin Pattern -- Subclassing -- Mixins -- Advantages and Disadvantages -- The Decorator Pattern -- Pseudoclassical Decorators -- Interfaces -- Abstract Decorators -- Advantages and Disadvantages -- Flyweight -- Using Flyweights -- Flyweights and Sharing Data -- Implementing Classical Flyweights -- Converting Code to Use the Flyweight Pattern -- A Basic Factory | |
505 | 8 | |a Managing the Extrinsic States -- The Flyweight Pattern and the DOM -- Example: Centralized Event Handling -- Behavioral Patterns -- The Observer Pattern -- Differences Between the Observer and Publish/Subscribe Pattern -- Advantages -- Disadvantages -- Publish/Subscribe Implementations -- The Mediator Pattern -- A Simple Mediator -- Similarities and Differences -- Event Aggregator Use -- Mediator Use -- Event Aggregator (Pub/Sub) and Mediator Together -- Mediator/Middleware in Modern JavaScript -- Mediator Versus Facade -- The Command Pattern -- Summary -- Chapter 8. JavaScript MV* Patterns | |
520 | |a Do you want to write beautiful, structured, and maintainable JavaScript by applying modern design patterns to the language? Do you want clean, efficient, manageable code? Want to stay up-to-date with the latest best practices? If so, the updated second edition of Learning JavaScript Design Patterns is the ideal place to start. Author Addy Osmani shows you how to apply modern design patterns to JavaScript and React--including modules, mixins, observers, and mediators. You'll learn about performance and rendering patterns such as server-side rendering and Islands architecture. You'll also learn how architectural patterns like MVC, MVP, and MVVM are useful from the perspective of a modern web application developer. This book explores: Architectural patterns for structuring your components and apps More than 20 design patterns in JavaScript and React, applicable for developers at any level Different pattern categories including creational, structural, and behavioral Essential performance patterns including dynamic imports and code-splitting Rendering patterns such as server-side rendering, hydration, Islands architecture, and more Additionally, you'll explore modern JavaScript syntax like JavaScript modules, React patterns like Hooks, higher-order components (HOCs), and more, to stay ahead in the ever-evolving world of web development | ||
650 | 4 | |a JavaScript (Computer program language) | |
650 | 4 | |a Software patterns | |
650 | 4 | |a Computer software / Reusability | |
650 | 4 | |a Scripting languages (Computer science) | |
650 | 7 | |a Computer software / Reusability |2 fast | |
650 | 7 | |a JavaScript (Computer program language) |2 fast | |
650 | 7 | |a Scripting languages (Computer science) |2 fast | |
650 | 7 | |a Software patterns |2 fast | |
650 | 0 | 7 | |a JavaScript |0 (DE-588)4420180-1 |2 gnd |9 rswk-swf |
650 | 0 | 7 | |a Entwurfsmuster |0 (DE-588)4546895-3 |2 gnd |9 rswk-swf |
689 | 0 | 0 | |a Entwurfsmuster |0 (DE-588)4546895-3 |D s |
689 | 0 | 1 | |a JavaScript |0 (DE-588)4420180-1 |D s |
689 | 0 | |5 DE-604 | |
776 | 0 | 8 | |i Erscheint auch als |n Druck-Ausgabe |z 978-1-098-13987-2 |
912 | |a ZDB-30-PQE | ||
943 | 1 | |a oai:aleph.bib-bvb.de:BVB01-034327000 | |
966 | e | |u https://ebookcentral.proquest.com/lib/th-deggendorf/detail.action?docID=30507932 |l DE-1050 |p ZDB-30-PQE |q FHD01_PQE_Kauf |x Aggregator |3 Volltext |
Datensatz im Suchindex
_version_ | 1820882890415669248 |
---|---|
adam_text | |
adam_txt | |
any_adam_object | |
any_adam_object_boolean | |
author | Osmani, Addy |
author_GND | (DE-588)1026169062 |
author_facet | Osmani, Addy |
author_role | aut |
author_sort | Osmani, Addy |
author_variant | a o ao |
building | Verbundindex |
bvnumber | BV049064931 |
classification_rvk | ST 250 |
collection | ZDB-30-PQE |
contents | Cover -- Copyright -- Table of Contents -- Preface -- Structure of the Book -- Conventions Used in This Book -- Using Code Examples -- O'Reilly Online Learning -- How to Contact Us -- Acknowledgments -- Chapter 1. Introduction to Design Patterns -- History of Design Patterns -- What Is a Pattern? -- An Everyday Use Case for Design Patterns -- Summary -- Chapter 2. "Pattern"-ity Testing, Proto-Patterns, and the Rule of Three -- What Are Proto-Patterns? -- The "Pattern" Tests -- Rule of Three -- Summary -- Chapter 3. Structuring and Writing Patterns -- The Structure of a Design Pattern Well-Written Patterns -- Writing a Pattern -- Summary -- Chapter 4. Anti-Patterns -- What Are Anti-Patterns? -- Anti-Patterns in JavaScript -- Summary -- Chapter 5. Modern JavaScript Syntax and Features -- The Importance of Decoupling Applications -- Modules with Imports and Exports -- Module Objects -- Modules Loaded from Remote Sources -- Static Imports -- Dynamic Imports -- Import on Interaction -- Import on Visibility -- Modules for the Server -- Advantages of Using Modules -- Classes with Constructors, Getters, and Setters -- Classes in JavaScript Frameworks -- Summary -- Related Reading Chapter 6. Categories of Design Patterns -- Background -- Creational Design Patterns -- Structural Design Patterns -- Behavioral Design Patterns -- Design Pattern Classes -- Summary -- Chapter 7. JavaScript Design Patterns -- Creational Patterns -- The Constructor Pattern -- Object Creation -- Basic Constructors -- Constructors with Prototypes -- The Module Pattern -- Object Literals -- The Module Pattern -- Module Pattern Variations -- Modern Module Pattern with WeakMap -- Modules with Modern Libraries -- The Revealing Module Pattern -- Advantages -- Disadvantages -- The Singleton Pattern State Management in React -- The Prototype Pattern -- The Factory Pattern -- When to Use the Factory Pattern -- When Not to Use the Factory Pattern -- Abstract Factories -- Structural Patterns -- The Facade Pattern -- The Mixin Pattern -- Subclassing -- Mixins -- Advantages and Disadvantages -- The Decorator Pattern -- Pseudoclassical Decorators -- Interfaces -- Abstract Decorators -- Advantages and Disadvantages -- Flyweight -- Using Flyweights -- Flyweights and Sharing Data -- Implementing Classical Flyweights -- Converting Code to Use the Flyweight Pattern -- A Basic Factory Managing the Extrinsic States -- The Flyweight Pattern and the DOM -- Example: Centralized Event Handling -- Behavioral Patterns -- The Observer Pattern -- Differences Between the Observer and Publish/Subscribe Pattern -- Advantages -- Disadvantages -- Publish/Subscribe Implementations -- The Mediator Pattern -- A Simple Mediator -- Similarities and Differences -- Event Aggregator Use -- Mediator Use -- Event Aggregator (Pub/Sub) and Mediator Together -- Mediator/Middleware in Modern JavaScript -- Mediator Versus Facade -- The Command Pattern -- Summary -- Chapter 8. JavaScript MV* Patterns |
ctrlnum | (OCoLC)1392137372 (DE-599)BVBBV049064931 |
discipline | Informatik |
discipline_str_mv | Informatik |
edition | Second edition |
format | Electronic eBook |
fullrecord | <?xml version="1.0" encoding="UTF-8"?><collection xmlns="http://www.loc.gov/MARC21/slim"><record><leader>00000nam a2200000 c 4500</leader><controlfield tag="001">BV049064931</controlfield><controlfield tag="003">DE-604</controlfield><controlfield tag="007">cr|uuu---uuuuu</controlfield><controlfield tag="008">230725s2023 xx o|||| 00||| eng d</controlfield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">9781098139834</subfield><subfield code="9">978-1-098-13983-4</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(OCoLC)1392137372</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(DE-599)BVBBV049064931</subfield></datafield><datafield tag="040" ind1=" " ind2=" "><subfield code="a">DE-604</subfield><subfield code="b">ger</subfield><subfield code="e">rda</subfield></datafield><datafield tag="041" ind1="0" ind2=" "><subfield code="a">eng</subfield></datafield><datafield tag="049" ind1=" " ind2=" "><subfield code="a">DE-1050</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">ST 250</subfield><subfield code="0">(DE-625)143626:</subfield><subfield code="2">rvk</subfield></datafield><datafield tag="100" ind1="1" ind2=" "><subfield code="a">Osmani, Addy</subfield><subfield code="e">Verfasser</subfield><subfield code="0">(DE-588)1026169062</subfield><subfield code="4">aut</subfield></datafield><datafield tag="245" ind1="1" ind2="0"><subfield code="a">Learning JavaScript Design Patterns</subfield><subfield code="b">a JavaScript and React developer's guide</subfield><subfield code="c">Addy Osmani</subfield></datafield><datafield tag="250" ind1=" " ind2=" "><subfield code="a">Second edition</subfield></datafield><datafield tag="264" ind1=" " ind2="1"><subfield code="a">Beijing</subfield><subfield code="b">O'Reilly</subfield><subfield code="c">April 2023</subfield></datafield><datafield tag="300" ind1=" " ind2=" "><subfield code="a">1 Online-Ressource (xvi, 279 Seiten)</subfield></datafield><datafield tag="336" ind1=" " ind2=" "><subfield code="b">txt</subfield><subfield code="2">rdacontent</subfield></datafield><datafield tag="337" ind1=" " ind2=" "><subfield code="b">c</subfield><subfield code="2">rdamedia</subfield></datafield><datafield tag="338" ind1=" " ind2=" "><subfield code="b">cr</subfield><subfield code="2">rdacarrier</subfield></datafield><datafield tag="505" ind1="8" ind2=" "><subfield code="a">Cover -- Copyright -- Table of Contents -- Preface -- Structure of the Book -- Conventions Used in This Book -- Using Code Examples -- O'Reilly Online Learning -- How to Contact Us -- Acknowledgments -- Chapter 1. Introduction to Design Patterns -- History of Design Patterns -- What Is a Pattern? -- An Everyday Use Case for Design Patterns -- Summary -- Chapter 2. "Pattern"-ity Testing, Proto-Patterns, and the Rule of Three -- What Are Proto-Patterns? -- The "Pattern" Tests -- Rule of Three -- Summary -- Chapter 3. Structuring and Writing Patterns -- The Structure of a Design Pattern</subfield></datafield><datafield tag="505" ind1="8" ind2=" "><subfield code="a">Well-Written Patterns -- Writing a Pattern -- Summary -- Chapter 4. Anti-Patterns -- What Are Anti-Patterns? -- Anti-Patterns in JavaScript -- Summary -- Chapter 5. Modern JavaScript Syntax and Features -- The Importance of Decoupling Applications -- Modules with Imports and Exports -- Module Objects -- Modules Loaded from Remote Sources -- Static Imports -- Dynamic Imports -- Import on Interaction -- Import on Visibility -- Modules for the Server -- Advantages of Using Modules -- Classes with Constructors, Getters, and Setters -- Classes in JavaScript Frameworks -- Summary -- Related Reading</subfield></datafield><datafield tag="505" ind1="8" ind2=" "><subfield code="a">Chapter 6. Categories of Design Patterns -- Background -- Creational Design Patterns -- Structural Design Patterns -- Behavioral Design Patterns -- Design Pattern Classes -- Summary -- Chapter 7. JavaScript Design Patterns -- Creational Patterns -- The Constructor Pattern -- Object Creation -- Basic Constructors -- Constructors with Prototypes -- The Module Pattern -- Object Literals -- The Module Pattern -- Module Pattern Variations -- Modern Module Pattern with WeakMap -- Modules with Modern Libraries -- The Revealing Module Pattern -- Advantages -- Disadvantages -- The Singleton Pattern</subfield></datafield><datafield tag="505" ind1="8" ind2=" "><subfield code="a">State Management in React -- The Prototype Pattern -- The Factory Pattern -- When to Use the Factory Pattern -- When Not to Use the Factory Pattern -- Abstract Factories -- Structural Patterns -- The Facade Pattern -- The Mixin Pattern -- Subclassing -- Mixins -- Advantages and Disadvantages -- The Decorator Pattern -- Pseudoclassical Decorators -- Interfaces -- Abstract Decorators -- Advantages and Disadvantages -- Flyweight -- Using Flyweights -- Flyweights and Sharing Data -- Implementing Classical Flyweights -- Converting Code to Use the Flyweight Pattern -- A Basic Factory</subfield></datafield><datafield tag="505" ind1="8" ind2=" "><subfield code="a">Managing the Extrinsic States -- The Flyweight Pattern and the DOM -- Example: Centralized Event Handling -- Behavioral Patterns -- The Observer Pattern -- Differences Between the Observer and Publish/Subscribe Pattern -- Advantages -- Disadvantages -- Publish/Subscribe Implementations -- The Mediator Pattern -- A Simple Mediator -- Similarities and Differences -- Event Aggregator Use -- Mediator Use -- Event Aggregator (Pub/Sub) and Mediator Together -- Mediator/Middleware in Modern JavaScript -- Mediator Versus Facade -- The Command Pattern -- Summary -- Chapter 8. JavaScript MV* Patterns</subfield></datafield><datafield tag="520" ind1=" " ind2=" "><subfield code="a">Do you want to write beautiful, structured, and maintainable JavaScript by applying modern design patterns to the language? Do you want clean, efficient, manageable code? Want to stay up-to-date with the latest best practices? If so, the updated second edition of Learning JavaScript Design Patterns is the ideal place to start. Author Addy Osmani shows you how to apply modern design patterns to JavaScript and React--including modules, mixins, observers, and mediators. You'll learn about performance and rendering patterns such as server-side rendering and Islands architecture. You'll also learn how architectural patterns like MVC, MVP, and MVVM are useful from the perspective of a modern web application developer. This book explores: Architectural patterns for structuring your components and apps More than 20 design patterns in JavaScript and React, applicable for developers at any level Different pattern categories including creational, structural, and behavioral Essential performance patterns including dynamic imports and code-splitting Rendering patterns such as server-side rendering, hydration, Islands architecture, and more Additionally, you'll explore modern JavaScript syntax like JavaScript modules, React patterns like Hooks, higher-order components (HOCs), and more, to stay ahead in the ever-evolving world of web development</subfield></datafield><datafield tag="650" ind1=" " ind2="4"><subfield code="a">JavaScript (Computer program language)</subfield></datafield><datafield tag="650" ind1=" " ind2="4"><subfield code="a">Software patterns</subfield></datafield><datafield tag="650" ind1=" " ind2="4"><subfield code="a">Computer software / Reusability</subfield></datafield><datafield tag="650" ind1=" " ind2="4"><subfield code="a">Scripting languages (Computer science)</subfield></datafield><datafield tag="650" ind1=" " ind2="7"><subfield code="a">Computer software / Reusability</subfield><subfield code="2">fast</subfield></datafield><datafield tag="650" ind1=" " ind2="7"><subfield code="a">JavaScript (Computer program language)</subfield><subfield code="2">fast</subfield></datafield><datafield tag="650" ind1=" " ind2="7"><subfield code="a">Scripting languages (Computer science)</subfield><subfield code="2">fast</subfield></datafield><datafield tag="650" ind1=" " ind2="7"><subfield code="a">Software patterns</subfield><subfield code="2">fast</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">JavaScript</subfield><subfield code="0">(DE-588)4420180-1</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">Entwurfsmuster</subfield><subfield code="0">(DE-588)4546895-3</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="689" ind1="0" ind2="0"><subfield code="a">Entwurfsmuster</subfield><subfield code="0">(DE-588)4546895-3</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="0" ind2="1"><subfield code="a">JavaScript</subfield><subfield code="0">(DE-588)4420180-1</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="0" ind2=" "><subfield code="5">DE-604</subfield></datafield><datafield tag="776" ind1="0" ind2="8"><subfield code="i">Erscheint auch als</subfield><subfield code="n">Druck-Ausgabe</subfield><subfield code="z">978-1-098-13987-2</subfield></datafield><datafield tag="912" ind1=" " ind2=" "><subfield code="a">ZDB-30-PQE</subfield></datafield><datafield tag="943" ind1="1" ind2=" "><subfield code="a">oai:aleph.bib-bvb.de:BVB01-034327000</subfield></datafield><datafield tag="966" ind1="e" ind2=" "><subfield code="u">https://ebookcentral.proquest.com/lib/th-deggendorf/detail.action?docID=30507932</subfield><subfield code="l">DE-1050</subfield><subfield code="p">ZDB-30-PQE</subfield><subfield code="q">FHD01_PQE_Kauf</subfield><subfield code="x">Aggregator</subfield><subfield code="3">Volltext</subfield></datafield></record></collection> |
id | DE-604.BV049064931 |
illustrated | Not Illustrated |
index_date | 2024-07-03T22:25:30Z |
indexdate | 2025-01-10T17:14:05Z |
institution | BVB |
isbn | 9781098139834 |
language | English |
oai_aleph_id | oai:aleph.bib-bvb.de:BVB01-034327000 |
oclc_num | 1392137372 |
open_access_boolean | |
owner | DE-1050 |
owner_facet | DE-1050 |
physical | 1 Online-Ressource (xvi, 279 Seiten) |
psigel | ZDB-30-PQE ZDB-30-PQE FHD01_PQE_Kauf |
publishDate | 2023 |
publishDateSearch | 2023 |
publishDateSort | 2023 |
publisher | O'Reilly |
record_format | marc |
spelling | Osmani, Addy Verfasser (DE-588)1026169062 aut Learning JavaScript Design Patterns a JavaScript and React developer's guide Addy Osmani Second edition Beijing O'Reilly April 2023 1 Online-Ressource (xvi, 279 Seiten) txt rdacontent c rdamedia cr rdacarrier Cover -- Copyright -- Table of Contents -- Preface -- Structure of the Book -- Conventions Used in This Book -- Using Code Examples -- O'Reilly Online Learning -- How to Contact Us -- Acknowledgments -- Chapter 1. Introduction to Design Patterns -- History of Design Patterns -- What Is a Pattern? -- An Everyday Use Case for Design Patterns -- Summary -- Chapter 2. "Pattern"-ity Testing, Proto-Patterns, and the Rule of Three -- What Are Proto-Patterns? -- The "Pattern" Tests -- Rule of Three -- Summary -- Chapter 3. Structuring and Writing Patterns -- The Structure of a Design Pattern Well-Written Patterns -- Writing a Pattern -- Summary -- Chapter 4. Anti-Patterns -- What Are Anti-Patterns? -- Anti-Patterns in JavaScript -- Summary -- Chapter 5. Modern JavaScript Syntax and Features -- The Importance of Decoupling Applications -- Modules with Imports and Exports -- Module Objects -- Modules Loaded from Remote Sources -- Static Imports -- Dynamic Imports -- Import on Interaction -- Import on Visibility -- Modules for the Server -- Advantages of Using Modules -- Classes with Constructors, Getters, and Setters -- Classes in JavaScript Frameworks -- Summary -- Related Reading Chapter 6. Categories of Design Patterns -- Background -- Creational Design Patterns -- Structural Design Patterns -- Behavioral Design Patterns -- Design Pattern Classes -- Summary -- Chapter 7. JavaScript Design Patterns -- Creational Patterns -- The Constructor Pattern -- Object Creation -- Basic Constructors -- Constructors with Prototypes -- The Module Pattern -- Object Literals -- The Module Pattern -- Module Pattern Variations -- Modern Module Pattern with WeakMap -- Modules with Modern Libraries -- The Revealing Module Pattern -- Advantages -- Disadvantages -- The Singleton Pattern State Management in React -- The Prototype Pattern -- The Factory Pattern -- When to Use the Factory Pattern -- When Not to Use the Factory Pattern -- Abstract Factories -- Structural Patterns -- The Facade Pattern -- The Mixin Pattern -- Subclassing -- Mixins -- Advantages and Disadvantages -- The Decorator Pattern -- Pseudoclassical Decorators -- Interfaces -- Abstract Decorators -- Advantages and Disadvantages -- Flyweight -- Using Flyweights -- Flyweights and Sharing Data -- Implementing Classical Flyweights -- Converting Code to Use the Flyweight Pattern -- A Basic Factory Managing the Extrinsic States -- The Flyweight Pattern and the DOM -- Example: Centralized Event Handling -- Behavioral Patterns -- The Observer Pattern -- Differences Between the Observer and Publish/Subscribe Pattern -- Advantages -- Disadvantages -- Publish/Subscribe Implementations -- The Mediator Pattern -- A Simple Mediator -- Similarities and Differences -- Event Aggregator Use -- Mediator Use -- Event Aggregator (Pub/Sub) and Mediator Together -- Mediator/Middleware in Modern JavaScript -- Mediator Versus Facade -- The Command Pattern -- Summary -- Chapter 8. JavaScript MV* Patterns Do you want to write beautiful, structured, and maintainable JavaScript by applying modern design patterns to the language? Do you want clean, efficient, manageable code? Want to stay up-to-date with the latest best practices? If so, the updated second edition of Learning JavaScript Design Patterns is the ideal place to start. Author Addy Osmani shows you how to apply modern design patterns to JavaScript and React--including modules, mixins, observers, and mediators. You'll learn about performance and rendering patterns such as server-side rendering and Islands architecture. You'll also learn how architectural patterns like MVC, MVP, and MVVM are useful from the perspective of a modern web application developer. This book explores: Architectural patterns for structuring your components and apps More than 20 design patterns in JavaScript and React, applicable for developers at any level Different pattern categories including creational, structural, and behavioral Essential performance patterns including dynamic imports and code-splitting Rendering patterns such as server-side rendering, hydration, Islands architecture, and more Additionally, you'll explore modern JavaScript syntax like JavaScript modules, React patterns like Hooks, higher-order components (HOCs), and more, to stay ahead in the ever-evolving world of web development JavaScript (Computer program language) Software patterns Computer software / Reusability Scripting languages (Computer science) Computer software / Reusability fast JavaScript (Computer program language) fast Scripting languages (Computer science) fast Software patterns fast JavaScript (DE-588)4420180-1 gnd rswk-swf Entwurfsmuster (DE-588)4546895-3 gnd rswk-swf Entwurfsmuster (DE-588)4546895-3 s JavaScript (DE-588)4420180-1 s DE-604 Erscheint auch als Druck-Ausgabe 978-1-098-13987-2 |
spellingShingle | Osmani, Addy Learning JavaScript Design Patterns a JavaScript and React developer's guide Cover -- Copyright -- Table of Contents -- Preface -- Structure of the Book -- Conventions Used in This Book -- Using Code Examples -- O'Reilly Online Learning -- How to Contact Us -- Acknowledgments -- Chapter 1. Introduction to Design Patterns -- History of Design Patterns -- What Is a Pattern? -- An Everyday Use Case for Design Patterns -- Summary -- Chapter 2. "Pattern"-ity Testing, Proto-Patterns, and the Rule of Three -- What Are Proto-Patterns? -- The "Pattern" Tests -- Rule of Three -- Summary -- Chapter 3. Structuring and Writing Patterns -- The Structure of a Design Pattern Well-Written Patterns -- Writing a Pattern -- Summary -- Chapter 4. Anti-Patterns -- What Are Anti-Patterns? -- Anti-Patterns in JavaScript -- Summary -- Chapter 5. Modern JavaScript Syntax and Features -- The Importance of Decoupling Applications -- Modules with Imports and Exports -- Module Objects -- Modules Loaded from Remote Sources -- Static Imports -- Dynamic Imports -- Import on Interaction -- Import on Visibility -- Modules for the Server -- Advantages of Using Modules -- Classes with Constructors, Getters, and Setters -- Classes in JavaScript Frameworks -- Summary -- Related Reading Chapter 6. Categories of Design Patterns -- Background -- Creational Design Patterns -- Structural Design Patterns -- Behavioral Design Patterns -- Design Pattern Classes -- Summary -- Chapter 7. JavaScript Design Patterns -- Creational Patterns -- The Constructor Pattern -- Object Creation -- Basic Constructors -- Constructors with Prototypes -- The Module Pattern -- Object Literals -- The Module Pattern -- Module Pattern Variations -- Modern Module Pattern with WeakMap -- Modules with Modern Libraries -- The Revealing Module Pattern -- Advantages -- Disadvantages -- The Singleton Pattern State Management in React -- The Prototype Pattern -- The Factory Pattern -- When to Use the Factory Pattern -- When Not to Use the Factory Pattern -- Abstract Factories -- Structural Patterns -- The Facade Pattern -- The Mixin Pattern -- Subclassing -- Mixins -- Advantages and Disadvantages -- The Decorator Pattern -- Pseudoclassical Decorators -- Interfaces -- Abstract Decorators -- Advantages and Disadvantages -- Flyweight -- Using Flyweights -- Flyweights and Sharing Data -- Implementing Classical Flyweights -- Converting Code to Use the Flyweight Pattern -- A Basic Factory Managing the Extrinsic States -- The Flyweight Pattern and the DOM -- Example: Centralized Event Handling -- Behavioral Patterns -- The Observer Pattern -- Differences Between the Observer and Publish/Subscribe Pattern -- Advantages -- Disadvantages -- Publish/Subscribe Implementations -- The Mediator Pattern -- A Simple Mediator -- Similarities and Differences -- Event Aggregator Use -- Mediator Use -- Event Aggregator (Pub/Sub) and Mediator Together -- Mediator/Middleware in Modern JavaScript -- Mediator Versus Facade -- The Command Pattern -- Summary -- Chapter 8. JavaScript MV* Patterns JavaScript (Computer program language) Software patterns Computer software / Reusability Scripting languages (Computer science) Computer software / Reusability fast JavaScript (Computer program language) fast Scripting languages (Computer science) fast Software patterns fast JavaScript (DE-588)4420180-1 gnd Entwurfsmuster (DE-588)4546895-3 gnd |
subject_GND | (DE-588)4420180-1 (DE-588)4546895-3 |
title | Learning JavaScript Design Patterns a JavaScript and React developer's guide |
title_auth | Learning JavaScript Design Patterns a JavaScript and React developer's guide |
title_exact_search | Learning JavaScript Design Patterns a JavaScript and React developer's guide |
title_exact_search_txtP | Learning JavaScript Design Patterns a JavaScript and React developer's guide |
title_full | Learning JavaScript Design Patterns a JavaScript and React developer's guide Addy Osmani |
title_fullStr | Learning JavaScript Design Patterns a JavaScript and React developer's guide Addy Osmani |
title_full_unstemmed | Learning JavaScript Design Patterns a JavaScript and React developer's guide Addy Osmani |
title_short | Learning JavaScript Design Patterns |
title_sort | learning javascript design patterns a javascript and react developer s guide |
title_sub | a JavaScript and React developer's guide |
topic | JavaScript (Computer program language) Software patterns Computer software / Reusability Scripting languages (Computer science) Computer software / Reusability fast JavaScript (Computer program language) fast Scripting languages (Computer science) fast Software patterns fast JavaScript (DE-588)4420180-1 gnd Entwurfsmuster (DE-588)4546895-3 gnd |
topic_facet | JavaScript (Computer program language) Software patterns Computer software / Reusability Scripting languages (Computer science) JavaScript Entwurfsmuster |
work_keys_str_mv | AT osmaniaddy learningjavascriptdesignpatternsajavascriptandreactdevelopersguide |