Video description
In Video Editions the narrator reads the book while the content, figures, code listings, diagrams, and text appear on the screen. Like an audiobook that you can also watch as a video.
"This book transformed the way that I think about and write JavaScript."
Andrew Meredith, Intrinsitech Corporation
Functional Programming in JavaScript teaches you techniques to improve your web applications: their extensibility, modularity, reusability, and testability, as well as their performance. This easy-to-read book/course uses concrete examples and clear explanations to show you how to use functional programming in real life. If you're new to functional programming, you'll appreciate this guide's many insightful comparisons to imperative or object-oriented programming that help you understand functional design. By the end, you'll think about application design in a fresh new way, and you may even grow to appreciate monads!
In complex web applications, the low-level details of your JavaScript code can obscure the workings of the system as a whole. As a coding style, functional programming (FP) promotes loosely coupled relationships among the components of your application, making the big picture easier to design, communicate, and maintain.
Inside:
- High-value FP techniques for real-world uses
- Using FP where it makes the most sense
- Separating the logic of your system from implementation details
- FP-style error handling, testing, and debugging
- All code samples use JavaScript ES6 (ES 2015)
Luis Atencio (@luijar) is a staff software engineer for Citrix Systems in Fort Lauderdale, Florida. He has a B.S. and an M.S. in computer science and now works full-time developing and architecting applications using JavaScript, Java, and PHP platforms. Luis is very involved in the community and has presented frequently at local meetups and conferences. He blogs about software engineering at luisatencio.net, writes articles for magazines and DZone, and is also the coauthor of RxJS in Action (Manning, 2017).
Easy to navigate, with real-life examples.
Amy Teng, Dell
Now, this is the way to write JavaScript!
William E. Wheeler, West Corporation
After reading this book, I revisited how I approached coding and was able to retrain my mind using better methods and techniques.
Tanner Slayton Sr., Microsoft Corporation
NARRATED BY CHRIS DUNN
Table of contents
-
PART 1. Think functionally
- Chapter 1. Becoming functional
- Chapter 1. What is functional programming?
- Chapter 1. Pure functions and the problem with side effects
- Chapter 1. Referential transparency and substitutability
- Chapter 1. Benefits of functional programming
- Chapter 1. Reacting to the complexity of asynchronous applications
- Chapter 2. Higher-order JavaScript
- Chapter 2. Functional vs. object-oriented programming
- Chapter 2. Managing the state of JavaScript objects
- Chapter 2. Deep-freezing moving parts
- Chapter 2. Functions
- Chapter 2. Types of function invocation
- Chapter 2. Closures and scopes
- Chapter 2. JavaScript’s function scope
- Chapter 2. Practical applications of closures
-
PART 2. Get functional
- Chapter 3. Few data structures, many operations
- Chapter 3. Understanding lambda expressions
- Chapter 3. Gathering results with _.reduce
- Chapter 3. Reasoning about your code
- Chapter 3. SQL-like data: functions as data
- Chapter 3. Learning to think recursively
- Chapter 3. Recursively defined data structures
- Chapter 4. Toward modular, reusable code
- Chapter 4. Requirements for compatible functions
- Chapter 4. Curried function evaluation
- Chapter 4. Partial application and parameter binding
- Chapter 4. Composing function pipelines
- Chapter 4. Composition with functional libraries
- Chapter 4. Managing control flow with functional combinators
- Chapter 4. Fork (join) combinator
- Chapter 5. Design patterns against complexity
- Chapter 5. Building a better solution: functors
- Chapter 5. Functors explained
- Chapter 5. Functional error handling using monads
- Chapter 5. Error handling with Maybe and Either monads
- Chapter 5. Interacting with external resources using the IO monad
- Chapter 5. Monadic chains and compositions
-
PART 3. Enhancing your functional skills
- Chapter 6. Bulletproofing your code
- Chapter 6. Challenges of testing imperative programs
- Chapter 6. Testing functional code
- Chapter 6. Separating the pure from the impure with monadic isolation
- Chapter 6. Capturing specifications with property-based testing
- Chapter 6. Measuring effectiveness through code coverage
- Chapter 6. Measuring the complexity of functional code
- Chapter 7. Functional optimizations
- Chapter 7. Currying and the function context stack
- Chapter 7. Deferring execution using lazy evaluation
- Chapter 7. Implementing a call-when-needed strategy
- Chapter 7. Taking advantage of currying and memoization
- Chapter 7. Recursion and tail-call optimization (TCO)
- Chapter 8. Managing asynchronous events and data
- Chapter 8. Falling into a callback pyramid
- Chapter 8. First-class asynchronous behavior with promises
- Chapter 8. Future method chains
- Chapter 8. Lazy data generation
- Chapter 8. Functional and reactive programming with RxJS
- Chapter 8. RxJS and promises
Product information
- Title: Functional Programming in JavaScript video edition
- Author(s):
- Release date: June 2016
- Publisher(s): Manning Publications
- ISBN: None
You might also like
book
Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow, 2nd Edition
Through a series of recent breakthroughs, deep learning has boosted the entire field of machine learning. …
book
Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow, 3rd Edition
Through a recent series of breakthroughs, deep learning has boosted the entire field of machine learning. …
book
Designing Data-Intensive Applications
Data is at the center of many challenges in system design today. Difficult issues need to …
book
Becoming a Better Programmer
If you’re passionate about programming and want to get better at it, you’ve come to the …