Course Outline
Introduction
Functional Programming in Depth
- Object-oriented programming vs functional programming.
- First-class functions and higher-order functions.
Functional Programming in C++
- Writing code in a functional style.
- Creating lambda functions.
- Capturing objects.
- Merging functions.
Metaprogramming and Functional Reactive Programming
- Applying factorials.
- Using C++ template libraries and functional programming libraries.
- Working with Reactive extensions and RxCpp library.
Functional C++ Development
- Building applications.
- Using higher-order functions.
- Working with error handling.
- Implementing functors and monads.
- Refactoring code.
- Writing unit tests.
- Profiling performance.
- Multithreading applications.
Summary and Conclusion.
Requirements
Prerequisites
- Understanding of procedural and object-oriented programming.
- Basic experience with C++.
Audience
- Web Developers.
Testimonials (3)
Detailed explanation, re-iteration of points in a quite subtle way that really drove the knowledge home very well. Rod's willingness to double-check the odd obscure question that we rasied, to be sure that his answers were 100% right. Also, his interest in discussing the pros & cons of alternate coding styles so that we learnt not only how to use C++ in our intended way, but why it should be done that way.
Nick Dillon - cellxica Ltd
Course - Using C++ in Embedded Systems - Applying C++11/C++14
Experience sharing, it's teacher's know-how and valuable.
Carey Fan - Logitech
Course - C/C++ Secure Coding
The online-ness of it meant that we could save a lot of time. Much appreciated. Also, the fact that the trainer knew both c# and Cpp was a huge help since he could explain everything through knowledge we already possessed.