"This book explains: how JavaScript and its standards development process have evolved -- Essential ES6 changes, including arrow functions, destructuring, let, and const; class syntax for declaring object prototypes, and the Symbol primitive -- How to handle flow control with Promises, iterators, ge
Practical Modern JavaScript
β Scribed by Nicolas Bevacqua
- Publisher
- O'Reilly Media
- Year
- 2017
- Tongue
- English
- Category
- Library
No coin nor oath required. For personal study only.
β¦ Synopsis
Intro; Copyright; Table of Contents; Preface; Section 1. Who Should Read This Book; Section 2. Why Modular JavaScript?; Section 3. How Is This Book Organized?; Section 4. Conventions Used in This Book; Section 5. O'Reilly Safari; Section 6. How to Contact Us; Section 7. Acknowledgments; Chapter 1. Module Thinking; 1.1 Introduction to Module Thinking; 1.2 A Brief History of Modularity; 1.2.1 Script Tags and Closures; 1.2.2 RequireJS, AngularJS, and Dependency Injection; 1.2.3 Node.js and the Advent of CommonJS; 1.2.4 ES6, import, Babel, and Webpack; 1.3 The Perks of Modular Design;"If you have a working knowledge of JavaScript and ECMAScript 6 (ES6), this practical guide will help you tackle modular programming to produce code that's readable, maintainable, and scalable. You'll learn the fundamentals of modular architecture with JavaScript and the benefits of writing self-contained code at every system level, including the client and server. NicolΓ‘s Bevacqua, author of Practical Modern JavaScript, demonstrates how to scale out JavaScript applications by breaking codebases into smaller modules. By following the design practices in this book, senior developers, technical leaders, and software architects will learn how to create modules that are simple and flexible while keeping internal complexity in check. Learn modular design essentials, including how your application will be consumed and what belongs on the interfaceDesign module internals to keep your code readable and its intent clearReduce complexity by refactoring code and containing and eliminating stateTake advantage of modern JavaScript features to write clear programs and reduce complexityApply Twelve-Factor App principles to frontend and backend JavaScript application development"--;Module thinking -- Modularity principles -- Module design -- Shaping internals -- Modular patterns and practices -- Development methodology and philosophy.
β¦ Table of Contents
Module thinking --
Modularity principles --
Module design --
Shaping internals --
Modular patterns and practices --
Development methodology and philosophy. Intro
Copyright
Table of Contents
Preface
Section 1. Who Should Read This Book
Section 2. Why Modular JavaScript?
Section 3. How Is This Book Organized?
Section 4. Conventions Used in This Book
Section 5. O'Reilly Safari
Section 6. How to Contact Us
Section 7. Acknowledgments
Chapter 1. Module Thinking
1.1 Introduction to Module Thinking
1.2 A Brief History of Modularity
1.2.1 Script Tags and Closures
1.2.2 RequireJS, AngularJS, and Dependency Injection
1.2.3 Node.js and the Advent of CommonJS
1.2.4 ES6, import, Babel, and Webpack
1.3 The Perks of Modular Design 1.4 Modular Granularity1.5 Modular JavaScript: A Necessity
Chapter 2. Modularity Principles
2.1 Modular Design Essentials
2.1.1 Single Responsibility Principle
2.1.2 API First
2.1.3 Revealing Pattern
2.1.4 Finding the Right Abstractions
2.1.5 State Management
2.2 CRUST: Consistent, Resilient, Unambiguous, Simple, and Tiny
2.2.1 Consistency
2.2.2 Resiliency
2.2.3 Unambiguity
2.2.4 Simplicity
2.2.5 Tiny Surface Areas
Chapter 3. Module Design
3.1 Growing a Module
3.1.1 Composability and Scalability
3.1.2 Design for Today
3.1.3 Abstractions Evolve in Small Steps 3.1.4 Move Deliberately and Experiment3.2 CRUST Considerations
3.2.1 Do Repeat Yourself, Occasionally
3.2.2 Feature Isolation
3.2.3 Trade-Offs When Designing Internals
3.3 Pruning a Module
3.3.1 Error Handling, Mitigation, Detection, and Solving
3.3.2 Documentation as an Art
3.3.3 Removing Code
3.3.4 Applying Context
Chapter 4. Shaping Internals
4.1 Internal Complexity
4.1.1 Containing Nested Complexity
4.1.2 Feature Entanglement and Tight Coupling
4.1.3 Frameworks: The Good, the Bad, and the Ugly
4.2 Refactoring Complex Code
4.2.1 Embracing Variables over Clever Code 4.2.2 Guard Clauses and Branch Flipping4.2.3 An Interdependency Pyramid
4.2.4 Extracting Functions
4.2.5 Flattening Nested Callbacks
4.2.6 Factoring Similar Tasks
4.2.7 Slicing Large Functions
4.3 State as Entropy
4.3.1 Current State: It's Complicated
4.3.2 Eliminating Incidental State
4.3.3 Containing State
4.3.4 Leveraging Immutability
4.4 Data Structures Are King
4.4.1 Isolating Data and Logic
4.4.2 Restricting and Clustering Logic
Chapter 5. Modular Patterns and Practices
5.1 Leveraging Modern JavaScript
5.1.1 Template Literals
5.1.2 Destructuring, Rest, and Spread 5.1.3 Striving for Simple const Bindings5.1.4 Navigating Callbacks, Promises, and Asynchronous Functions
5.2 Composition and Inheritance
5.2.1 Inheritance Through Classes
5.2.2 The Perks of Composition: Aspects and Extensions
5.2.3 Choosing Between Composition and Inheritance
5.3 Code Patterns
5.3.1 Revealing Module
5.3.2 Object Factories
5.3.3 Event Emission
5.3.4 Message Passing and the Simplicity of JSON
Chapter 6. Development Methodology and Philosophy
6.1 Secure Configuration Management
6.2 Explicit Dependency Management
6.3 Interfaces as Black Boxes
6.4 Build, Release, Run
π SIMILAR VOLUMES
To get the most out of modern JavaScript, you need learn the latest features of its parent specification, ECMAScript 6 (ES6). This book provides a highly practical look at ES6, without getting lost in the specification or its implementation details. Armed with practical examples, author Nicolas Beva
<div><p>It's not uncommon these days to see people complaining about just how complex JavaScript development seems to have become. We can have some sympathy with that view when it's coming from someone new to the language. If you're learning JS, it won't take long for you to be exposed to the enormi
It's time for a current, definitive JavaScript book, and in this comprehensive beginner's guide, bestselling author Larry Ullman teaches the language as it is implemented today. Larry demonstrates how to build upon JavaScript's ease of use, while demystifying its often-cryptic syntax, especially for
<p>JavaScript today must interact with data-intensive APIs and networks. The solution is a program that can work <i>asynchronously</i> instead of finishing tasks in order. In modern JavaScript, instead of callbacks you'll use promises to improve your application's performance and responsiveness. Jav