C++ Reactive Programming: Design concurrent and asynchronous applications using the RxCpp library and Modern C++17
by: Praseed Pai – Peter Abraham
ISBN-10: 1788629779
ISBN-13: 9781788629775
Released: 2018-06-29
Pages: 328
Book Description
Reactive programming is an effective way to build highly responsive applications with an easy-to-maintain code base. This book covers the essential functional reactive concepts that will help you build highly concurrent,event-driven,and asynchronous applications in a simpler and less error-prone way.
C++ Reactive Programming begins with a discussion on how event processing was undertaken by different programming systems earlier. After a brisk introduction to modern C++ (C++17),you’ll be taken through language-level concurrency and the lock-free programming model to set the stage for our foray into the Functional Programming model. Following this,you’ll be introduced to RxCpp and its programming model. You’ll be able to gain deep insights into the RxCpp library,which facilitates reactive programming. You’ll learn how to deal with reactive programming using Qt/C++ (for the desktop) and C++ microservices for the Web.
By the end of the book,you will be well versed with advanced reactive programming concepts in modern C++ (C++17).
Contents
1: REACTIVE PROGRAMMING MODEL – OVERVIEW AND HISTORY
2: A TOUR OF MODERN C++ AND ITS KEY IDIOMS
3: LANGUAGE-LEVEL CONCURRENCY AND PARALLELISM IN C++
4: ASYNCHRONOUS AND LOCK-FREE PROGRAMMING IN C++
5: INTRODUCTION TO OBSERVABLES
6: INTRODUCTION TO EVENT STREAM PROGRAMMING USING C++
7: INTRODUCTION TO DATA FLOW COMPUTATION AND THE RXCPP LIBRARY
8: RXCPP – THE KEY ELEMENTS
9: REACTIVE GUI PROGRAMMING USING QT/C++
10: DESIGN PATTERNS AND IDIOMS FOR C++ RX PROGRAMMING
11: REACTIVE MICROSERVICES USING C++
12: ADVANCED STREAMS AND HANDLING ERRORS
What You Will Learn
Understand language-level concurrency in C++
Explore advanced C++ programming for the FRP
Uncover the RxCpp library and its programming model
Mix the FP and OOP constructs in C++ 17 to write well-structured programs
Master reactive microservices in C++
Create custom operators for RxCpp
Learn advanced stream processing and error handling
Authors
Praseed Pai
Praseed Pai has been working in the software industry for the last 25 years,starting his career as a MS-DOS systems programmer using ANSI C. He has been actively involved in developing large-scale,cross-platform,native code-based systems using C++ on Windows,GNU Linux,and macOS X. He has experience in COM+ and CORBA programming using C++. In the last decade,he has worked with Java- and .NET-based systems.
He is the primary implementer of the SLANG4.net compilation system,which has been ported to C++ with an LLVM backend. He coauthored .NET Design Patterns,by Packt Publishing.
Peter Abraham
Peter Abraham has been a performance fanatic and a C/C++ programming language enthusiast right from his college days,where he excelled in Microsoft Windows programming and GNU Linux programming. He garnered experience in working with CUDA,image processing,and computer graphics programs by virtue of working with companies such as Quest Global,Siemens,and Tektronics.
Peter has been eagerly following the C++ standard and RxCpp libraries as part of his profession. He has worked with cross-platform GUI toolkits such as Qt,WxWidgets,and FOX toolkit