Buchbeschreibung
Mein C# 2008 Kompendium behandelt die Windows-Programmierung mit C# 2008 in allen
wichtigen Aspekten. Sie erfahren alles Wichtige zu den Grundlagen von .NET und von
C#, Wichtiges zu der Arbeit mit dem .NET Framework und Sie lernen Windows-Anwendungen
- und hier besonders: WPF-Anwendungen - zu entwickeln.
Das Buch geht aber über die Grundlagen hinaus und behandelt auch erweiterte Themen
wie Multithreading, Serialisierung, LINQ und LINQ to SQL.
Kapitel
Teil 1: Grundlagen
1 Einführung
1.1 Zum Buch
1.2 Das Glossar
1.3 Die Installation von Visual Studio 2008 und der Express Editionen
1.4 Wie erhalten Sie Hilfe zu Problemen?
1.5 Wichtige Begriffe
1.6 Das .NET Framework
1.7 Die Möglichkeiten von .NET-Programmen
1.8 Typen, Namensräume, Assemblys und Module
1.9 Der .NET-Reflector: Ein wichtiges Tool zur Erforschung von Assemblys
2 Einführung in die Arbeit mit Visual Studio 2008
2.1 Die (wichtigen) C#-Projekttypen
2.2 Projekte und Projektmappen
2.3 Der Start von Visual Studio und das Erzeugen bzw. Öffnen von Projekten
2.4 Einstellung der Entwicklungsumgebung
2.5 Die wichtigen Fenster der IDE, erläutert an einem einfachen Beispiel
2.6 Weitere wichtige Fenster der IDE
2.7 Kompilieren und Ausführen einer Projektmappe
2.8 Entwicklung einer einfachen Windowsanwendung
2.9 Entwicklung einer Konsolenanwendung
2.10 Grundlagen zum Debuggen
2.11 Grundlagen zum Verteilen einer Anwendung
2.12 Optionen der Entwicklungsumgebung
2.13 Projekteigenschaften
2.14 Weitere Features von Visual Studio
2.15 Kompilieren ohne Visual Studio
2.16 Neues in Visual Studio 2008 und in den neuen Express Editionen
3 Die Sprache C#
3.1 Die Grundlage einer C#-(Windows-)Anwendung
3.2 Assemblys und Namensräume
3.3 Bezeichner und Schlüsselwörter
3.4 Anweisungen
3.5 (Daten)Typen
3.6 Variablen und Konstanten
3.7 Namensrichtlinien
3.8 Ausdrücke und Operatoren
3.9 Verzweigungen und Schleifen
3.10 Präprozessor-Direktiven
4 Grundlegende OOP
4.1 Klassen und Strukturen
4.2 Felder
4.3 Kommentieren der Elemente eines Typs
4.4 Methoden
4.5 Eigenschaften: Kapselung von Daten
4.6 Der Gültigkeitsbereich von Klassen, Strukturen und deren Elementen
4.7 Anonyme Typen
4.8 Indexer
4.9 Konstruktoren, Finalisierer, Dispose und using
4.10 Statische Klassenmember und statische Klassen
4.11 Organisieren von Typelementen mit Hilfe von Regionen
5 Weiterführende OOP
5.1 Partielle Klassen, Strukturen (und Schnittstellen)
5.2 Verschachtelte Typen
5.3 Vererbung und Polymorphismus
5.4 Abstrakte Klassen, Eigenschaften und Methoden
5.5 Versiegelte Klassen und Methoden
5.6 Schnittstellen
5.7 Operatoren für eigene Typen
5.8 Wichtige Methoden für eigene Typen
5.9 Delegaten, anonyme Methoden und Lambda-Ausdrücke
5.10 Benachrichtigung des Aufrufers über Ereignisse und partielle Methoden
5.11 Klassenbibliotheken
6 OOP-Specials
6.1 Erweiterungsmethoden
6.2 Generische Typen und Methoden
6.3 Lambda-Ausdrücke und Ausdrucksbäume
6.4 Attribute
7 Arrays und Auflistungen
7.1 Grundsätzliche Unterschiede
7.2 Übersicht über die aktuellen Auflistungen (inkl. Performance-Vergleich)
7.3 Die Schnittstellen der Arrays und Auflistungen
7.4 Eigene Implementierung eines Iterators
7.5 Arrays
7.6 Die »normale«, aktuelle Auflistung List
7.7 Suchen in Auflistungen (am Beispiel der List-Auflistung)
7.8 Bearbeiten aller Objekte eines Arrays oder einer List-Auflistung mit ForEach
7.9 Optimierung einer Auflistung mit vielen Objekten
7.10 Aktuelle assoziative Auflistungen
7.11 Spezielle aktuelle Auflistungen
7.12 Individualisierbare Auflistungen
7.13 Übersicht über die weniger interessanten, alten Auflistungen des .NET Framework
8 Grundlegende Programmiertechniken
8.1 Arbeiten mit Ausnahmen
8.2 Arbeiten mit Zeichenketten
8.3 Reguläre Ausdrücke
8.4 Formatierungen
8.5 Eingaben überprüfen und parsen
8.6 Arbeiten mit Datumswerten und Zeitspannen
8.7 Mathematische Berechnungen
8.8 Meldungen mit Hilfe der MessageBox-Klasse ausgeben
8.9 Wichtige Diagnose-Hilfsmittel
8.10 Auswerten von Befehlszeilenargumenten
8.11 Dokumentation der Programmierung
8.12 Umgang mit dem Garbage Collector
9 Fehler debuggen, testen und protokollieren
9.1 Fehler suchen und beseitigen (Debugging)
9.2 Automatisches Testen mit Unit-Tests
9.3 Protokollieren während der Ausführung einer Anwendung
10 Arbeiten mit Dateien, Ordnern und Streams
10.1 Mit dem Dateisystem arbeiten
10.2 Einführung in die Arbeit mit Streams
10.3 Dateien binär über eine FileStream-Instanz lesen und schreiben
10.4 Spezielles binäres Schreiben und Lesen über BinaryWriter und BinaryReader
10.5 Textdateien lesen und schreiben
10.6 Daten komprimieren und komprimierte Daten entpacken
10.7 Richtlinien zum Speichern von Daten im Dateisystem
10.8 Arbeiten mit isoliertem Speicher
11 LINQ
11.1 Grundlegendes
11.2 Die LINQ-Erweiterungsmethoden
11.3 Komplexe Abfragen mit into, let und mehreren from-Klauseln
11.4 Einige Tipps und Tricks
Teil 2: Anwendungen entwickeln
12 WPF-Grundlagen
12.1 WPF versus Windows.Forms
12.2 Die Möglichkeiten, die Sie mit WPF haben
12.3 WPF-Anwendungen in Visual Studio
12.4 XAML
12.5 Die grundlegenden WPF-Konzepte
13 WPF-Anwendungen
13.1 Grundlegendes zur Anwendungsentwicklung unter WPF
13.2 Grundlegendes zur Arbeit mit Fenstern und Steuerelementen
13.3 Der Umgang mit WPF-Fenstern
13.4 Die WPF-Steuerelemente
13.5 Einige abschließende Tipps
14 Wichtige WPF-Techniken
14.1 Ressourcen in WPF
14.2 Befehle
14.3 Trigger
14.4 Dekoratoren
14.5 Stile, Vorlagen, Skins und Themen
14.6 Datenbindung
14.7 Einige weitere WPF-Techniken am Beispiel
15 Konfiguration, Ressourcen und Lokalisierung
15.1 Konfiguration einer Anwendung
15.2 Ressourcen
15.3 Lokalisierung
16 Windowsanwendungen verteilen
16.1 Vorbereitung der Verteilung
16.2 XCopy-Verteilung
16.3 Erstellung eines Setup mit Visual Studio
16.4 ClickOnce-Verteilung
Teil 3: Daten verwalten
17 Serialisierung
17.1 Grundlagen der Serialisierung
17.2 Wann welche Serialisierung?
17.3 XML-Serialisierung
17.4 Binäre/SOAP-Serialisierung
17.5 Datenvertrag-Serialisierung
18 XML
18.1 Noch nicht behandelte XML-Grundlagen
18.2 Lesen und Schreiben mit XElement, XDocument und LINQ to XML
18.3 Schnelles Lesen und Schreiben mit einem XmlReader bzw. XmlWriter
18.4 XML-Dokumente über XSD validieren
19 Datenbanken mit LINQ to SQL bearbeiten
19.1 Grundlagen
19.2 Erstellen eines Datenbankmodells
19.3 Abfragen mit LINQ to SQL
19.4 Bearbeiten von Daten über das Objektmodell
19.5 Business-Objekt-Modelle oder: Die partiellen Klassen und eine Reaktion auf
Datenereignisse
19.6 Transaktionen
19.7 Behandlung von Konflikten beim Aktualisieren
19.8 Wichtige, nicht behandelte Features
Teil 4: Fortgeschrittene Programmierung
20 Multithreading
20.1 Einführung in Multithreading
20.2 Zugriff auf die Benutzeroberfläche
20.3 Asynchrones Ausführen von Methoden
20.4 Einfaches Multithreading mit der BackgroundWorker-Klasse
20.5 Einfache Threads
20.6 Die ThreadPool-Klasse
20.7 Ausnahmen in Threads und beim asynchronen Aufruf von Methoden
20.8 Das ereignisbasierte asynchrone Entwurfsmuster und asynchrone Methoden
20.9 Threads synchronisieren
20.10 Timer
20.11 Weitere interessante Themen beim Multithreading
21 Der Aufruf von API-Funktionen und das Arbeiten mit COM-Komponenten
21.1 Das Windows-API
21.2 Arbeiten mit COM-Komponenten
22 Assemblys, Reflektion und Anwendungsdomänen
22.1 Wichtige weitere Möglichkeiten beim Umgang mit Assemblys
22.2 Reflektion
22.3 Anwendungsdomänen
23 Sicherheits-Grundlagen
23.1 Codezugriffssicherheit
23.2 Verschlüsseln und Entschlüsseln von Daten
23.3 Das sichere Ende dieses Buchs
Anhang mit Glossar
|