# enginarslan49/sifirdan-csharp-youtube-serisi architecture

> Architecture diagram of the GitHub repository enginarslan49/sifirdan-csharp-youtube-serisi, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-28). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/enginarslan49/sifirdan-csharp-youtube-serisi
- Repository: https://github.com/enginarslan49/sifirdan-csharp-youtube-serisi

## Overview

This repository is a set of standalone .NET 8 console lessons for a beginner C# course. The learner runs a lesson, may enter values when prompted, and sees the example or exercise result in the console; the projects are independent rather than a chained application. The visible tree covers introductory topics through conditional and operator exercises. The README describes a broader course, but those later capabilities are not represented in the supplied tree, so they are not mapped as implemented subsystems.

Main entry points: [`025-KullanicidanVeri-Girdi-Alma/025-KullanicidanVeri-Girdi-Alma/Program.cs`](https://github.com/enginarslan49/sifirdan-csharp-youtube-serisi/blob/master/025-KullanicidanVeri-Girdi-Alma/025-KullanicidanVeri-Girdi-Alma/Program.cs) (Console Input), [`026-UYGULAMA6.01/026-UYGULAMA6.01/Program.cs`](https://github.com/enginarslan49/sifirdan-csharp-youtube-serisi/blob/master/026-UYGULAMA6.01/026-UYGULAMA6.01/Program.cs) (Input Exercises), [`027-UYGULAMA6.02/027-UYGULAMA6.02/Program.cs`](https://github.com/enginarslan49/sifirdan-csharp-youtube-serisi/blob/master/027-UYGULAMA6.02/027-UYGULAMA6.02/Program.cs) (Array Input Exercises), [`028-UYGULAMA6.03/028-UYGULAMA6.03/Program.cs`](https://github.com/enginarslan49/sifirdan-csharp-youtube-serisi/blob/master/028-UYGULAMA6.03/028-UYGULAMA6.03/Program.cs) (Multidimensional Exercises)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_foundations["C&#35; Foundations"]
  node_start["First App<br/>[Program.cs]"]
  node_variables["Variables And Types<br/>[Program.cs]"]
  node_conversions["Type Conversions<br/>[Program.cs]"]
  node_methods["Methods<br/>[Program.cs]"]
  node_input["Console Input<br/>[Program.cs]"]
end

subgraph group_data["Data And Operators"]
  node_arrays["Arrays<br/>[Program.cs]"]
  node_array_methods["Array Methods<br/>[Program.cs]"]
  node_multidimensional["Multidimensional Arrays<br/>[Program.cs]"]
  node_operators["Operators<br/>[Program.cs]"]
end

subgraph group_control["Control Flow"]
  node_conditions["If And Else<br/>[Program.cs]"]
  node_nested_conditions["Nested Conditions<br/>[Program.cs]"]
  node_switch["Switch Case<br/>[Program.cs]"]
end

subgraph group_practice["Guided Practice"]
  node_variable_practice["Variable Exercises<br/>[Program.cs]"]
  node_array_practice["Array Exercises<br/>[Program.cs]"]
  node_condition_practice["Condition Exercises<br/>[Program.cs]"]
  node_input_practice["Input Exercises<br/>[Program.cs]"]
  node_array_input_practice["Array Input Exercises<br/>[Program.cs]"]
  node_multidimensional_practice["Multidimensional Exercises<br/>[Program.cs]"]
  node_operator_input_practice["Operator Exercises<br/>[Program.cs]"]
end

node_learner(("Learner"))

node_learner -->|"runs lesson"| node_start
node_learner -->|"runs lesson"| node_variables
node_learner -->|"runs lesson"| node_conversions
node_learner -->|"runs lesson"| node_arrays
node_learner -->|"runs lesson"| node_array_methods
node_learner -->|"runs lesson"| node_multidimensional
node_learner -->|"runs lesson"| node_operators
node_learner -->|"runs lesson"| node_methods
node_learner -->|"runs lesson"| node_input
node_learner -->|"runs lesson"| node_conditions
node_learner -->|"runs lesson"| node_nested_conditions
node_learner -->|"runs lesson"| node_switch
node_learner -->|"runs exercise"| node_variable_practice
node_learner -->|"runs exercise"| node_array_practice
node_learner -->|"runs exercise"| node_condition_practice
node_learner -->|"runs exercise"| node_input_practice
node_learner -->|"runs exercise"| node_array_input_practice
node_learner -->|"runs exercise"| node_multidimensional_practice
node_learner -->|"runs exercise"| node_operator_input_practice
node_learner -->|"enters values"| node_input
node_input -->|"prints result"| node_learner
node_learner -->|"enters values"| node_input_practice
node_input_practice -->|"prints result"| node_learner
node_learner -->|"enters values"| node_array_input_practice
node_array_input_practice -->|"prints result"| node_learner
node_learner -->|"enters values"| node_multidimensional_practice
node_multidimensional_practice -->|"prints result"| node_learner
node_learner -->|"enters values"| node_operator_input_practice
node_operator_input_practice -->|"prints result"| node_learner

click node_start "https://github.com/enginarslan49/sifirdan-csharp-youtube-serisi/blob/master/001-AppFirst/001-AppFirst/Program.cs"
click node_variables "https://github.com/enginarslan49/sifirdan-csharp-youtube-serisi/blob/master/002-DegiskenNedirveDegiskenTan%C4%B1mlama/002-DegiskenNedirveDegiskenTan%C4%B1mlama/Program.cs"
click node_conversions "https://github.com/enginarslan49/sifirdan-csharp-youtube-serisi/blob/master/004-VeriTipiDonusumleri/004-VeriTipiDonusumleri/Program.cs"
click node_arrays "https://github.com/enginarslan49/sifirdan-csharp-youtube-serisi/blob/master/005-TekBoyutluDiziler/005-TekBoyutluDiziler/Program.cs"
click node_array_methods "https://github.com/enginarslan49/sifirdan-csharp-youtube-serisi/blob/master/006-DiziMetotlari/006-DiziMetotlar%C4%B1/Program.cs"
click node_multidimensional "https://github.com/enginarslan49/sifirdan-csharp-youtube-serisi/blob/master/007-CokBoyutluDiziler/007-CokBoyutluDiziler/Program.cs"
click node_operators "https://github.com/enginarslan49/sifirdan-csharp-youtube-serisi/blob/master/008-AritmetikOperatorler/008-AritmetikOperatorler/Program.cs"
click node_methods "https://github.com/enginarslan49/sifirdan-csharp-youtube-serisi/blob/master/018-Metotlar/018-Metotlar/Program.cs"
click node_input "https://github.com/enginarslan49/sifirdan-csharp-youtube-serisi/blob/master/025-KullanicidanVeri-Girdi-Alma/025-KullanicidanVeri-Girdi-Alma/Program.cs"
click node_conditions "https://github.com/enginarslan49/sifirdan-csharp-youtube-serisi/blob/master/019-KosulBloklari(If-ElseIf-Else)/019-KosulBloklari(If-ElseIf-Else)/Program.cs"
click node_nested_conditions "https://github.com/enginarslan49/sifirdan-csharp-youtube-serisi/blob/master/020-IcIceIfler/020-IcIceIfler/Program.cs"
click node_switch "https://github.com/enginarslan49/sifirdan-csharp-youtube-serisi/blob/master/024-SwitchCase/024-SwitchCase/Program.cs"
click node_variable_practice "https://github.com/enginarslan49/sifirdan-csharp-youtube-serisi/blob/master/010-UYGULAMA1/010-UYGULAMA1/Program.cs"
click node_array_practice "https://github.com/enginarslan49/sifirdan-csharp-youtube-serisi/blob/master/011-UYGULAMA2/011-UYGULAMA2/Program.cs"
click node_condition_practice "https://github.com/enginarslan49/sifirdan-csharp-youtube-serisi/blob/master/021-UYGULAMA5.01/021-UYGULAMA5.01/Program.cs"
click node_input_practice "https://github.com/enginarslan49/sifirdan-csharp-youtube-serisi/blob/master/026-UYGULAMA6.01/026-UYGULAMA6.01/Program.cs"
click node_array_input_practice "https://github.com/enginarslan49/sifirdan-csharp-youtube-serisi/blob/master/027-UYGULAMA6.02/027-UYGULAMA6.02/Program.cs"
click node_multidimensional_practice "https://github.com/enginarslan49/sifirdan-csharp-youtube-serisi/blob/master/028-UYGULAMA6.03/028-UYGULAMA6.03/Program.cs"
click node_operator_input_practice "https://github.com/enginarslan49/sifirdan-csharp-youtube-serisi/blob/master/029-UYGULAMA6.04/029-UYGULAMA6.04/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_start,node_variables,node_conversions,node_methods,node_input toneBlue
class node_arrays,node_array_methods,node_multidimensional,node_operators toneAmber
class node_conditions,node_nested_conditions,node_switch toneMint
class node_variable_practice,node_array_practice,node_condition_practice,node_input_practice,node_array_input_practice,node_multidimensional_practice,node_operator_input_practice toneRose
class node_learner toneIndigo
```

## Components

### C# Foundations

- [First App](https://github.com/enginarslan49/sifirdan-csharp-youtube-serisi/blob/master/001-AppFirst/001-AppFirst/Program.cs): `001-AppFirst/001-AppFirst/Program.cs`
- [Variables And Types](https://github.com/enginarslan49/sifirdan-csharp-youtube-serisi/blob/master/002-DegiskenNedirveDegiskenTan%C4%B1mlama/002-DegiskenNedirveDegiskenTan%C4%B1mlama/Program.cs): `002-DegiskenNedirveDegiskenTanımlama/002-DegiskenNedirveDegiskenTanımlama/Program.cs`
- [Type Conversions](https://github.com/enginarslan49/sifirdan-csharp-youtube-serisi/blob/master/004-VeriTipiDonusumleri/004-VeriTipiDonusumleri/Program.cs): `004-VeriTipiDonusumleri/004-VeriTipiDonusumleri/Program.cs`
- [Methods](https://github.com/enginarslan49/sifirdan-csharp-youtube-serisi/blob/master/018-Metotlar/018-Metotlar/Program.cs): `018-Metotlar/018-Metotlar/Program.cs`
- [Console Input](https://github.com/enginarslan49/sifirdan-csharp-youtube-serisi/blob/master/025-KullanicidanVeri-Girdi-Alma/025-KullanicidanVeri-Girdi-Alma/Program.cs): `025-KullanicidanVeri-Girdi-Alma/025-KullanicidanVeri-Girdi-Alma/Program.cs`

### Data And Operators

- [Arrays](https://github.com/enginarslan49/sifirdan-csharp-youtube-serisi/blob/master/005-TekBoyutluDiziler/005-TekBoyutluDiziler/Program.cs): `005-TekBoyutluDiziler/005-TekBoyutluDiziler/Program.cs`
- [Array Methods](https://github.com/enginarslan49/sifirdan-csharp-youtube-serisi/blob/master/006-DiziMetotlari/006-DiziMetotlar%C4%B1/Program.cs): `006-DiziMetotlari/006-DiziMetotları/Program.cs`
- [Multidimensional Arrays](https://github.com/enginarslan49/sifirdan-csharp-youtube-serisi/blob/master/007-CokBoyutluDiziler/007-CokBoyutluDiziler/Program.cs): `007-CokBoyutluDiziler/007-CokBoyutluDiziler/Program.cs`
- [Operators](https://github.com/enginarslan49/sifirdan-csharp-youtube-serisi/blob/master/008-AritmetikOperatorler/008-AritmetikOperatorler/Program.cs): `008-AritmetikOperatorler/008-AritmetikOperatorler/Program.cs`

### Control Flow

- [If And Else](https://github.com/enginarslan49/sifirdan-csharp-youtube-serisi/blob/master/019-KosulBloklari(If-ElseIf-Else)/019-KosulBloklari(If-ElseIf-Else)/Program.cs): `019-KosulBloklari(If-ElseIf-Else)/019-KosulBloklari(If-ElseIf-Else)/Program.cs`
- [Nested Conditions](https://github.com/enginarslan49/sifirdan-csharp-youtube-serisi/blob/master/020-IcIceIfler/020-IcIceIfler/Program.cs): `020-IcIceIfler/020-IcIceIfler/Program.cs`
- [Switch Case](https://github.com/enginarslan49/sifirdan-csharp-youtube-serisi/blob/master/024-SwitchCase/024-SwitchCase/Program.cs): `024-SwitchCase/024-SwitchCase/Program.cs`

### Guided Practice

- [Variable Exercises](https://github.com/enginarslan49/sifirdan-csharp-youtube-serisi/blob/master/010-UYGULAMA1/010-UYGULAMA1/Program.cs): `010-UYGULAMA1/010-UYGULAMA1/Program.cs`
- [Array Exercises](https://github.com/enginarslan49/sifirdan-csharp-youtube-serisi/blob/master/011-UYGULAMA2/011-UYGULAMA2/Program.cs): `011-UYGULAMA2/011-UYGULAMA2/Program.cs`
- [Condition Exercises](https://github.com/enginarslan49/sifirdan-csharp-youtube-serisi/blob/master/021-UYGULAMA5.01/021-UYGULAMA5.01/Program.cs): `021-UYGULAMA5.01/021-UYGULAMA5.01/Program.cs`
- [Input Exercises](https://github.com/enginarslan49/sifirdan-csharp-youtube-serisi/blob/master/026-UYGULAMA6.01/026-UYGULAMA6.01/Program.cs): `026-UYGULAMA6.01/026-UYGULAMA6.01/Program.cs`
- [Array Input Exercises](https://github.com/enginarslan49/sifirdan-csharp-youtube-serisi/blob/master/027-UYGULAMA6.02/027-UYGULAMA6.02/Program.cs): `027-UYGULAMA6.02/027-UYGULAMA6.02/Program.cs`
- [Multidimensional Exercises](https://github.com/enginarslan49/sifirdan-csharp-youtube-serisi/blob/master/028-UYGULAMA6.03/028-UYGULAMA6.03/Program.cs): `028-UYGULAMA6.03/028-UYGULAMA6.03/Program.cs`
- [Operator Exercises](https://github.com/enginarslan49/sifirdan-csharp-youtube-serisi/blob/master/029-UYGULAMA6.04/029-UYGULAMA6.04/Program.cs): `029-UYGULAMA6.04/029-UYGULAMA6.04/Program.cs`

### Other components

- **Learner**

## Connections

- Learner → First App: runs lesson
- Learner → Variables And Types: runs lesson
- Learner → Type Conversions: runs lesson
- Learner → Arrays: runs lesson
- Learner → Array Methods: runs lesson
- Learner → Multidimensional Arrays: runs lesson
- Learner → Operators: runs lesson
- Learner → Methods: runs lesson
- Learner → Console Input: runs lesson
- Learner → If And Else: runs lesson
- Learner → Nested Conditions: runs lesson
- Learner → Switch Case: runs lesson
- Learner → Variable Exercises: runs exercise
- Learner → Array Exercises: runs exercise
- Learner → Condition Exercises: runs exercise
- Learner → Input Exercises: runs exercise
- Learner → Array Input Exercises: runs exercise
- Learner → Multidimensional Exercises: runs exercise
- Learner → Operator Exercises: runs exercise
- Learner → Console Input: enters values
- Console Input → Learner: prints result
- Learner → Input Exercises: enters values
- Input Exercises → Learner: prints result
- Learner → Array Input Exercises: enters values
- Array Input Exercises → Learner: prints result
- Learner → Multidimensional Exercises: enters values
- Multidimensional Exercises → Learner: prints result
- Learner → Operator Exercises: enters values
- Operator Exercises → Learner: prints result
