JavaScript Allongé
Reginald Braithwaite
Computers & Technology
JavaScript Allongé
Free
Description
Contents
Reviews

JavaScript Allongé solves two important problems for the ambitious JavaScript programmer. First, JavaScript Allongé gives you the tools to deal with JavaScript bugs, hitches, edge cases, and other potential pitfalls.



There are plenty of good directions for how to write JavaScript programs. If you follow them without alteration or deviation, you will be satisfied. Unfortunately, software is a complex thing, full of interactions and side-effects. Two perfectly reasonable pieces of advice when taken separately may conflict with each other when taken together. An approach may seem sound at the outset of a project, but need to be revised when new requirements are discovered.



When you “leave the path” of the directions, you discover their limitations. In order to solve the problems that occur at the edges, in order to adapt and deal with changes, in order to refactor and rewrite as needed, you need to understand the underlying principles of the JavaScript programming language in detail.



You need to understand why the directions work so that you can understand how to modify them to work properly at or beyond their original limitations. That’s where JavaScript Allongé comes in.



JavaScript Allongé is a book about programming with functions, because JavaScript is a programming language built on flexible and powerful functions. JavaScript Allongé begins at the beginning, with values and expressions, and builds from there to discuss types, identity, functions, closures, scopes, and many more subjects up to working with classes and instances. In each case, JavaScript Allongé takes care to explain exactly how things work so that when you encounter a problem, you’ll know exactly what is happening and how to fix it.



Second, JavaScript Allongé provides recipes for using functions to write software that is simpler, cleaner, and less complicated than alternative approaches that are object-centric or code-centric. JavaScript idioms like function combinators and decorators leverage JavaScript’s power to make code easier to read, modify, debug and refactor, thus avoiding problems before they happen.



JavaScript Allongé teaches you how to handle complex code, and it also teaches you how to simplify code without dumbing it down. As a result, JavaScript Allongé is a rich read releasing many of JavaScript’s subtleties, much like the Café Allongé beloved by coffee enthusiasts everywhere.



The author's books are online at Leanpub.

Language
English
ISBN
6171015997
A Pull of the Lever: Prefaces
Foreword by Michael Fogus
Foreword by Matthew Knox
Why JavaScript Allongé?
A Personal Word About The Recipes
Legend
JavaScript Spessore
Prelude: Values and Expressions
values and expressions
values and identity
1. The first sip: Basic Functions
As Little As Possible About Functions, But No Less
Ah. I’d Like to Have an Argument, Please.
Closures and Scope
Let’s Talk Var
Naming Functions
Combinators and Function Decorators
Building Blocks
I’d Like to Have Some Arguments. Again.
Summary
2. The Recipe Cheat Sheet
3. Recipes with Basic Functions
Partial Application
Ellipses and improved Partial Application
Unary
Tap
Maybe
4. The Pause That Refreshes: Rebinding and References
Arguments and Arrays
References and Objects
Reassignment and Mutation
How to Shoot Yourself in the Foot With Var
When Rebinding Meets Recursion
From Let to Modules
5. Recipes with Rebinding and References
Once
mapWith
Flip
Extend
Why?
6. Stir the Allongé: Objects, Mutation, and State
Encapsulating State with Closures
Composition and Extension
This and That
What Context Applies When We Call a Function?
Method Decorators
7. Recipes with Objects, Mutations, and State
Memoize
getWith
pluckWith
Deep Mapping
8. Finish the Cup: Instances and Classes
Prototypes are Simple, it’s the Explanations that are Hard To Understand
Binding Functions to Contexts
Partial Application, Binding, and Currying
A Class By Any Other Name
Object Methods
Extending Classes with Inheritance
Summary
9. Recipes with Instances and Classes
Currying
Bound
Unbinding
Send
Invoke
Fluent
Once Again
10. Sequence
Introduction: Compose and Pipeline
11. New Ideas
How Prototypes and Constructors differ from Classes
New-Agnostic Constructors
Another New-Agnostic Constructor Pattern
Mixins
Class Decorators
Interlude: Tortoises, Hares, and Teleporting Turtles
Functional Iterators
Refactoring to Functional Iterators
A Drunken Walk Across A Chequerboard
Trampolining
12. Recipes for New Ideas
Before
After
Provided and Except
A Functional Mixin Factory
A Class Decorator Factory
Iterator Recipes
The Golden Crema
Author’s Notes
How to run the examples
Thanks!
JavaScript Spessore
Copyright Notice
About The Author
The book hasn't received reviews yet.