Composing Software
eBook - ePub

Composing Software

An Exploration of Functional Programming and Object Composition in JavaScript

  1. English
  2. ePUB (mobile friendly)
  3. Available on iOS & Android
eBook - ePub

Composing Software

An Exploration of Functional Programming and Object Composition in JavaScript

About this book

Unlock the power of functional programming in JavaScript with this detailed guide. Master essential techniques like function composition, immutability, and higher-order functions to create modular, maintainable code that's easy to understand and reuse.

Key Features

  • An exploration of functional programming in JavaScript, from basics to advanced concepts
  • An extensive focus on real-world applications & problem-solving techniques
  • An introduction to both functional and object-oriented programming for a holistic view

Book Description

This book delves into functional programming and composition techniques in JavaScript, starting with core concepts like pure functions, shared state avoidance, and higher-order functions to build modular, maintainable code. Early chapters explore the fundamentals of functional programming, immutability, and its growing influence in the JavaScript community. You'll learn essential topics such as function composition, currying, and higher-order functions, as well as advanced concepts like abstract data types, functors, and monads. The book discusses the evolution of functional programming, its role in modern software development, and addresses challenges like the software crisis and composing with classes. You'll learn essential topics like object-oriented programming, focusing on factory functions, functional mixins, and object composition. You'll also understand why traditional classes complicate composition and discover strategies for creating custom data types, lenses, and transducers. The book also covers best practices, emphasizing clean, reusable code and avoiding anti-patterns like excessive mocking. By the end, you'll be ready to apply functional programming techniques to tackle complex design challenges and write more maintainable JavaScript code.

What you will learn

  • Grasp core principles for writing clean, efficient code
  • Combine functions to create complex operations with ease
  • Write functions that are predictable and easy to test
  • Eliminate shared state and side effects for more reliable code
  • Use functions as arguments or return values for flexibility
  • Learn data transformations and side effect management

Who this book is for

The book is ideal for JavaScript developers who want to deepen their understanding of functional programming and software composition. Familiarity with JavaScript basics is required. This book is suitable for both intermediate and advanced programmers who want to write more maintainable and modular code.

]]>

Frequently asked questions

Yes, you can cancel anytime from the Subscription tab in your account settings on the Perlego website. Your subscription will stay active until the end of your current billing period. Learn how to cancel your subscription.
At the moment all of our mobile-responsive ePub books are available to download via the app. Most of our PDFs are also available to download and we're working on making the final remaining ones downloadable now. Learn more here.
Perlego offers two plans: Essential and Complete
  • Essential is ideal for learners and professionals who enjoy exploring a wide range of subjects. Access the Essential Library with 800,000+ trusted titles and best-sellers across business, personal growth, and the humanities. Includes unlimited reading time and Standard Read Aloud voice.
  • Complete: Perfect for advanced learners and researchers needing full, unrestricted access. Unlock 1.4M+ books across hundreds of subjects, including academic and specialized titles. The Complete Plan also includes advanced features like Premium Read Aloud and Research Assistant.
Both plans are available with monthly, semester, or annual billing cycles.
We are an online textbook subscription service, where you can get access to an entire online library for less than the price of a single book per month. With over 1 million books across 1000+ topics, we’ve got you covered! Learn more here.
Look out for the read-aloud symbol on your next book to see if you can listen to it. The read-aloud tool reads text aloud for you, highlighting the text as it is being read. You can pause it, speed it up and slow it down. Learn more here.
Yes! You can use the Perlego app on both iOS or Android devices to read anytime, anywhere — even offline. Perfect for commutes or when you’re on the go.
Please note we cannot support devices running on iOS 13 and Android 7 or earlier. Learn more about using the app.
Yes, you can access Composing Software by Eric Elliott in PDF and/or ePUB format, as well as other popular books in Computer Science & Programming. We have over one million books available in our catalogue for you to explore.

Information

Table of contents

  1. Title Page
  2. Table of Contents
  3. Thank You
  4. Composing Software: An Introduction
  5. The Dao of Immutability (The Way of the Functional Programmer)
  6. The Rise and Fall and Rise of Functional Programming (Composable Software)
  7. Why Learn Functional Programming in JavaScript?
  8. Pure Functions
  9. What is Functional Programming?
  10. A Functional Programmer’s Introduction to JavaScript
  11. Higher Order Functions
  12. Curry and Function Composition
  13. Abstraction & Composition
  14. Abstract Data Types and the Software Crisis
  15. Functors & Categories
  16. Monads
  17. The Forgotten History of OOP
  18. Object Composition
  19. Factory Functions
  20. Functional Mixins
  21. Why Composition is Harder with Classes
  22. Composable Custom Data Types
  23. Lenses
  24. Transducers
  25. Elements of JavaScript Style
  26. Mocking is a Code Smell