Google Sign-In Required for .NET Guided Labs

To verify code authenticity, store your pushed GitHub repositories, and earn the .NET Enterprise certification, please sign in with your student account.

Day 02Sprint 1 • C# 12 Core
2 Hours

Day 2: C# Type System, Nullable Types & Pattern Matching

C# is a strictly typed language. Value types live directly in stack memory, whereas reference types live in managed heap memory. With C# nullable reference types and switch pattern matching, code is safer against null pointer bugs and far more expressive.

Master Value Types (structs, primitives) vs Reference Types (classes, strings)
Harness C# Nullable Reference Types with null-forgiving (!) and null-coalescing (??) operators
Implement C# 12 switch expressions and pattern matching syntax
Build a dynamic Currency and Tax Calculator utility

Core Architectural Insights

  • Value types: int, double, decimal, bool, struct, enum
  • Reference types: string, class, record, interface, array
  • Nullable types (int?, string?) explicitly declare whether null is permissible
  • Switch expressions return values directly without repetitive break statements

Real-World Developer Analogy

Value types are like physical cash in your wallet (direct value). Reference types are like a bank account number (a reference pointing to funds stored in the bank vault).