How do you handle necessary side effects like API calls while keeping your core logic pure and testable?
#1about 2 minutes
Core principles of functional programming
Functional programming builds programs using pure functions, immutable values, and higher-order functions to minimize side effects.
#2about 2 minutes
Benefits of adopting a functional paradigm
Writing functional code leads to more readable, testable, and reusable programs while avoiding common issues like `this` context in JavaScript.
#3about 2 minutes
Writing functional JavaScript with React components
Transitioning from class components to functional components with hooks is a practical example of applying functional principles in a JavaScript application.
#4about 3 minutes
Understanding and writing pure functions
A pure function always returns the same output for the same input and avoids dependency on global variables to ensure predictable results.
#5about 2 minutes
Maintaining immutability in JavaScript
Avoid mutating original data structures like arrays by using techniques such as the spread operator to create new instances.
#6about 1 minute
Using higher-order functions for clean code
Higher-order functions like map and reduce process data structures without mutating the original value, leading to safer and more declarative code.
#7about 1 minute
Identifying and minimizing side effects
Side effects are any changes outside a function's return value, such as logging or mutating global variables, which should be minimized.
#8about 2 minutes
Real-world applications of functional programming
Functional principles are applied in modern development through tools like React functional components, Redux reducers, and atomic design systems.
#9about 4 minutes
Managing necessary side effects in applications
Handle unavoidable side effects like API calls, logging, and routing by isolating them using middleware patterns like Redux epics or observables.
#10about 6 minutes
Audience Q&A on functional programming concepts
The speaker answers audience questions about organizing large functional codebases, the cons of FP, using libraries like Immutable.js, and performance implications.
Related jobs
Jobs that call for the skills explored in this talk.
How to Avoid Over-EngineeringIn today’s software development world, the demand for designing applications that are both robust and easy to maintain is more pressing than ever. Many developers encounter the architectural chaos left behind in older codebases, leading to frustratio...
SciChart
The Fastest JavaScript Charts - Built for React and BeyondFor most developers, browser charting works fine — until it doesn’t. Once you push beyond tens of thousands of points, add live streaming, or need advanced interactions, the story changes: frame drops, frozen dashboards, memory issues.
That’s where S...
Benjamin Ruschin
The HTML Elements That You’re Probably Over-EngineeringAs frameworks have become more and more commonplace in the world of web development, so too has the over-engineering of features made possible by our humble old friend, HTML.
The mental models that come with using state management in React, Vue and o...
Daniel Cranney
Exploring TypeScript: Benefits for Large-Scale JavaScript ProjectsJavaScript is the backbone of web development, powering everything from small websites to large-scale enterprise applications. However, as projects grow in complexity, maintaining JavaScript code can become increasingly difficult. This is where TypeS...
From learning to earning
Jobs that call for the skills explored in this talk.