C# Aufbaukurs

Inhalt “C# Aufbaukurs mit Visual Studio 2019”

In diesem C# Kurs werden weiterführende Themen der Programmiersprache C# umfassend und kompakt unterrichtet. Das ist ein Intensivtraining für fortgeschrittene Programmierer und Software-Entwickler, die mit C# und Visual Studio professionell programmieren wollen. Zusammen mit dem C#-Grundkurs wird der gesamte Sprachumfang von C# behandelt.

C# ist eine moderne Programmiersprache, die durch ihre klaren Sprachkonzepte zu einer der populärsten Sprachen wurde. Ursprünglich wurde C# für Windows-Anwendungen entwickelt. In den letzten Jahren wurde ihr Einsatzbereich stark erweitert:

  • Mit Xamarin auf Mobile-Anwendungen für iOS und Android.
  • Mit .NET Core auf plattformübergreifende Anwendungen: Eine .NET Core Anwendung ist nach der Installation der entsprechenden Runtime-Bibliotheken unter Windows, Linux (x64/ARM32) und macOS lauffähig.
  • Mit Blazor auf Web-Anwendungen.

Die Entwicklungsumgebung Microsoft Visual Studio 2019 unterstützt alle diese Einsatzbereiche. Sie stellt für Windows Programme leistungsfähige Designer für graphische Oberflächen zur Verfügung.

Der theoretische Unterricht wird durch viele Beispiele veranschaulicht. Diese verwenden eine grafische Benutzeroberfläche und die aktuelle Version C# 8.0, Visual Studio 2019 und .NET Core 3.1.

C# Aufbaukurs
aus der Lösung einer Übungsaufgabe

Die Inhalte dieser C# Schulung können an die Wünsche der Teilnehmer angepasst werden.

Statische Elemente

  • Statische Variablen, Methoden und Klassen
  • Überladene Operatoren
  • Erweiterungsmethoden

Generische Programmierung

  • Generische Methoden und Klassen
  • Typparameter-Einschränkungen (Constraints)

Interface-Klassen

  • Die Definition und Implementation von Interface-Klassen
  • Typische Anwendungsfälle und generische Interface-Klassen
  • Beispiele: IComparable, IEnumerable
  • Iteratoren und die foreach-Anweisung
  • Iteratoren und die yield-Anweisung
  • Die Formatierung selbstdefinierter Klassen mit IFormattable
  • Die Entwurfsmuster Dependency Injection und Factory Pattern

Exception-Handling

  • Die try-Anweisung.
  • Die Basisklasse Exception und vordefinierte Exceptions.
  • throw-Anweisungen.
  • Selbstdefinierte Exception-Klassen.
  • Die Freigabe von Ressourcen, try-finally und die using-Anweisung.
  • Die Protokollierung von Exceptions in einem EventLog.

Delegat-Typen, Lambda-Ausdrücke und Ereignisse

  • Delegat-Typen und –Instanzen
  • Generische Delegat-Typen: Action und Func
  • Operationen zur Verwaltung von Aufruflisten
  • Anonyme Methoden und Lambda-Ausdrücke
  • LINQ Abfrageausdrücke (from, select, where, orderby usw.)
  • LINQ Abfrageausdrücke als Methodenaufrufe
  • Ereignisse (events)

Laufzeit-Typinformationen und Reflektion

  • Laufzeit-Typinformationen der Klasse Type
  • Reflektion mit der Klasse Assembly
  • Dynamisch erzeugte Datentypen und Plugins

Attribute

  • Vordefinierte Attribute
  • Selbstdefinierte Laufzeitattribute

Uhrzeiten, Kalenderdaten und Timer

  • Zeitpunkte und Zeiträume mit DateTime und TimeSpan
  • Timer und zeitgesteuerte Ereignisse
  • Hochauflösende Zeitmessung mit der Klasse Stopwatch
  • Kulturspezifische Datumsformate und Kalender

Multithreading und Asynchrone Programmierung

  • Multithreading mit der Task Parallel Library (TPL)
  • Funktionen als Threads starten
  • Fortsetzungen (Continutions): Tasks nacheinander ausführen
  • Reaktionsfähige Oberflächen: Auf Steuerelemente in Tasks zugreifen
  • Tasks abbrechen
  • Asynchrone Programmierung mit async und await
  • Kritische Abschnitte und die Synchronisation von Threads
  • Datenparallelität: Parallel.For und Parallel.ForEach
  • Ältere Konzepte: Die Klassen Thread und BackgroundWorker

Über diesen “C# Aufbaukurs”

Zielgruppe dieses C# Trainings

Software-Entwickler, die professionelle Programme mit C# schreiben wollen. Die Teilnehmer sollten C#-Kenntnisse im Umfang des C#-Grundkurses haben.

Unterrichtsstil

Vortrag mit vielen Beispielen, die das Wesentliche auf den Punkt bringen. Dabei wird auf einen ausgewogenes Verhältnis von Theorie und Praxis geachtet.

  • Zu Beginn eines neuen Themas wird zunächst ein Überblick über die Einsatzmöglichkeiten, Grundideen und die Syntax gegeben. Diese werden an sorgfältig ausgewählten und bewährten Beispielen illustriert.
  • Das Verständnis wird oft durch den Vergleich ähnlicher (auch älterer) Sprachelemente und ihrer Vor- und Nachteile vertieft. Dabei werden oft "best practises" empfohlen.
  • Falls die Teilnehmer ihr Wissen selbständig vertiefen wollen: Das Manuskript enthält zahlreiche praxisnahe Übungsaufgaben. Auf Wunsch können nach vorheriger Absprache auch Aufgaben aus der Arbeit der Seminarteilnehmer behandelt werden.

Falls sich im Lauf des Seminars  zeigt, dass Grundlagen bei den Teilnehmern fehlen oder weitere Themen gewünscht werden, kann die Agenda auch noch während des Seminars an die Wünsche der Teilnehmer angepasst werden.

Schulungsunterlagen

Ausführliche und detaillierte Schulungsunterlagen (ca. 200 Seiten) - Vollständiger Text, keine Powerpoint Folien, die nur Stichworte enthalten. Deshalb können die Kursunterlagen auch als Referenz bei der Arbeit verwendet werden.

Ort und Zeit des C# Trainings

Dieses Seminar wird als Firmenseminar (inhouse) angeboten. Die Durchführung als Präsenzseminar wird bevorzugt, ist aber auch als Online-Seminar möglich. Termine nach Vereinbarung.

Dauer: 5 Tage

Öffentliche Seminare von Prof. Richard Kaiser finden Sie bei der Technischen Akademie Esslingen.

Beurteilungen durch Teilnehmer:

C# Aufbaukurs November 20171 (sehr gut)2345
Gesamtbewertungxxxxxx
Lern- und Arbeitsatmosphärexxxxxx
Kursunterlagenxxxxxx
Fachkompetenz des Dozentenxxxxxxx

Der Dozent dieses C# Seminars

Prof. Richard Kaiser führt seit vielen Jahren Seminare für Firmen durch, vor allem über Software-Entwicklung und die Programmiersprachen C#, C++ und C. Er kennt die Anforderungen der Praxis und geht sowohl in den grundlegenden Konzepten als auch in den Einzelheiten detailliert darauf ein. Zu seinen Kunden gehören renommierte Weltkonzerne und kleine und mittelständische Unternehmen. Er ist der Verfasser mehrerer Bücher über C++, zuletzt „C++ mit Visual Studio 2019“. Er war viele Jahre Mitglied im DIN Normierungsausschuss Informationstechnik NI-22.

 

Kontakt Prof. Richard Kaiser