From 10334c1bc7b1af1bea6d01a2804eaa2f08647725 Mon Sep 17 00:00:00 2001 From: Max Date: Fri, 14 Aug 2026 08:03:46 +0200 Subject: [PATCH] =?UTF-8?q?Unterricht=20+=20=C3=9Cbung=20Tag=204?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .kdev4/wbs-csharp.kdev4 | 5 - Tag 4/Aufgaben/Aufgabe_1.cs | 9 + Tag 4/Aufgaben/Program.cs | 5 +- Tag 4/Delegates/Button.cs | 20 ++ Tag 4/Delegates/Delegates.cs | 96 ++++++ Tag 4/Handout/Delegates.md | 277 ++++++++++++++++++ .../Tag_09_MethodenReferenzen.cs | 71 +++++ .../Tag_09_Readonly.cs | 40 +++ .../Tag_09_Sealed.cs | 33 +++ Tag 4/Unterricht/MethodenReferencen.cs | 36 +++ Tag 4/Unterricht/Program.cs | 5 +- Tag 4/Unterricht/{sealed.cs => ReadOnly.cs} | 6 +- Tag 4/Unterricht/Sealed.cs | 30 ++ .../Unterricht.csproj.CoreCompileInputs.cache | 2 +- .../Unterricht.csproj.FileListAbsolute.txt | 10 + .../obj/Debug/net10.0/Unterricht.dll | Bin 0 -> 6144 bytes .../net10.0/Unterricht.genruntimeconfig.cache | 1 + .../obj/Debug/net10.0/Unterricht.pdb | Bin 0 -> 11612 bytes Tag 4/Unterricht/obj/Debug/net10.0/apphost | Bin 0 -> 98312 bytes .../obj/Debug/net10.0/ref/Unterricht.dll | Bin 0 -> 6144 bytes .../obj/Debug/net10.0/refint/Unterricht.dll | Bin 0 -> 6144 bytes wbs-csharp.kdev4 | 4 - 22 files changed, 633 insertions(+), 17 deletions(-) delete mode 100644 .kdev4/wbs-csharp.kdev4 create mode 100644 Tag 4/Aufgaben/Aufgabe_1.cs create mode 100644 Tag 4/Delegates/Button.cs create mode 100644 Tag 4/Delegates/Delegates.cs create mode 100644 Tag 4/Handout/Delegates.md create mode 100644 Tag 4/Tag_09_Unterrichtsmitschriften/Tag_09_MethodenReferenzen.cs create mode 100644 Tag 4/Tag_09_Unterrichtsmitschriften/Tag_09_Readonly.cs create mode 100644 Tag 4/Tag_09_Unterrichtsmitschriften/Tag_09_Sealed.cs create mode 100644 Tag 4/Unterricht/MethodenReferencen.cs rename Tag 4/Unterricht/{sealed.cs => ReadOnly.cs} (81%) create mode 100644 Tag 4/Unterricht/Sealed.cs create mode 100644 Tag 4/Unterricht/obj/Debug/net10.0/Unterricht.dll create mode 100644 Tag 4/Unterricht/obj/Debug/net10.0/Unterricht.genruntimeconfig.cache create mode 100644 Tag 4/Unterricht/obj/Debug/net10.0/Unterricht.pdb create mode 100755 Tag 4/Unterricht/obj/Debug/net10.0/apphost create mode 100644 Tag 4/Unterricht/obj/Debug/net10.0/ref/Unterricht.dll create mode 100644 Tag 4/Unterricht/obj/Debug/net10.0/refint/Unterricht.dll delete mode 100644 wbs-csharp.kdev4 diff --git a/.kdev4/wbs-csharp.kdev4 b/.kdev4/wbs-csharp.kdev4 deleted file mode 100644 index 03a5044..0000000 --- a/.kdev4/wbs-csharp.kdev4 +++ /dev/null @@ -1,5 +0,0 @@ -[Buildset] -BuildItems=@Variant(\x00\x00\x00\t\x00\x00\x00\x00\x01\x00\x00\x00\x0b\x00\x00\x00\x00\x01\x00\x00\x00\x14\x00w\x00b\x00s\x00-\x00c\x00s\x00h\x00a\x00r\x00p) - -[Project] -VersionControlSupport=kdevgit diff --git a/Tag 4/Aufgaben/Aufgabe_1.cs b/Tag 4/Aufgaben/Aufgabe_1.cs new file mode 100644 index 0000000..1836183 --- /dev/null +++ b/Tag 4/Aufgaben/Aufgabe_1.cs @@ -0,0 +1,9 @@ +namespace Tag_4_Aufgaben; + +public class Aufgabe_1 +{ + public static void Main() + { + + } +} \ No newline at end of file diff --git a/Tag 4/Aufgaben/Program.cs b/Tag 4/Aufgaben/Program.cs index 3751555..6fa4b1a 100644 --- a/Tag 4/Aufgaben/Program.cs +++ b/Tag 4/Aufgaben/Program.cs @@ -1,2 +1,3 @@ -// See https://aka.ms/new-console-template for more information -Console.WriteLine("Hello, World!"); +using Tag_4_Aufgaben; + +Aufgabe_1.Main(); \ No newline at end of file diff --git a/Tag 4/Delegates/Button.cs b/Tag 4/Delegates/Button.cs new file mode 100644 index 0000000..8ff0a84 --- /dev/null +++ b/Tag 4/Delegates/Button.cs @@ -0,0 +1,20 @@ +using System; + +namespace _15_Delegates +{ + // Publisher des Events / Observable + internal class Button + { + public event EventHandler? OnClick; // Um ein Event zu deklarieren wird das 'event'-Schlüsselwort verwendet. + + public string Text { get; set; } + + // Wird auf einen Button geklickt, wird diese Methode ausgeführt: + public void Click() + { + Console.WriteLine("Es wurde auf den Button geklickt..."); + OnClick?.Invoke(this, EventArgs.Empty); // Das Event wird nach einer Prüfung auf Null mit Invoke() ausgelöst. + // Eine Null-Prüfung ist bei Events wichtig, da es sonst zu NullReferenceExceptions kommen kann. + } + } +} \ No newline at end of file diff --git a/Tag 4/Delegates/Delegates.cs b/Tag 4/Delegates/Delegates.cs new file mode 100644 index 0000000..d10f024 --- /dev/null +++ b/Tag 4/Delegates/Delegates.cs @@ -0,0 +1,96 @@ +using System; + +namespace _15_Delegates; + +// C# hat für Lambda-Ausdrücke und Methodenreferenzen ein eigenes Konzept: Die Delegates. +// Das Prinzip dahinter ist ähnlich den "functional Interfaces". + +public delegate int Vergleich(int a, int b); // Hier erstellen wir einen neuen Datentypen 'Vergleich', welcher nun int-Methoden mit zwei int-Parametern annehmen kann. Einer Variable dieses Datentyps können wir alle Methoden zuweisen, deren Methodensignatur zum Delegaten passt. Für die Signatur ist wichtig: Rückgabetyp und Parametertypen und -anzahl. + + +internal class Delegates +{ + public static void Main(string[] args) + { + // Mit dem Delegate-Datentypen erzeugen wir eine Variable, der wir einen Lambda-Ausdruck zuweisen. + // Der Lambda-Ausdruck ist hier eine anonyme Methode, die festlegt, wie die Sortierreihenfolge eines Sortieralgorithmus sein soll. + // Siehe: CompareTo()-Methode + Vergleich v = (x, y) => + { + if (x > y) + return 1; + else if (y > x) + return -1; + else + return 0; + }; + + int[] array = { 9, 1, 8, 2, 7, 3, 6, 4, 5 }; + + BubbleSort(array, v); + Console.WriteLine(String.Join(", ", array)); + + // Vordefinierte Delegates in C# sind unter anderem: + Action action; // Void-Methode mit bis zu 16 Parametern. (Vergleich zum Consumer in Java) + Func func; // Methode mit beliebigem Return-Typ und bis zu 16 Parametern. (Vergleich zum Function-Interface in Java) + Predicate predicate; // Boolean-Methode mit einem Parameter. (Wie Predicate in Java) + Comparison comparison; // Integer-Methode mit zwei Parametern vom selben Typ. (Wie Comparator in Java) + + EventHandler eventHandler; // Wird für Events verwendet (Observer Pattern). + + // Beispiel für Events: + Button b = new Button(); + b.Text = "Ich bin ein Button"; + + b.OnClick += ButtonClicked; // Das Event wird durch += abonniert. Hier wird dem Delegaten die Referenz auf die ButtonClicked()-Methode zugewiesen. + b.OnClick += ButtonClicked; + b.OnClick -= ButtonClicked; // Mit -= können Events wieder de-abonniert werden. + b.OnClick += (s, e) => Console.WriteLine("Über Lambda-Ausdruck"); + + b.Click(); // Auf den Button klicken... + + + // Multicast: + Action a; + a = Console.WriteLine; + a += (s) => Console.WriteLine(s.ToUpper()); + a += (s) => Console.WriteLine(s.Substring(0, s.Length / 2)); + + a.Invoke("Hallo, Welt!"); // Alle zugewiesenen Methoden werden nacheinander aufgerufen. + + Delegate[] invocationList = a.GetInvocationList(); + invocationList[1].DynamicInvoke("Dynamisch aufgerufen"); + } + + //Ein Sortieralgorithmus, bei dem durch Übergabe des Delegates bestimmt wird, wie sortiert werden soll (Aufsteigend oder Absteigend) + public static void BubbleSort(int[] array, Vergleich vergleich) + { + if (vergleich == null) // Wir prüfen zuerst, ob überhaupt eine Methode übergeben wurde... + return; + + + for (int i = 0; i < array.Length; i++) + { + for (int j = 0; j < array.Length - 1 - i; j++) + { + if (vergleich(array[j], array[j + 1]) == 1) // Aufruf der Methode im Delegate. Dazu können wir den Delegate wie eine Methode verwenden. + { + // Zwei Elemente tauschen: + /*int temp = array[j]; + array[j] = array[j + 1]; + array[j + 1] = temp;*/ + + // Der Tausch von zwei Variablen in einem Schritt über Tupel: + (array[j], array[j + 1]) = (array[j + 1], array[j]); + } + } + } + } + + // EventHandler-Methode: Diese muss zur Signatur des EventHandler-Delegaten passen. + public static void ButtonClicked(object? sender, EventArgs e) + { + Console.WriteLine((sender as Button)?.Text); + Console.WriteLine("Der Klick wurde verarbeitet..."); + } +} \ No newline at end of file diff --git a/Tag 4/Handout/Delegates.md b/Tag 4/Handout/Delegates.md new file mode 100644 index 0000000..7c2d8f6 --- /dev/null +++ b/Tag 4/Handout/Delegates.md @@ -0,0 +1,277 @@ +# Delegates und Events in C# + +## Ziel dieser Einheit + +In dieser Einheit lernst du: + +- was Delegates sind +- wie Lambda-Ausdrücke in C# funktionieren +- wie Delegates in der Praxis eingesetzt werden +- was Events sind und wie sie funktionieren +- wie mehrere Methoden kombiniert werden können + +--- + +## 1. Grundidee: Delegates + +Delegates sind Datentypen, die Methoden speichern können. + +Man kann sich einen Delegate vorstellen wie: +- eine Variable für Methoden +- eine Referenz auf eine Funktion + +Ähnlich zu: +- Functional Interfaces in Java + +--- + +## 2. Definition eines Delegates + + public delegate int Vergleich(int a, int b); + +Erläuterung: + +- neuer Datentyp: Vergleich +- speichert Methoden mit: + - Rückgabewert: int + - zwei Parametern vom Typ int + +Wichtig: +- Signatur muss genau passen + +--- + +## 3. Verwendung mit Lambda-Ausdruck + + Vergleich v = (x, y) => + { + if (x > y) + return 1; + else if (y > x) + return -1; + else + return 0; + }; + +Erläuterung: + +- Lambda-Ausdruck = anonyme Methode +- definiert das Verhalten direkt im Code + +--- + +## 4. Praxisbeispiel: Sortieren mit Delegate + + int[] array = { 9, 1, 8, 2, 7, 3, 6, 4, 5 }; + + BubbleSort(array, v); + +--- + +### Methode BubbleSort + + public static void BubbleSort(int[] array, Vergleich vergleich) + +Erläuterung: + +- Delegate bestimmt die Sortierlogik +- flexibel (z.B. aufsteigend / absteigend) + +--- + +### Aufruf des Delegates + + if (vergleich(array[j], array[j + 1]) == 1) + +- Delegate wird wie eine Methode verwendet + +--- + +### Tauschen von Werten + + (array[j], array[j + 1]) = (array[j + 1], array[j]); + +- Tupel-Zuweisung + +--- + +## 5. Vordefinierte Delegates + +C# bietet bereits fertige Delegates: + + Action action; + Func func; + Predicate predicate; + Comparison comparison; + +Erläuterung: + +- Action → keine Rückgabe (void) +- Func → mit Rückgabewert +- Predicate → bool +- Comparison → Vergleich + +--- + +## 6. Events – Grundidee + +Events werden verwendet, um auf Ereignisse zu reagieren. + +Beispiel: +- Button wird geklickt +- Methode wird ausgelöst + +Pattern: +- Publisher (sendet Ereignis) +- Subscriber (reagiert darauf) + +--- + +## 7. Die Button-Klasse + + internal class Button + { + public event EventHandler? OnClick; + + public string Text { get; set; } + + public void Click() + { + Console.WriteLine("Es wurde auf den Button geklickt..."); + OnClick?.Invoke(this, EventArgs.Empty); + } + } + +--- + +### Erläuterung + +- event → Event deklarieren +- EventHandler → Delegate +- Invoke() → Event auslösen + +Wichtig: + +- Null-Prüfung ist notwendig +- sonst NullReferenceException + +--- + +## 8. Event abonnieren + + Button b = new Button(); + b.Text = "Ich bin ein Button"; + + b.OnClick += ButtonClicked; + b.OnClick += ButtonClicked; + b.OnClick -= ButtonClicked; + +--- + +### Erläuterung + +- += → hinzufügen +- -= → entfernen + +--- + +## 9. Lambda als Event-Handler + + b.OnClick += (s, e) => Console.WriteLine("Über Lambda-Ausdruck"); + +--- + +## 10. Event auslösen + + b.Click(); + +--- + +## 11. Event-Handler-Methode + + public static void ButtonClicked(object? sender, EventArgs e) + { + Console.WriteLine((sender as Button)?.Text); + Console.WriteLine("Der Klick wurde verarbeitet..."); + } + +--- + +### Erläuterung + +- muss zur Delegate-Signatur passen +- sender enthält die Quelle des Events + +--- + +## 12. Multicast-Delegates + + Action a; + + a = Console.WriteLine; + a += (s) => Console.WriteLine(s.ToUpper()); + a += (s) => Console.WriteLine(s.Substring(0, s.Length / 2)); + +--- + +### Aufruf + + a.Invoke("Hallo, Welt!"); + +--- + +### Erläuterung + +- mehrere Methoden werden hintereinander ausgeführt + +--- + +## 13. Zugriff auf einzelne Methoden + + Delegate[] invocationList = a.GetInvocationList(); + invocationList[1].DynamicInvoke("Dynamisch aufgerufen"); + +--- + +## 14. Zentrale Konzepte im Überblick + +### Delegate +- speichert Methoden +- ermöglicht flexible Programmierung + +--- + +### Lambda-Ausdruck +- anonyme Funktion +- direkt im Code definiert + +--- + +### Event +- wendet Delegates an +- reagiert auf Ereignisse + +--- + +### Multicast +- mehrere Methoden gleichzeitig ausführen + +--- + +## Zusammenfassung + +- Delegates sind Methoden-Referenzen +- Lambda-Ausdrücke definieren Verhalten +- Delegates machen Code flexibel +- Events nutzen Delegates zur Kommunikation +- Multicast erlaubt mehrere Methoden gleichzeitig + +--- + +## Verständnisfragen + +- Was ist ein Delegate? +- Warum müssen Signaturen übereinstimmen? +- Was ist der Unterschied zwischen Action und Func? +- Wie funktioniert ein Event? +- Warum ist die Null-Prüfung bei Events wichtig? \ No newline at end of file diff --git a/Tag 4/Tag_09_Unterrichtsmitschriften/Tag_09_MethodenReferenzen.cs b/Tag 4/Tag_09_Unterrichtsmitschriften/Tag_09_MethodenReferenzen.cs new file mode 100644 index 0000000..efeb7d6 --- /dev/null +++ b/Tag 4/Tag_09_Unterrichtsmitschriften/Tag_09_MethodenReferenzen.cs @@ -0,0 +1,71 @@ +namespace OP6_78_FIAE1; + +public class Tag_09_MethodenReferenzen +{ + public static void Main() + { + var auto1 = new Auto(); + auto1.fahren(); + + // --- Action: + + // Variable, die etwas speichert, was ein Auto braucht und etwas (void) tut. + Action fahren = (Auto auto) => { Console.WriteLine("Fahren mit " + auto.geschwindigkeit + " kmh!"); }; + //Kann ausgeführt werden, so wie wir es von Methoden kennen: + fahren(auto1); + + // Neu zuweisen der Variable + auto1.fahren = () => + { + Console.WriteLine("Ruckel, ruckel, Motorprobleme!!!"); + }; + auto1.fahren(); + + var auto2 = new Auto(); + auto2.fahren = auto1.fahren; // Neu zuweisen der Variable von einer anderen Methoden-Referenz + + auto2.fahren(); + + // --- Func: + + var leuchten = (Auto auto) => + { + return auto.leuchtFarbe + "es Licht"; + }; + + var ergebnis = leuchten(auto2); + Console.WriteLine(ergebnis); + + ergebnis = auto2.leuchten(); + Console.WriteLine(ergebnis); + } + + class Auto + { + public int geschwindigkeit = 100; + public Action fahren; //Action -> keine Parameter und kein Rückgabewert + //Action -> kein Rückgabewert + + public string leuchtFarbe = "Rot"; + public Func leuchten; // Func + + public Auto() + { + geschwindigkeit = 50; + fahren = () => + { + Console.WriteLine("Fahren mit " + geschwindigkeit + " kmh!"); + }; + + leuchten = () => { + return leuchtFarbe + "es Licht"; + }; + } + + // Als normale Methode: + // public void fahren() + // { + // Console.WriteLine("Fahren mit " + geschwindigkeit + " kmh!"); + // } + } +} \ No newline at end of file diff --git a/Tag 4/Tag_09_Unterrichtsmitschriften/Tag_09_Readonly.cs b/Tag 4/Tag_09_Unterrichtsmitschriften/Tag_09_Readonly.cs new file mode 100644 index 0000000..9a965e0 --- /dev/null +++ b/Tag 4/Tag_09_Unterrichtsmitschriften/Tag_09_Readonly.cs @@ -0,0 +1,40 @@ +namespace OP6_78_FIAE1; + +public class Tag_09_Readonly +{ + public static void Main() + { + var data = new MyData(1); + //data.subData = 10; // nicht erlaubt + + var produkt = new Produkt("p123"); + //produkt.id = "": // nicht erlaubt + } + + class MyData + { + public const string Greeting = "Hello"; + public readonly int subData; + + public MyData(int subData) + { + this.subData = subData; + } + + public void NotAllowed() + { + //subData = 10; + } + } + + class Produkt + { + public readonly string id; + public string name; + + public Produkt(string id) + { + this.id = id; + } + } +} \ No newline at end of file diff --git a/Tag 4/Tag_09_Unterrichtsmitschriften/Tag_09_Sealed.cs b/Tag 4/Tag_09_Unterrichtsmitschriften/Tag_09_Sealed.cs new file mode 100644 index 0000000..41189a5 --- /dev/null +++ b/Tag 4/Tag_09_Unterrichtsmitschriften/Tag_09_Sealed.cs @@ -0,0 +1,33 @@ +namespace OP6_78_FIAE1; + +public class Tag_09_Sealed +{ + public static void Main() + { + + } + + class Fahrzeug + { + public virtual void fahren() + { + Console.WriteLine("Wrooom!"); + } + } + + class Auto : Fahrzeug + { + public sealed override void fahren() + { + Console.WriteLine("Brumm!"); + } + } + + class PKW : Auto + { + // Nicht erlaubt, weil fahren() sealed ist. + // public override void fahren() + // { + // } + } +} \ No newline at end of file diff --git a/Tag 4/Unterricht/MethodenReferencen.cs b/Tag 4/Unterricht/MethodenReferencen.cs new file mode 100644 index 0000000..b378a9b --- /dev/null +++ b/Tag 4/Unterricht/MethodenReferencen.cs @@ -0,0 +1,36 @@ +namespace Tag_4_Unterricht; + +public class MethodenReferenzen +{ + public static void Main() + { + var auto = new Auto(); + + auto.fahren(); + + var fahren = (Auto auto) => { + Console.WriteLine($"Fahren mit {auto.geschwindigkeit} km/h!"); + }; + + fahren(auto); + + auto.fahren = () => {Console.WriteLine("Ruckel, Ruckel, Motorprobleme.");}; + + auto.fahren(); + } + + class Auto + { + public int geschwindigkeit = 100; + public Action fahren; + + public Auto() + { + geschwindigkeit = 50; + fahren = () => + { + Console.WriteLine($"Fahren mit {geschwindigkeit} km/h!"); + }; + } + } +} \ No newline at end of file diff --git a/Tag 4/Unterricht/Program.cs b/Tag 4/Unterricht/Program.cs index 3751555..499dd2a 100644 --- a/Tag 4/Unterricht/Program.cs +++ b/Tag 4/Unterricht/Program.cs @@ -1,2 +1,3 @@ -// See https://aka.ms/new-console-template for more information -Console.WriteLine("Hello, World!"); +using Tag_4_Unterricht; + +MethodenReferenzen.Main(); \ No newline at end of file diff --git a/Tag 4/Unterricht/sealed.cs b/Tag 4/Unterricht/ReadOnly.cs similarity index 81% rename from Tag 4/Unterricht/sealed.cs rename to Tag 4/Unterricht/ReadOnly.cs index e71e2c6..1f28952 100644 --- a/Tag 4/Unterricht/sealed.cs +++ b/Tag 4/Unterricht/ReadOnly.cs @@ -1,11 +1,11 @@ namespace Tag_4_Unterricht; -public class Sealed +public class ReadOnly { public static void Main() { var data = new MyData(1); - data.subData = 10; + // data.subData = 10; } class MyData @@ -20,7 +20,7 @@ public class Sealed public void NotAllowed() { - subData = 10; + // subData = 10; } } } \ No newline at end of file diff --git a/Tag 4/Unterricht/Sealed.cs b/Tag 4/Unterricht/Sealed.cs new file mode 100644 index 0000000..c03c91c --- /dev/null +++ b/Tag 4/Unterricht/Sealed.cs @@ -0,0 +1,30 @@ +namespace Tag_4_Unterricht; + +public class Sealed +{ + public static void Main() + { + + } + + class Fahrzeug + { + public virtual void fahren() + { + Console.WriteLine("Wroom!"); + } + } + + class Auto : Fahrzeug + { + public sealed override void fahren() + { + Console.WriteLine("Brumm!"); + } + } + + class PKW : Auto + { + + } +} \ No newline at end of file diff --git a/Tag 4/Unterricht/obj/Debug/net10.0/Unterricht.csproj.CoreCompileInputs.cache b/Tag 4/Unterricht/obj/Debug/net10.0/Unterricht.csproj.CoreCompileInputs.cache index 23108ad..8a62c50 100644 --- a/Tag 4/Unterricht/obj/Debug/net10.0/Unterricht.csproj.CoreCompileInputs.cache +++ b/Tag 4/Unterricht/obj/Debug/net10.0/Unterricht.csproj.CoreCompileInputs.cache @@ -1 +1 @@ -45392ea676cd60f1efca1256936625614d4506fcf734fc315438d95aa7b4bc99 +e09687c9b7f00a174eaa10132c687ac93b70f4fcbfb7f5c2cbe95049d1bbcbc9 diff --git a/Tag 4/Unterricht/obj/Debug/net10.0/Unterricht.csproj.FileListAbsolute.txt b/Tag 4/Unterricht/obj/Debug/net10.0/Unterricht.csproj.FileListAbsolute.txt index abff711..1df5e30 100644 --- a/Tag 4/Unterricht/obj/Debug/net10.0/Unterricht.csproj.FileListAbsolute.txt +++ b/Tag 4/Unterricht/obj/Debug/net10.0/Unterricht.csproj.FileListAbsolute.txt @@ -2,3 +2,13 @@ /home/max/Dokumente/Umschulung/CSharp/Tag 4/Unterricht/obj/Debug/net10.0/Unterricht.AssemblyInfoInputs.cache /home/max/Dokumente/Umschulung/CSharp/Tag 4/Unterricht/obj/Debug/net10.0/Unterricht.AssemblyInfo.cs /home/max/Dokumente/Umschulung/CSharp/Tag 4/Unterricht/obj/Debug/net10.0/Unterricht.csproj.CoreCompileInputs.cache +/home/max/Dokumente/Umschulung/CSharp/Tag 4/Unterricht/bin/Debug/net10.0/Unterricht +/home/max/Dokumente/Umschulung/CSharp/Tag 4/Unterricht/bin/Debug/net10.0/Unterricht.deps.json +/home/max/Dokumente/Umschulung/CSharp/Tag 4/Unterricht/bin/Debug/net10.0/Unterricht.runtimeconfig.json +/home/max/Dokumente/Umschulung/CSharp/Tag 4/Unterricht/bin/Debug/net10.0/Unterricht.dll +/home/max/Dokumente/Umschulung/CSharp/Tag 4/Unterricht/bin/Debug/net10.0/Unterricht.pdb +/home/max/Dokumente/Umschulung/CSharp/Tag 4/Unterricht/obj/Debug/net10.0/Unterricht.dll +/home/max/Dokumente/Umschulung/CSharp/Tag 4/Unterricht/obj/Debug/net10.0/refint/Unterricht.dll +/home/max/Dokumente/Umschulung/CSharp/Tag 4/Unterricht/obj/Debug/net10.0/Unterricht.pdb +/home/max/Dokumente/Umschulung/CSharp/Tag 4/Unterricht/obj/Debug/net10.0/Unterricht.genruntimeconfig.cache +/home/max/Dokumente/Umschulung/CSharp/Tag 4/Unterricht/obj/Debug/net10.0/ref/Unterricht.dll diff --git a/Tag 4/Unterricht/obj/Debug/net10.0/Unterricht.dll b/Tag 4/Unterricht/obj/Debug/net10.0/Unterricht.dll new file mode 100644 index 0000000000000000000000000000000000000000..56ba683e1d358e2ccac3f05e9ccb9bf61f7fabd3 GIT binary patch literal 6144 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 literal 0 HcmV?d00001 diff --git a/Tag 4/Unterricht/obj/Debug/net10.0/Unterricht.genruntimeconfig.cache b/Tag 4/Unterricht/obj/Debug/net10.0/Unterricht.genruntimeconfig.cache new file mode 100644 index 0000000..3c7196a --- /dev/null +++ b/Tag 4/Unterricht/obj/Debug/net10.0/Unterricht.genruntimeconfig.cache @@ -0,0 +1 @@ +8b60f12dc663d2aa40ccb0fb87cd4c5c604470f96947448f5072bf2ee0bce24f diff --git a/Tag 4/Unterricht/obj/Debug/net10.0/Unterricht.pdb b/Tag 4/Unterricht/obj/Debug/net10.0/Unterricht.pdb new file mode 100644 index 0000000000000000000000000000000000000000..e6233c60e81330a3b363652aa00d798c6a4383da GIT binary patch literal 11612 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 S0U1ry01#q`^nroG1LS`j4o8Fl literal 0 HcmV?d00001 diff --git a/Tag 4/Unterricht/obj/Debug/net10.0/apphost b/Tag 4/Unterricht/obj/Debug/net10.0/apphost new file mode 100755 index 0000000000000000000000000000000000000000..c5415afa5a19f0cb05cbe9a4a4be80f60cfa65ad GIT binary patch literal 98312 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 aRO6uUHciK%_>p= literal 0 HcmV?d00001 diff --git a/Tag 4/Unterricht/obj/Debug/net10.0/refint/Unterricht.dll b/Tag 4/Unterricht/obj/Debug/net10.0/refint/Unterricht.dll new file mode 100644 index 0000000000000000000000000000000000000000..bb428d0cd5b73f8009ae7523c922630f39cf386a GIT binary patch literal 6144 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 aRO6uUHciK%_>p= literal 0 HcmV?d00001 diff --git a/wbs-csharp.kdev4 b/wbs-csharp.kdev4 deleted file mode 100644 index 96b8716..0000000 --- a/wbs-csharp.kdev4 +++ /dev/null @@ -1,4 +0,0 @@ -[Project] -CreatedFrom= -Manager=KDevGenericManager -Name=wbs-csharp