22
33[ 中文] ( README.md ) | English
44
5+ > A systematic modern C++ tutorial -- from foundational syntax to embedded practice, with compilable code examples for every concept
6+
7+ <p align =" center " >
8+ <a href =" https://awesome-embedded-learning-studio.github.io/Tutorial_AwesomeModernCPP/ " >
9+ <img src="https://img.shields.io/badge/📖_Read_Docs_Online-Live-blue?style=for-the-badge" alt="Online Docs">
10+ </a >
11+ </p >
12+
513![ C++] ( https://img.shields.io/badge/C%2B%2B-11%20%7C%2014%20%7C%2017%20%7C%2020%20%7C%2023-blue?logo=c%2B%2B )
614![ Release] ( https://img.shields.io/github/v/release/Awesome-Embedded-Learning-Studio/Tutorial_AwesomeModernCPP )
715![ License] ( https://img.shields.io/github/license/Awesome-Embedded-Learning-Studio/Tutorial_AwesomeModernCPP )
8- ![ Stars] ( https://img.shields.io/github/stars/Awesome-Embedded-Learning-Studio/Tutorial_AwesomeModernCPP )
9- ![ Issues] ( https://img.shields.io/github/issues/Awesome-Embedded-Learning-Studio/Tutorial_AwesomeModernCPP )
1016![ Build] ( https://img.shields.io/github/actions/workflow/status/Awesome-Embedded-Learning-Studio/Tutorial_AwesomeModernCPP/deploy.yml?branch=main )
11- [ ![ Docs] ( https://img.shields.io/badge/docs-online-blue )] ( https://awesome-embedded-learning-studio.github.io/Tutorial_AwesomeModernCPP/ )
12-
13- > A systematic modern C++ tutorial -- from foundational syntax to embedded practice, from the standard library in depth to concurrent programming, with compilable code examples for every concept
1417
1518---
1619
1720## Highlights
1821
19- - ** Systematic Learning Path ** -- 8 volumes from beginner to advanced, each with clear prerequisites, building progressively
20- - ** Practice-Driven ** -- Every concept comes with a compilable CMake project, not isolated code snippets
21- - ** Multi-Platform Coverage ** -- STM32 / ESP32 / RP2040 embedded practice, going beyond desktop
22- - ** Tag Navigation** -- Browse articles by topic, C++ standard, difficulty, platform, and more
23- - ** Online Reading** -- MkDocs documentation site with search and navigation
22+ - ** 9-Volume System ** -- From C crash course to embedded practice, forming a complete learning loop
23+ - ** Compilable Examples ** -- Every concept comes with a CMake project, not isolated code snippets
24+ - ** Embedded Practice ** -- STM32 / ESP32 / RP2040 multi-platform real hardware projects
25+ - ** Tag Navigation** -- Browse articles by topic, C++ standard, difficulty, and platform
26+ - ** Online Reading** -- Full-featured documentation site with search, navigation, and dark mode
2427
2528---
2629
2730## Content Architecture
2831
2932``` mermaid
3033graph LR
31- V1["Volume 1 Fundamentals"] --> V2["Volume 2 Modern Features"]
32- V2 --> V3["Volume 3 Std Library"] & V4["Volume 4 Advanced"] & V5["Volume 5 Concurrency"] & V6["Volume 6 Performance"] & V7["Volume 7 Engineering"]
33- V2 --> V8["Volume 8 Domain Apps"]
34+ V1["Vol. 1 Fundamentals"] --> V2["Vol. 2 Modern Features"]
35+ V2 --> V3["Vol. 3 Std Library"] & V4["Vol. 4 Advanced"] & V5["Vol. 5 Concurrency"] & V6["Vol. 6 Performance"] & V7["Vol. 7 Engineering"]
36+ V2 --> V8["Vol. 8 Domain Apps"]
3437 V8 --> E["Embedded"] & N["Networking"] & G["GUI"] & D["Data"] & A["Algorithms"]
38+ V2 --> V9["Vol.9 Open Source"]
39+ V9 --> OC["Chrome Code Study"] & OS["Other Projects"]
3540```
3641
37- ### Tutorial Structure
42+ <details >
43+ <summary >Volume details and progress</summary >
3844
3945| Volume | Topic | Articles | Difficulty | Status |
4046| :--:| ------| :------:| :----:| :----:|
4147| 1 | [ C++ Fundamentals] ( documents/vol1-fundamentals/ ) -- types, control flow, functions, pointers, classes, template basics | 49 | beginner | Completed |
42- | 2 | [ Modern C++ Features] ( documents/vol2-modern-features/ ) -- move semantics, smart pointers, constexpr, Lambda | 35-40 | intermediate | Completed |
48+ | 2 | [ Modern C++ Features] ( documents/vol2-modern-features/ ) -- move semantics, smart pointers, constexpr, Lambda | 44 | intermediate | Completed |
4349| 3 | [ Standard Library In Depth] ( documents/vol3-standard-library/ ) -- containers, iterators, algorithms, strings, allocators | 40-50 | intermediate | Planned |
4450| 4 | [ Advanced Topics] ( documents/vol4-advanced/ ) -- Concepts, Ranges, coroutines, modules, template metaprogramming | 50-60 | advanced | Planned |
4551| 5 | [ Concurrent Programming] ( documents/vol5-concurrency/ ) -- thread primitives, atomic operations, lock-free programming, async I/O | 25-30 | advanced | Planned |
4652| 6 | [ Performance Optimization] ( documents/vol6-performance/ ) -- CPU cache, SIMD, reading assembly, benchmarking | 18-22 | advanced | Planned |
4753| 7 | [ Software Engineering Practices] ( documents/vol7-engineering/ ) -- CMake, testing, static analysis, DevOps | 30-35 | intermediate | Planned |
4854| 8 | [ Domain Applications] ( documents/vol8-domains/ ) -- embedded / networking / GUI / data storage / algorithms | 80-100 | intermediate | In Progress |
55+ | 9 | [ Open Source Project Study] ( documents/vol9-open-source-project-learn/ ) -- reading and analyzing open source codebases | 13+ | intermediate | In Progress |
4956| - | [ Compilation & Linking In Depth] ( documents/compilation/ ) -- preprocessing, assembly, linking, debug symbols | 10+ | intermediate | Completed |
5057| - | [ Capstone Projects] ( documents/projects/ ) -- hand-rolled STL, mini HTTP server, embedded OS | - | advanced | Planned |
5158
59+ </details >
60+
5261---
5362
5463## Learning Paths
5564
5665``` mermaid
5766flowchart TD
5867 subgraph PathA["Path A -- C and Embedded Experience"]
59- A1["Volume 2: Modern C++ Features"] --> A2["Volume 8: Embedded Development"]
68+ A1["Vol. 2: Modern C++ Features"] --> A2["Vol. 8: Embedded Development"]
6069 end
6170 subgraph PathB["Path B -- C++ Experience"]
62- B1["Volume 8: Fundamentals Review"] --> B2["Platform Tutorials"] --> B3["RTOS Practice"]
71+ B1["Vol. 8: Fundamentals Review"] --> B2["Platform Tutorials"] --> B3["RTOS Practice"]
6372 end
6473 subgraph PathC["Path C -- Both"]
6574 C1["Jump to any topic of interest"]
6675 end
6776 subgraph PathD["Path D -- Complete Beginner"]
68- D1["Volume 1: C++ Fundamentals (incl. C crash course)"] --> D2["Volume 2: Modern C++ Features"]
77+ D1["Vol. 1: C++ Fundamentals (incl. C crash course)"] --> D2["Vol. 2: Modern C++ Features"]
6978 end
7079 Start(["Your starting point?"]) -->|"C + Embedded"| PathA
7180 Start -->|"C++ Experience"| PathB
@@ -112,30 +121,28 @@ cd Tutorial_AwesomeModernCPP
112121
113122---
114123
115- ## Version History
124+ <details >
125+ <summary >Version history / Branches / Directory structure</summary >
126+
127+ ** Version History**
116128
117129| Version | Date | Notes |
118130| ------| ------| ------|
119131| [ v0.1.0] ( changelogs/v0.1.0.md ) | 2026-04-29 | Initial public release -- Vol 1/2, compilation, and embedded tutorials |
120132
121133See [ changelogs/] ( changelogs/ ) for full release history.
122134
123- ---
124-
125- ## Branch Overview
135+ ** Branch Overview**
126136
127137| Branch | Purpose | Status |
128138| ------| ------| ------|
129139| ` main ` | Primary development branch | Active |
130140| ` archive/legacy_20260415 ` | Pre-restructuring archive | Read-only |
131141| ` gh-pages ` | Auto-deployed documentation site | Auto-generated |
132142
133- ---
143+ ** Project Directory Structure **
134144
135- <details >
136- <summary >Project directory structure</summary >
137-
138- ```
145+ ``` text
139146Tutorial_AwesomeModernCPP/
140147├── documents/ # Tutorial Markdown files
141148│ ├── vol1-fundamentals/ # Volume 1: C++ Fundamentals (ch00-ch12 + C crash course)
@@ -151,10 +158,13 @@ Tutorial_AwesomeModernCPP/
151158│ │ ├── gui-graphics/ # GUI and Graphics
152159│ │ ├── data-storage/ # Data Storage
153160│ │ └── algorithms/ # Algorithms and Data Structures
161+ │ ├── vol9-open-source-project-learn/ # Volume 9: Open Source Project Study
154162│ ├── compilation/ # Compilation & Linking In Depth
155163│ ├── projects/ # Capstone Projects
156164│ └── index.md # Tutorial home page
157165├── code/ # Example code
166+ │ ├── volumn_codes/vol1/ # Volume 1 code and exercises
167+ │ └── examples/ # Legacy code examples
158168├── scripts/ # Developer tool scripts
159169├── todo/ # Content planning and progress tracking
160170└── mkdocs.yml # MkDocs site configuration
@@ -189,11 +199,5 @@ This project references the following excellent resources:
189199
190200- ** License** : [ MIT License] ( ./LICENSE )
191201- ** Issues** : [ Submit an issue] ( https://github.com/Awesome-Embedded-Learning-Studio/Tutorial_AwesomeModernCPP/issues )
192- - ** Email** : 725610365@qq.com
202+ - ** Email** : < 725610365@qq.com >
193203- ** Organization** : [ Awesome-Embedded-Learning-Studio] ( https://github.com/Awesome-Embedded-Learning-Studio )
194-
195- ---
196-
197- <p align =" center " >
198- <b >Learn modern C++ systematically, from fundamentals to practice</b >
199- </p >
0 commit comments