Einstieg in C # 2005, inkl. Visual C # 2005 Edition, CD-ROM - Bernhard Volz
Einstieg in C # 2005, inkl. Visual C # 2005 Edition, CD-ROM - Bernhard Volz
- Buch
Produktdetails
- Verlag: Galileo Computing
- ISBN-13: 9783898422659
- ISBN-10: 3898422658
- Artikelnr.: 10973160
- Herstellerkennzeichnung Die Herstellerinformationen sind derzeit nicht verfügbar.
Bernhard Volz ist stattlich geprüfter Industrietechnologe und studiert zurzeit an der Friedrich-Alexander-Universität in Erlangen das Fach Computational Engineering.
Sein Interesse gilt modernen, objektorientierten Programmiersprachen, komponentenbasierter Softwareentwicklung sowie allen Trends rund um .NET
Sein Interesse gilt modernen, objektorientierten Programmiersprachen, komponentenbasierter Softwareentwicklung sowie allen Trends rund um .NET
1 Einführung ... 15
... 1.1 .NET ... 15
... 1.2 C# 21
... 1.3 Zielgruppe ... 22
... 1.4 Danksagungen ... 22
... 1.5 Kontakt ... 23
... 1.6 Aufbau des Buches ... 23
... 1.7 Die Buch-CD ... 24
... 1.8 Einrichten einer Entwicklungsumgebung ... 25
2 Aufbau von C#-Programmen ... 31
... 2.1 Hello, World! 31
... 2.2 Kommentare ... 33
... 2.3 Syntax und Semantik ... 36
... 2.4 Verwendete Syntax-Schreibweise ... 37
... 2.5 Eine kurze Einführung zum Thema "Klassen" 37
... 2.6 Zusammenhang zwischen Klassen- & Datei-Name ... 39
... 2.7 Ausgaben auf dem Bildschirm ... 40
... 2.8 Assembly ... 41
... 2.9 Zusammenfassung ... 43
... 2.10 Übungen ... 45
3 Konstanten, Variablen & Datentypen ... 47
... 3.1 Das EVA-Prinzip ... 47
... 3.2 Variablen ... 48
... 3.3 Felder ... 70
... 3.4 Parameter der Main-Funktion ... 76
... 3.5 Typqualifizierer ... 77
... 3.6 Einlesen von Variablenwerten über die Tastatur ... 78
... 3.7 Zusammenfassung ... 80
... 3.8 Übungen ... 81
4 Zusammengesetzte Datentypen und Namensräume ... 83
... 4.1 Strukturen ... 83
... 4.2 Aufzählungen (Enumerationen) 92
... 4.3 Namensräume ... 96
... 4.4 Zusammenfassung ... 100
... 4.5 Übungen ... 102
5 Operatoren ... 103
... 5.1 Operatoren in C# 103
... 5.2 Additive und multiplikative Operatoren ... 105
... 5.3 Der Zuweisungsoperator ... 107
... 5.4 Primäre Operatoren ... 108
... 5.5 Unäre Operatoren ... 117
... 5.6 Schiebe-Operatoren ... 121
... 5.7 Relationale und Vergleichsoperatoren ... 122
... 5.8 Logisches UND, ODER und EXKLUSIV-ODER (XOR) 124
... 5.9 Bedingtes UND und ODER ... 125
... 5.10 Bedingung ... 125
... 5.11 Zusammenfassung ... 126
... 5.12 Übungen ... 127
6 Kontrollkonstrukte ... 129
... 6.1 Nassi-Shneiderman ... 129
... 6.2 Schleifen ... 130
... 6.3 Bedingungen (bedingte Anweisungen) 142
... 6.4 goto ... 151
... 6.5 Zusammenfassung ... 152
... 6.6 Übungen ... 153
7 Einführung in die Objektorientierte Programmierung ... 159
... 7.1 Klassen und Objekte ... 159
... 7.2 Abstrakte Klassen ... 202
... 7.3 Eigenschaften (Properties) 205
... 7.4 Schnittstellen ... 209
... 7.5 Klassenmember (statische Member) 215
... 7.6 Ref- & Out-Parameter von Methoden ... 218
... 7.7 Die Speicherverwaltung von .NET ... 221
... 7.8 Objektorientierte Schmankerl in C# 226
... 7.9 Weitere Elemente der Unified Modelling Language ... 234
... 7.10 Zusammenfassung ... 235
... 7.11 Übungen ... 237
8 Strings & reguläre Ausdrücke ... 241
... 8.1 Zeichenketten ... 241
... 8.2 Dynamische Zeichenketten - StringBuilder ... 253
... 8.3 Reguläre Ausdrücke ... 256
... 8.4 Zusammenfassung ... 264
... 8.5 Übungen ... 265
9 Ausnahmen (Exceptions) 267
... 9.1 Der klassische Ansatz: Rückgabewerte ... 267
... 9.2 Exception-Mechanismus ... 269
... 9.3 Exceptions in C# 272
... 9.4 Zusammenfassung ... 283
... 9.5 Übungen ... 284
10 Überladen von Operatoren ... 287
... 10.1 Unäre Operatoren ... 288
... 10.2 Binäre Operatoren ... 290
... 10.3 Vergleichsoperatoren ... 291
... 10.4 Einschränkungen ... 293
... 10.5 Zusammenfassung ... 293
... 10.6 Übungen ... 293
11 Delegates und Ereignisse ... 295
... 11.1 Delegates ... 295
... 11.2 Ereignisse ... 307
... 11.3 Zusammenfassung ... 314
... 11.4 Übungen ... 315
12 Indizierer, Enumeratoren und Collections ... 317
... 12.1 Indizierer ... 317
... 12.2 Enumeratoren ... 323
... 12.3 Collections in .NET ... 334
... 12.4 Zusammenfassung ... 341
... 12.5 Übungen ... 342
13 Attribute und Metadaten ... 343
... 13.1 Attribute ... 343
... 13.2 Metadaten ... 355
... 13.3 Zusammenfassung ... 367
... 13.4 Übungen ... 368
14 XML-Dokumentation und Präprozessor ... 369
... 14.1 XML-Dokumentation ... 369
... 14.2 Präprozessor ... 385
... 14.3 Zusammenfassung ... 390
... 14.4 Übungen ... 390
15 Threading ... 393
... 15.1 Betriebssystem-Hintergrund: Prozesse und Threads ... 393
... 15.2 Threads in C# 397
... 15.3 Synchronisierung ... 414
... 15.4 Asynchrone Methodenaufrufe ... 420
... 15.5 Zusammenfassung ... 427
... 15.6 Übungen ... 428
16 Einführung in Windows Forms ... 433
... 16.1 Das WinForms-Anwendermodell ... 433
... 16.2 Fenster-Layout ... 437
... 16.3 Controls ... 441
... 16.4 Menüs ... 443
... 16.5 Dialoge ... 447
... 16.6 Zeichnen in Fenstern ... 452
... 16.7 Zusammenfassung ... 463
... 16.8 Übungen ... 464
17 Bibliotheken und CodeDOM ... 467
... 17.1 Bibliotheken ... 467
... 17.2 CodeDOM ... 471
... 17.3 Zusammenfassung ... 478
... 17.4 Übungen ... 479
A Visual Studio .NET ... 481
... A.1 Erste Schritte ... 481
... A.2 Das Erstellen eines C#-Projekts ... 484
... A.3 Fehlersuche in Programmen: Debuggen ... 490
... A.4 Beenden von Visual Studio .NET ... 497
... A.5 Fazit ... 497
B SharpDevelop ... 499
... B.1 Erste Schritte ... 499
... B.2 Übersetzen und Ausführen von Projekten ... 506
... B.3 Debuggen ... 506
... B.4 Fazit ... 507
C Der Microsoft CLR-Debugger ... 509
... C.1 Start ... 509
... C.2 Debuggen eines Programms ... 510
... C.3 Beenden des Debugging ... 515
... C.4 Fazit ... 515
D WinCV & QuickStart Tutorials ... 517
... D.1 WinCV ... 517
... D.2 QuickStart Tutorials ... 518
... 1.1 .NET ... 15
... 1.2 C# 21
... 1.3 Zielgruppe ... 22
... 1.4 Danksagungen ... 22
... 1.5 Kontakt ... 23
... 1.6 Aufbau des Buches ... 23
... 1.7 Die Buch-CD ... 24
... 1.8 Einrichten einer Entwicklungsumgebung ... 25
2 Aufbau von C#-Programmen ... 31
... 2.1 Hello, World! 31
... 2.2 Kommentare ... 33
... 2.3 Syntax und Semantik ... 36
... 2.4 Verwendete Syntax-Schreibweise ... 37
... 2.5 Eine kurze Einführung zum Thema "Klassen" 37
... 2.6 Zusammenhang zwischen Klassen- & Datei-Name ... 39
... 2.7 Ausgaben auf dem Bildschirm ... 40
... 2.8 Assembly ... 41
... 2.9 Zusammenfassung ... 43
... 2.10 Übungen ... 45
3 Konstanten, Variablen & Datentypen ... 47
... 3.1 Das EVA-Prinzip ... 47
... 3.2 Variablen ... 48
... 3.3 Felder ... 70
... 3.4 Parameter der Main-Funktion ... 76
... 3.5 Typqualifizierer ... 77
... 3.6 Einlesen von Variablenwerten über die Tastatur ... 78
... 3.7 Zusammenfassung ... 80
... 3.8 Übungen ... 81
4 Zusammengesetzte Datentypen und Namensräume ... 83
... 4.1 Strukturen ... 83
... 4.2 Aufzählungen (Enumerationen) 92
... 4.3 Namensräume ... 96
... 4.4 Zusammenfassung ... 100
... 4.5 Übungen ... 102
5 Operatoren ... 103
... 5.1 Operatoren in C# 103
... 5.2 Additive und multiplikative Operatoren ... 105
... 5.3 Der Zuweisungsoperator ... 107
... 5.4 Primäre Operatoren ... 108
... 5.5 Unäre Operatoren ... 117
... 5.6 Schiebe-Operatoren ... 121
... 5.7 Relationale und Vergleichsoperatoren ... 122
... 5.8 Logisches UND, ODER und EXKLUSIV-ODER (XOR) 124
... 5.9 Bedingtes UND und ODER ... 125
... 5.10 Bedingung ... 125
... 5.11 Zusammenfassung ... 126
... 5.12 Übungen ... 127
6 Kontrollkonstrukte ... 129
... 6.1 Nassi-Shneiderman ... 129
... 6.2 Schleifen ... 130
... 6.3 Bedingungen (bedingte Anweisungen) 142
... 6.4 goto ... 151
... 6.5 Zusammenfassung ... 152
... 6.6 Übungen ... 153
7 Einführung in die Objektorientierte Programmierung ... 159
... 7.1 Klassen und Objekte ... 159
... 7.2 Abstrakte Klassen ... 202
... 7.3 Eigenschaften (Properties) 205
... 7.4 Schnittstellen ... 209
... 7.5 Klassenmember (statische Member) 215
... 7.6 Ref- & Out-Parameter von Methoden ... 218
... 7.7 Die Speicherverwaltung von .NET ... 221
... 7.8 Objektorientierte Schmankerl in C# 226
... 7.9 Weitere Elemente der Unified Modelling Language ... 234
... 7.10 Zusammenfassung ... 235
... 7.11 Übungen ... 237
8 Strings & reguläre Ausdrücke ... 241
... 8.1 Zeichenketten ... 241
... 8.2 Dynamische Zeichenketten - StringBuilder ... 253
... 8.3 Reguläre Ausdrücke ... 256
... 8.4 Zusammenfassung ... 264
... 8.5 Übungen ... 265
9 Ausnahmen (Exceptions) 267
... 9.1 Der klassische Ansatz: Rückgabewerte ... 267
... 9.2 Exception-Mechanismus ... 269
... 9.3 Exceptions in C# 272
... 9.4 Zusammenfassung ... 283
... 9.5 Übungen ... 284
10 Überladen von Operatoren ... 287
... 10.1 Unäre Operatoren ... 288
... 10.2 Binäre Operatoren ... 290
... 10.3 Vergleichsoperatoren ... 291
... 10.4 Einschränkungen ... 293
... 10.5 Zusammenfassung ... 293
... 10.6 Übungen ... 293
11 Delegates und Ereignisse ... 295
... 11.1 Delegates ... 295
... 11.2 Ereignisse ... 307
... 11.3 Zusammenfassung ... 314
... 11.4 Übungen ... 315
12 Indizierer, Enumeratoren und Collections ... 317
... 12.1 Indizierer ... 317
... 12.2 Enumeratoren ... 323
... 12.3 Collections in .NET ... 334
... 12.4 Zusammenfassung ... 341
... 12.5 Übungen ... 342
13 Attribute und Metadaten ... 343
... 13.1 Attribute ... 343
... 13.2 Metadaten ... 355
... 13.3 Zusammenfassung ... 367
... 13.4 Übungen ... 368
14 XML-Dokumentation und Präprozessor ... 369
... 14.1 XML-Dokumentation ... 369
... 14.2 Präprozessor ... 385
... 14.3 Zusammenfassung ... 390
... 14.4 Übungen ... 390
15 Threading ... 393
... 15.1 Betriebssystem-Hintergrund: Prozesse und Threads ... 393
... 15.2 Threads in C# 397
... 15.3 Synchronisierung ... 414
... 15.4 Asynchrone Methodenaufrufe ... 420
... 15.5 Zusammenfassung ... 427
... 15.6 Übungen ... 428
16 Einführung in Windows Forms ... 433
... 16.1 Das WinForms-Anwendermodell ... 433
... 16.2 Fenster-Layout ... 437
... 16.3 Controls ... 441
... 16.4 Menüs ... 443
... 16.5 Dialoge ... 447
... 16.6 Zeichnen in Fenstern ... 452
... 16.7 Zusammenfassung ... 463
... 16.8 Übungen ... 464
17 Bibliotheken und CodeDOM ... 467
... 17.1 Bibliotheken ... 467
... 17.2 CodeDOM ... 471
... 17.3 Zusammenfassung ... 478
... 17.4 Übungen ... 479
A Visual Studio .NET ... 481
... A.1 Erste Schritte ... 481
... A.2 Das Erstellen eines C#-Projekts ... 484
... A.3 Fehlersuche in Programmen: Debuggen ... 490
... A.4 Beenden von Visual Studio .NET ... 497
... A.5 Fazit ... 497
B SharpDevelop ... 499
... B.1 Erste Schritte ... 499
... B.2 Übersetzen und Ausführen von Projekten ... 506
... B.3 Debuggen ... 506
... B.4 Fazit ... 507
C Der Microsoft CLR-Debugger ... 509
... C.1 Start ... 509
... C.2 Debuggen eines Programms ... 510
... C.3 Beenden des Debugging ... 515
... C.4 Fazit ... 515
D WinCV & QuickStart Tutorials ... 517
... D.1 WinCV ... 517
... D.2 QuickStart Tutorials ... 518
1 Einführung ... 15
... 1.1 .NET ... 15
... 1.2 C# 21
... 1.3 Zielgruppe ... 22
... 1.4 Danksagungen ... 22
... 1.5 Kontakt ... 23
... 1.6 Aufbau des Buches ... 23
... 1.7 Die Buch-CD ... 24
... 1.8 Einrichten einer Entwicklungsumgebung ... 25
2 Aufbau von C#-Programmen ... 31
... 2.1 Hello, World! 31
... 2.2 Kommentare ... 33
... 2.3 Syntax und Semantik ... 36
... 2.4 Verwendete Syntax-Schreibweise ... 37
... 2.5 Eine kurze Einführung zum Thema "Klassen" 37
... 2.6 Zusammenhang zwischen Klassen- & Datei-Name ... 39
... 2.7 Ausgaben auf dem Bildschirm ... 40
... 2.8 Assembly ... 41
... 2.9 Zusammenfassung ... 43
... 2.10 Übungen ... 45
3 Konstanten, Variablen & Datentypen ... 47
... 3.1 Das EVA-Prinzip ... 47
... 3.2 Variablen ... 48
... 3.3 Felder ... 70
... 3.4 Parameter der Main-Funktion ... 76
... 3.5 Typqualifizierer ... 77
... 3.6 Einlesen von Variablenwerten über die Tastatur ... 78
... 3.7 Zusammenfassung ... 80
... 3.8 Übungen ... 81
4 Zusammengesetzte Datentypen und Namensräume ... 83
... 4.1 Strukturen ... 83
... 4.2 Aufzählungen (Enumerationen) 92
... 4.3 Namensräume ... 96
... 4.4 Zusammenfassung ... 100
... 4.5 Übungen ... 102
5 Operatoren ... 103
... 5.1 Operatoren in C# 103
... 5.2 Additive und multiplikative Operatoren ... 105
... 5.3 Der Zuweisungsoperator ... 107
... 5.4 Primäre Operatoren ... 108
... 5.5 Unäre Operatoren ... 117
... 5.6 Schiebe-Operatoren ... 121
... 5.7 Relationale und Vergleichsoperatoren ... 122
... 5.8 Logisches UND, ODER und EXKLUSIV-ODER (XOR) 124
... 5.9 Bedingtes UND und ODER ... 125
... 5.10 Bedingung ... 125
... 5.11 Zusammenfassung ... 126
... 5.12 Übungen ... 127
6 Kontrollkonstrukte ... 129
... 6.1 Nassi-Shneiderman ... 129
... 6.2 Schleifen ... 130
... 6.3 Bedingungen (bedingte Anweisungen) 142
... 6.4 goto ... 151
... 6.5 Zusammenfassung ... 152
... 6.6 Übungen ... 153
7 Einführung in die Objektorientierte Programmierung ... 159
... 7.1 Klassen und Objekte ... 159
... 7.2 Abstrakte Klassen ... 202
... 7.3 Eigenschaften (Properties) 205
... 7.4 Schnittstellen ... 209
... 7.5 Klassenmember (statische Member) 215
... 7.6 Ref- & Out-Parameter von Methoden ... 218
... 7.7 Die Speicherverwaltung von .NET ... 221
... 7.8 Objektorientierte Schmankerl in C# 226
... 7.9 Weitere Elemente der Unified Modelling Language ... 234
... 7.10 Zusammenfassung ... 235
... 7.11 Übungen ... 237
8 Strings & reguläre Ausdrücke ... 241
... 8.1 Zeichenketten ... 241
... 8.2 Dynamische Zeichenketten - StringBuilder ... 253
... 8.3 Reguläre Ausdrücke ... 256
... 8.4 Zusammenfassung ... 264
... 8.5 Übungen ... 265
9 Ausnahmen (Exceptions) 267
... 9.1 Der klassische Ansatz: Rückgabewerte ... 267
... 9.2 Exception-Mechanismus ... 269
... 9.3 Exceptions in C# 272
... 9.4 Zusammenfassung ... 283
... 9.5 Übungen ... 284
10 Überladen von Operatoren ... 287
... 10.1 Unäre Operatoren ... 288
... 10.2 Binäre Operatoren ... 290
... 10.3 Vergleichsoperatoren ... 291
... 10.4 Einschränkungen ... 293
... 10.5 Zusammenfassung ... 293
... 10.6 Übungen ... 293
11 Delegates und Ereignisse ... 295
... 11.1 Delegates ... 295
... 11.2 Ereignisse ... 307
... 11.3 Zusammenfassung ... 314
... 11.4 Übungen ... 315
12 Indizierer, Enumeratoren und Collections ... 317
... 12.1 Indizierer ... 317
... 12.2 Enumeratoren ... 323
... 12.3 Collections in .NET ... 334
... 12.4 Zusammenfassung ... 341
... 12.5 Übungen ... 342
13 Attribute und Metadaten ... 343
... 13.1 Attribute ... 343
... 13.2 Metadaten ... 355
... 13.3 Zusammenfassung ... 367
... 13.4 Übungen ... 368
14 XML-Dokumentation und Präprozessor ... 369
... 14.1 XML-Dokumentation ... 369
... 14.2 Präprozessor ... 385
... 14.3 Zusammenfassung ... 390
... 14.4 Übungen ... 390
15 Threading ... 393
... 15.1 Betriebssystem-Hintergrund: Prozesse und Threads ... 393
... 15.2 Threads in C# 397
... 15.3 Synchronisierung ... 414
... 15.4 Asynchrone Methodenaufrufe ... 420
... 15.5 Zusammenfassung ... 427
... 15.6 Übungen ... 428
16 Einführung in Windows Forms ... 433
... 16.1 Das WinForms-Anwendermodell ... 433
... 16.2 Fenster-Layout ... 437
... 16.3 Controls ... 441
... 16.4 Menüs ... 443
... 16.5 Dialoge ... 447
... 16.6 Zeichnen in Fenstern ... 452
... 16.7 Zusammenfassung ... 463
... 16.8 Übungen ... 464
17 Bibliotheken und CodeDOM ... 467
... 17.1 Bibliotheken ... 467
... 17.2 CodeDOM ... 471
... 17.3 Zusammenfassung ... 478
... 17.4 Übungen ... 479
A Visual Studio .NET ... 481
... A.1 Erste Schritte ... 481
... A.2 Das Erstellen eines C#-Projekts ... 484
... A.3 Fehlersuche in Programmen: Debuggen ... 490
... A.4 Beenden von Visual Studio .NET ... 497
... A.5 Fazit ... 497
B SharpDevelop ... 499
... B.1 Erste Schritte ... 499
... B.2 Übersetzen und Ausführen von Projekten ... 506
... B.3 Debuggen ... 506
... B.4 Fazit ... 507
C Der Microsoft CLR-Debugger ... 509
... C.1 Start ... 509
... C.2 Debuggen eines Programms ... 510
... C.3 Beenden des Debugging ... 515
... C.4 Fazit ... 515
D WinCV & QuickStart Tutorials ... 517
... D.1 WinCV ... 517
... D.2 QuickStart Tutorials ... 518
... 1.1 .NET ... 15
... 1.2 C# 21
... 1.3 Zielgruppe ... 22
... 1.4 Danksagungen ... 22
... 1.5 Kontakt ... 23
... 1.6 Aufbau des Buches ... 23
... 1.7 Die Buch-CD ... 24
... 1.8 Einrichten einer Entwicklungsumgebung ... 25
2 Aufbau von C#-Programmen ... 31
... 2.1 Hello, World! 31
... 2.2 Kommentare ... 33
... 2.3 Syntax und Semantik ... 36
... 2.4 Verwendete Syntax-Schreibweise ... 37
... 2.5 Eine kurze Einführung zum Thema "Klassen" 37
... 2.6 Zusammenhang zwischen Klassen- & Datei-Name ... 39
... 2.7 Ausgaben auf dem Bildschirm ... 40
... 2.8 Assembly ... 41
... 2.9 Zusammenfassung ... 43
... 2.10 Übungen ... 45
3 Konstanten, Variablen & Datentypen ... 47
... 3.1 Das EVA-Prinzip ... 47
... 3.2 Variablen ... 48
... 3.3 Felder ... 70
... 3.4 Parameter der Main-Funktion ... 76
... 3.5 Typqualifizierer ... 77
... 3.6 Einlesen von Variablenwerten über die Tastatur ... 78
... 3.7 Zusammenfassung ... 80
... 3.8 Übungen ... 81
4 Zusammengesetzte Datentypen und Namensräume ... 83
... 4.1 Strukturen ... 83
... 4.2 Aufzählungen (Enumerationen) 92
... 4.3 Namensräume ... 96
... 4.4 Zusammenfassung ... 100
... 4.5 Übungen ... 102
5 Operatoren ... 103
... 5.1 Operatoren in C# 103
... 5.2 Additive und multiplikative Operatoren ... 105
... 5.3 Der Zuweisungsoperator ... 107
... 5.4 Primäre Operatoren ... 108
... 5.5 Unäre Operatoren ... 117
... 5.6 Schiebe-Operatoren ... 121
... 5.7 Relationale und Vergleichsoperatoren ... 122
... 5.8 Logisches UND, ODER und EXKLUSIV-ODER (XOR) 124
... 5.9 Bedingtes UND und ODER ... 125
... 5.10 Bedingung ... 125
... 5.11 Zusammenfassung ... 126
... 5.12 Übungen ... 127
6 Kontrollkonstrukte ... 129
... 6.1 Nassi-Shneiderman ... 129
... 6.2 Schleifen ... 130
... 6.3 Bedingungen (bedingte Anweisungen) 142
... 6.4 goto ... 151
... 6.5 Zusammenfassung ... 152
... 6.6 Übungen ... 153
7 Einführung in die Objektorientierte Programmierung ... 159
... 7.1 Klassen und Objekte ... 159
... 7.2 Abstrakte Klassen ... 202
... 7.3 Eigenschaften (Properties) 205
... 7.4 Schnittstellen ... 209
... 7.5 Klassenmember (statische Member) 215
... 7.6 Ref- & Out-Parameter von Methoden ... 218
... 7.7 Die Speicherverwaltung von .NET ... 221
... 7.8 Objektorientierte Schmankerl in C# 226
... 7.9 Weitere Elemente der Unified Modelling Language ... 234
... 7.10 Zusammenfassung ... 235
... 7.11 Übungen ... 237
8 Strings & reguläre Ausdrücke ... 241
... 8.1 Zeichenketten ... 241
... 8.2 Dynamische Zeichenketten - StringBuilder ... 253
... 8.3 Reguläre Ausdrücke ... 256
... 8.4 Zusammenfassung ... 264
... 8.5 Übungen ... 265
9 Ausnahmen (Exceptions) 267
... 9.1 Der klassische Ansatz: Rückgabewerte ... 267
... 9.2 Exception-Mechanismus ... 269
... 9.3 Exceptions in C# 272
... 9.4 Zusammenfassung ... 283
... 9.5 Übungen ... 284
10 Überladen von Operatoren ... 287
... 10.1 Unäre Operatoren ... 288
... 10.2 Binäre Operatoren ... 290
... 10.3 Vergleichsoperatoren ... 291
... 10.4 Einschränkungen ... 293
... 10.5 Zusammenfassung ... 293
... 10.6 Übungen ... 293
11 Delegates und Ereignisse ... 295
... 11.1 Delegates ... 295
... 11.2 Ereignisse ... 307
... 11.3 Zusammenfassung ... 314
... 11.4 Übungen ... 315
12 Indizierer, Enumeratoren und Collections ... 317
... 12.1 Indizierer ... 317
... 12.2 Enumeratoren ... 323
... 12.3 Collections in .NET ... 334
... 12.4 Zusammenfassung ... 341
... 12.5 Übungen ... 342
13 Attribute und Metadaten ... 343
... 13.1 Attribute ... 343
... 13.2 Metadaten ... 355
... 13.3 Zusammenfassung ... 367
... 13.4 Übungen ... 368
14 XML-Dokumentation und Präprozessor ... 369
... 14.1 XML-Dokumentation ... 369
... 14.2 Präprozessor ... 385
... 14.3 Zusammenfassung ... 390
... 14.4 Übungen ... 390
15 Threading ... 393
... 15.1 Betriebssystem-Hintergrund: Prozesse und Threads ... 393
... 15.2 Threads in C# 397
... 15.3 Synchronisierung ... 414
... 15.4 Asynchrone Methodenaufrufe ... 420
... 15.5 Zusammenfassung ... 427
... 15.6 Übungen ... 428
16 Einführung in Windows Forms ... 433
... 16.1 Das WinForms-Anwendermodell ... 433
... 16.2 Fenster-Layout ... 437
... 16.3 Controls ... 441
... 16.4 Menüs ... 443
... 16.5 Dialoge ... 447
... 16.6 Zeichnen in Fenstern ... 452
... 16.7 Zusammenfassung ... 463
... 16.8 Übungen ... 464
17 Bibliotheken und CodeDOM ... 467
... 17.1 Bibliotheken ... 467
... 17.2 CodeDOM ... 471
... 17.3 Zusammenfassung ... 478
... 17.4 Übungen ... 479
A Visual Studio .NET ... 481
... A.1 Erste Schritte ... 481
... A.2 Das Erstellen eines C#-Projekts ... 484
... A.3 Fehlersuche in Programmen: Debuggen ... 490
... A.4 Beenden von Visual Studio .NET ... 497
... A.5 Fazit ... 497
B SharpDevelop ... 499
... B.1 Erste Schritte ... 499
... B.2 Übersetzen und Ausführen von Projekten ... 506
... B.3 Debuggen ... 506
... B.4 Fazit ... 507
C Der Microsoft CLR-Debugger ... 509
... C.1 Start ... 509
... C.2 Debuggen eines Programms ... 510
... C.3 Beenden des Debugging ... 515
... C.4 Fazit ... 515
D WinCV & QuickStart Tutorials ... 517
... D.1 WinCV ... 517
... D.2 QuickStart Tutorials ... 518
