Model, C++ & Tools
Model: system overview

Entities
Model: Low level Design
3 axes to describe a system
-
Functional => what
- use case / user story
- Static => structure => how
- Layers
- Class diagram (UML)
[heritage, association, aggregat, composition] - Component diagram (UML)
- Database (sql)
- Dynamic => behavour => when
- Message Sequence Chart (UML)
- State machine (UML)
- Real time stucture
C++ mechanism
(think data instead of function)
Abstraction / Specialisation
- Encapsulation & surcharge (inside a class)
- Heritage & polymorphisme (surchage between object)
Canvas
- Template (class & function)
C++ syntaxe
- class & struct
- reference vs pointer
- enum & class enum
- object canonical form
- key words meaning
- const usage
- static usage
- template (class & function)
- namespace
- C++11, C++14
C++ tool box
- STL
- list
- vector
- Template
- mixin
- trait
-
Design Pattern
- singleton
- interface
- facade
- factory, visitor
- state machine
- Boost = C++ lab
C++ methodology
- interface & dependances injection
- unit test stub & moc
C++ memory management
- placement new
- allocator & free list
Tools
- IDE
- emacs & rtag
- Model & Code
- PlantUML (model => graphical view)
- BOUML (model <=> code)
- State Machine: SMC (model => code + graphical view)
Model, C++ &
By Mathieu KAPFER
Model, C++ &
- 165