Course
Csharp
Topics in Csharp.
84 Topics
6 Quizzes
8h 24min Est. Time
Curriculum
1
System.Reflection Architecture
System.Reflection Architecture
2
Custom Attributes & AttributeUsage
Custom Attributes & AttributeUsage
3
Dynamic Invocation & Performance
Dynamic Invocation & Performance
4
Reflection Emit & Dynamic Assemblies
Reflection Emit & Dynamic Assemblies
5
Source Generators (Roslyn)
Source Generators (Roslyn)
6
Expression Trees
Expression Trees
7
Unmanaged Callers & Function Pointers
Unmanaged Callers & Function Pointers
8
Task & ValueTask Semantics
Task & ValueTask Semantics
9
ConfigureAwait & Context
ConfigureAwait & Context
10
Async Streams (IAsyncEnumerable<T>)
Async Streams (IAsyncEnumerable<T>)
11
Channels (System.Threading.Channels)
Channels (System.Threading.Channels)
12
AsyncValueTask Pooling & IValueTaskSource
AsyncValueTask Pooling & IValueTaskSource
13
Task vs Thread Differences
Task vs Thread Differences
14
SynchronizationContext & AsyncLocal
SynchronizationContext & AsyncLocal
15
IEnumerable & IQueryable
IEnumerable & IQueryable
16
LINQ Method Chain & Deferred Execution
LINQ Method Chain & Deferred Execution
17
LINQ Provider Implementation
LINQ Provider Implementation
18
PLINQ for Parallel Queries
PLINQ for Parallel Queries
19
LINQ to SQL/EF Translation
LINQ to SQL/EF Translation
20
Custom LINQ Operators
Custom LINQ Operators
21
Expression Tree Optimization
Expression Tree Optimization
22
Generic Type System
Generic Type System
23
Constraints (where T : struct, class, new())
Constraints (where T : struct, class, new())
24
Covariance & Contravariance (in/out)
Covariance & Contravariance (in/out)
25
History: Reified vs Type Erasure
History: Reified vs Type Erasure
26
Generic Method Type Inference
Generic Method Type Inference
27
Static Fields in Generic Types
Static Fields in Generic Types
28
Generic Math (INumber<T>, .NET 7)
Generic Math (INumber<T>, .NET 7)
29
Span<T> & Memory<T>
Span<T> & Memory<T>
30
Stackalloc & Span Safety
Stackalloc & Span Safety
31
Unsafe & Pointer Operations
Unsafe & Pointer Operations
32
MemoryMarshal & Casting
MemoryMarshal & Casting
33
Buffer Management with ArrayPool<T>
Buffer Management with ArrayPool<T>
34
String Interning & String.Create
String Interning & String.Create
35
GC Root Generation & Object Graph
GC Root Generation & Object Graph
36
Syntax Tree & Syntax Nodes
Syntax Tree & Syntax Nodes
37
Semantic Model & Symbols
Semantic Model & Symbols
38
Analyzer (DiagnosticAnalyzer)
Analyzer (DiagnosticAnalyzer)
39
Code Fix Provider
Code Fix Provider
40
Syntax Transformation
Syntax Transformation
41
CSharpCompilation & Emit
CSharpCompilation & Emit
42
Scripting API (CSharpScript)
Scripting API (CSharpScript)
43
P/Invoke Declaration & Marshalling
P/Invoke Declaration & Marshalling
44
Struct Layout (Sequential, Explicit)
Struct Layout (Sequential, Explicit)
45
Callback Delegates (UnmanagedFunctionPointer)
Callback Delegates (UnmanagedFunctionPointer)
46
COM Interop & COM Callable Wrapper
COM Interop & COM Callable Wrapper
47
WinRT Interop
WinRT Interop
48
C++/CLI Bridge
C++/CLI Bridge
49
Native Memory (Marshal.AllocHGlobal)
Native Memory (Marshal.AllocHGlobal)
50
ThreadPool Internals
ThreadPool Internals
51
TaskScheduler & Custom Scheduling
TaskScheduler & Custom Scheduling
52
Parallel.For/ForEach Patterns
Parallel.For/ForEach Patterns
53
Barrier & CountdownEvent
Barrier & CountdownEvent
54
ReaderWriterLockSlim
ReaderWriterLockSlim
55
SpinLock & SpinWait
SpinLock & SpinWait
56
Dataflow (ActionBlock, TransformBlock)
Dataflow (ActionBlock, TransformBlock)
57
Switch Expressions (C# 8+)
Switch Expressions (C# 8+)
58
Property & Tuple Patterns
Property & Tuple Patterns
59
Positional Pattern (Deconstruct)
Positional Pattern (Deconstruct)
60
List Patterns (C# 11)
List Patterns (C# 11)
61
Relational Patterns (<, >, and, or)
Relational Patterns (<, >, and, or)
62
Pattern Combinators
Pattern Combinators
63
Pattern Matching in Recursive Types
Pattern Matching in Recursive Types
64
Incremental Generators (IIncrementalGenerator)
Incremental Generators (IIncrementalGenerator)
65
Syntax Receiver & Pipeline
Syntax Receiver & Pipeline
66
Emitting Source with SourceText
Emitting Source with SourceText
67
Registering Outputs
Registering Outputs
68
Debugging Source Generators
Debugging Source Generators
69
Source Gen Safety & Avoidance
Source Gen Safety & Avoidance
70
Real-World: System.Text.Json Source Gen
Real-World: System.Text.Json Source Gen
71
fixed Statement & Pinning
fixed Statement & Pinning
72
Address-of & Pointer Types
Address-of & Pointer Types
73
stackalloc & Span
stackalloc & Span
74
MethodImplOptions.AggressiveInlining
MethodImplOptions.AggressiveInlining
75
SuppressGCTransition
SuppressGCTransition
76
SkipLocalsInit
SkipLocalsInit
77
NativeAOT Unsafe Operations
NativeAOT Unsafe Operations
78
BenchmarkDotNet Methodology
BenchmarkDotNet Methodology
79
GC Overhead & Collection Modes
GC Overhead & Collection Modes
80
Struct vs Class Performance
Struct vs Class Performance
81
Array Pooling & Rent Patterns
Array Pooling & Rent Patterns
82
ValueTask & Avoiding Allocations
ValueTask & Avoiding Allocations
83
StringBuilder vs String Concatenation
StringBuilder vs String Concatenation
84
Hardware Intrinsics (SIMD)
Hardware Intrinsics (SIMD)
Quizzes
C# Basics
5 questions
C# Core Concepts
5 questions
C# Intermediate
5 questions
C# Advanced
5 questions
C# Expert
5 questions
C# Mastery
5 questions