LibCoder

JavaScript Design Patterns: Deliver fast and efficient production-grade JavaScript applications at scale

1C Agda JavaScript
JavaScript Design Patterns: Deliver fast and efficient production-grade JavaScript applications at scale
Автор: Francesco Hugo Di
Дата выхода: 2024
Издательство: Packt Publishing Limited
Количество страниц: 308
Размер файла: 4,1 МБ
Тип файла: PDF
Добавил: LibCoder
Оглавление
Cover....1 Title Page....2 Copyright and Credits....3 Dedications....4 Contributors....5 Table of Contents....8 Part 1: Design Patterns....20 Chapter 1: Working with Creational Design Patterns....22 What are creational design patterns?....23 Implementing the prototype pattern in JavaScript....23 Implementation....23 A use case....26 The singleton pattern with eager and lazy initialization in JavaScript....30 Implementation....30 Use cases....34 Improvements with the “class singleton” pattern....35 A singleton without class fields using ES module behavior....37 The factory pattern in JavaScript....39 Implementation....39 Use cases....41 Improvements with modern JavaScript....41 Summary....43 Chapter 2: Implementing Structural Design Patterns....44 Technical requirements....44 What are structural design patterns?....45 Implementing the Proxy pattern with Proxy and Reflect....45 A redaction proxy implementation....45 Use cases....46 Improving the proxy pattern in JavaScript with the Proxy and Reflect global objects....47 Decorator in JavaScript....52 Implementation....53 Use cases....54 Improvements/limitations....54 Flyweight in JavaScript....56 Implementation....56 Use cases....60 Improvements/limitations....60 Adapter in JavaScript....63 Use cases....67 Improvements/limitations....68 Summary....71 Chapter 3: Leveraging Behavioral Design Patterns....72 Technical requirements....72 What are behavioral design patterns?....73 The observer pattern in JavaScript....73 Implementation....73 Use cases of the observer pattern....77 Limitations and improvements....77 State and strategy in JavaScript and a simplified approach....80 Implementation....80 Use cases of the state and strategy patterns....88 Limitations and improvements....88 Visitor in JavaScript....94 Implementation....95 Use cases of the visitor pattern....97 Summary....98 Part 2: Architecture and UI Patterns....100 Chapter 4: Exploring Reactive View Library Patterns....102 Technical requirements....102 What are reactive view library patterns?....103 The render prop pattern....103 Use cases....104 Implementation/example....108 Limitations....114 The higher-order component pattern....115 Implementation/example....115 Use cases....116 Limitations....116 The hooks pattern....117 An implementation/example....118 Use cases....122 Limitations....122 The provider pattern....122 Use case – the prop drilling problem....122 An implementation/example....123 Limitations....128 Summary....129 Chapter 5: Rendering Strategies and Page Hydration....130 Technical requirements....130 Client and server rendering with React....131 Client-side rendering in React....132 Server rendering in React....133 Trade-offs between client and server rendering....136 Static rendering with Next.js....137 Automatic static generation....138 Static generation with a third-party data source....140 Static generation with dynamic paths....144 Page hydration strategies....151 Common React rehydration issues....156 React streaming server-side rendering....159 Summary....163 Chapter 6: Micro Frontends, Zones, and Islands Architectures....164 Technical requirements....164 An overview of micro frontends....165 Key benefits....165 “Classic” micro frontend patterns....166 Other concerns in a micro frontend world....168 Composing applications with Next.js “zones”....169 Root app....170 Adding a /search app....173 Adding /checkout app....176 The benefits/supporting team scaling....181 The drawbacks of Next.js zones....182 Scaling performance-sensitive pages with the “islands” architecture....182 Islands setup with is-land....183 Product island....184 Cart island....187 A related products island....191 Scaling with a team – bundling islands....198 Drawbacks....198 Summary....199 Part 3: Performance and Security Patterns....200 Chapter 7: Asynchronous Programming Performance Patterns....202 Technical requirements....202 Controlling sequential asynchronous operations with async/await and Promises....202 Parallel asynchronous operation patterns....208 Asynchronous cancellation and timeouts with AbortController....215 Throttling, debouncing, and batching asynchronous operations....219 Summary....226 Chapter 8: Event-Driven Programming Patterns....228 Technical requirements....228 Optimizing event listeners through event delegation....229 Patterns for secure frame/native WebView bridge messaging....237 Event listener performance antipatterns....250 Summary....251 Chapter 9: Maximizing Performance – Lazy Loading and Code Splitting....252 Technical requirements....252 Dynamic imports and code splitting with Vite....252 Route-based code splitting and bundling....256 Loading JavaScript on element visibility and interaction....260 Summary....278 Chapter 10: Asset Loading Strategies and Executing Code off the Main Thread....280 Technical requirements....280 Asset loading optimization – async, defer, preconnect, preload, and prefetch....281 Using Next.js Script’s strategy option to optimize asset loading....289 Loading and running scripts in a worker thread....291 Summary....295 Index....298 Other Books You May Enjoy....303

Описание

Ниже — практический обзор по теме «patterns».

Unlock the potential of JavaScript design patterns, the foundation for development teams seeking structured and reusable solutions to common software development challenges in this guide to improving code maintainability, scalability, and performance. Discover how these patterns equip businesses with cleaner and more maintainable code, promote team collaboration, reduce errors, and save time and costs.

You’ll start by learning how to use creational, structural, and behavioral design patterns in idiomatic JavaScript, and then shift focus to the architecture and UI patterns. This book provides a comprehensive view of design patterns in modern (ES6+) JavaScript with real-world examples of their deployment in professional settings. Here, you’ll learn how to apply patterns for libraries such as React and extend them further to general web frontend and micro frontend approaches. The last section of the book introduces and illustrates sets of performance and security patterns, including messaging and events, asset and JavaScript loading strategies, and asynchronous programming performance patterns.

Throughout the book, examples featuring React and Next.js, in addition to JavaScript and Web API examples, will help you choose and implement proven design patterns across diverse web ecosystems, transforming the way you approach development.

What you will learnFind out how patterns are classified into creational, structural, and behavioralImplement the right set of patterns for different business scenariosExplore diverse frontend architectures and different rendering approachesIdentify and address common asynchronous programming performance pitfallsLeverage event-driven programming in the browser to deliver fast and secure applicationsBoost application performance using asset loading strategies and offloading JavaScript executionWho this book is forThis book is for developers and software architects who want to leverage JavaScript and the web platform for enhanced productivity, superior software quality, and optimized application performance.

Prior experience with JavaScript and web development is assumed. Some of the more advanced topics in the book will be of interest to developers with intermediate experience in building for the web with JavaScript.

Если материал оказался полезен — сохраните страницу.

patterns javascript performance book design development software this

Частые вопросы

Можно ли скачать «JavaScript Design Patterns: Deliver fast and efficient production-grade JavaScript applications at scale» бесплатно?

Да, «JavaScript Design Patterns: Deliver fast and efficient production-grade JavaScript applications at scale» доступна для бесплатного скачивания на нашем сайте в формате PDF. Ссылка на файл находится на этой странице.

В каком формате и какого размера файл?

Книга предоставляется в формате PDF, размер файла 4,1 МБ.

Кто автор и когда вышла книга?

автор — Francesco Hugo Di, издательство Packt Publishing Limited, год выпуска 2024, 308 страниц.

О чём книга «JavaScript Design Patterns: Deliver fast and efficient production-grade JavaScript applications at scale»?

Unlock the potential of JavaScript design patterns, the foundation for development teams seeking structured and reusable solutions to common software development challenges in this guide to improving code maintainability, scalability, and p

Похожие материалы