Course Outline
Module 1(C++ Phase 1)
- Intro + References
- Basics
- Workshop Basics
- Overloading
- What can we overload, and how.
- Extra C++ Types (bool & reference)
- Workshop overloading
- OOP
- Quick introduction to Oop
- Classes
- Structs
- Access Modifiers
- Constructor
- default/delete functions
- initializer syntax / constructor initialization list
- Workshop classes
- Memory
- Classical memory interaction
- Workshop Memory
Module 2
- Introduction to quantitative finance
- Discrete Time Models
- Continuous Time Models
- Interest rate models
- Options on bonds
- Short rate Models
- Forward Rate Models
- Market Models
Module3 (C++ Phase2 & Quantitative final phase)
- Inheritance
- Construction
- Polymorphism
- Virtual, pure virtual, abstract, interface
- Access modifiers
- Workshop Inheritance (Shapes)
- Exceptions
- What are they
- How do they work
- What to throw and what to catch
- Workshop exceptions
- Memory exhaustion
- How it’s notified
- How to handle
- Modern Memory Management
- RAII
- Templates applied to Modern Memory Management (SmartPointer)
- Standardized C++11 SmartPointers
- Nullptr
- Workshop SmartPointers
- Namespaces
- Workshop Namespaces
- Vasicek Bond Prices in C++
- Black-Scholes Modeling in C++ put &call
- Introduction to Monte carlo Simulation
- How to price options using Simulation
- Monte carlo Simulation in C++
- Geometric Brownian Motion
- American Vs European Options
- Slice based valuation :Lattice Method
- Slice based valuation :PDE Method
- Slice based valuation :PDE Method
- Valuation of American (dates Predetermined) Bermudan Option
Module 4 -C++ Final phase
- auto
- The new auto keyword
- The new auto return syntax
- enum
- New style enums
- constexpr
- New constant expressions
- About constness
- Const and Mutable explained
- Lambdas & function objects
- Classes that act like functions
- Introduction lambda functions
- Chrono
- An introduction to the new Chrono library
Module 5
- Casting
- Standard library
- String
- Containers
- Vector (vs)
- List
- Map
- Array
- Tuple
- Initializer lists
- Iterators
- range-for syntax
- Std Algorithms
- Streams
- Miscellaneous Keywords
- static
- explicit
Module 6
- Move semantics
- Introduction to L/R values
- R-value-references applied to move semantics
- Type Traits
- Obtaining information on compile time
- Concurrency
- Introduction to C++11’s Threading, async/future and atomic types implementation
- Variadic templates - An introduction to C++11’s variadic templates
Requirements
General Programming Knowledge
Testimonials
way of conducting
HSBC Service Delivery (Polska) Sp. z o.o.
C++ issues were immediately implemented on computers by training participants.
Paweł Musiał
Training in the form of workshops with the exercises themselves. The whole theory applied, without unnecessary presentations
GMV Innovating Solutions Sp. z o.o.
The way of conducting classes and the comprehensive knowledge of the trainer
GMV Innovating Solutions Sp. z o.o.
Excellent trainer with huge knowledge about the subject.
Krzysztof - GMV Innovating Solutions Sp. z o.o.
Chosen topics were OK.
- ZITRO LABORATORY
In my humble opinion, the trainer, he has explained everything with a perfect rhythm maintaining the balance between theoretical and practical material. Beside this, the material was fine.
Héctor González Gómez - ZITRO LABORATORY
I liked the mix of theory and exercises.
- ZITRO LABORATORY
Knowledge, cross-sectional view
- Merit Poland sp. z o.o.
I was benefit from the time tracking and staying on subject.
- BK Medical
Anjum is extremely knowledgeable about the areas in which he has experience. His training was theory-heavy, but I think he was usually great at explaining theories.
- BK Medical
The practical exercises
- Corvil
The hands-on approach to explain the concepts.
- Corvil
Exercise and be able to experiment.
- Corvil
Animation
- Controtek Solutions Inc
plenty of exercises, less presentation
- Controtek Solutions Inc
Great training atmosphere.
April Faith Manabat - Controtek Solutions Inc
Lots of nice exercises. The trainer had impressive knowledge and experience.
Robert Bosch Kft.
Examples, applications of C++11/14 techniques.
Robert Bosch Kft.
I liked Saidu's personal approach to the training. She was approachable and patient with us even through the somewhat challenging medium of online training. I personally like the online training format. I found it very relaxed and the technology worked reasonably well with a few glitches here and there. However some of those issues I think were related to issues on the participants' end. I never lost connection or dropped audio or video even once. However my Internet is very good. As I said, the pace was slow for me, and I would have preferred to have covered more advanced topics that I will be dealing with right away in our work Qt code, but I did learn a lot of good basics from Saidu so I appreciate that very much. I answered yes to the question "Would you attend another training session taught by this trainer" but I say that with some hesitation. I would have to know that the delivery was going to be more organised and planned than this training.
Department of Defense
Threading, albeit I had to not follow much of the exercise do practice it.
Bethesa Studios
The subjects that were touched were interesting to me. (Widgets, DB, create UI with the Designer tool)
Bethesa Studios
Trainer is definitely experienced in debugging and getting qt applications to run on the fly.
Home Team Science and Technology Agency
The details on how compiler behaves depending on to the syntax usage. The "Quiz" sections are very stimulating
Andrea Pomatto - Inpeco SpA
Slobodan Dmitrović is an excelent teacher on the subject and knows how to buildup the fundations to have a solid starting point in C++. Direct style supported with exercises and easy-going lectures even if the course was 5 hours per day.