C#28 phases · 112 topics
Progress
0 / 112
Foundations
▸
System.Reflection Architecture
▸
Custom Attributes & AttributeUsage
▸
Dynamic Invocation & Performance
Core Concepts
▸
Reflection Emit & Dynamic Assemblies
▸
Source Generators (Roslyn)
▸
Expression Trees
Intermediate Skills
▸
Unmanaged Callers & Function Pointers
▸
Task & ValueTask Semantics
▸
ConfigureAwait & Context
Advanced Topics
▸
Async Streams (IAsyncEnumerable<T>)
▸
Channels (System.Threading.Channels)
▸
AsyncValueTask Pooling & IValueTaskSource
Expert Level
▸
Task vs Thread Differences
▸
SynchronizationContext & AsyncLocal
▸
IEnumerable & IQueryable
Mastery
▸
LINQ Method Chain & Deferred Execution
▸
LINQ Provider Implementation
▸
PLINQ for Parallel Queries
Ecosystem
▸
LINQ to SQL/EF Translation
▸
Custom LINQ Operators
▸
Expression Tree Optimization
Architecture
▸
Generic Type System
▸
Constraints (where T : struct, class, new())
▸
Covariance & Contravariance (in/out)
Optimization
▸
History: Reified vs Type Erasure
▸
Generic Method Type Inference
▸
Static Fields in Generic Types
Deployment
▸
Generic Math (INumber<T>, .NET 7)
▸
Span<T> & Memory<T>
▸
Stackalloc & Span Safety
Phase 11
▸
Unsafe & Pointer Operations
▸
MemoryMarshal & Casting
▸
Buffer Management with ArrayPool<T>
Phase 12
▸
String Interning & String.Create
▸
GC Root Generation & Object Graph
▸
Syntax Tree & Syntax Nodes
Phase 13
▸
Semantic Model & Symbols
▸
Analyzer (DiagnosticAnalyzer)
▸
Code Fix Provider
Phase 14
▸
Syntax Transformation
▸
CSharpCompilation & Emit
▸
Scripting API (CSharpScript)
Phase 15
▸
P/Invoke Declaration & Marshalling
▸
Struct Layout (Sequential, Explicit)
▸
Callback Delegates (UnmanagedFunctionPointer)
Phase 16
▸
COM Interop & COM Callable Wrapper
▸
WinRT Interop
▸
C++/CLI Bridge
Phase 17
▸
Native Memory (Marshal.AllocHGlobal)
▸
ThreadPool Internals
▸
TaskScheduler & Custom Scheduling
Phase 18
▸
Parallel.For/ForEach Patterns
▸
Barrier & CountdownEvent
▸
ReaderWriterLockSlim
Phase 19
▸
SpinLock & SpinWait
▸
Dataflow (ActionBlock, TransformBlock)
▸
Switch Expressions (C# 8+)
Phase 20
▸
Property & Tuple Patterns
▸
Positional Pattern (Deconstruct)
▸
List Patterns (C# 11)
Phase 21
▸
Relational Patterns (<, >, and, or)
▸
Pattern Combinators
▸
Pattern Matching in Recursive Types
Phase 22
▸
Incremental Generators (IIncrementalGenerator)
▸
Syntax Receiver & Pipeline
▸
Emitting Source with SourceText
Phase 23
▸
Registering Outputs
▸
Debugging Source Generators
▸
Source Gen Safety & Avoidance
Phase 24
▸
Real-World: System.Text.Json Source Gen
▸
fixed Statement & Pinning
▸
Address-of & Pointer Types
Phase 25
▸
stackalloc & Span
▸
MethodImplOptions.AggressiveInlining
▸
SuppressGCTransition
Phase 26
▸
SkipLocalsInit
▸
NativeAOT Unsafe Operations
▸
BenchmarkDotNet Methodology
Phase 27
▸
GC Overhead & Collection Modes
▸
Struct vs Class Performance
▸
Array Pooling & Rent Patterns
Phase 28
▸
ValueTask & Avoiding Allocations
▸
StringBuilder vs String Concatenation
▸
Hardware Intrinsics (SIMD)
C# RoadmapCsharp
Space mark complete
·
Esc close
·
Drag pan
·
Wheel zoom