Functional Programming with Go: Functional Design and Implementation in Go

  • 3h 15m
  • Amrit Pal Singh
  • BPB Publications
  • 2024

"Functional Programming with Go" is a comprehensive guide to introduce Go developers to the powerful concepts of functional programming. This book covers topics like first-class functions, closures, higher-order functions, immutability, and pure functions. It also demonstrates how these principles can enhance code quality, reliability, and maintainability.

Starting with functional programming basics and setup, it covers first-class functions, closures, and higher-order functions like map, filter, and reduce. You will learn advanced techniques like currying, immutability, and functional error handling with monads. The book also explores concurrent programming with FP in Go, design patterns, functional web development, testing, debugging, and advanced topics like memoization.

This book equips you with the knowledge and skills needed to write efficient, scalable, and robust Go applications. By the end of this book, you will have the knowledge and skills to apply functional programming principles in Go.

KEY FEATURES

  • Learn core functional programming (FP) concepts and their advantages for Go development.
  • Implement practical techniques like closures, higher-order functions, and function currying for powerful codes.
  • Write clean and maintainable code using immutability and pure functions.

WHAT YOU WILL LEARN

  • Applying functional programming concepts to enhance code quality.
  • Leveraging higher-order functions and closures for flexible code.
  • Implementing advanced techniques like function currying and partial application.
  • Writing pure functions and using immutable data structures in Go.
  • Handling errors efficiently using monads and functional techniques.
  • Designing concurrent systems with goroutines and channels in Go.

WHO THIS BOOK IS FOR

This book is designed for Go developers who want to enhance their skills in functional programming. It is also suitable for programmers with a basic understanding of Go.

About the Author

Amrit Pal Singh is currently serving as Senior Director of Cloud Software at Caavo, based in Bengaluru, India. With a career spanning over 19 years, he has extensive experience in various domains. These include high-performance web backend platforms, cloud services deployment, media middleware, and firmware development.

Amrit holds a Master’s degree in Software Systems from Birla Institute of Technology and Science, Pilani. He has authored patents in the fields of media content management and search, which demonstrate his innovative contributions to the industry. In addition to his technical roles, Amrit is an active content creator on YouTube, where he shares insights on technology and software programming. His areas of interest include product development, system software and firmware, web-scale cloud computing system architectures, machine learning, and AI.

In this Book

  • Introduction to Functional Programming
  • First-Class Functions and Closures
  • Higher-Order Functions
  • Function Currying and Partial Application
  • Immutability and Pure Functions
  • Error Handling in Functional Go
  • Concurrency in a Functional Style
  • Functional Design Patterns
  • Functional Web Development with Go
  • Functional Testing and Debugging
  • Beyond the Basics: Advanced Functional Go
  • Conclusion and Next Steps
SHOW MORE
FREE ACCESS