Open
Description
What lessons do we want to put into the first version?
Lessons
The following lists the lessons which could go in. None of this is set in stone yet and may change at any time. Please contribute! All opinions are appreciated.
If the lesson is being worked on, you'll see a number after it's name, which will lead you to the issue where you can discuss the lesson further. Please don't discuss lessons content here!
1. Language Basics
- Introduction to the Tour - Lesson 0: Introduction #12
- Lesson 1: Syntax - Lesson 1: Syntax #13
- Lesson 2: int main(void)
- Lesson 3: Variables
- Lesson 4: Basic Types
- Lesson 5: Functions
- Lesson 6: int main(int, char **) revisited
- Lesson 7: Scopes
- Lesson 8: Constants
- Lesson 9: Arrays
- Lesson 10: Includes & Namespaces
- Lesson 11: Flow Control
- Lesson 12: Loops
- Lesson 13: Structs & Classes
2. Standard Library
- Lesson 1:
std::string
- Lesson 2:
std::vector
- Lesson 3:
std::unordered_map
- Lesson 4:
std::unique_ptr
,std::shared_ptr
- Lesson 5:
<algorithm>
- Lesson 6:
<type_traits>
- Lesson ?: Custom allocators
3. Advanced
- Lesson ?: Pointers
- Lesson ?: Operators
4. Common Concepts
- Lesson ?: RAII
- Lesson ?: IIFE
- Lesson ?: Iterators
5. Concurrency
- Lesson ?: Threads
- Lesson ?: Locks
X. Building C++
- Lesson ?: Setting up a local environment
- Lesson ?: Windows: Installing Visual Studio
- Lesson ?: macOS: Installing Xcode
- Lesson ?: Linux: Installing GCC
- Lesson ?: Build System
- Lesson ?: Make
- Lesson ?: CMake
- Lesson ?: FASTBuild
- Lesson ?: Linking
X. Libraries
- Lesson ?: Boost
- Lesson ?: Ranges v3
X. Additional
- Glossary
The ordering is discussable! Don't take this order as / content as said. This is a rough first outline.