Please share your thoughts on this book with others by leaving a review on the site that you bought it from. If you purchased the book from Amazon, please leave us an honest review on this book's Amazon page. This is vital so that other potential readers can see and use your unbiased opinion to make purchasing decisions, we can understand what our customers think about our products, and our authors can see your feedback on the title that they have worked with Packt to create. It will only take a few minutes of your time, but is valuable to other potential customers, our authors, and Packt. Thank you!
Hands-On Functional Programming with C++
By :
Hands-On Functional Programming with C++
By:
Overview of this book
Functional programming enables you to divide your software into smaller, reusable components that are easy to write, debug, and maintain. Combined with the power of C++, you can develop scalable and functional applications for modern software requirements. This book will help you discover the functional features in C++ 17 and C++ 20 to build enterprise-level applications.
Starting with the fundamental building blocks of functional programming and how to use them in C++, you’ll explore functions, currying, and lambdas. As you advance, you’ll learn how to improve cohesion and delve into test-driven development, which will enable you in designing better software. In addition to this, the book covers architectural patterns such as event sourcing to help you get to grips with the importance of immutability for data storage. You’ll even understand how to “think in functions” and implement design patterns in a functional way.
By the end of this book, you’ll be able to write faster and cleaner production code in C++ with the help of functional programming.
Table of Contents (23 chapters)
Preface
Free Chapter
Section 1: Functional Building Blocks in C++
An Introduction to Functional Programming
Understanding Pure Functions
Deep Dive into Lambdas
The Idea of Functional Composition
Partial Application and Currying
Section 2: Design with Functions
Thinking in Functions - from Data in to Data out
Removing Duplication with Functional Operations
Improving Cohesion Using Classes
Test-Driven Development for Functional Programming
Section 3: Reaping the Benefits of Functional Programming
Performance Optimization
Property-Based Testing
Refactoring to and through Pure Functions
Immutability and Architecture - Event Sourcing
Section 4: The Present and Future of Functional Programming in C++
Lazy Evaluation Using the Ranges Library
STL Support and Proposals
Standard Language Support and Proposals
Other Books You May Enjoy
Customer Reviews