C++ Middle-Level Course Details
A middle-level C++ training course aims to build upon foundational C++ knowledge,
focusing on advanced concepts and practical skills for more complex applications.
It typically covers topics like templates, multithreading, networking, and frameworks,
enabling students to develop robust and professional C++ applications.
Module 1: Collections Framework:
- In-depth study of various collection classes
(ArrayList, LinkedList, HashSet, HashMap, etc.)
and their applications. .
Module 2: Test Driven Development and BDD:
- Understanding and implementing TDD and BDD in writing
simple C++ applications, multithreaded applications,
including thread creation, synchronization etc
Module 3: Networking
- Working with network sockets, protocols, and
HTTP for creating network-aware applications.
Module 4: Input/Output (I/O):
- Managing files, streams, and other I/O operations effectively.
Module 5: Exceptions and Error Handling:
- Learning to identify, handle, and manage exceptions and errors gracefully.
Module 6: Object-Oriented Design Principles:
- Reinforcing and expanding on object-oriented principles
(encapsulation, inheritance, polymorphism) for creating well-structured code.
Module 7: Exception Handling
- How use Try and Catch.
- Handle Errors Gracefully
- Throw Statement and Throwables
- Exceptions and Exception handlings,Exception Subclasses
- Multi-Catch and Final Rethrow
Module 8: C++ Streams
- Streams, Readers, and Writers.
- Byte and Character Streams
- Reading Console Input
- Reading and Writing Files, Binary data
- File I/O Using Character Streams
- Constructing a BufferedReader/FileReader
Module 9: Multi-Threading -Concurrencies
- Multithreading basics.
- Thread Class Methods
- The Thread classes and Runnables
- Thread and Multiple Threads
- Synchronisations, priorities and thread Communications
Module 10: Data Structures and Algorithms:
- Understanding and applying common data structures (linked lists, trees, graphs)
and algorithms (sorting, searching).
Module 11: Relational Databases
- Leveraging the DB Connections with API.
- Database drivers
- Connections to Databases
- Writing and Retriving from Databases