Description

Book Synopsis
C# ist eine der am meisten genutzten Programmiersprachen, doch wie den Ein- oder Umstieg schaffen? Genau dabei hilft Ihnen dieses Buch. Nachdem Sie sich zunächst die notwendigen Grundlagen erarbeitet haben, lernen Sie auch alles Notwendige über LINQ, XML und ADO.NET. Anschließend werden Sie sicher durch das Schreiben Ihrer ersten eigenen .NET-Anwendung geleitet. Noch nicht genug? Kapitel zu fortgeschrittenen .NET-Techniken wie die dynamische Programmierung oder die Task Parallel Library runden das Buch ab.

Table of Contents

Über den Autor 11

Einleitung 23

Über dieses Buch 23

Wie dieses Buch aufgebaut ist 24

Symbole, die in diesem Buch verwendet werden 26

Wie es weiter geht 27

Teil I: Los geht’s 29

Kapitel 1 Grundlagen und Einführung 31

Grundlagen der Programmierung 31

Warum programmieren wir eigentlich? 32

Programmiersprachen 33

.NET-Plattformarchitektur 37

Wie funktioniert eine .NET-Sprache? 39

Das .NET-Framework 42

Die Programmiersprache C# 44

Das Prinzip der objektorientierten Programmierung 44

Objekte und ihre Klassen 44

Abstraktion 47

Kapselung 48

Vererbung 48

Polymorphie 49

Kapitel 2 Entwicklungswerkzeuge und Tools 53

Ein Programm erstellen 53

Microsoft Visual Studio 2019 Community Edition 59

Ihr erstes eigenes Projekt 60

Der Marktplatz für fertige Lösungen: NuGet 71

Kapitel 3 Das ABC der Sprache C# 75

Bezeichner 75

Namenskonventionen 76

Schlüsselwörter 78

Anweisungen 79

Kommentare 79

Datentypen, Variablen und Konstanten 82

Deklaration von Variablen 84

Das Schlüsselwort var oder Typinferenz 86

Konstanten deklarieren 88

Zugriff und Verwendung von Variablen 89

Wert- und Referenztypen 90

Weitere Datentypen 97

Gültigkeitsbereiche von Variablen 100

Konvertieren von Datentypen 101

Was ist eine Methode? 110

Übergeben von Parametern 112

Methoden mit Rückgabewert 115

Methoden ohne Rückgabewert 117

Namensräume 119

Wo finde ich was? 121

Verwendung von Namensräumen 122

Alias für einen Namensraum 124

Kapitel 4 Operatoren und Programmsteuerung 127

Operatoren 127

Rechenoperatoren 128

Zuweisungsoperatoren 132

Logische Operatoren 133

Den Programmablauf steuern: Verzweigungen und Kontrollstrukturen 136

if-Anweisung 137

switch-Anweisung und -Ausdruck 144

Vorgänge wiederholen: Schleifen 148

for-Schleife 149

while-Schleife 151

do-while-Schleife 155

foreach-Schleife 157

Sie haben es sich anders überlegt? 158

Kapitel 5 Zeichenfolgen, Arrays und Datumswerte 161

Zeichen und Zeichenfolgen 161

String-Variablen deklarieren 162

String-Interpolation und kombinierte Formatierung 164

Zeichenfolgen analysieren 166

Zeichenfolgen manipulieren 168

Sonderzeichen in Zeichenfolgen 170

StringBuilder: Wenn Geschwindigkeit eine Rolle spielt 172

Formatierung von Zeichenfolgen 173

Arrays 178

Arrays deklarieren 179

Arrays erzeugen 179

Arrays initialisieren 180

Zugriff auf Array-Elemente 182

Eigenschaften und Methoden von Arrays 185

Datums- und Zeitberechnungen 188

Die DateTime-Struktur 188

Die TimeSpan-Struktur 192

Praxisbeispiele 193

Kapitel 6 Objektorientierte Programmierung mit C# 197

Klassen, Eigenschaften und Methoden 197

Klassen 198

Eigenschaften 198

Objekte 204

Methoden und Konstruktoren 205

Statische Klassen 207

Vererbung 210

Ober- und Unterklassen 210

Methoden überschreiben 212

Der Zugriff auf die Member der Basisklasse mit base 213

Abstrakte Klassen 214

Interfaces 216

Kapitel 7 Fehler passieren, macht aber nichts: Ausnahmebehandlung 221

Mit Ausnahmen umgehen 222

Wie man einen Fehler »fängt«! 225

Der Parameter einer catch-Klausel 226

Ausnahmetypen 228

Fehler auslösen 231

Eigene Fehlerklassen erstellen 232

Kapitel 8 Weitere Sprachfeatures 235

Delegates 235

Anonyme Methoden 239

Lambda-Ausdrücke 240

Ereignisse – was geht ab? 242

Ereignisse registrieren und behandeln 243

Ereignisse veröffentlichen 244

Generics – generische Datentypen 247

Generische Klassen, Methoden und Eigenschaften 248

Generische Auflistungen 251

Nette Helfer: Attribute 259

Sie wollen mehr? Erweiterungsmethoden 261

Teil II: Weitere Sprachfeatures von C# 265

Kapitel 9 Zugriffe auf das Dateisystem 267

Klassen für den Zugriff auf das Dateisystem 267

Arbeiten mit Verzeichnissen 269

Arbeiten mit Dateien 276

Nicht bei der Ausnahmebehandlung sparen! 280

Praxisbeispiele 282

Verzeichnisgröße ermitteln 282

Kopieren von Verzeichnissen 284

Kapitel 10 Dateizugriff und Streams 287

Arbeiten mit Dateien 287

Text-Dateien erstellen, lesen und ändern 288

Arbeiten mit Streams 291

Lesen und Schreiben 293

Datei mit einem Stream schreiben 296

Komprimieren von Dateien mit .NET-Klassen 297

Neues ZIP-Archiv erzeugen 298

Alle Dateien eines ZIP-Archivs extrahieren 300

Objekte serialisieren 301

Im Binärformat serialisieren 302

XML 306

JSON-Dateien 308

Kapitel 11 Asynchrone und parallele Programmierung 313

Grundlagen und Begrifflichkeiten 314

Asynchrone Programmiermuster 318

Programmieren mit Threads 318

Die TPL – Task Parallel Library 331

Ein gutes Team: async und await 342

Kapitel 12 Daten abfragenmit LINQ 349

LINQ-Grundlagen 349

Die Basis für LINQ-Abfragen 351

Abfragen mit LINQ 353

Die alternativen Schreibweisen von LINQ-Abfragen 358

Die wichtigsten Abfrageoperatoren 359

Ergebnis filtern (where-Operator) 359

Ergebnis sortieren (orderby-Operator) 362

Ergebnis partitionieren (skip- und take-Operator) 363

Doppelte Einträge löschen (distinct-Operator) 365

Aggregat-Operatoren 366

Praxisbeispiele 367

CSV-Datei mit LINQ einlesen 367

Kapitel 13 Grundlagen von ADO.NET 371

Vorbereitungen 372

Installation der Datenbank 372

Beispieldaten importieren 374

Datenbankzugriffe mit ADO.NET 377

Verbindung zur Datenbank herstellen 378

Datensätze abfragen 381

Datensätze einfügen 386

Datensätze aktualisieren 388

Datensätze löschen 390

Das DataSet und der DataAdapter 392

Der DataAdapter –die Brücke zu den Daten 393

Asynchrone Datenbankzugriffe 404

Teil III: Eine eigene C#-Anwendung schreiben 411

Kapitel 14 Fehlersuche und Softwarequalität 413

Welche Fehlerarten gibt es überhaupt? 414

Fehler zur Compiletime (Übersetzungszeit) 414

Fehler zur Runtime (Laufzeit) – Bugs 414

Der Debugger 415

Ein paar Grundlagen 415

Überprüfen von Code und Variablen zur Laufzeit 416

Überprüfen von Zeichenfolgen in der Schnellansicht 421

Anzeigen von Rückgabewerten einer Funktion 422

Attributed Debugging 423

Dem Fehler auf die Schliche kommen – der Stacktrace 425

Codequalität verbessern 427

Suchen Sie nach roten und grünen Schlangenlinien 428

Achten Sie auf die Glühbirne 430

Kapitel 15 Benutzeroberfläche mit Windows Forms 433

Grundgerüst einer Windows-Forms-Anwendung 434

Die Datei Program.cs 435

Die Dateien Form1.cs und Form1.Designer.cs 436

Benutzeroberfläche erstellen 439

Steuerelemente verwenden 440

Ereignisse von Steuerelementen 443

Windows-Forms-Anwendung: Ja oder Nein? 449

Kapitel 16 Moderne Oberflächen mit WPF und XAML 451

Meine erste WPF-Anwendung 452

XAML –Extended Application Markup Language 454

Logischer und visueller Elementbaum in WPF 457

Layout in WPF 458

Ereignisse in WPF 470

Commands 473

Ressourcen in WPF 476

Ressourcen in separate Datei auslagern 479

Das gewisse Etwas: Styles 481

Was ist ein Style? 482

Templates 487

Databinding –die Benutzeroberfläche mit Daten versorgen 491

Die Richtung des Bindings: Wie Daten aktualisiert werden 493

Der UpdateSourceTrigger: Wann Daten aktualisiert werden 494

Teil IV: Fortgeschrittene Techniken in C# und WPF 497

Kapitel 17 Fortgeschrittene Techniken rund um die WPF 499

Das Beispielprogramm 499

Das MVVM-Entwurfsmuster 501

Das Model 503

Das ViewModel 503

Datenbeschaffung 510

Eigene Commands implementieren 511

Kapitel 18 Modulare Anwendung auf Basis von C# und WPF – ein Beispiel 517

Die Beispielanwendung 518

Vorbereitungen und Erstellung der Solution 520

Styling der Anwendung 524

Das Dependency-Injection-Entwurfsmuster 527

Dynamische Oberflächen mit Prism-Regionen 529

Erstellung eines UserControls 533

Registrierung von Views 535

Erstellung eines Prism-Moduls 536

Anlegen des Projekts für das Modul 537

Erstellen der Benutzeroberfläche 538

Registrierung des Moduls 544

Austausch- und wiederverwendbare Komponenten 545

Registrierung und Verwendung der Klasse 547

Fazit –Was haben Sie jetzt gewonnen? 549

Teil V: Der Top-Ten-Teil 551

Kapitel 19 Zehn Dinge in C#, die Sie wirklich lernen und verwenden sollten! 553

Initialisierer für Objekte und Collections 553

Automatisch implementierte Eigenschaften initialisieren 554

null-coalescing Operator ?? 555

String-Interpolation für dynamische Zeichenfolgen 555

Null-conditional Operator 556

nameof()-Ausdruck 557

is- und as-Operatoren 558

Zeichenfolgen mit String.IsNullOrEmpty() überprüfen 559

break- und continue-Anweisung 560

TryParse für die Umwandlung von Zeichenketten 561

Kapitel 20 Zehn nützliche Open-Source-Projekte 563

MahApps.Metro: Verpassen Sie Ihrer Anwendung den Metro-Style 563

Modern UI for WPF (MUI) 563

MaterialDesignInXamlToolkit 564

Extended WPF Toolkit™ 564

WPFLocalizationExtension 564

ResXManager 565

Prism 565

Sammlung von Erweiterungsmethoden 565

Modern UI Icons 566

Material Design Icons 566

Stichwortverzeichnis 567

C# für Dummies

    Product form

    £23.70

    Includes FREE delivery

    RRP £24.95 – you save £1.25 (5%)

    Order before 4pm today for delivery by Wed 1 Jul 2026.

    A Paperback / softback by Steffen Steinbrecher

    1 in stock

      Trusted by thousands of customers. See 2,385+ Customer Reviews

      View other formats and editions of C# für Dummies by Steffen Steinbrecher

      Publisher: Wiley-VCH Verlag GmbH
      Publication Date: 31/03/2020
      ISBN13: 9783527715190, 978-3527715190
      ISBN10: 3527715193

      Description

      Book Synopsis
      C# ist eine der am meisten genutzten Programmiersprachen, doch wie den Ein- oder Umstieg schaffen? Genau dabei hilft Ihnen dieses Buch. Nachdem Sie sich zunächst die notwendigen Grundlagen erarbeitet haben, lernen Sie auch alles Notwendige über LINQ, XML und ADO.NET. Anschließend werden Sie sicher durch das Schreiben Ihrer ersten eigenen .NET-Anwendung geleitet. Noch nicht genug? Kapitel zu fortgeschrittenen .NET-Techniken wie die dynamische Programmierung oder die Task Parallel Library runden das Buch ab.

      Table of Contents

      Über den Autor 11

      Einleitung 23

      Über dieses Buch 23

      Wie dieses Buch aufgebaut ist 24

      Symbole, die in diesem Buch verwendet werden 26

      Wie es weiter geht 27

      Teil I: Los geht’s 29

      Kapitel 1 Grundlagen und Einführung 31

      Grundlagen der Programmierung 31

      Warum programmieren wir eigentlich? 32

      Programmiersprachen 33

      .NET-Plattformarchitektur 37

      Wie funktioniert eine .NET-Sprache? 39

      Das .NET-Framework 42

      Die Programmiersprache C# 44

      Das Prinzip der objektorientierten Programmierung 44

      Objekte und ihre Klassen 44

      Abstraktion 47

      Kapselung 48

      Vererbung 48

      Polymorphie 49

      Kapitel 2 Entwicklungswerkzeuge und Tools 53

      Ein Programm erstellen 53

      Microsoft Visual Studio 2019 Community Edition 59

      Ihr erstes eigenes Projekt 60

      Der Marktplatz für fertige Lösungen: NuGet 71

      Kapitel 3 Das ABC der Sprache C# 75

      Bezeichner 75

      Namenskonventionen 76

      Schlüsselwörter 78

      Anweisungen 79

      Kommentare 79

      Datentypen, Variablen und Konstanten 82

      Deklaration von Variablen 84

      Das Schlüsselwort var oder Typinferenz 86

      Konstanten deklarieren 88

      Zugriff und Verwendung von Variablen 89

      Wert- und Referenztypen 90

      Weitere Datentypen 97

      Gültigkeitsbereiche von Variablen 100

      Konvertieren von Datentypen 101

      Was ist eine Methode? 110

      Übergeben von Parametern 112

      Methoden mit Rückgabewert 115

      Methoden ohne Rückgabewert 117

      Namensräume 119

      Wo finde ich was? 121

      Verwendung von Namensräumen 122

      Alias für einen Namensraum 124

      Kapitel 4 Operatoren und Programmsteuerung 127

      Operatoren 127

      Rechenoperatoren 128

      Zuweisungsoperatoren 132

      Logische Operatoren 133

      Den Programmablauf steuern: Verzweigungen und Kontrollstrukturen 136

      if-Anweisung 137

      switch-Anweisung und -Ausdruck 144

      Vorgänge wiederholen: Schleifen 148

      for-Schleife 149

      while-Schleife 151

      do-while-Schleife 155

      foreach-Schleife 157

      Sie haben es sich anders überlegt? 158

      Kapitel 5 Zeichenfolgen, Arrays und Datumswerte 161

      Zeichen und Zeichenfolgen 161

      String-Variablen deklarieren 162

      String-Interpolation und kombinierte Formatierung 164

      Zeichenfolgen analysieren 166

      Zeichenfolgen manipulieren 168

      Sonderzeichen in Zeichenfolgen 170

      StringBuilder: Wenn Geschwindigkeit eine Rolle spielt 172

      Formatierung von Zeichenfolgen 173

      Arrays 178

      Arrays deklarieren 179

      Arrays erzeugen 179

      Arrays initialisieren 180

      Zugriff auf Array-Elemente 182

      Eigenschaften und Methoden von Arrays 185

      Datums- und Zeitberechnungen 188

      Die DateTime-Struktur 188

      Die TimeSpan-Struktur 192

      Praxisbeispiele 193

      Kapitel 6 Objektorientierte Programmierung mit C# 197

      Klassen, Eigenschaften und Methoden 197

      Klassen 198

      Eigenschaften 198

      Objekte 204

      Methoden und Konstruktoren 205

      Statische Klassen 207

      Vererbung 210

      Ober- und Unterklassen 210

      Methoden überschreiben 212

      Der Zugriff auf die Member der Basisklasse mit base 213

      Abstrakte Klassen 214

      Interfaces 216

      Kapitel 7 Fehler passieren, macht aber nichts: Ausnahmebehandlung 221

      Mit Ausnahmen umgehen 222

      Wie man einen Fehler »fängt«! 225

      Der Parameter einer catch-Klausel 226

      Ausnahmetypen 228

      Fehler auslösen 231

      Eigene Fehlerklassen erstellen 232

      Kapitel 8 Weitere Sprachfeatures 235

      Delegates 235

      Anonyme Methoden 239

      Lambda-Ausdrücke 240

      Ereignisse – was geht ab? 242

      Ereignisse registrieren und behandeln 243

      Ereignisse veröffentlichen 244

      Generics – generische Datentypen 247

      Generische Klassen, Methoden und Eigenschaften 248

      Generische Auflistungen 251

      Nette Helfer: Attribute 259

      Sie wollen mehr? Erweiterungsmethoden 261

      Teil II: Weitere Sprachfeatures von C# 265

      Kapitel 9 Zugriffe auf das Dateisystem 267

      Klassen für den Zugriff auf das Dateisystem 267

      Arbeiten mit Verzeichnissen 269

      Arbeiten mit Dateien 276

      Nicht bei der Ausnahmebehandlung sparen! 280

      Praxisbeispiele 282

      Verzeichnisgröße ermitteln 282

      Kopieren von Verzeichnissen 284

      Kapitel 10 Dateizugriff und Streams 287

      Arbeiten mit Dateien 287

      Text-Dateien erstellen, lesen und ändern 288

      Arbeiten mit Streams 291

      Lesen und Schreiben 293

      Datei mit einem Stream schreiben 296

      Komprimieren von Dateien mit .NET-Klassen 297

      Neues ZIP-Archiv erzeugen 298

      Alle Dateien eines ZIP-Archivs extrahieren 300

      Objekte serialisieren 301

      Im Binärformat serialisieren 302

      XML 306

      JSON-Dateien 308

      Kapitel 11 Asynchrone und parallele Programmierung 313

      Grundlagen und Begrifflichkeiten 314

      Asynchrone Programmiermuster 318

      Programmieren mit Threads 318

      Die TPL – Task Parallel Library 331

      Ein gutes Team: async und await 342

      Kapitel 12 Daten abfragenmit LINQ 349

      LINQ-Grundlagen 349

      Die Basis für LINQ-Abfragen 351

      Abfragen mit LINQ 353

      Die alternativen Schreibweisen von LINQ-Abfragen 358

      Die wichtigsten Abfrageoperatoren 359

      Ergebnis filtern (where-Operator) 359

      Ergebnis sortieren (orderby-Operator) 362

      Ergebnis partitionieren (skip- und take-Operator) 363

      Doppelte Einträge löschen (distinct-Operator) 365

      Aggregat-Operatoren 366

      Praxisbeispiele 367

      CSV-Datei mit LINQ einlesen 367

      Kapitel 13 Grundlagen von ADO.NET 371

      Vorbereitungen 372

      Installation der Datenbank 372

      Beispieldaten importieren 374

      Datenbankzugriffe mit ADO.NET 377

      Verbindung zur Datenbank herstellen 378

      Datensätze abfragen 381

      Datensätze einfügen 386

      Datensätze aktualisieren 388

      Datensätze löschen 390

      Das DataSet und der DataAdapter 392

      Der DataAdapter –die Brücke zu den Daten 393

      Asynchrone Datenbankzugriffe 404

      Teil III: Eine eigene C#-Anwendung schreiben 411

      Kapitel 14 Fehlersuche und Softwarequalität 413

      Welche Fehlerarten gibt es überhaupt? 414

      Fehler zur Compiletime (Übersetzungszeit) 414

      Fehler zur Runtime (Laufzeit) – Bugs 414

      Der Debugger 415

      Ein paar Grundlagen 415

      Überprüfen von Code und Variablen zur Laufzeit 416

      Überprüfen von Zeichenfolgen in der Schnellansicht 421

      Anzeigen von Rückgabewerten einer Funktion 422

      Attributed Debugging 423

      Dem Fehler auf die Schliche kommen – der Stacktrace 425

      Codequalität verbessern 427

      Suchen Sie nach roten und grünen Schlangenlinien 428

      Achten Sie auf die Glühbirne 430

      Kapitel 15 Benutzeroberfläche mit Windows Forms 433

      Grundgerüst einer Windows-Forms-Anwendung 434

      Die Datei Program.cs 435

      Die Dateien Form1.cs und Form1.Designer.cs 436

      Benutzeroberfläche erstellen 439

      Steuerelemente verwenden 440

      Ereignisse von Steuerelementen 443

      Windows-Forms-Anwendung: Ja oder Nein? 449

      Kapitel 16 Moderne Oberflächen mit WPF und XAML 451

      Meine erste WPF-Anwendung 452

      XAML –Extended Application Markup Language 454

      Logischer und visueller Elementbaum in WPF 457

      Layout in WPF 458

      Ereignisse in WPF 470

      Commands 473

      Ressourcen in WPF 476

      Ressourcen in separate Datei auslagern 479

      Das gewisse Etwas: Styles 481

      Was ist ein Style? 482

      Templates 487

      Databinding –die Benutzeroberfläche mit Daten versorgen 491

      Die Richtung des Bindings: Wie Daten aktualisiert werden 493

      Der UpdateSourceTrigger: Wann Daten aktualisiert werden 494

      Teil IV: Fortgeschrittene Techniken in C# und WPF 497

      Kapitel 17 Fortgeschrittene Techniken rund um die WPF 499

      Das Beispielprogramm 499

      Das MVVM-Entwurfsmuster 501

      Das Model 503

      Das ViewModel 503

      Datenbeschaffung 510

      Eigene Commands implementieren 511

      Kapitel 18 Modulare Anwendung auf Basis von C# und WPF – ein Beispiel 517

      Die Beispielanwendung 518

      Vorbereitungen und Erstellung der Solution 520

      Styling der Anwendung 524

      Das Dependency-Injection-Entwurfsmuster 527

      Dynamische Oberflächen mit Prism-Regionen 529

      Erstellung eines UserControls 533

      Registrierung von Views 535

      Erstellung eines Prism-Moduls 536

      Anlegen des Projekts für das Modul 537

      Erstellen der Benutzeroberfläche 538

      Registrierung des Moduls 544

      Austausch- und wiederverwendbare Komponenten 545

      Registrierung und Verwendung der Klasse 547

      Fazit –Was haben Sie jetzt gewonnen? 549

      Teil V: Der Top-Ten-Teil 551

      Kapitel 19 Zehn Dinge in C#, die Sie wirklich lernen und verwenden sollten! 553

      Initialisierer für Objekte und Collections 553

      Automatisch implementierte Eigenschaften initialisieren 554

      null-coalescing Operator ?? 555

      String-Interpolation für dynamische Zeichenfolgen 555

      Null-conditional Operator 556

      nameof()-Ausdruck 557

      is- und as-Operatoren 558

      Zeichenfolgen mit String.IsNullOrEmpty() überprüfen 559

      break- und continue-Anweisung 560

      TryParse für die Umwandlung von Zeichenketten 561

      Kapitel 20 Zehn nützliche Open-Source-Projekte 563

      MahApps.Metro: Verpassen Sie Ihrer Anwendung den Metro-Style 563

      Modern UI for WPF (MUI) 563

      MaterialDesignInXamlToolkit 564

      Extended WPF Toolkit™ 564

      WPFLocalizationExtension 564

      ResXManager 565

      Prism 565

      Sammlung von Erweiterungsmethoden 565

      Modern UI Icons 566

      Material Design Icons 566

      Stichwortverzeichnis 567

      Recently viewed products

      © 2026 Book Curl

        • American Express
        • Apple Pay
        • Diners Club
        • Discover
        • Google Pay
        • Maestro
        • Mastercard
        • PayPal
        • Shop Pay
        • Union Pay
        • Visa

        Login

        Forgot your password?

        Don't have an account yet?
        Create account