Functional Programming in C++: How to improve your C++ programs using functional techniques

Functional Programming in C++: How to improve your C++ programs using functional techniques book cover

Functional Programming in C++: How to improve your C++ programs using functional techniques

Author(s): Ivan Cukic (Author)

  • Publisher Finelybook 出版社: Manning
  • Publication Date 出版日期: November 19, 2018
  • Edition 版本: First Edition
  • Language 语言: English
  • Print length 页数: 320 pages
  • ISBN-10: 1617293814
  • ISBN-13: 9781617293818

Book Description

Summary

Functional Programming in C++ teaches developers the practical side of functional programming and the tools that C++ provides to develop software in the functional style. This in-depth guide is full of useful diagrams that help you understand FP concepts and begin to think functionally.

Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications.

About the Technology

Well-written code is easier to test and reuse, simpler to parallelize, and less error prone. Mastering the functional style of programming can help you tackle the demands of modern apps and will lead to simpler expression of complex program logic, graceful error handling, and elegant concurrency. C++ supports FP with templates, lambdas, and other core language features, along with many parts of the STL.

About the Book

Functional Programming in C++ helps you unleash the functional side of your brain, as you gain a powerful new perspective on C++ coding. You’ll discover dozens of examples, diagrams, and illustrations that break down the functional concepts you can apply in C++, including lazy evaluation, function objects and invokables, algebraic data types, and more. As you read, you’ll match FP techniques with practical scenarios where they offer the most benefit.

What’s inside

  • Writing safer code with no performance penalties
  • Explicitly handling errors through the type system
  • Extending C++ with new control structures
  • Composing tasks with DSLs

About the Reader

Written for developers with two or more years of experience coding in C++.

About the Author

Ivan Čukićis a core developer at KDE and has been coding in C++ since 1998. He teaches modern C++ and functional programming at the Faculty of Mathematics at the University of Belgrade.

Table of Contents

  1. Introduction to functional programming
  2. Getting started with functional programming
  3. Function objects
  4. Creating new functions from the old ones
  5. Purity: Avoiding mutable state
  6. Lazy evaluation
  7. Ranges
  8. Functional data structures
  9. Algebraic data types and pattern matching
  10. Monads
  11. Template metaprogramming
  12. Functional design for concurrent systems
  13. Testing and debugging

Editorial Reviews

Editorial Reviews

Review

“Offers precise, easy-to-understand, and engaging explanations of
functional concepts.”
–Sumant Tambe, LinkedIn

“An excellent read. Comprehensive code examples illustrate the
implementation of functional programming patterns using C++14/C++17
constructs.”
–Keerthi Shetty, FactSet Research Systems

“Provides elegant, easy-to-grasp, ready-to-use examples that will
improve the way you think about coding.”
–Nikos Athanasiou, BETA CAE Systems

“Presents a new way of writing quality software and a new way of
thinking.”
–Gian Lorenzo Meocci, CommProve

“Particularly valuable for intermediate/advanced C++ developers who
want to embrace reactive-style programming.”
–Marco Massenzio, Apple

About the Author

Dr Ivan Čukićhas been teaching modern C++ techniques and functional programming at the Faculty of Mathematics in Belgrade for a decade and has been using C++ for more than 20 years. He has been researching functional programming in C++ before and during his PhD studies, and uses the techniques in real-world projects. He is one of the core developers in KDE, the largest free/libre open source C++ project.

View on Amazon

下载地址

PDF, EPUB | 6 MB | 2019-03-13 | 注:修复失效网盘
下载地址 Download请完成验证以访问链接!
打赏
未经允许不得转载:finelybook » Functional Programming in C++: How to improve your C++ programs using functional techniques

评论 抢沙发

觉得文章有用就打赏一下文章作者

您的打赏,我们将继续给力更多优质内容

支付宝扫一扫

微信扫一扫