Book description
Das .NET Framework 4.0 eröffnet Entwicklern viele neue Möglichkeiten. Autor Rolf Wenger geht in diesem Buch zunächst auf die Grundlagen der .NET-Programmierung ein: Wie funktioniert die Sprache C#? Welche elementaren Klassen enthält die .NET-Bibliothek? Wie greift man auf Datenbanken zu? Dieses Buch ist der erste Band einer dreiteiligen Reihe, mit der Wenger eines der umfassendsten Nachschlagewerke zur .NET-Programmierung liefert. In den folgenden Bänden werden u.a. Windows Forms, ASP.NET, WCF (Windows Communication Foundation), WPF (Windows Presentation Foundation) und Silverlight behandelt.
Table of contents
- Handbuch der .NET 4.0-Programmierung: Band 1: C# und .NET-Grundlagen
- Vorwort
- Einleitung
-
1. .NET Framework und Visual Studio
- Eine erste Definition von .NET
- Welche Alternativen zu .NET existieren?
- Wie funktioniert .NET?
-
Visual Studio 2010
- Konfiguration und Einstellungen
- Mit Visual Studio eine Lösung aufbauen
-
Die Konfiguration kontrollieren und korrigieren
- Grundeinstellungen der Anwendung
- Assembly-Informationen
- Einstellungen zur Kompilation der Anwendung
- Zusätzliche Schritte automatisieren
- Einstellungen für das Ausführen des entwickelten Programms
- Ressourcen definieren
- Client Application Services
- Einstellungsdatei der Anwendung nutzen
- Zusätzliche Pfade für benutzte Assemblys einstellen
- Signierung benutzen
- Sicherheit und Verteilung konfigurieren
- Codeanalyse nutzen
- Code verändern
- Code mithilfe von Codierungsunterstützung erstellen
- Code ausführen
- Eine Anwendung entwanzen (debuggen)
- Tastenkürzel
- Die Lösung mit einer eigenen Bibliothek ergänzen
-
Von Assemblys und Prozessen
- Einen Prozessraum aufbauen
- Konfiguration von .NET-Anwendungen
-
Suchen und Finden von Programmdateien und Assemblys
- In eine Assembly hineinschauen
- Eine Assembly mit einem starken Namen versehen
- Der globale Assemblycache
- Ablage der Bibliothek bei der Anwendung
- Gemeinsame Nutzung von Assemblys im globalen Assemblycache
- Organisation des globalen Assemblycaches
- Laden von Assemblys
- Versionsrichtlinien anwenden
- Im globalen Assemblycache suchen
- Hinweis auf die Codebasis
- Hierarchische Suche der Assembly
-
2. Die Sprache C#
- Das »Henne-Ei-Problem«
-
Grundlegende Elemente eines C#-Programms
- Die Grundstruktur
- Schlüsselwörter der Sprache
- Kommentierungen
- Variablen oder Objekte
- Organisation, Schreibweise und Verwendung von Namensräumen
- Literale
-
Anweisungen für die Ablaufsteuerung
- Verzweigungen
- Die einfache Verzweigung mit if
- Die mehrfache Verzweigung mit switch
- Schleifensteuerung
- Die Schleifensteuerung mit while
- Die Schleifensteuerung mit do while
- Die Schleifensteuerung mit for
- Die Schleifensteuerung mit foreach
- Sprunganweisungen
- Die Sprunganweisung continue
- Die Sprunganweisung break
- Die Sprunganweisung return
- Fehlerbehandlung
- Fehlerbehandlung mit try-catch
- Fehlerbehandlung mit try-finally
- Fehlerbehandlung mit try-catch-finally
- Präprozessoranweisungen
- Operatoren und Ausdrücke
- Datentypen
- Vordefinierte Typen
-
Benutzerdefinierte Typen
- Der Typ enum
- Der Typ Array
-
Der Typ class
- Klassen organisieren
- Umsetzung der Kapselung in Form der Sichtbarkeit
- Die Klasse als Hülle
- Elemente von Klassen
- Typen in Klassen verschachteln
- Klassen vererben
- Überladen von Elementen
- Überdecken von Elementen
- Überschreiben von Elementen
- Abstrakte Klassen
- Felder und Konstanten
- Felder verkörpern Informationen
- Felder in vererbten Typen
- Eigenschaften
- Vollständig implementierte Eigenschaften
- Automatisch implementierte Eigenschaften
- Eigenschaften in vererbten Typen
- Indexer
- Methoden
- Einfache Methoden
- Benannte und optionale Parameter in Methoden
- Bedeutung der this-Referenz
- Statische Methoden
- Überladen von Methoden
- Methoden in vererbten Typen
- Partielle Methoden
- Konstruktion und Destruktion
- Konstruktoren
- Konstruktoren in vererbten Typen
- Destruktoren
- Destruktoren in der Vererbung
- Operatoren
- Der Typ delegate
- Der Typ interface
- Der Typ struct
- Generische Typen
- Anonyme Typen
- Erweiterungsmethoden
-
3. Objektmengen verarbeiten
- Spezielle Situationen für Objekte
-
Ausnahmen beherrschen und nutzen
- Verschiedene Arten von Fehlern
- Definitionsfehler
- Anwendungsfehler (Softwarefehler)
- Laufzeitfehler
- Bedienungsfehler
- Eine Ausnahme erkennen
- Ausnahmeklassen und -objekte
- Aufbau eines Fehlerobjekts (Standardklasse)
- Eine eigene Ausnahmeklasse erstellen
- Architektur von Ausnahmen bestimmen
- Schutz des Programms beim Zugriff auf externe Ressourcen
- Stabilisieren von Benutzeroberflächen
- Überwachen von extremer Speicherauslastung
- Die Behandlung von Ausnahmen konzipieren
- Allgemeiner Aufbau einer Ausnahmebehandlung
- Ausnahmen auslösen
- Eine bestehende Ausnahme erneut auslösen
- Eine bestehende Ausnahme neu auslösen
- Eine Ausnahme durch eine neue Ausnahme ersetzen
- Eine Ausnahme in eine innere Ausnahme umwandeln
- Ausnahmen behandeln
- Die Ausnahme in der Ausnahmebehandlung
-
Objektmengen verwalten
- Grundlagen der Auflistungsklassen
- Grundlagen der generischen Auflistungsklassen
- Die Qual der Wahl von Auflistungsklassen
-
Die konkreten Klassen
- Aussage zur Performance
- Die Klasse ArrayList
- Die Klasse BitArray
- Die Klasse Hashtable
- Die Klassen Queue und Queue<T>
- Die Klasse ConcurrentQueue<T>
- Die Klassen SortedList und SortedList<T>
- Die Klassen Stack und Stack<T>
- Die Klasse ConcurrentStack<T>
- Die Klasse Dictionary<K,V>
- Die Klasse SortedDictionary<K,V>
- Die Klasse ConcurrentDictionary<K,V>
- Die Klasse LinkedList<T>
- Die Klasse List<T>
- Die Klasse HashSet<T>
- Die Klasse SortedSet<T>
- Die Klasse ObservableCollection<T>
- Die Klasse BlockingCollection<T>
- Die Klasse ConcurrentBag<T>
- Auflistungen selber herstellen
-
Language Integrated Query – LINQ
- Die verschiedenen Ebenen von LINQ
- Grundlegende Syntax der Verwendung von LINQ
- Lambda-Ausdrücke
-
Elemente von LINQ
- Einfache Abfragen als Grundlage
- Eine uneingeschränkte Resultatmenge erstellen
- Eine gruppierte Resultatmenge erstellen
- Eine eingeschränkte Resultatmenge mittels Selektion erstellen
- Eine Resultatmenge sortieren
- Eine eingeschränkte Resultatmenge mittels einer Projektion erstellen
- Die Reihenfolge einer Resultatmenge umkehren
- Auf ein einzelnes Element zugreifen
- Das erste oder letzte Element
- Das erste Element, das letzte Element oder ein Standardelement
- Garantiert ein Einzelelement abfragen
- Direktzugriff auf ein Objekt über den Index
- Ein Standardelement verwenden, wenn die Resultatmenge leer ist
- Beispiel zum Thema einzelnes Element
- Einen Datenverbund herstellen
- Die eingebettete Untermenge
- Einen inneren Verbund herstellen (Inner Join)
- Einen äußeren Verbund herstellen (Outer Join)
- Verknüpfen von Resultatmengen
- Duplikate vermeiden
- Mehrere Mengen zusammenführen
- Nur die Schnittmenge zweier gleichartiger Mengen verarbeiten
- Elemente in einer weiteren Menge filtern
- Aggregatmethoden in LINQ
- Bestimmen der Anzahl von Elementen einer Menge
- Bestimmen der Summe einer Spalte
- Bestimmen von Minimal- und Maximalwert einer Spalte
- Bestimmen des Durchschnittswerts einer Spalte
- Herstellen einer bedingten Aggregation
- Partitionen erstellen
- Auswahl einer fixen Anzahl von Elementen aus einer Menge
- Auswahl einer geregelten Anzahl von Elementen aus einer Menge
- Überspringen einer fixen Anzahl von Elementen in einer Menge
- Überspringen einer geregelten Anzahl von Elementen in einer Menge
- Weitere Operatoren von LINQ
- Erstellen einer leeren Menge
- Prüfen, ob alle Objekte einer Menge bestimmten Kriterien entsprechen
- Prüfen, ob mindestens ein Objekt in einer Menge bestimmten Kriterien entspricht
- Eine Menge auf das Vorhandensein eines bestimmtes Objekts prüfen
- Zwei Abfragen zusammenführen
- Generieren von Zahlenbereichen
- Generieren einer Liste gleicher Elemente
- Zwei Mengen zusammenführen
- Zwei Mengen vergleichen
- Resultatmengen konvertieren
- Spezielle Auflistungen in IEnumerable umwandeln
- Eine Menge in ein Array umwandeln
- Eine Menge in eine Liste umwandeln
- Eine Menge in ein Verzeichnis umwandeln
- Eine Menge in eine Lookuptabelle umwandeln
- Eine Teilmenge eines bestimmten Typs extrahieren
- Eine Typenumwandlung auf eine Menge anwenden
-
4. Elementare Klassen der Bibliothek
- Der Umgang mit Attributen
- Formatieren von Daten
- Der Umgang mit der Zeit
- .NET und die Mathematik
- Die Systemumgebung erforschen
-
Von Prozessen, Anwendungsdomänen und Assemblys
- Informationen über laufende Prozesse abfragen
- Einen Prozess starten
- Einen anderen Prozess beenden
- Einen Prozess unter einem anderen Anwenderkonto starten
- Die Anwendungsdomäne, der Isolator innerhalb des Prozesses
- Informationen über eine Anwendungsdomäne abfragen
- Eine zusätzliche Anwendungsdomäne erstellen und nutzen
- Anwendungen konfigurierbar gestalten
-
Diagnose und Debugging
- Informationen für die Diagnose sammeln und interpretieren
- Das Ereignisprotokoll von Windows nutzen
-
Den Ablauf einer Anwendung verfolgen
- Deklarative oder imperative Nutzung der Ablaufverfolgung
- Ausgabeebenen und Quellen der Ablaufverfolgung
- Typen für die Ablaufverfolgung
- Einfache Nutzung der Ablaufverfolgung
- Deklarative Nutzung
- Imperative Nutzung
- Nutzung der Ausgabequellen für die Ablaufverfolgung
- Deklarative Nutzung
- Imperative Nutzung
- Einen eigenen Listener für die Ablaufverfolgung erstellen
- Garbage Collector
-
5. Der Umgang mit Dateien
- Arbeiten mit dem Dateisystem
- Datenströme und das E/A-Konzept von .NET
- Serialisierung von einfachen Textdaten
-
Binäre Serialisierung
- Manuelle binäre Serialisierung
-
Automatische binäre Serialisierung
- Die automatische binäre Serialisierung steuern
- Einen Datengraphen bereitstellen
- Die automatische binäre Serialisierung beeinflussen
- Anwendung der Schnittstelle ISerializable
- Definition von Methoden für die funktionelle Beeinflussung
- Direkter Einfluss auf den Formatierer
- Dynamischer Typwechsel
- Herstellen der Typkompatibilität für das Deserialisieren
- XML-Serialisierung
-
6. Auf Datenbanken zugreifen
- Relationales und objektorientiertes Modell
- Andere Datenbanksysteme
- Architektur der .NET-Datenbankzugriffe
- Umgang mit dem Beispiel des Kapitels
- Direkte Nutzung der Datenprovider
- Nutzen der Datenkonsumenten
- LINQ to SQL
- Entity Framework
-
7. Verarbeitungen parallelisieren
- Von Prozessen und Threads
- Mittel für das Parallelisieren von Aufgaben
-
Parallele Programmierung
- Von datenorientierter und aufgabenorientierter Verarbeitung
- Nutzen der datenorientierten parallelen Verarbeitung
- Abbrechen der parallelen Verarbeitung von innen
- Nutzen aufgabenorientierter Verarbeitungen
- Abbrechen einer parallelen Verarbeitung von außen
- Fehlerbehandlung in der parallelen Verarbeitung
- Client/Server-Anwendungen verwenden
- Parallelisieren von LINQ-Abfragen
- Parallele Verarbeitungen synchronisieren
- Nutzung der BCL für die parallele Verarbeitung
-
Fallen der parallelen Programmierung
- Vorsicht vor unbewusstem Multithreading
- Parallelisieren lohnt sich nicht immer
- Parallelisieren ist nicht immer schneller
- In parallelen Verarbeitungen Aufrufe zu nicht threadsicheren Methoden verhindern
- Parallelen Overkill verhindern
- Vorsicht vor threadaffinen Mechanismen
- Wahl der richtigen Synchronisation
- Multithreading und Visual Studio-Debugging
- 8. Reflexion
-
9. Globalisierung und Lokalisierung von Anwendungen
- Herausforderungen der verschiedenen Kulturen
-
Voraussetzungen für die Globalisierung
- Verwenden Sie keine fest codierten Zeichenfolgen
- Vermeiden von festen Zeichenfolgenzusammensetzungen
- Einfache Sprache ohne Slang
- Textausgaben in der Benutzeroberfläche großzügig bemessen
- Symbole allgemein auslegen
- Formatierungen
- Datenformate
- Eingaben von Daten und Plausibilisierungen
- Spezifische Regeln der eingesetzten Technologie
- Grundlagen der Lokalisierung
- Sprachversionen von .NET
- A. Entwicklungswerkzeuge
- B. Dokumentieren von Quellcode
- C. Zeichensatz
- D. Codierungen der Kulturen
- E. Rolf Wenger – zur Person
- Stichwortverzeichnis
Product information
- Title: Handbuch der .NET 4.0-Programmierung. Band 1: C# 2010 und .NET-Grundlagen
- Author(s):
- Release date: June 2010
- Publisher(s): Microsoft Press Deutschland
- ISBN: 97833866454385
You might also like
book
Handbuch der .NET 4.0/4.5-Programmierung. Band 3 Verteilte Anwendungen
Im 3. Band stehen verteilte Anwendungen im Mittelpunkt. Der Autor geht unter anderem auf Architekturen, die …
book
Datenbank-Programmierung mit Visual C# 2012
Dieses Buch erläutert die Datenbankprogrammierung mit Visual C# 2012 für Einsteiger und Fortgeschrittene.
book
Programmieren mit C# 3.0
Die Version 3.0 von C# markiert eine deutliche Weiterentwicklung dieser innovativen Sprache. Hinzugekommen sind Ergänzungen wie …
book
Inside Microsoft® SharePoint® 2010
Build custom SharePoint 2010 solutions with deep architectural insights from the experts. Get a detailed look …