Wurm | Schrödinger programmiert C# | E-Book | sack.de
E-Book

E-Book, Deutsch, 747 Seiten

Reihe: Rheinwerk Computing

Wurm Schrödinger programmiert C#

Das etwas andere Fachbuch
4. Auflage 2024
ISBN: 978-3-367-10625-7
Verlag: Rheinwerk
Format: PDF
Kopierschutz: 0 - No protection

Das etwas andere Fachbuch

E-Book, Deutsch, 747 Seiten

Reihe: Rheinwerk Computing

ISBN: 978-3-367-10625-7
Verlag: Rheinwerk
Format: PDF
Kopierschutz: 0 - No protection



Schrödinger ist unser Mann fürs Programmieren. Er kann schon was, aber noch nicht C#. Zum Glück hat er einen richtigen Profi an seiner Seite, der auf jede Frage eine Antwort weiß. Und weil Schrödinger zwar schlau ist, aber auch ein wenig ungeduldig, gibt es nach der nötigen Theorie immer sofort etwas zu tun. Mit viel Code und Beispielen, die du nicht wieder vergisst. Ob es ums Einparken ohne Crash geht oder um Schuhschränke, die immer größer werden: Die Übungen schafft ihr (aber nicht immer mit links), die Pausen sind verdient, und am Ende jedes Kapitels dürft ihr euch einen Spickzettel einstecken - Achievement Unlocked, Ready for Next Level. Fantastisch illustriert. Für Einsteiger, Umsteiger und Fans.

Aus dem Inhalt:

  • Operatoren, Schleifen, Datentypen
  • Klassen und Vererbung
  • Wichtige Entwurfsmuster
  • GUI-Entwicklung mit XAML
  • LINQ einsetzen
  • async/await geschickt verwenden
  • Dateizugriffe und Streams
  • Multithreading
  • Internetzugriff
  • Mit Fehlern und Ausnahmen umgehen


Bernhard Wurm ist Softwareentwickler aus Leidenschaft und kann sich noch sehr gut an seine ersten Programmierversuche erinnern. Er weiß, dass gute Nerven und Ausdauer genauso gefragt sind wie Neugierde und Spaß am logischen Denken. Auf jeden Fall hat ihn noch kein Programm in die Knie gezwungen; er studierte prompt Information Engineering und Management sowie Software Engineering. Inzwischen leitet er ein österreichisches Software-Unternehmen. Seine Interessen sind breit gestreut, aber immer computer-affin: Sie reichen von Distributed Computing über die digitale Bilderverarbeitung und Software-Architekturen bis hin zu den neuesten Technologien.
Wurm Schrödinger programmiert C# jetzt bestellen!

Autoren/Hrsg.


Weitere Infos & Material


1.  Ein guter Start ist der halbe Sieg. Compiler und Entwicklungsumgebungen ... 25  Compiler und Compiler ... 26  Du brauchst eine IDE! ... 30  Der Spaß geht los! ... 32  Dein erstes Projekt ... 33  Theorie und Praxis ... 39  Was gelernt! ... 41  2.  Ein netter Typ. Datentypen und deren Behandlung ... 43  Dieses Glas für diesen Wein ... 44  Grundlagen im Kamelreiten ... 48  Übungen für den Barkeeper ... 50  Rechnen mit Transvestiten ... 50  Alles nur Klone! ... 56  Ja oder nein? ... 57  Was gibt's zu essen? ... 58  Das ständige Hin und Her zwischen ja und nein ... 60  Gut kommentieren! ... 61  Kommentare im Einsatz ... 62  Andere für sich denken lassen ... 62  Compiler-Spiele ... 63  Viele neue Freunde ... 64  3.  Alles unter Kontrolle. Bedingungen, Schleifen und Arrays ... 65  Bedingungen ... 66  In der Kürze liegt die Würze ... 69  Durch Variationen bleibt es interessant ... 70  Der Herr der Fernbedienung ... 72  Ist noch Bier da? ... 74  Switch-Expressions ... 77  Pattern-Matching ... 78  Zwillinge ... 79  Zwillinge ... 79  Ein Schuhschrank muss her ... 82  Arbeiten in den Tiefen des Schuhschranks -- von Kopf bis Fuß ... 83  Die ganze Welt ist Mathematik und aller guten Dinge sind vier ... 85  Schau's dir an mit dem Debugger ... 86  Solange du nicht fertig bist, weitermachen ... ... 87  Ich habe es mir anders überlegt ... 88  Oder mach doch weiter ... ... 89  Zurück zu den Schuhschränken ... 90  Wenn aus einem Schuhschrank eine Lagerhalle wird ... 91  Wiederholung, Wiederholung! ... 93  Code muss man auch lesen können ... 94  Jetzt kommt das coole Zeug! ... 96  Arrays verbinden ab C# 12 ... 100  Der Blick durchs Fenster ... 102  ... oder einmal alles ... 103  4.  Sexy Unterwäsche -- von kleinen Teilen bis gar nichts. Strings, Characters und Nullable Types ... 105  Zeichenketten -- Strings ... 106  Kleine Teile -- einzelne Zeichen ... 107  Kleine und große Teile ... 108  Einfacher und schneller ... 109  Noch einfacher: Variablen im Text verwenden ... 112  Etwas Besonderes sollte es sein ... 113  Verdrehte Welt ... 114  Sein oder nicht sein? ... 117  Verweise auf nichts ... 120  Nichts im Einsatz ... 122  Damit bei so viel null nichts verloren geht ... 123  5.  Eine endliche Geschichte. Enumerationen ... 125  Rot -- Gelb -- Grün ... 126  Tageweise ... 128  Tell me why I don't like mondays ... ... 131  WoW-Völker ... 132  Eine Mischung aus Zahlen und Arrays ... 134  Stimmungsbilder in der Praxis ... 137  Haltet das Banner hoch! ... 140  Auf wenige Sätze heruntergebrochen ... 143  6.  Teile und herrsche. Methoden ... 145  Teilen statt Kopieren ... 146  Originale und überteuerte Kopien ... 149  Eins ist nicht genug ... 153  Wenn sich nichts bewegt und alles statisch ist ... 155  Ich hätte gerne das Original! ... 155  Sommerschlussverkauf -- alles muss raus ... 156  Tauschgeschäfte, die nicht funktionieren ... 158  TryParse und Enums ... 159  Zum Schluss noch ganz kurz ... ... 161  Ich will das ganz anders oder auch gar nicht -- Methoden überladen ... 163  Das Ganze noch einmal umgerührt ... 166  Ein knurrender Magen spornt bestimmt zu Höchstleistungen an ... 168  Originale zurücksenden ... 169  Maximale Originale ... 171  Eine kleine Zusammenfassung für dich ... 172  7.  Klassengesellschaft. Objekte, Eigenschaften und Sichtbarkeiten ... 173  Mein Alter, meine Augenfarbe, mein Geburtsdatum ... 174  Eine Aufgabe für den Accessor ... 178  Ich sehe was, was du nicht siehst ... 179  Eigenschaften aufpoliert und bereit für die Bühne ... 180  Tanzen mit Elvis -- wenn keiner da ist, ist keiner da ... 182  Geheimniskrämerei und Kontrollfreak ... 183  Darf ich jetzt oder nicht? ... 184  Zusammen, was zusammengehört! ... 188  Zusammen und doch getrennt ... 190  Laufen, kämpfen, sterben ... 192  Vom Leben und Sterben ... 193  Geburtenkontrolle und detektivisches Talent ... 197  Mehrlingsgeburt ... 201  Partielle Klassen ... 204  Meine partiellen Daten ... 206  Gemeinsame Werte von dicken Freunden ... 207  Eigene Wertetypen ... 208  Strukturen überall ... 210  Strukturen ohne Namen ... 214  Ich habe viele Namen ... 216  Eigene Typen nochmals vom Sofa aus betrachtet ... 217  Die Nachteile der Wertetypen ausgetrickst ... 220  Gelernt ist gelernt! ... 223  8.  Es wird Zeit für Übersicht! Namespaces ... 225  Eine Ordnung für die Klassen ... 226  Was ist denn nur in diesem Namespace vorhanden? ... 229  Vorhandene Systembausteine ... 231  Visual Studio findet die Namespaces für dich ... 234  Statische Klassen einbinden ... 234  Mathematik für Einsteiger ... 235  Zum Mitnehmen ... 236  9.  Erben ohne Sterben. Objektorientierte Programmierung ... 237  Geisterstunde ... 238  Schleimgeister sind spezielle Geister ... 240  Fünf vor zwölf ... 242  Geister fressen, Schleimgeister fressen, Kannibalen fressen -- alles muss man einzeln machen ... 248  Enterben ... 249  Geister haben viele Gestalten ... 249  Geister, die sich nicht an die Regeln halten ... 252  Gestaltwandler unter der Lupe ... 253  Nochmals drüber nachgedacht ... 254  Hier noch ein Merkzettel ... 258

10.  Abstrakte Kunst. Abstrakte Klassen und Interfaces ... 259  Abstrakte Klassen ... 260  Unverstandene Künstler ... 262  Das Meisterwerk nochmals betrachtet ... 264  Abstrakte Kunst am Prüftisch ... 265  Allgemein ist konkret genug ... 267  Fabrikarbeit ... 268  Alles unter einem Dach ... 269  Kaffee oder Tee? Oder doch lieber eine Cola? ... 270  Kaffeemaschine im Einsatz ... 272  Eine Cola bitte ... 274  Freundin vs. Chef -- Runde 1 ... 276  Bei perfekter Verwendung ... ... 277  Freundin vs. Chef -- Runde 2 ... 278  Freundin vs. Chef -- Runde 3 ... 280  Interfaces außer Rand und Band ... 281  In der Praxis: Mehr als nur Beschreibungen ... 282  Abstraktion und Interfaces auf einen Blick ... 287

11.  Gleich und doch ganz anders. Records, der Star unter den eigenen Datentypen ... 289  Immutability -- die Würfel sind gefallen ... 290  Orcs, Trolle und Elfen als Klassen, Strukturen und Records ... 293

12.  Airbags können Leben retten. Exceptionhandling ... 297  Mach's stabil! ... 298  Einen Versuch war es wert ... 300  Nur unter bestimmten Umständen ... 303  Fehler über Fehler ... 304  Über das Klettern auf Bäume ... 308  Klettern auf nicht vorhandene Bäume -- NullReferenceException ... 308  Auf Sträucher klettern -- FormatException ... 309  Sträucher im Sägewerk -- ArgumentException ... 310  Bezahlung ohne Ware -- ArgumentNullException ... 310  Bewusste Fehler ... 311  Selbst definierte Fehler ... 312  Fehler in freier Wildbahn ... 313  Das Matruschka-Prinzip ... 314  Alles noch einmal aufgerollt ... 316  Dein Fehler-Cheat-Sheet ... 320

13.  Ein ordentliches Ablagesystem muss her. Collections und Laufzeitkomplexität ... 321  Je größer der Schuhschrank, desto länger die Suche ... 322  Komplizierte Laufschuhe ... 323  Geschwindigkeitsprognosen ... 326  Es muss nicht immer gleich quadratisch sein ... 328  Geschwindigkeitseinschätzung und Buchstabensuppe ... 330  Selbstwachsende Schuhschränke ... 334  Eine Array-Liste ... 335  Ringboxen ... 336  Listige Arrays und ihre Eigenheiten ... 337  Listige Arrays und ihre Verwendung ... 337  The Need for Speed ... 338  The Need for Speed ... 338  The Need for Speed ... 338  The Need for Speed ... 338  Es wird konkreter ... 339  Sortieren bringt Geschwindigkeit -- SortedList ... 342  Listenreiche Arbeit ... 344  Es geht noch schneller! ... 346  Im Rausch der Geschwindigkeit ... 348  Alternative Initialisierungen ... 350  Wörterbücher in der Anwendung... oder was im Regelfall schiefgeht ... 351  Von Bäumen und Ästen ... 355  Ein Verwendungsbeispiel ... 356  Alles eindeutig -- das HashSet ... 357  Schnelles Arbeiten mit Sets ... 358  Das große Bild ... 360  Der große Test, das Geheimnis und die Verwunderung ... 363  Noch einmal durchleuchtet ... 368  Dein Merkzettel rund um die Collections aus Laufzeiten ... 373

14.  Allgemein konkrete Implementierungen. Generizität ... 375  Konkrete Typen müssen nicht sein ... 376  Das große Ganze ... 377  Mülltrennung leicht gemacht ... 378  Der Nächste bitte ... 381  Allgemein, aber nicht für jeden! ... 383  Immer das Gleiche und doch etwas anderes ... 385  Fabrikarbeit ... 387  Aus allgemein wird konkret ... 388  Hier kommt nicht jeder Typ rein. ... 389  Ähnlich, aber nicht gleich! ... 390  Varianzen hin oder her ... 392  Varianzen in der Praxis ... 395  WoW im Simulator ... 398  Damit's auch hängen bleibt ... 400

15.  Linke Typen, auf die man sich verlassen kann. LINQ ... 401  Shoppen in WoW ... 405  Gesund oder gut essen? ... 408  Listen zusammenführen ... 409  Fix geLINQt statt handverlesen ... 416  Merkzettel ... 420

16.  Blumen für die Dame. Delegaten und Ereignisse ... 421  Ein Delegat übernimmt die Arbeit ... 422  Im Strudel der Methoden ... 425  Die Butlerschule ... 428  Die Wahl des Butlers ... 431  Ereignisreiche Tage ... 432  Eine Runde für alle ... 435  Auf in die Bar! ... 436  Wiederholung, Wiederholung ... 439  Die delegierte Zusammenfassung ... 442

17.  Der Standard ist nicht genug. Extension-Methoden und Lambda-Expressions ... 443  Extension-Methoden ... 444  Auf die Größe kommt es an ... 448  Erweiterungen nochmals durchschaut ... 450  Softwareentwicklung mit Lambdas ... 452  Lambda-Expressions auf Collections loslassen ... 455  Ein Ausritt auf Lamas ... 456  Filtern ... 456  Gruppieren ... 458  Verknüpfen ... 459  Gruppieren und Verknüpfen kombiniert ... 460  Left Join ... 461  VerLINQte LAMbdAS ... 463  Lamas im Schnelldurchlauf ... 466

18.  Die Magie der Attribute. Arbeiten mit Attributen ... 467  Die Welt der Attribute ... 468  Die Magie erleben ... 470  Das Ablaufdatum-Attribut ... 472  Die Magie selbst erleben ... 473  Eine magische Reise in dein Selbst ... 474  In den Tiefen des Kaninchenbaus ... 477  Der Attribut-Meister erstellt eigene Attribute! ... 480  Meine Klasse, meine Zeichen ... 482  Selbstreflexion ... 484  Die Psychologie lehrt uns: Wiederholung ist wichtig! ... 488

19.  Ich muss mal raus. Dateizugriff und das Internet ... 489  Daten speichern ... 490  Rundherum oder direkt rein ... 491  Rein in die Dose, Deckel drauf und fertig ... 493  Deine Geheimnisse sind bei mir nicht sicher ... 494  Das Mysterium der Dateiendungen ... 497  Das Gleiche und doch etwas anders ... 500  Das Lexikon vom Erstellen, Lesen, Schreiben, Umbenennen ... 501  Ran an die Tastatur, rein in die Dateien ... 506  Von der Sandburg zum Wolkenkratzer ... 508  Fließbandarbeit ... 512  Wenn das Fließband nicht ganz richtig läuft ... 515  Dem Fließband vorgeschalteter Fleischwolf ... 519  Nutze die Attributmagie! ... 521  X(M)L entspricht XXL ... 522  Der Größenvergleich ... 523  Die kleinste Größe -- JSON ... 524  Wir sind viele ... 525  Schru00F6dinger ... 529  Das World Wide Web. Unendliche Weiten ... 532  Deine Seite, meine Seite ... 534  Probe, Probe, Leseprobe ... 536  Punkt für Punkt fürs Hirn ... 538

20.  Komm zurück, wenn du fertig bist. Asynchrone und parallele Programmierung ... 539  Zum Beispiel ein Download-Programm ... 540  Was so alles im Hintergrund laufen kann ... 547  Gemeinsam geht es schneller ... 549  Jetzt wird es etwas magisch ... 553  Wenn jeder mit anpackt, dann geht alles schneller ... 555  Rückzug bei Kriegsspielen ... 558  async/await/cancel ... 560  Unkoordinierte Koordination ... 562  Anders und doch gleich ... 567  Gemeinsam Kuchen backen ... 568  Wenn das Klo besetzt ist ... 573  Das Producer-Consumer-Problem ... 573  Dein Spickzettel ... 579

21.  Nimm doch, was andere schon gemacht haben. Die Paketverwaltung NuGet ... 581  Bibliotheken für Code ... 582  Fremden Code aufspüren ... 585  Eigene NuGet-Pakete erstellen ... 588  Pakete statt Projekte ... 591  Die Welt ist schon fertig ... 592

22.  Die schönen Seiten des Lebens. Einführung in XAML ... 593  Unendliche Weiten ... 594  Hinzufügen der Komponenten für MAUI-Apps in Visual Studio ... 597  Die MAUI-Architektur ... 598  Diese X-Technologien ... 600  Grundstruktur des Projekts ... 602  Ruf deine Freundin an ... 608  Layouthelferlein ... 612  Tabellen über Tabellen ... 613  Schrödingers Notizen ... 617  Das ist alles eine Stilfrage ... 631  Von der Seite in die Anwendung ... 633  Sonne, Strand und XAML ... 636

23.  Models sind doch schön anzusehen. Das Model-View-ViewModel-Entwurfsmuster ... 639  Mein erstes eigenes Model ... 644  Eine Technik, sie alle zu binden! ... 648  Eine Eigenschaft für alle Infos ... 650  Wenn nur jeder wüsste, was er zu tun hätte ... 651  Los geht's! Notify-Everybody ... 654  Ein Laufsteg muss es sein! ... 657  Über Transvestiten und Bindungsprobleme ... 666  Über Bindungsprobleme und deren Lösungen ... 667  Alleine oder zu zweit? ... 668  Aus Klein mach Groß und zurück ... 669  Klein aber fein ... 670  Notizen über Models ... 673  Auf mein Kommando ... 683  Dem Zufall das Kommando überlassen ... 689  MVVM Punkt für Punkt ... 694

24.  Weniger ist mehr. MVVM Community Toolkit ... 695  Programmcode generieren lassen ... 696  Lass uns mal rechnen, aber möglichst ohne Aufwand ... 701  Das solltest du trotz Automatik noch wissen ... 710

25.  Funktioniert das wirklich? Unit-Testing ... 715  Das Problem: Testen kann lästig werden ... 716  Die Lösung: Unit-Tests -- Klassen, die Klassen testen ... 717  Das Testprojekt erstellen ... 720  Die Ausführung ist das A und O! ... 722  Spezielle Attribute ... 723  Unit-Tests sind nicht alles ... 723  Testgetriebene Softwareentwicklung -- oder wie du Autofahren lernst ... 724  Darfst du schon fahren? ... 725  Let's do it! ... 730  Dein Test-Merkzettel ... 731

26.  Schrödingers Zukunft. Vorschau auf C# 13 und .NET9 ... 733  Schrittweise verfeinert ... 733  Params für alle ... 734  Alles erweitern! ... 735  Lange Eigenschaften gekürzt ... 739  Neuerungen in LINQ ... 740  Warten auf Godot ... 742  Index ... 743


Wurm, Bernhard
Bernhard Wurm ist Softwareentwickler aus Leidenschaft und kann sich noch sehr gut an seine ersten Programmierversuche erinnern. Er weiß, dass gute Nerven und Ausdauer genauso gefragt sind wie Neugierde und Spaß am logischen Denken. Auf jeden Fall hat ihn noch kein Programm in die Knie gezwungen; er studierte prompt Information Engineering und Management sowie Software Engineering. Inzwischen leitet er ein österreichisches Software-Unternehmen. Seine Interessen sind breit gestreut, aber immer computer-affin: Sie reichen von Distributed Computing über die digitale Bilderverarbeitung und Software-Architekturen bis hin zu den neuesten Technologien.



Ihre Fragen, Wünsche oder Anmerkungen
Vorname*
Nachname*
Ihre E-Mail-Adresse*
Kundennr.
Ihre Nachricht*
Lediglich mit * gekennzeichnete Felder sind Pflichtfelder.
Wenn Sie die im Kontaktformular eingegebenen Daten durch Klick auf den nachfolgenden Button übersenden, erklären Sie sich damit einverstanden, dass wir Ihr Angaben für die Beantwortung Ihrer Anfrage verwenden. Selbstverständlich werden Ihre Daten vertraulich behandelt und nicht an Dritte weitergegeben. Sie können der Verwendung Ihrer Daten jederzeit widersprechen. Das Datenhandling bei Sack Fachmedien erklären wir Ihnen in unserer Datenschutzerklärung.