Kursplan
Modul 1 (C++ fas 1)
- Introduktion + Referenser
- Grundläggande
- Workshop: Grundläggande
- Överlagring
- Vad kan vi överlagra, och hur.
- Extratyper i C++ (bool & referens)
- Workshop: Överlagring
- OOP
- Kort introduktion till OOP
- Klasser
- Structs
- Tillgångsmodifikatorer
- Konstruktor
- default-/delete-funktioner
- Initieringssyntax / konstruktorinitieringslista
- Workshop: Klasser
- Minne
- Klassisk minnesinteraktion
- Workshop: Minne
Modul 2
- Introduktion till kvantitativ finans
- Modeller för diskret tid
- Modeller för kontinuerlig tid
- Räntemodeller
- Optioner på obligationer
- Modeller för kortränta
- Modeller för framtidig ränta
- Marknadsmodeller
Modul 3 (C++ fas 2 & Kvantitativ sista fas)
- Arv
- Konstruktion
- Polymorphism
- Virtual, pure virtual, abstract, interface
- Tillgångsmodifikatorer
- Workshop: Arv (Former)
- Undantag
- Vad är de?
- Hur fungerar de?
- Vad ska kastas och vad ska fångas?
- Workshop: Undantag
- Minnesuttömning
- Hur notifieras det?
- Hantera det
- Modern minneshantering
- RAII
- Templates tillämpade på modern minneshantering (SmartPointer)
- Standardiserade C++11 SmartPointers
- Nullptr
- Workshop: SmartPointers
- Namnområden
- Workshop: Namnområden
- Vasicek obligationer i C++
- Black-Scholes-modellering i C++ put & call
- Introduktion till Monte Carlo-simulering
- Hur man prisätter optioner med simulering
- Monte Carlo-simulering i C++
- Geometrisk Brownsk rörelse
- Amerikanska vs Europeiska optioner
- Skivebaserad värdering: Gittermetod
- Skivebaserad värdering: PDE-metod
- Skivebaserad värdering: PDE-metod
- Värdering av amerikanska (datum förutbestämda) Bermudanska optioner
Modul 4 - C++ sista fas
- auto
- Det nya auto-nyckelordet
- Den nya autosyntaxen för returvärden
- enum
- Nystilade enum
- constexpr
- Nya konstanta uttryck
- Om konstanthet
- Förklaring av const och mutable
- Lambdas & funktionsobjekt
- Klasser som fungerar som funktioner
- Introduktion av lambda-funktioner
- Chrono
- En introduktion till det nya Chrono-biblioteket
Modul 5
- Kastning (Casting)
- Standardbibliotek
- String
- Kontraintervall
- Vector (vs)
- List
- Map
- Array
- Tuple
- Initieringslistor
- Iterators
- range-for-syntax
- Std-algoritmer
- Streams
- Övriga nyckelord
- static
- explicit
Modul 6
- Rörelsesemantik
- Introduktion till L/R-värden
- R-value-referenser tillämpade på rörelsesemantik
- Type Traits
- Att erhålla information vid kompileringstid
- Konkurrens
- Introduktion till C++11:s trådhantering, async/future och atomtypernas implementering
- Variadiska templates - En introduktion till C++11:s variadiska templates
Krav
Allmän programmeringskunskap
Vittnesmål (3)
Detaljerad förklaring, en ganska subtil återupprepning av punkterna som verkligen fastsatte kunskapen på ett bra sätt. Rods vilja att dubbelkolla de mera oklarfrågor vi ställde för att vara säker på att hans svar var 100% korrekta. Dessutom, hans intresse för att diskutera fördelarna och nackdelarna med alternativa programmeringstilar så att vi inte bara lärde oss hur man använder C++ på den tänkta sättet, utan också varför det ska göras på det sättet.
Nick Dillon - cellxica Ltd
Kurs - Using C++ in Embedded Systems - Applying C++11/C++14
Maskintolkat
Erfarenhetsdelning, lärarens kunskap och värde är betydande.
Carey Fan - Logitech
Kurs - C/C++ Secure Coding
Maskintolkat
Det faktum att det var online betydde att vi kunde spara mycket tid. Mycket uppskattat. Dessutom hjälpte det att utbildaren kände till både c# och Cpp, eftersom han kunde förklara allt med hjälp av kunskap vi redan hade.
Gabor - Rheinmetall Electronics Hungary Kft
Kurs - Advanced C++
Maskintolkat