Complete C Roadmap
|-- C _Fundamentals
| |-- Syntax_and_Structure
| |-- Data_Types_and_Variables
| |-- Operators_and_Expressions
| |-- Conditional_Statements
| |-- Loops
| |-- Input_Output
| └─ Exception_Handling
|-- *Object_Oriented_Programming*(OOP)
| |-- Classes_and_Objects
| |-- Inheritance
| |-- Polymorphism
| |-- Abstraction
| └─ Encapsulation
|-- *STL_and_Data_Structures*
| |-- Vectors, Lists, Deques
| |-- Queues, Stacks, PriorityQueues
| |-- Maps, Unordered_Map, Sets, Unordered_Set
| |-- Smart Pointers (unique_ptr, shared_ptr)
| |-- Iterators and Algorithms
| └─ Time/Space Complexity Basics
|-- *Advanced_CPP_Concepts*
| |-- Templates (Function/Class)
| |-- Lambda_Expressions
| |-- Move Semantics & Rvalue References
| |-- Exceptions, RAII
| |-- The C Standard Library (C STL)
| └─ Memory Management & Ownership
|-- *Modern_CPP_Tools_and_Techniques*
| |-- CMake
| |-- Build Systems (Make, CMake)
| |-- Debugging (gdb, LLDB)
| |-- Profiling & Optimizations
| |-- Unit Testing (GoogleTest, Catch2)
|-- *Concurrency_and_Performance*
| |-- Threads & Synchronization
| |-- std::thread, mutexes, locks
| |-- Atomic operations
| |-- Parallel Algorithms (C 17/20)
| └─ Performance best practices
|-- *Systems_Programming_and_Design*
| |-- Pointers and Memory Layout
| |-- File I/O & Streams
| |-- System calls ( Basics )
| |-- Design patterns (Factory, Singleton, Observer)
| └─ API design basics
|-- *Web_development_with_C *
| |-- REST services with C (Pistache, Boost.Beast)
| |-- CGI/HTTP basics
| |-- Embedding in servers (NGINX modules)
| └─ Interfacing with databases
|-- *Build_and_Deployment_Tools*
| |-- CMake
| |-- Makefiles
| |-- Version control (Git)
| |-- Docker (basic usage)
|-- *Interview_Preparation*
| |-- C Core Questions
| |-- OOP & Design Patterns in C
| |-- DSA Problems in C
| |-- Mock Interviews
|-- *OnlinePlatforms*
| |-- LeetCode
| |-- GeeksforGeeks
| |-- HackerRank
| └─ C Reference /
cppreference.com