Schulung C#-Basiswissen (Grundlagen der Programmiersprache C#)

Beschreibung/Inhalt

- Diesen Kurs führen wir wahlweise mit jeder C#-Version durch sowie nach Ihrem Wunsch mit jeder Version von .NET Framework oder .NET 5.0/6.0 durch.
- Wir empfehlen als Ergänzung das Schulungsmodul Csharp-Aufbauwissen, damit Sie alle Elemente der Sprache C# kennen.
- Im Rahmen dieses Schulungsmoduls werden auch - sofern nicht vorhanden bei den Teilnehmern - auch die Grundfunktionen von Visual Studio als Entwicklungsumgebung (insbesondere Projektsystem, Codeeditor, Compiler und Debugger) erklärt. Alternativ können wir andere Editoren wie VSCode verwenden.
- Für die Entwicklung einer .NET-Anwendung benötigen Sie zudem Wissen über die benötigten Teile der .NET-Klassenbibliothek. Wenn Sie die benötigen Klassen noch nicht kennen, beschreiben Sie in der Anfrage die zu erstellende Anwendungsart und den Datenbanktyp. Wir werden dann Ihnen ein passendes Angebot erstellen.

# Grundlagen Microsoft .NET (.NET Framework / .NET Core)

  • Varianten von .NET
  • Bestandteile und Dienste von .NET: CLR, Just-in-Time-Compiler, Ahead-of-Timer-Compiler (ab .NET 7.0), Garbage Collector, Exception Handling usw.
  • .NET-Werkzeuge: Visual Studio, Visual Studio Code, .NET SDK


  • # Basiswissen
    Architektur von C# auf Basis von .NET (.NET-Konzepte, auf denen C# aufbaut)
    Standardisierung der Sprache bei ECMA/ISO
    Grundprinzipien der Sprache und der Sprachsyntax
    Compiler
    Datentypen und Literale
    Implizit typisierte lokale Variablen / Type Inference (ab C# 3.0)
    Verbatim Strings und String Interpolation (ab C# 6.0)
    Raw Literal Strings und UTF-8 String Literals (ab C# 11.0)
    Nullable Values Types (ab C# 2.0)
    Null Referenz-Prüfungen / Nullable Reference Types (ab C# 8.0)
    Initializer
    Operatoren
    Bedingungen und Schleifen
    Switch Expressions (ab C# 8.0)
    Arrays und Objektmengen
    Index und Range (ab C# 8.0)

    # Objektorientiertes Programmieren mit Csharp
    Namensräume
    Objekte und Klassen (inklusive aller Besonderheiten wie z.B. abstrakte, statische und partielle Klassen)
    Klassen versus Strukturen
    Records (ab C# 9.0)
    Sichtbarkeit für Typen (public, private, protected, file)
    Operatoren typeof() und nameof()
    Klassenmitglieder (Methoden, Properties, Fields, Konstruktoren)
    Modifizierer für Klassenmitglieder (public, private, protected, readonly, required, …)
    Statische Mitglieder
    Named/Optional Parameters (ab C# 4.0)
    Methoden überladen
    Local Functions (ab C# 7.0) und Static Local Functions (ab C# 8.0)
    Erweiterungsmethoden (Extension Methods) (ab C# 3.0)
    Vererbung (Vererbungsregeln) und Polymorphismus
    Abstrakte Klassen
    Schnittstellen
    Standardimplementierungen in Schnittstellen (ab C# 8.0)
    Idisposable/using-Blöcke
    Nutzung generischer Klassen

    # Praxisszenarien
    Erzeugung von Anwendungen (EXE)
    Erzeugung und Einbindung von Klassenbibliotheken (DLL)
    Nutzung externe Klassenbibliotheken via NuGet

    # Weitere Sprachkonstrukte
    Anonyme Typen (ab C# 3.0)
    Tupel (ab C# 7.0)
    Fehlerbehandlung (Exception Handling)
    Exception Filters (ab C# 6.0)
    Pattern Matching (ab C# 7.0)
    Annotationen (Meta-Daten/.NET-Attribute) verwenden
    Language Integration Query (LINQ) / Abfrageausdrücke (Query Expressions) (ab C# 3.0)
    Lambda-Ausdrücke (Lambda Expressions) (ab C# 3.0)
    Expression-bodied Members (ab C# 6.0)
    Delegaten und Ereignisse (Events)
    Asynchrone Programmierung
    Asynchrone Programmierung mit async/await (ab C# 5.0)

    Ausblick
  • Ausblick auf fortgeschrittene Sprachfeatures aus dem dem C#-Aufbauwissen
  • Ausblick auf neue Sprachfeatures in der Zukunft (soweit aktuell angekündigt)

  • Dauer
    Auf Wunsch. Gerne geben wir Ihnen eine Empfehlung zur notwendigen Schulungsdauer, wenn Sie uns in der Anfrage Ihre Vorkenntnisse und Ziele nennen.
    Ort
    Online oder in Deutschland, Österreich und der Schweiz an Ihrem Firmensitz
    Schulungsdidaktik
    Nach Ihrer Wahl: Klassische Schulung mit PC-Übungen, reine Präsentation ohne PC-Übungen oder interaktiver Workshop mit Beratungsanteil