Certifications
Associate
Course Summary
Absolute basics
Flow control and more data types
Functions
Accessing data and dealing with exceptions
Fundamentals of the object-oriented approach
Class hierarchy
More on classes
Exceptions - dealing with expected and unexpected problems
Course Summary
Absolute basics
- machine and high-level programming languages, compilation process
- obtaining the machine code: compilation process
- writing simple programs
- variables
- integers: values, literals, operators
- characters: values, literals, operators
- dealing with streams and basic input/output operations
Flow control and more data types
- how to control the flow of the progra
- floating point types: values, literals, operators
- more integer types: values and literals
- loops and controlling the loop execution
- logic, bitwise and arithmetic operators
Functions
- functions
- declaring and invoking functions
- side effects
- different methods of passing parameters and their purpose
- default parameters
- inline functions
- overloaded functions
Accessing data and dealing with exceptions
- converting values of different types
- strings: declarations, initializations, assignments
- string as an example of object: introducing methods and properties
- namespaces: using and declaring
- dealing with exceptions
Fundamentals of the object-oriented approach
- class
- objects
- class components
- constructors
- referring to objects
- static members
- classes and their friends
- defining and overloading operators
Class hierarchy
- base class, superclass, subclass
- inheritance: how it works
- types of inheritance
- inheriting different class components
- multiple inheritance
More on classes
- polymorphism: the notion and the purpose
- virtual methods: declaration and usage
- inheriting virtual methods
- abstraction and abstract classes
Exceptions - dealing with expected and unexpected problems
- what is an exception
- catching and throwing exceptions
- different classes and hierarchy of exceptions
- defining your own exceptions
Total: 75 Hours (approx. 25 Classes)
Professional
Course Summary
Templates
STL Sequential containers
STL Associative containers
Non-modifying STL algorithms
Modifying STL algorithms
Sorting STL operations
STL merge operations
STL utilities and functional library
STL advanced I/O
Course Summary
Templates
- What are templates
- Basic syntax
- Function templates
- Class templates
- When to use templates
- Typical problems when using templates
STL Sequential containers
- Types of sequential containers
- vector, deque, list and their API
- Sequential container adapters – stack, queue and priority queue
- Dealing with objects as container elements
- Usage – when to use what
STL Associative containers
- Types of associative containers
- set and multiset – behavior and API
- map and multimap – behavior and API
- Putting objects into set and map
- Usage – when to use what
Non-modifying STL algorithms
- Definition of a non-modifying algorithm
- List of non-modifying algorithms: for_each, find, find_if, find_end, find_first_of, adjacent_find, count, count_if, mismatch, equal, search, search_n
- Examples
- Container compatibility
Modifying STL algorithms
- Definition of a modifying algorithm
- List of modifying algorithms: transform, copy, copy_backward, swap, swap_ranges, iter_swap, replace, fill, fill_n, generate, generate_n, remove, remove_if, unique, unique_copy, reverse, reverse_copy, rotate, partition, stable_partition
- Examples
- Container compatibility
Sorting STL operations
- List of sorting algorithms: random_shuffle, sort, stable_partition, lower_bound, upper_bound, equal_range, binary_search
- Examples
- Containers compatibility
- Sorting of objects.
STL merge operations
- List of merging algorithms: merge, includes, min_element, max_element, inplace_merge
- STL operations for sets
- Examples
- Container compatibility,
STL utilities and functional library
- STL “small” tools
- List of useful functors
- Examples
STL advanced I/O
- Classes which provide the input and output capability
- Console I/O
- Formatting,
- File I/O
- Strings I/O
- Examples