Details

C# für Dummies


C# für Dummies


Für Dummies 1. Aufl.

von: Steffen Steinbrecher

24,99 €

Verlag: Wiley-VCH
Format: EPUB
Veröffentl.: 15.04.2020
ISBN/EAN: 9783527817092
Sprache: deutsch
Anzahl Seiten: 572

DRM-geschütztes eBook, Sie benötigen z.B. Adobe Digital Editions und eine Adobe ID zum Lesen.

Beschreibungen

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.
<p>Über den Autor 11</p> <p><b>Einleitung 23</b></p> <p>Über dieses Buch 23</p> <p>Wie dieses Buch aufgebaut ist 24</p> <p>Symbole, die in diesem Buch verwendet werden 26</p> <p>Wie es weiter geht 27</p> <p><b>Teil I: Los geht’s 29</b></p> <p><b>Kapitel 1 Grundlagen und Einführung</b> <b>31</b></p> <p>Grundlagen der Programmierung 31</p> <p>Warum programmieren wir eigentlich? 32</p> <p>Programmiersprachen 33</p> <p>.NET-Plattformarchitektur 37</p> <p>Wie funktioniert eine .NET-Sprache? 39</p> <p>Das .NET-Framework 42</p> <p>Die Programmiersprache C# 44</p> <p>Das Prinzip der objektorientierten Programmierung 44</p> <p>Objekte und ihre Klassen 44</p> <p>Abstraktion 47</p> <p>Kapselung 48</p> <p>Vererbung 48</p> <p>Polymorphie 49</p> <p><b>Kapitel 2 Entwicklungswerkzeuge und Tools</b> <b>53</b></p> <p>Ein Programm erstellen 53</p> <p>Microsoft Visual Studio 2019 Community Edition 59</p> <p>Ihr erstes eigenes Projekt 60</p> <p>Der Marktplatz für fertige Lösungen: NuGet 71</p> <p><b>Kapitel 3 Das ABC der Sprache C#</b> <b>75</b></p> <p>Bezeichner 75</p> <p>Namenskonventionen 76</p> <p>Schlüsselwörter 78</p> <p>Anweisungen 79</p> <p>Kommentare 79</p> <p>Datentypen, Variablen und Konstanten 82</p> <p>Deklaration von Variablen 84</p> <p>Das Schlüsselwort var oder Typinferenz 86</p> <p>Konstanten deklarieren 88</p> <p>Zugriff und Verwendung von Variablen 89</p> <p>Wert- und Referenztypen 90</p> <p>Weitere Datentypen 97</p> <p>Gültigkeitsbereiche von Variablen 100</p> <p>Konvertieren von Datentypen 101</p> <p>Was ist eine Methode? 110</p> <p>Übergeben von Parametern 112</p> <p>Methoden mit Rückgabewert 115</p> <p>Methoden ohne Rückgabewert 117</p> <p>Namensräume 119</p> <p>Wo finde ich was? 121</p> <p>Verwendung von Namensräumen 122</p> <p>Alias für einen Namensraum 124</p> <p><b>Kapitel 4 Operatoren und Programmsteuerung</b> <b>127</b></p> <p>Operatoren 127</p> <p>Rechenoperatoren 128</p> <p>Zuweisungsoperatoren 132</p> <p>Logische Operatoren 133</p> <p>Den Programmablauf steuern: Verzweigungen und Kontrollstrukturen 136</p> <p>if-Anweisung 137</p> <p>switch-Anweisung und -Ausdruck 144</p> <p>Vorgänge wiederholen: Schleifen 148</p> <p>for-Schleife 149</p> <p>while-Schleife 151</p> <p>do-while-Schleife 155</p> <p>foreach-Schleife 157</p> <p>Sie haben es sich anders überlegt? 158</p> <p><b>Kapitel 5 Zeichenfolgen, Arrays und Datumswerte</b> <b>161</b></p> <p>Zeichen und Zeichenfolgen 161</p> <p>String-Variablen deklarieren 162</p> <p>String-Interpolation und kombinierte Formatierung 164</p> <p>Zeichenfolgen analysieren 166</p> <p>Zeichenfolgen manipulieren 168</p> <p>Sonderzeichen in Zeichenfolgen 170</p> <p>StringBuilder: Wenn Geschwindigkeit eine Rolle spielt 172</p> <p>Formatierung von Zeichenfolgen 173</p> <p>Arrays 178</p> <p>Arrays deklarieren 179</p> <p>Arrays erzeugen 179</p> <p>Arrays initialisieren 180</p> <p>Zugriff auf Array-Elemente 182</p> <p>Eigenschaften und Methoden von Arrays 185</p> <p>Datums- und Zeitberechnungen 188</p> <p>Die DateTime-Struktur 188</p> <p>Die TimeSpan-Struktur 192</p> <p>Praxisbeispiele 193</p> <p><b>Kapitel 6 Objektorientierte Programmierung mit C#</b> <b>197</b></p> <p>Klassen, Eigenschaften und Methoden 197</p> <p>Klassen 198</p> <p>Eigenschaften 198</p> <p>Objekte 204</p> <p>Methoden und Konstruktoren 205</p> <p>Statische Klassen 207</p> <p>Vererbung 210</p> <p>Ober- und Unterklassen 210</p> <p>Methoden überschreiben 212</p> <p>Der Zugriff auf die Member der Basisklasse mit base 213</p> <p>Abstrakte Klassen 214</p> <p>Interfaces 216</p> <p><b>Kapitel 7 Fehler passieren, macht aber nichts: Ausnahmebehandlung</b> <b>221</b></p> <p>Mit Ausnahmen umgehen 222</p> <p>Wie man einen Fehler »fängt«! 225</p> <p>Der Parameter einer catch-Klausel 226</p> <p>Ausnahmetypen 228</p> <p>Fehler auslösen 231</p> <p>Eigene Fehlerklassen erstellen 232</p> <p><b>Kapitel 8 Weitere Sprachfeatures 235</b></p> <p>Delegates 235</p> <p>Anonyme Methoden 239</p> <p>Lambda-Ausdrücke 240</p> <p>Ereignisse – was geht ab? 242</p> <p>Ereignisse registrieren und behandeln 243</p> <p>Ereignisse veröffentlichen 244</p> <p>Generics – generische Datentypen 247</p> <p>Generische Klassen, Methoden und Eigenschaften 248</p> <p>Generische Auflistungen 251</p> <p>Nette Helfer: Attribute 259</p> <p>Sie wollen mehr? Erweiterungsmethoden 261</p> <p><b>Teil II: Weitere Sprachfeatures von C# 265</b></p> <p><b>Kapitel 9 Zugriffe auf das Dateisystem</b> <b>267</b></p> <p>Klassen für den Zugriff auf das Dateisystem 267</p> <p>Arbeiten mit Verzeichnissen 269</p> <p>Arbeiten mit Dateien 276</p> <p>Nicht bei der Ausnahmebehandlung sparen! 280</p> <p>Praxisbeispiele 282</p> <p>Verzeichnisgröße ermitteln 282</p> <p>Kopieren von Verzeichnissen 284</p> <p><b>Kapitel 10 Dateizugriff und Streams</b> <b>287</b></p> <p>Arbeiten mit Dateien 287</p> <p>Text-Dateien erstellen, lesen und ändern 288</p> <p>Arbeiten mit Streams 291</p> <p>Lesen und Schreiben 293</p> <p>Datei mit einem Stream schreiben 296</p> <p>Komprimieren von Dateien mit .NET-Klassen 297</p> <p>Neues ZIP-Archiv erzeugen 298</p> <p>Alle Dateien eines ZIP-Archivs extrahieren 300</p> <p>Objekte serialisieren 301</p> <p>Im Binärformat serialisieren 302</p> <p>XML 306</p> <p>JSON-Dateien 308</p> <p><b>Kapitel 11 Asynchrone und parallele Programmierung</b> <b>313</b></p> <p>Grundlagen und Begrifflichkeiten 314</p> <p>Asynchrone Programmiermuster 318</p> <p>Programmieren mit Threads 318</p> <p>Die TPL – Task Parallel Library 331</p> <p>Ein gutes Team: async und await 342</p> <p><b>Kapitel 12 Daten abfragenmit LINQ</b> <b>349</b></p> <p>LINQ-Grundlagen 349</p> <p>Die Basis für LINQ-Abfragen 351</p> <p>Abfragen mit LINQ 353</p> <p>Die alternativen Schreibweisen von LINQ-Abfragen 358</p> <p>Die wichtigsten Abfrageoperatoren 359</p> <p>Ergebnis filtern (where-Operator) 359</p> <p>Ergebnis sortieren (orderby-Operator) 362</p> <p>Ergebnis partitionieren (skip- und take-Operator) 363</p> <p>Doppelte Einträge löschen (distinct-Operator) 365</p> <p>Aggregat-Operatoren 366</p> <p>Praxisbeispiele 367</p> <p>CSV-Datei mit LINQ einlesen 367</p> <p><b>Kapitel 13 Grundlagen von ADO.NET</b> <b>371</b></p> <p>Vorbereitungen 372</p> <p>Installation der Datenbank 372</p> <p>Beispieldaten importieren 374</p> <p>Datenbankzugriffe mit ADO.NET 377</p> <p>Verbindung zur Datenbank herstellen 378</p> <p>Datensätze abfragen 381</p> <p>Datensätze einfügen 386</p> <p>Datensätze aktualisieren 388</p> <p>Datensätze löschen 390</p> <p>Das DataSet und der DataAdapter 392</p> <p>Der DataAdapter –die Brücke zu den Daten 393</p> <p>Asynchrone Datenbankzugriffe 404</p> <p><b>Teil III: Eine eigene C#-Anwendung schreiben 411</b></p> <p><b>Kapitel 14 Fehlersuche und Softwarequalität</b> <b>413</b></p> <p>Welche Fehlerarten gibt es überhaupt? 414</p> <p>Fehler zur Compiletime (Übersetzungszeit) 414</p> <p>Fehler zur Runtime (Laufzeit) – Bugs 414</p> <p>Der Debugger 415</p> <p>Ein paar Grundlagen 415</p> <p>Überprüfen von Code und Variablen zur Laufzeit 416</p> <p>Überprüfen von Zeichenfolgen in der Schnellansicht 421</p> <p>Anzeigen von Rückgabewerten einer Funktion 422</p> <p>Attributed Debugging 423</p> <p>Dem Fehler auf die Schliche kommen – der Stacktrace 425</p> <p>Codequalität verbessern 427</p> <p>Suchen Sie nach roten und grünen Schlangenlinien 428</p> <p>Achten Sie auf die Glühbirne 430</p> <p><b>Kapitel 15 Benutzeroberfläche mit Windows Forms</b> <b>433</b></p> <p>Grundgerüst einer Windows-Forms-Anwendung 434</p> <p>Die Datei Program.cs 435</p> <p>Die Dateien Form1.cs und Form1.Designer.cs 436</p> <p>Benutzeroberfläche erstellen 439</p> <p>Steuerelemente verwenden 440</p> <p>Ereignisse von Steuerelementen 443</p> <p>Windows-Forms-Anwendung: Ja oder Nein? 449</p> <p><b>Kapitel 16 Moderne Oberflächen mit WPF und XAML</b> <b>451</b></p> <p>Meine erste WPF-Anwendung 452</p> <p>XAML –Extended Application Markup Language 454</p> <p>Logischer und visueller Elementbaum in WPF 457</p> <p>Layout in WPF 458</p> <p>Ereignisse in WPF 470</p> <p>Commands 473</p> <p>Ressourcen in WPF 476</p> <p>Ressourcen in separate Datei auslagern 479</p> <p>Das gewisse Etwas: Styles 481</p> <p>Was ist ein Style? 482</p> <p>Templates 487</p> <p>Databinding –die Benutzeroberfläche mit Daten versorgen 491</p> <p>Die Richtung des Bindings: Wie Daten aktualisiert werden 493</p> <p>Der UpdateSourceTrigger: Wann Daten aktualisiert werden 494</p> <p><b>Teil IV: Fortgeschrittene Techniken in C# und WPF 497</b></p> <p><b>Kapitel 17 Fortgeschrittene Techniken rund um die WPF</b> <b>499</b></p> <p>Das Beispielprogramm 499</p> <p>Das MVVM-Entwurfsmuster 501</p> <p>Das Model 503</p> <p>Das ViewModel 503</p> <p>Datenbeschaffung 510</p> <p>Eigene Commands implementieren 511</p> <p><b>Kapitel 18 Modulare Anwendung auf Basis von C# und WPF – ein Beispiel</b> <b>517</b></p> <p>Die Beispielanwendung 518</p> <p>Vorbereitungen und Erstellung der Solution 520</p> <p>Styling der Anwendung 524</p> <p>Das Dependency-Injection-Entwurfsmuster 527</p> <p>Dynamische Oberflächen mit Prism-Regionen 529</p> <p>Erstellung eines UserControls 533</p> <p>Registrierung von Views 535</p> <p>Erstellung eines Prism-Moduls 536</p> <p>Anlegen des Projekts für das Modul 537</p> <p>Erstellen der Benutzeroberfläche 538</p> <p>Registrierung des Moduls 544</p> <p>Austausch- und wiederverwendbare Komponenten 545</p> <p>Registrierung und Verwendung der Klasse 547</p> <p>Fazit –Was haben Sie jetzt gewonnen? 549</p> <p><b>Teil V: Der Top-Ten-Teil 551</b></p> <p><b>Kapitel 19 Zehn Dinge in C#, die Sie wirklich lernen und verwenden sollten!</b> <b>553</b></p> <p>Initialisierer für Objekte und Collections 553</p> <p>Automatisch implementierte Eigenschaften initialisieren 554</p> <p>null-coalescing Operator ?? 555</p> <p>String-Interpolation für dynamische Zeichenfolgen 555</p> <p>Null-conditional Operator 556</p> <p>nameof()-Ausdruck 557</p> <p>is- und as-Operatoren 558</p> <p>Zeichenfolgen mit String.IsNullOrEmpty() überprüfen 559</p> <p>break- und continue-Anweisung 560</p> <p>TryParse für die Umwandlung von Zeichenketten 561</p> <p><b>Kapitel 20 Zehn nützliche Open-Source-Projekte</b> <b>563</b></p> <p>MahApps.Metro: Verpassen Sie Ihrer Anwendung den Metro-Style 563</p> <p>Modern UI for WPF (MUI) 563</p> <p>MaterialDesignInXamlToolkit 564</p> <p>Extended WPF Toolkit™ 564</p> <p>WPFLocalizationExtension 564</p> <p>ResXManager 565</p> <p>Prism 565</p> <p>Sammlung von Erweiterungsmethoden 565</p> <p>Modern UI Icons 566</p> <p>Material Design Icons 566</p> <p>Stichwortverzeichnis 567</p>
Steffen Steinbrecher programmiert schon seit über 15 Jahren. Nach dem Studium sammelte er mehrjährige Erfahrung in der professionellen Softwareentwicklung im .NET-Umfeld. Er lebt in der Nähe von Kaiserslautern. In seiner Freizeit betreibt er einen Blog, auf dem er hauptsächlich über verschiedene .NET-Themen schreibt.

Diese Produkte könnten Sie auch interessieren:

Domain Architectures
Domain Architectures
von: Daniel J. Duffy
PDF ebook
31,99 €