Vermutlich eines der schnellsten und besten Erklärungsvideos das ich je gesehen habe. (Musste vorher noch das delegate Video schauen und hab nicht verstanden welchen Sinn delegates haben wenn man doch genauso gut die Methode aufrufen könnte, aber die Erklärung kam direkt mit diesem Video und jetzt ergibt alles Sinn.) Wirklich sehr gut gemacht.
sehr gut erklärt, wenn man es versteht ist das eigentlich ganz leicht, für mich sah das richtig kompliziert am anfang aus, aber jetzt ist es eigentlich ganz einfach ^^ Vielen Dank
Kannst Du dann in einem kurzen Satz erklären, wofür man das braucht? Für mich klingt das irgendwie nach mehr Code ohne wirklich einen Mehrwert zu haben.
@@BerlinKoeln So genau fällt mir da jetzt kein Beispiel ein, aber @ProgrammierenStarten kann bestimmt eins nennen und ich glaube es wurde auch ein Beispiel im Video genannt, oder?
Wie währe es Mal mit ein paar richtigen Beispielen am ende, für was man das brauchen könnte. Ich weiß nicht für was ich Lambda Ausdrücke verwenden soll oder gar Delegates. Wenn ich die Vorteile nicht verstehen, dann programmiere ich in Zukunft einfach so wie immer. Ohne die "Vorteile" von Lambas und Delegates zu nutzen. Aber dennoch finde ich eure Videos sehr gut. Ich weiß zwar nicht warum ich das Anwenden soll, habe aber verstanden wie ich es Anwendung könnte.
Hi, ich kann mir gut vorstellen dass es noch richtig komplexe Anwendungen damit gibt aber rein vom Beispiel her dass hier gezeigt wurde erkenne ich nicht den Mehrwert gegenüber der Zeile mit dem delegate: Ob jetzt : ... = delegate ( string s){...} Oder ... = (name) => {...} Wirkt jetzt für mich nicht so als ganz große Erleichterung oder Abkürzung oder sonst was
Sinn und Zweck der Lambda Expressions erschliesst sich mir auch nicht nach diesem Video. Es ist wie mit den Interfaces, da wird einem immer gezeigt, WIE man die Dinger schreibt, aber kaum, wozu das gebraucht wird. Das ist halt OOP Kram, den man in Entwurfsmustern, Linq usw. braucht. Aber damit kann ich kaum was anfangen, sniff!
Ist vielleicht etwas spät, aber z.B. wenn man in Blazor z.B. einen Button hinzufügt, so kann man einen EventHandler mit @onclick="MethodenNamen" hinzufügen. Wenn ich jedoch nun Parameter mitgeben möchte, z.B. wenn man mehrere Buttons, jedoch die gleiche Methode hat und überall die gleiche Methode verwenden will, so kann man z.B. eine Zahl als Parameter übergeben um die einzelnen Buttons identifizieren zu können. z.B. Drück mich! Die Definition der Methode: public async Task HandleButtonClick(int ButtonIndex) await JSRuntime.InvokeVoidAsync("console.log", $"Knopf {ButtonIndex}" wurde gedrückt); In der Konsole des Browsers würde dann folgendes stehen: Knopf 1 wurde gedrückt. Hoffe ich konnte damit weiterhelfen.
Hey, ich mag Deine Videos. Aber dieses ist sehr verwirrend. Vielleicht habe ich es verpasst, aber wo genau erklärst Du wofür der Lambda Operator jetzt gut ist? Habe die Stelle, in der Du ihn verwendest jetzt schon 3 mal angesehen, aber du erklärst das in dem Video leider nicht. Du benutzt ihn nur, und am Ende sagst Du "Jetzt weißt Du, was das ist". Aber leider weiß ich es immer noch nicht, wofür der da ist.
Kann es sein das das c# ebook nicht das aktuellste ist ich bin gerade bei der Methode mit der adittion und dem Rückgabewert return und das Programm startet obwohl alles richtig eingegeben wurde
Poste mal deinen Code hier rein damit ich das überprüfen kann! :) Das C#-Ebook bezieht sich ja nur auf die Programmiersprache selbst und an der hat sich nichts verändert.
So schön so gut, aber was ich überhaupt nicht begreife ist was dieses "S" bei Console.WriteLine(S"{name} is {age} years old"); zu bedeuten hat, oder wofür das steht. Das hast Du leider nicht erklährt. 😐
@@ProgrammierenStarten achso, dann war ich wohl zu schnell. Sehe das zum ersten mal, wahrscheinlich weil andere YT ihre Videos hochladen und erst später freischalten, ihr es aber direkt freischaltet nach dem hochladen.
vielen Dank, jetzt muss ich niemals wieder Console.WriteLine benutzen public delegate void Del(string s); static void Main(string[] args) { Del print = new Del(Print); print("Moin"); } static void Print(string s) { Console.WriteLine(s); }
Du möchtest C# meistern? Dann sichere dir jetzt unseren umfassenden C# Masterkurs ►►► bit.ly/csharp-masterkurs-15fc
Vermutlich eines der schnellsten und besten Erklärungsvideos das ich je gesehen habe. (Musste vorher noch das delegate Video schauen und hab nicht verstanden welchen Sinn delegates haben wenn man doch genauso gut die Methode aufrufen könnte, aber die Erklärung kam direkt mit diesem Video und jetzt ergibt alles Sinn.) Wirklich sehr gut gemacht.
Danke, ich habe es endlich nach 8 STD verstanden
Verständliche Erklärungsweise - gutes Video.
In knapp 10min spart man sich zeit für Stunden, ich liebe deine Videos!
Endlich verstehe ich diese blöden Pfeile ^^ sehr gut erklärt danke
sehr gut erklärt, wenn man es versteht ist das eigentlich ganz leicht, für mich sah das richtig kompliziert am anfang aus, aber jetzt ist es eigentlich ganz einfach ^^ Vielen Dank
gerne :D
Kannst Du dann in einem kurzen Satz erklären, wofür man das braucht? Für mich klingt das irgendwie nach mehr Code ohne wirklich einen Mehrwert zu haben.
@@BerlinKoeln So genau fällt mir da jetzt kein Beispiel ein, aber @ProgrammierenStarten kann bestimmt eins nennen und ich glaube es wurde auch ein Beispiel im Video genannt, oder?
Sehr nice erklärt. Einer Erweiterung auf Action und Func wäre noch cool :)
dieses video hat mir geholfen thx
Wie währe es Mal mit ein paar richtigen Beispielen am ende, für was man das brauchen könnte.
Ich weiß nicht für was ich Lambda
Ausdrücke verwenden soll oder gar Delegates.
Wenn ich die Vorteile nicht verstehen, dann programmiere ich in Zukunft einfach so wie immer. Ohne die "Vorteile" von Lambas und Delegates zu nutzen.
Aber dennoch finde ich eure Videos sehr gut.
Ich weiß zwar nicht warum ich das Anwenden soll, habe aber verstanden wie ich es Anwendung könnte.
Danke für dein Feedback :)
Hi, ich kann mir gut vorstellen dass es noch richtig komplexe Anwendungen damit gibt aber rein vom Beispiel her dass hier gezeigt wurde erkenne ich nicht den Mehrwert gegenüber der Zeile mit dem delegate:
Ob jetzt :
... = delegate ( string s){...}
Oder
... = (name) => {...}
Wirkt jetzt für mich nicht so als ganz große Erleichterung oder Abkürzung oder sonst was
Sinn und Zweck der Lambda Expressions erschliesst sich mir auch nicht nach diesem Video. Es ist wie mit den Interfaces, da wird einem immer gezeigt, WIE man die Dinger schreibt, aber kaum, wozu das gebraucht wird. Das ist halt OOP Kram, den man in Entwurfsmustern, Linq usw. braucht. Aber damit kann ich kaum was anfangen, sniff!
Stimme ich dir zu. Es ist zwar schön zu sehen was alles möglich ist, aber wozu ich das brauchen könnte, ist mir momentan auch noch nicht klar.
Ist vielleicht etwas spät, aber z.B. wenn man in Blazor z.B. einen Button hinzufügt, so kann man einen EventHandler mit @onclick="MethodenNamen" hinzufügen. Wenn ich jedoch nun Parameter mitgeben möchte, z.B. wenn man mehrere Buttons, jedoch die gleiche Methode hat und überall die gleiche Methode verwenden will, so kann man z.B. eine Zahl als Parameter übergeben um die einzelnen Buttons identifizieren zu können. z.B.
Drück mich!
Die Definition der Methode:
public async Task HandleButtonClick(int ButtonIndex)
await JSRuntime.InvokeVoidAsync("console.log", $"Knopf {ButtonIndex}" wurde gedrückt);
In der Konsole des Browsers würde dann folgendes stehen:
Knopf 1 wurde gedrückt.
Hoffe ich konnte damit weiterhelfen.
Könntest du mal auch immer am Ende ein richtiges Beispiel schreiben?
Ich würde ja gerne mal sehen wie das mit mehreren Methoden im Delegate aussieht....
Hey, ich mag Deine Videos. Aber dieses ist sehr verwirrend. Vielleicht habe ich es verpasst, aber wo genau erklärst Du wofür der Lambda Operator jetzt gut ist? Habe die Stelle, in der Du ihn verwendest jetzt schon 3 mal angesehen, aber du erklärst das in dem Video leider nicht. Du benutzt ihn nur, und am Ende sagst Du "Jetzt weißt Du, was das ist".
Aber leider weiß ich es immer noch nicht, wofür der da ist.
Ganz doofe Frage aber wofür sollte ich denn anonyme Methoden benutzen?
Könnt ihr mal was zu Mock bzw. Unit Tests machen?
Haben das notiert :) Unit Tests wird in Zukunft definitiv kommen!
@@ProgrammierenStarten Ja cool freue mich schon :)
Ich weiß bis jetzt noch nicht wofür ich das benutzen müsste aber interessant trotzdem
Kann es sein das das c# ebook nicht das aktuellste ist ich bin gerade bei der Methode mit der adittion und dem Rückgabewert return und das Programm startet obwohl alles richtig eingegeben wurde
Poste mal deinen Code hier rein damit ich das überprüfen kann! :)
Das C#-Ebook bezieht sich ja nur auf die Programmiersprache selbst und an der hat sich nichts verändert.
ne hat sich geklärt war einfach müde und hab nen kleinen fehler gemacht also was überlesen hab aber 30 min ned gecheckt😂
So schön so gut, aber was ich überhaupt nicht begreife ist was dieses "S" bei
Console.WriteLine(S"{name} is {age} years old");
zu bedeuten hat, oder wofür das steht. Das hast Du leider nicht erklährt. 😐
Das sagt dem Compiler dass diese {} platzhalter Strings sind
ich sehe, dass es funktioniert. ich versteh nur nicht wozu.
Hey, da kann was nicht richtig sein. Das Video hat nur 360p. Sry, aber so kann ich das leider nicht angucken, ist zu verschwommen.
Das liegt daran, dass das Video gerade eben erst rauskam und noch verarbeitet wird. :)
@@ProgrammierenStarten achso, dann war ich wohl zu schnell. Sehe das zum ersten mal, wahrscheinlich weil andere YT ihre Videos hochladen und erst später freischalten, ihr es aber direkt freischaltet nach dem hochladen.
Delegarten xd
Haha 😆
Ein 11 Minuten Video für eine annonyme Methode? Krasser Content, Langer 😂
:D
vielen Dank, jetzt muss ich niemals wieder Console.WriteLine benutzen
public delegate void Del(string s);
static void Main(string[] args)
{
Del print = new Del(Print);
print("Moin");
}
static void Print(string s)
{
Console.WriteLine(s);
}
:D
-Und dann hast Du einen Python-Befehl der in einem C# Quellcode läuft 🤣
@@sebastianmiftari84 Genau. Nur dass du noch statt "Print" "print" schreiben müsstest.