# fldevelopers/c-sharp-crash-course architecture

> Architecture diagram of the GitHub repository fldevelopers/c-sharp-crash-course, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-26). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/fldevelopers/c-sharp-crash-course
- Repository: https://github.com/fldevelopers/c-sharp-crash-course

## Overview

This repository is a C# learning course: the principal workflow is to study topic examples and then explore the console projects that apply them. The README documents fundamentals, OOP, exception handling, file operations, best practices, and five projects. The sampled project sources show their internal workflows, but they are not dispatched by Program.Main; it only prints a welcome message. Lesson wiring beyond the sampled files is not inferred.

Main entry points: [`Projects/5. TodoApp.cs`](https://github.com/fldevelopers/c-sharp-crash-course/blob/master/Projects/5.%20TodoApp.cs) (Todo Application), [`Course Content/01. HelloWorld.cs`](https://github.com/fldevelopers/c-sharp-crash-course/blob/master/Course%20Content/01.%20HelloWorld.cs) (Hello World), [`Course Content/02. VariablesAndDataTypes.cs`](https://github.com/fldevelopers/c-sharp-crash-course/blob/master/Course%20Content/02.%20VariablesAndDataTypes.cs) (Variables and Types), [`Course Content/03. OperatorsAndExpressions.cs`](https://github.com/fldevelopers/c-sharp-crash-course/blob/master/Course%20Content/03.%20OperatorsAndExpressions.cs) (Operators)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_fundamentals["C&#35; Fundamentals"]
  node_hello["Hello World<br/>[01. HelloWorld.cs]"]
  node_variables["Variables and Types"]
  node_operators["Operators"]
  node_io["Console Input and Output"]
  node_control["Conditions and Loops<br/>[06. Loops.cs]"]
  node_methods["Methods<br/>[07. Methods.cs]"]
  node_collections["Collections<br/>[09. Collections.cs]"]
end

subgraph group_oop["Object-Oriented C&#35;"]
  node_classes["Classes and Objects"]
  node_oopconcepts["OOP Concepts"]
  node_classtypes["Class Types"]
  node_advancedclasses["Advanced Class Concepts"]
end

subgraph group_robustness["Robustness and Files"]
  node_exceptions["Exception Handling<br/>[14. Exceptions.cs]"]
  node_filelessons["File Operations"]
  node_bestpractices["Best Practices"]
end

subgraph group_projects["Practice Projects"]
  node_calculator["Calculator"]
  node_banking["Banking System"]
  node_shapes["Shape Calculator"]
  node_extensions["Extension Methods<br/>[4. Extensions.cs]"]
  node_todo["Todo Application<br/>[5. TodoApp.cs]"]
end

node_learner(("Learner"))
node_todo_file["Todo Data File"]
node_welcome["Console Welcome<br/>[Program.cs]"]

node_learner -->|"studies"| node_hello
node_learner -->|"studies"| node_variables
node_learner -->|"studies"| node_operators
node_learner -->|"studies"| node_io
node_learner -->|"studies"| node_control
node_learner -->|"studies"| node_methods
node_learner -->|"studies"| node_collections
node_learner -->|"studies"| node_classes
node_learner -->|"studies"| node_oopconcepts
node_learner -->|"studies"| node_classtypes
node_learner -->|"studies"| node_advancedclasses
node_learner -->|"studies"| node_exceptions
node_learner -->|"studies"| node_filelessons
node_learner -->|"studies"| node_bestpractices
node_learner -->|"explores"| node_calculator
node_learner -->|"explores"| node_banking
node_learner -->|"explores"| node_shapes
node_learner -->|"explores"| node_extensions
node_learner -->|"explores"| node_todo
node_todo -->|"loads and saves"| node_todo_file

click node_hello "https://github.com/fldevelopers/c-sharp-crash-course/blob/master/Course%20Content/01.%20HelloWorld.cs"
click node_variables "https://github.com/fldevelopers/c-sharp-crash-course/blob/master/Course%20Content/02.%20VariablesAndDataTypes.cs"
click node_operators "https://github.com/fldevelopers/c-sharp-crash-course/blob/master/Course%20Content/03.%20OperatorsAndExpressions.cs"
click node_io "https://github.com/fldevelopers/c-sharp-crash-course/blob/master/Course%20Content/04.%20InputOutputMethods.cs"
click node_control "https://github.com/fldevelopers/c-sharp-crash-course/blob/master/Course%20Content/06.%20Loops.cs"
click node_methods "https://github.com/fldevelopers/c-sharp-crash-course/blob/master/Course%20Content/07.%20Methods.cs"
click node_collections "https://github.com/fldevelopers/c-sharp-crash-course/blob/master/Course%20Content/09.%20Collections.cs"
click node_classes "https://github.com/fldevelopers/c-sharp-crash-course/blob/master/Course%20Content/10.%20ClassesObjects.cs"
click node_oopconcepts "https://github.com/fldevelopers/c-sharp-crash-course/blob/master/Course%20Content/11.%20ObjectOrientedProgramming.cs"
click node_classtypes "https://github.com/fldevelopers/c-sharp-crash-course/blob/master/Course%20Content/12.%20ClassesTypes.cs"
click node_advancedclasses "https://github.com/fldevelopers/c-sharp-crash-course/blob/master/Course%20Content/13.%20AdvanceClassConcepts.cs"
click node_exceptions "https://github.com/fldevelopers/c-sharp-crash-course/blob/master/Course%20Content/14.%20Exceptions.cs"
click node_filelessons "https://github.com/fldevelopers/c-sharp-crash-course/blob/master/Course%20Content/15.%20File%20Operations.cs"
click node_bestpractices "https://github.com/fldevelopers/c-sharp-crash-course/blob/master/Course%20Content/16.%20BestPractices.cs"
click node_calculator "https://github.com/fldevelopers/c-sharp-crash-course/blob/master/Projects/1.%20CalculatorApp.cs"
click node_banking "https://github.com/fldevelopers/c-sharp-crash-course/blob/master/Projects/2.%20BankAccountApp.cs"
click node_shapes "https://github.com/fldevelopers/c-sharp-crash-course/blob/master/Projects/3.%20ShapeCalculator.cs"
click node_extensions "https://github.com/fldevelopers/c-sharp-crash-course/blob/master/Projects/4.%20Extensions.cs"
click node_todo "https://github.com/fldevelopers/c-sharp-crash-course/blob/master/Projects/5.%20TodoApp.cs"
click node_welcome "https://github.com/fldevelopers/c-sharp-crash-course/blob/master/Program.cs"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_hello,node_variables,node_operators,node_io,node_control,node_methods,node_collections toneBlue
class node_classes,node_oopconcepts,node_classtypes,node_advancedclasses toneAmber
class node_exceptions,node_filelessons,node_bestpractices toneMint
class node_calculator,node_banking,node_shapes,node_extensions,node_todo toneRose
class node_learner,node_todo_file toneIndigo
class node_welcome toneTeal
```

## Components

### C# Fundamentals

- [Hello World](https://github.com/fldevelopers/c-sharp-crash-course/blob/master/Course%20Content/01.%20HelloWorld.cs): `Course Content/01. HelloWorld.cs`
- [Variables and Types](https://github.com/fldevelopers/c-sharp-crash-course/blob/master/Course%20Content/02.%20VariablesAndDataTypes.cs): `Course Content/02. VariablesAndDataTypes.cs`
- [Operators](https://github.com/fldevelopers/c-sharp-crash-course/blob/master/Course%20Content/03.%20OperatorsAndExpressions.cs): `Course Content/03. OperatorsAndExpressions.cs`
- [Console Input and Output](https://github.com/fldevelopers/c-sharp-crash-course/blob/master/Course%20Content/04.%20InputOutputMethods.cs): `Course Content/04. InputOutputMethods.cs`
- [Conditions and Loops](https://github.com/fldevelopers/c-sharp-crash-course/blob/master/Course%20Content/06.%20Loops.cs): `Course Content/06. Loops.cs`
- [Methods](https://github.com/fldevelopers/c-sharp-crash-course/blob/master/Course%20Content/07.%20Methods.cs): `Course Content/07. Methods.cs`
- [Collections](https://github.com/fldevelopers/c-sharp-crash-course/blob/master/Course%20Content/09.%20Collections.cs): `Course Content/09. Collections.cs`

### Object-Oriented C#

- [Classes and Objects](https://github.com/fldevelopers/c-sharp-crash-course/blob/master/Course%20Content/10.%20ClassesObjects.cs): `Course Content/10. ClassesObjects.cs`
- [OOP Concepts](https://github.com/fldevelopers/c-sharp-crash-course/blob/master/Course%20Content/11.%20ObjectOrientedProgramming.cs): `Course Content/11. ObjectOrientedProgramming.cs`
- [Class Types](https://github.com/fldevelopers/c-sharp-crash-course/blob/master/Course%20Content/12.%20ClassesTypes.cs): `Course Content/12. ClassesTypes.cs`
- [Advanced Class Concepts](https://github.com/fldevelopers/c-sharp-crash-course/blob/master/Course%20Content/13.%20AdvanceClassConcepts.cs): `Course Content/13. AdvanceClassConcepts.cs`

### Robustness and Files

- [Exception Handling](https://github.com/fldevelopers/c-sharp-crash-course/blob/master/Course%20Content/14.%20Exceptions.cs): `Course Content/14. Exceptions.cs`
- [File Operations](https://github.com/fldevelopers/c-sharp-crash-course/blob/master/Course%20Content/15.%20File%20Operations.cs): `Course Content/15. File Operations.cs`
- [Best Practices](https://github.com/fldevelopers/c-sharp-crash-course/blob/master/Course%20Content/16.%20BestPractices.cs): `Course Content/16. BestPractices.cs`

### Practice Projects

- [Calculator](https://github.com/fldevelopers/c-sharp-crash-course/blob/master/Projects/1.%20CalculatorApp.cs): `Projects/1. CalculatorApp.cs`
- [Banking System](https://github.com/fldevelopers/c-sharp-crash-course/blob/master/Projects/2.%20BankAccountApp.cs): `Projects/2. BankAccountApp.cs`
- [Shape Calculator](https://github.com/fldevelopers/c-sharp-crash-course/blob/master/Projects/3.%20ShapeCalculator.cs): `Projects/3. ShapeCalculator.cs`
- [Extension Methods](https://github.com/fldevelopers/c-sharp-crash-course/blob/master/Projects/4.%20Extensions.cs): `Projects/4. Extensions.cs`
- [Todo Application](https://github.com/fldevelopers/c-sharp-crash-course/blob/master/Projects/5.%20TodoApp.cs): `Projects/5. TodoApp.cs`

### Other components

- **Learner**
- **Todo Data File**
- [Console Welcome](https://github.com/fldevelopers/c-sharp-crash-course/blob/master/Program.cs): `Program.cs`

## Connections

- Learner → Hello World: studies
- Learner → Variables and Types: studies
- Learner → Operators: studies
- Learner → Console Input and Output: studies
- Learner → Conditions and Loops: studies
- Learner → Methods: studies
- Learner → Collections: studies
- Learner → Classes and Objects: studies
- Learner → OOP Concepts: studies
- Learner → Class Types: studies
- Learner → Advanced Class Concepts: studies
- Learner → Exception Handling: studies
- Learner → File Operations: studies
- Learner → Best Practices: studies
- Learner → Calculator: explores
- Learner → Banking System: explores
- Learner → Shape Calculator: explores
- Learner → Extension Methods: explores
- Learner → Todo Application: explores
- Todo Application → Todo Data File: loads and saves
