In guide to C# lernen Sie die Entwicklung von Anwendungen in C#. Die einzelnen Kapitel bauen aufeinander
auf, sind aber derart gestaltet, dass sie auch als Referenz genutzt werden können. Nutzen Sie diese
Kapitelübersicht, um sich einen Überblick über den Aufbau von guide to C# zu verschaffen.
In Kapitel 1
Einführung in .NET werden die Begriffe .NET und C# detailliert
erläutert. .NET wird zu anderen Plattformen zur Softwareentwicklung abgegrenzt, zudem werden die
einzelnen Komponenten und Konzepte von .NET erläutert. Schließlich wird die speziell für .NET entwickelte
Sprache C# vorgestellt.
In Kapitel 2
Anwendungsarchitektur wird der Aufbau moderner Anwendungen
beschrieben, die so wohl objekt- wie auch komponentenorientiert entwickelt werden. Die in diesem Kapitel
vorgestellten Begriffe bilden den Rahmen zur Einordnung der weiteren Themen.
In Kapitel 3
Objektorientierung werden die grundlegenden
Konzepte der objektorientierten Programmierung beschrieben. Außerdem werden das prozedurale und das
objektorientierte Paradigma gegenübergestellt und hinsichtlich ihrer Herkunft und ihrer Leistungsfähigkeit
verglichen.
In Kapitel 4
Typen werden Werte- und Verweistypen gegenübergestellt und ihre
jeweiligen Besonderheiten beschrieben. Eine Einführung in nullbare Wertetypen und eine Übersicht über
die vordefinierten Typen runden das Kapitel ab.
In Kapitel 5
Namensräume werden Namensräume als Konzept vorgestellt, das
zur Organisation von Typen dient. Neben Aliasnamen für Namensräume wird außerdem beschrieben, wie
eigene Namensräume definiert werden können.
In Kapitel 6
Klassen und Strukturen wird beschrieben, wie Klassen und Strukturen
erstellt werden. Insbesondere werden in diesem Kapitel Felder, Eigenschaften und Methoden eingeführt.
Außerdem werden Konstanten und readonly-Variablen vorgestellt.
In Kapitel 7
Vererbung werden die objektorientierten Konzepte Vererbung
und Polymorphie beschrieben. Außerdem werden Versionierung von Methoden mit Hilfe von Vererbung und die
Auswirkungen von Vererbung auf Typmitglieder dargestellt.
In Kapitel 8
Schnittstellen werden Schnittstellen als grundlegendes Konzept
bei der Anwendungsentwicklung vorgestellt. Außerdem wird aufgezeigt, auf welche Arten Schnittstellen
implementiert werden können.
In Kapitel 9
Delegaten werden Delegaten vorgestellt, um eine oder mehrere
Methoden zu kapseln. Neben der Bindung an benannte Methoden werden insbesondere auch anonyme Methoden
beschrieben.
In Kapitel 10
Ereignisse wird beschrieben, wie Ereignisse implementiert werden
und welche Aspekte es dabei zu beachten gilt. Besonderes Augenmerk wird dabei auf den Zusammenhang zwischen
Ereignissen und Delegaten gelegt.
In Kapitel 11
Generika wird die Möglichkeit vorgestellt, Typen generisch zu
implementieren oder generische Typen als Typparameter zu verwenden. Außerdem wird beschrieben, welche
Typbedingungen bei generischen Typen zum Einsatz kommen können, um die Ausführung typsicher zu machen.
In Kapitel 12
Nullbare Wertetypen werden nullbare Wertetypen als
ein Hybrid aus Werte- und Verweistyp vorgestellt. Mit nullbaren Wertetypen ist es möglich, die Vorteile des
Literals null auch für Wertetypen zu nutzen.
In Kapitel 13
Enumerationen werden Enumerationen als einfache Variante eines
wertebasierten Aufzählungstyps vorgestellt. Neben der Implementierung wird auch die interne technische Umsetzung
beschrieben.
In Kapitel 14
Variablen wird das Deklarieren und Definieren von Variablen
beschrieben. Neben der Zuweisung an sich werden auch die Besonderheiten der Zuweisung an nullbare Wertetypen
und an Verweistypen erläutert. Außerdem wird die Instanziierung von Objekten erläutert.
In Kapitel 15
Arrays wird das Konzept der Arrays vorgestellt, um Mengen von gleich
typisierten Daten zu speichern. Dabei werden so wohl ein- und mehrdimensionale wie auch verschachtelte Arrays
beschrieben. Außerdem wird aufgezeigt, wie mit Arrays Indexer für Klassen umgesetzt werden können.
In Kapitel 16
Operatoren werden die diversen Operatoren vorgestellt - arithmetische,
relationale, logische, bitweise und Zeichenkettenoperatoren. Außerdem wird auf verkürzende Schreibweisen und
Operatorüberladung eingegangen.
In Kapitel 17
Ausdrücke werden implizites und explizites Konvertieren sowie
die Implementierung eigener Konvertierungsoperatoren vorgestellt, um Typen ineinander umzuwandeln.
In Kapitel 18
Anweisungen werden die verschiedenen Arten von Anweisungen wie
Bedingungen und Schleifen vorgestellt. Außerdem wird die Schnittstelle IEnumerator als Basis für sämtliche
Aufzählungstypen beschrieben und deren Umsetzung mit der foreach-Anweisung.
In Kapitel 19
Linq wird die in C# seit der Version 3.0 enthaltene Abfragesprache
behandelt, mit der Aufzählungstypen durchsucht, sortiert und gruppiert werden können.
In Kapitel 20
Ausnahmen werden Ausnahmen und die Möglichkeiten zur
Ausnahmebehandlung vorgestellt. Außerdem werden Leistung und Ressourcenbedarf von Ausnahmen
beschrieben.
In Kapitel 21
Attribute wird beschrieben, wie Attribute entwickelt werden.
Außerdem werden Attributparameter und -ziele vorgestellt.
In Kapitel 22
Speicherverwaltung werden Destruktoren und die
Speicherbereinigung beschrieben. Außerdem werden Interning von Zeichenketten und Konzepte zur
verspäteten Initialisierung vorgestellt.