Jürgen Bayer Informatik  
Home      Dienstleistungen      Referenzen      Kontakt     

Das C# 2008 Kompendium

Jürgen Bayer
Markt und Technik
ISBN-10: 3827243394
ISBN-13: 978-3827243393
1344 Seiten

Buchseite bei Markt und Technik

Bei Amazon bestellen

Der Buch-Blog

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