Ebook: Mastering JavaScript Functional Programming: Write clean, robust, and maintainable web and server code using functional JavaScript, 2nd Edition
Author: Federico Kereki
- Year: 2020
- Publisher: Packt Publishing
- Language: English
- epub
Explore the functional programming paradigm and the different techniques for developing better algorithms, writing more concise code, and performing seamless testing
Key Features
- Explore this second edition updated to cover features like async functions and transducers, as well as functional reactive programming
- Enhance your functional programming (FP) skills to build web and server apps using JavaScript
- Use FP to enhance the modularity, reusability, and performance of apps
Book Description
Functional programming is a paradigm for developing software with better performance. It helps you write concise and testable code. To help you take your programming skills to the next level, this comprehensive book will assist you in harnessing the capabilities of functional programming with JavaScript and writing highly maintainable and testable web and server apps using functional JavaScript.
This second edition is updated and improved to cover features such as transducers, lenses, prisms and various other concepts to help you write efficient programs. By focusing on functional programming, you'll not only start to write but also to test pure functions, and reduce side effects. The book also specifically allows you to discover techniques for simplifying code and applying recursion for loopless coding. Gradually, you'll understand how to achieve immutability, implement design patterns, and work with data types for your application, before going on to learn functional reactive programming to handle complex events in your app. Finally, the book will take you through the design patterns that are relevant to functional programming.
By the end of this book, you'll have developed your JavaScript skills and have gained knowledge of the essential functional programming techniques to program effectively.
What you will learn
- Simplify JavaScript coding using function composition, pipelining, chaining, and transducing
- Use declarative coding as opposed to imperative coding to write clean JavaScript code
- Create more reliable code with closures and immutable data
- Apply practical solutions to complex programming problems using recursion
- Improve your functional code using data types, type checking, and immutability
- Understand advanced functional programming concepts such as lenses and prisms for data access
Who this book is for
This book is for JavaScript developers who want to enhance their programming skills and build efficient web applications. Frontend and backend developers who use various JavaScript frameworks and libraries like React, Angular, or Node.js will also find the book helpful. Working knowledge of ES2019 is required to grasp the concepts covered in the book easily.
Table of Contents
- Becoming Functional - Several Questions
- Thinking Functionally - A First Example
- Starting Out with Functions - A Core Concept
- Behaving Properly - Pure Functions
- Programming Declaratively - A Better Style
- Producing Functions - Higher-Order Functions
- Transforming Functions - Currying and Partial Application
- Connecting Functions - Pipelining and Composition
- Designing Functions - Recursion
- Ensuring Purity - Immutability
- Implementing Design Patterns - The Functional Way
- Building Better Containers - Functional Data Types