- Titel ist leider vergriffen;
keine Neuauflage - Artikel merken
- Von den Sprachgrundlagen über Multithreading bis zur GUI-Anwendung
- Ob C# 6, async oder Universal Apps: Nutze die Schwerter aller Versionen!
- Schreibe von Anfang an guten Code und lerne Best Practices vom Profi
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.
Gründlicher Einstieg
- Installationshilfe
- Führung durch Visual StudioDatentypen, Variablen, Schleifen
- Kurze Übungen von Anfang an
So macht guter Code Spaß
- .NET umfassend nutzen
- Objektorientierung zum Mitmachen
- Keine Angst vor Generics
- Geschickt eigene Datentypen erstellen
- Mit Fehlern und Ausnahmen umgehen
GUIs, Design Patterns, Apps
- Grafische Oberflächen mit XAML
- Das Entwurfsmuster MVVM verstehen
- Toast Notifications und Live Tiles
- Die eigene App im Store
Mitmachen und genießen
- Aufgaben mit Lösungen zu jedem Kapitel
- Alle Codebeispiele mit Syntaxhighlighting
- Erklärungen direkt am Code
- Viele gute Fragen mit Antworten
- Zeichnungen zu jedem Thema
... also, dann kann's ja losgehen!
Aus dem Inhalt:
- Operatoren, Schleifen, Datentypen
- Klassen und Vererbung
- Wichtige Entwurfsmuster
- GUI-Entwicklung mit XAML
- LINQ einsetzen
- async/await geschickt verwenden
- Windows Universal Apps
- 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 die Entwicklungsabteilung in einem österreichischen 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.
An den Leser ... 2
Schrödingers Büro ... 4
Schrödingers Werkstatt ... 6
Schrödingers Wohnzimmer ... 8
Impressum ... 10
Inhaltsverzeichnis ... 12
1. Ein guter Start ist der halbe Sieg: Compiler und Entwicklungsumgebungen ... 27
Compiler und Compiler ... 28
Hallo Schrödinger ... 31
Du brauchst eine IDE! ... 35
Visual Studio Community Edition ... 36
Der Spaß geht los! ... 37
Theorie und Praxis ... 40
Was gelernt! ... 42
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 ... 51
Ja oder nein? ... 56
Was gibt's zu essen? ... 57
Das ständige Hin und Her zwischen ja und nein ... 58
Gut kommentieren! ... 59
Kommentare im Einsatz ... 60
Andere für sich denken lassen ... 60
Compiler-Spiele ... 61
Viele neue Freunde ... 62
3. Alles unter Kontrolle: Bedingungen und Schleifen ... 63
Bedingungen ... 64
In der Kürze liegt die Würze ... 67
Durch Variationen bleibt es interessant ... 68
Der Herr der Fernbedienung ... 70
Ist noch Bier da? ... 72
Einer von vielen ... 73
Zwillinge ... 75
Ein Schuhschrank muss her ... 78
Arbeiten in den Tiefen des Schuhschranks -- von Kopf bis Fuß ... 79
Die ganze Welt ist Mathematik und aller guten Dinge sind drei vier ... 81
Schau's dir an mit dem Debugger ... 82
Solange du nicht fertig bist, weitermachen ... ... 83
Ich habe es mir anders überlegt ... 84
Oder mach doch weiter ... ... 85
Zurück zu den Schuhschränken ... 86
Wenn aus einem Schuhschrank eine Lagerhalle wird ... 87
Wiederholung, Wiederholung! ... 89
Code muss man auch lesen können ... 90
4. Sexy Unterwäsche -- von kleinen Teilen bis gar nichts: Strings, Characters und Nullable Types ... 93
Zeichenketten -- Strings ... 94
Kleine Teile -- einzelne Zeichen ... 95
Kleine und große Teile ... 96
Einfacher und schneller ... 97
Neuerungen in C# 6 bei der String-Formatierung ... 100
Etwas Besonderes sollte es sein ... 101
Verdrehte Welt ... 102
Sein oder nicht sein? ... 105
Nichts im Einsatz ... 107
Damit bei so viel null nichts verloren geht ... 108
5. Eine endliche Geschichte: Enumerationen ... 109
Rot -- Gelb -- Grün ... 110
Tageweise ... 112
Tell me why I don't like mondays ... ... 115
WoW-Völker ... 116
Auf wenige Sätze heruntergebrochen ... 118
6. Teile und herrsche: Methoden ... 119
Teilen statt Kopieren ... 120
Originale und überteuerte Kopien ... 123
Eins ist nicht genug ... 126
Ich rechne mit dir ... 127
Wenn sich nichts bewegt und alles statisch ist ... 128
Ich hätte gerne das Original! ... 128
Sommerschlussverkauf -- alles muss raus ... 129
Tauschgeschäfte, die nicht funktionieren ... 131
Ich will das ganz anders oder auch gar nicht -- Methoden überladen ... 132
Das Ganze noch einmal umgerührt ... 135
Ein knurrender Magen spornt bestimmt zu Höchstleistungen an ... 137
Eine kleine Zusammenfassung für dich ... 138
7. Klassengesellschaft: Objekte, Eigenschaften und Sichtbarkeiten ... 139
Mein Alter, meine Augenfarbe, mein Geburtsdatum ... 140
Eine Aufgabe für den Accessor ... 144
Ich sehe was, was du nicht siehst ... 145
Eigenschaften aufpoliert und bereit für die Bühne ... 146
Tanzen mit Elvis -- wenn keiner da ist, ist keiner da ... 148
Geheimniskrämerei und Kontrollfreak ... 149
Darf ich jetzt oder nicht? ... 150
Zusammen was zusammengehört! ... 154
Zusammen und doch getrennt ... 156
Laufen, kämpfen, sterben ... 158
Vom Leben und Sterben ... 159
Geburtenkontrolle ... 160
Mehrlingsgeburt ... 163
Partielle Klassen und Strukturen ... 164
Pfeile über Pfeile -- oder Vektoren, wie es mathematisch heißt ... 165
Meine partiellen Daten ... 166
Seltenes nochmal betrachtet ... 167
Gelernt ist gelernt! ... 170
8. Es wird Zeit für Übersicht! Namespaces ... 171
Eine Ordnung für die Klassen ... 172
Was ist denn nur in diesem Namespace vorhanden? ... 175
Vorhandene Systembausteine ... 177
Wo sind nur diese Bausteine? ... 179
Mathematik für Einsteiger ... 181
Nochmals finden, was scheinbar nicht da ist ... 182
Zum Mitnehmen ... 182
9. Erben ohne Sterben: Objektorientierte Programmierung ... 183
Geisterstunde ... 184
Schleimgeister sind spezielle Geister ... 186
Fünf vor zwölf ... 188
Geister fressen, Schleimgeister fressen, Kannibalen fressen -- alles muss man einzeln machen ... 194
Enterben ... 195
Geister haben viele Gestalten ... 195
Geister, die sich nicht an die Regeln halten ... 198
Gestaltwandler unter der Lupe ... 199
Nochmals drüber nachgedacht ... 200
Hier noch ein Merkzettel ... 204
10. Abstrakte Kunst: Abstrakte Klassen und Interfaces ... 205
Unverstandene Künstler ... 208
Das Meisterwerk nochmals betrachtet ... 210
Abstrakte Kunst am Prüftisch ... 211
Allgemein ist konkret genug ... 213
Fabrikarbeit ... 214
Alles unter einem Dach ... 215
Kaffee oder Tee? Oder doch lieber eine Cola? ... 216
Kaffeemaschine im Einsatz ... 218
Eine Cola bitte ... 220
Freundin vs. Chef -- Runde 1 ... 222
Bei perfekter Verwendung ... ... 223
Freundin vs. Chef -- Runde 2 ... 224
Freundin vs. Chef -- Runde 3 ... 226
Abstraktion und Interfaces auf einen Blick ... 227
11. Airbags können Leben retten: Exceptionhandling ... 229
Mach's stabil! ... 230
Einen Versuch war es wert ... 232
Nur unter bestimmten Umständen ... 235
Fehler über Fehler ... 236
Über das Klettern auf Bäume ... 240
Klettern auf nicht vorhandene Bäume -- NullReferenceException ... 240
Auf Sträucher klettern -- FormatException ... 241
Sträucher im Sägewerk -- ArgumentException ... 242
Bezahlung ohne Ware -- ArgumentNullException ... 242
Bewusste Fehler ... 243
Selbst definierte Fehler ... 244
Fehler in freier Wildbahn ... 245
Das Matruschka-Prinzip ... 246
Alles noch einmal aufgerollt ... 248
Dein Fehler-Cheat-Sheet ... 252
12. Ein ordentliches Ablagesystem muss her: Collections und Laufzeitkomplexität ... 253
Je größer der Schuhschrank, desto länger die Suche ... 254
Komplizierte Laufschuhe ... 255
Geschwindigkeitsprognosen ... 258
Es muss nicht immer gleich quadratisch sein ... 260
Geschwindigkeitseinschätzung und Buchstabensuppe ... 263
Selbstwachsende Schuhschränke ... 266
Eine Array-Liste ... 267
Ringboxen ... 268
Listige Arrays und ihre Eigenheiten ... 269
Listige Arrays und ihre Verwendung ... 269
The Need for Speed ... 270
Es wird konkreter ... 271
Sortieren bringt Geschwindigkeit -- SortedList ... 272
Listenreiche Arbeit ... 274
Es geht noch schneller! ... 276
Im Rausch der Geschwindigkeit ... 278
Dictionary-Initialisierung in C# 6 ... 280
Wörterbücher in der Anwendung ... oder was im Regelfall schiefgeht ... 281
Von Bäumen und Ästen ... 285
Ein Verwendungsbeispiel ... 286
Alles eindeutig -- das HashSet ... 287
Schnelles Arbeiten mit Sets ... 288
Das große Bild ... 290
Der große Test, das Geheimnis und die Verwunderung ... 293
Noch einmal durchleuchtet ... 298
Dein Merkzettel rund um die Collections aus Laufzeiten ... 303
13. Allgemein konkrete Implementierungen: Generizität ... 305
Konkrete Typen müssen nicht sein ... 306
Das große Ganze ... 307
Mülltrennung leicht gemacht ... 308
Der Nächste bitte ... 311
Allgemein, aber nicht für jeden! ... 313
Immer das Gleiche und doch etwas anderes ... 315
Fabrikarbeit ... 317
Aus allgemein wird konkret ... 318
Hier kommt nicht jeder Typ rein. ... 319
Ähnlich, aber nicht gleich! ... 320
Varianzen hin oder her ... 322
Varianzen in der Praxis ... 325
WoW im Simulator ... 328
Damit's auch hängen bleibt ... 330
14. Linke Typen, auf die man sich verlassen kann: LINQ ... 331
Linke Typen, auf die man sich verlassen kann ... 332
Shoppen in WoW ... 335
Gesund oder gut essen? ... 338
Listen zusammenführen ... 339
Fix geLINQt statt handverlesen ... 347
Merkzettel ... 350
15. Blumen für die Dame: Delegaten und Ereignisse ... 351
Ein Butler übernimmt die Arbeit ... 352
Im Strudel der Methoden ... 355
Die Butlerschule ... 358
Ereignisreiche Tage ... 361
Eine Runde für alle ... 364
Auf in die Bar! ... 365
Wiederholung, Wiederholung ... 369
Die delegierte Zusammenfassung ... 372
16. Der Standard ist nicht genug: Extension-Methoden und Lambda-Expressions ... 373
Extension-Methoden ... 374
Auf die Größe kommt es an ... 378
Erweiterungen nochmals durchschaut ... 380
Softwareentwicklung mit Lambdas ... 382
Lambda-Expressions auf Collections loslassen ... 385
Ein Ausritt auf Lamas ... 386
Filtern ... 386
Gruppieren ... 388
Verknüpfen ... 389
Gruppieren und Verknüpfen kombiniert ... 390
Left Join ... 391
VerLINQte LAMbdAS ... 393
Lamas im Schnelldurchlauf ... 396
17. Die Magie der Attribute: Arbeiten mit Attributen ... 397
Die Welt der Attribute ... 398
Die Magie erleben ... 400
Das Ablaufdatum-Attribut ... 402
Die Magie selbst erleben ... 403
Eine magische Reise in dein Selbst ... 404
In den Tiefen des Kaninchenbaus ... 407
Der Attribut-Meister erstellt eigene Attribute! ... 410
Meine Klasse, meine Zeichen ... 412
Selbstreflexion ... 414
Die Psychologie lehrt uns: Wiederholung ist wichtig! ... 418
18. Ich muss mal raus: Dateizugriff und Streams ... 419
Daten speichern ... 420
Rundherum oder direkt rein ... 421
Rein in die Dose, Deckel drauf und fertig ... 423
Deine Geheimnisse sind bei mir nicht sicher ... 424
Das Mysterium der Dateiendungen ... 427
Das Gleiche und doch etwas anders ... 430
Das Lexikon vom Erstellen, Lesen, Schreiben, Umbenennen ... 431
Ran an die Tastatur, rein in die Dateien ... 436
Von der Sandburg zum Wolkenkratzer ... 438
Fließbandarbeit ... 442
Wenn das Fließband nicht ganz richtig läuft ... 445
Dem Fließband vorgeschalteter Fleischwolf ... 449
Nutze die Attribut-Magie! ... 451
Das Formatter-Prinzip ... 452
X(M)L entspricht XXL ... 453
Die kleinste Größe -- JSON ... 455
Wir sind viele ... 457
Das World Wide Web. Unendliche Weiten ... 462
Deine Seite, meine Seite ... 464
Probe, Probe, Leseprobe ... 466
Punkt für Punkt für's Hirn ... 468
19. Sag doch einfach, wenn du fertig bist: Asynchrone und parallele Programmierung ... 469
Zum Beispiel ein Download-Programm ... 470
Asynchroner Start mit Ereignis bei Fertigstellung ... 472
Subjektive Geschwindigkeiten und Probleme mit dem Warten ... 474
Auf der Suche nach der absoluten Geschwindigkeit ... 477
Es geht auch einfacher! ... 480
Was so alles im Hintergrund laufen kann ... 485
Gemeinsam geht es schneller ... 487
Jetzt wird es etwas magisch ... 491
Wenn jeder mit anpackt, dann geht alles schneller ... 493
Rückzug bei Kriegsspielen ... 496
async/await/cancel ... 498
Unkoordinierte Koordination ... 500
Anders und doch gleich ... 505
Gemeinsam Kuchen backen ... 506
Wenn das Klo besetzt ist ... 511
Das Producer-Consumer-Problem ... 511
Dein Spickzettel ... 517
20. Nimm doch, was andere schon gemacht haben: Die Paketverwaltung NuGet ... 519
Bibliotheken für Code ... 520
Fremden Code aufspüren ... 523
Die Welt ist schon fertig ... 526
21. Die schönen Seiten des Lebens: Einführung in XAML ... 527
Oberflächenprogrammierung ... 528
Hinzufügen der Komponenten für die Universal Windows Platform Apps in Visual Studio ... 530
Diese X-Technologien ... 532
Tabellen über Tabellen ... 536
Hallo Universal App ... 539
Die App soll »Hallo« sagen ... 540
Schrödingers kreative Katze ... 544
Buttons und Text ausrichten ... 547
Von Tabellen, Listen und Parkplätzen ... 549
VariableSizedWrapGrid und RelativePanel -- zwei gute Teilnehmer ... 552
Die Mischung macht's! ... 554
Das gemischte Layout ... 555
Alles schön am Raster ausrichten ... 557
Das sieht doch schon aus wie eine Anwendung ... 559
Ein Layout für eine App ... 561
Auf in die (App)Bar ... 564
Die Ecken und Winkel in der Bar ... 565
Einfach und wirksam ... 566
Das ist alles eine Stilfrage ... 568
Von der Seite in die Anwendung ... 570
Do you speak English, Koreanisch oder so? Schrödinger, I do! ... 571
Die Welt der Sprachen ... 573
Honey, I do! ... 576
Oberflächenprogrammierung auf einen Blick ... 578
22. Models sind doch schön anzusehen: Das Model-View-ViewModel-Entwurfsmuster ... 579
Einführung in MVVM ... 580
Mein erstes eigenes Model ... 584
Datenbindung noch kürzer -- als Seitenressource ... 588
Eine Technik, sie alle zu binden! ... 589
Eine Eigenschaft für alle Infos ... 591
Wenn nur jeder wüsste, was er zu tun hätte ... 593
Los geht's! Notify-Everybody ... 596
Ein Laufsteg muss es sein! ... 599
Über Transvestiten und Bindungsprobleme ... 606
Über Bindungsprobleme und deren Lösungen ... 607
Alleine oder zu zweit? ... 608
Aus Klein mach Groß und zurück ... 609
Klein aber fein ... 610
Die Größe der Kaffeetasse ... 614
Auf mein Kommando ... 619
Kommandierende Butler ... 621
Dem Zufall das Kommando überlassen ... 625
MVVM Punkt für Punkt ... 630
23. Stereotyp Schönheit: Universal Platform Apps ... 631
Heute dreht sich alles um Apps ... 632
Universal Windows Platform Apps -- Planung ... 633
Ran an den Code -- die Wetter-App ... 638
Visuelle Zustände als einfache Lösung ... 644
Apps ohne Ende ... 647
Etwas mehr Komfort darf schon sein! ... 649
Viele tolle Sachen am Template10 ... 653
Navigation einfach gemacht ... 658
Navigation und App-Lebenszyklus ... 659
Einstellungen, fix und fertig ... 660
Bitte warten -- please hold the line ... 663
Menüführung ... 665
Deine Template10-Übung ... 666
Das ganze Layout auf einen Blick ... 670
24. Toast-Notifications: Der Einsatz von Toast-Notifications ... 671
Ich habe etwas Wichtiges zu sagen! ... 672
Das Betriebssystem wird es schon richten ... 672
Einfache Toast-Notifications ... 673
Templates verzögert anzeigen ... 675
Eigene Notification-Templates ... 676
Die Verwendung deines individuellen Templates ... 678
Das Feinste vom Feinen ... 679
Kleine Änderungen mit großer Wirkung ... 682
Minütlich grüßt die Notification ... 683
Deine Toast-Zusammenfassung ... 686
25. Live is Live: Die Verwendung von Live-Kacheln ... 687
Innovation Live-Kacheln ... 688
Klein, mittel, groß ... 688
Die Do's und Dont's ... 690
Live-Tiles mit XML definieren ... 691
Live-Kacheln mit C# erstellen ... 693
Gona Catch'em all ... 699
Deine Live-Zusammenfassung ... 702
26. Ich will alles rausholen: Datenzugriff über die Windows API ... 703
Dateizugriff nur mit Erlaubnis ... 704
Verhandlungstechnik 1: Dateiauswahl ... 707
Verhandlungstechnik 2: Ordner auswählen ... 708
Verhandlungstechnik 3: Anwendungsdaten speichern, ohne benutzergewählten Speicherort ... 708
Besser als Raumschiff Enterprise -- ein Logbuch ... 711
Energie! Die Oberfläche der App ... 712
Der Sourcecode ... 713
Das ist doch alles dasselbe ... 718
Deine Kurzliste mit den wichtigsten Infos ... 720
27. Funktioniert das wirklich? Unit-Testing ... 721
Das Problem: Testen kann lästig werden ... 722
Die Lösung: Unit-Tests -- Klassen, die Klassen testen ... 723
Das Testprojekt erstellen ... 726
Die Ausführung ist das A und O! ... 728
Spezielle Attribute ... 729
Unit-Tests sind nicht alles ... 729
Testgetriebene Softwareentwicklung -- oder wie du Autofahren lernst ... 730
Darfst du schon fahren? ... 731
Let's do it! ... 736
Dein Test-Merkzettel ... 737
28. Auf ins Kaufhaus! Das Publizieren im Windows Store ... 739
Registriere einen Account, und es kann losgehen! ... 740
So kommt dein Produkt in den Store ... 742
Die Zertifizierung startet! ... 744
Auf ein Wiedersehen! ... 748
Index ... 749
Erscheinungsdatum | 28.07.2016 |
---|---|
Reihe/Serie | Rheinwerk Computing |
Verlagsort | Bonn |
Sprache | deutsch |
Maße | 200 x 235 mm |
Gewicht | 1810 g |
Einbandart | kartoniert |
Themenwelt | Informatik ► Programmiersprachen / -werkzeuge ► C# |
Schlagworte | C# • C¿ • C¿ • C sharp (Programmiersprache); Einführung • C sharp (Programmiersprache); Handbuch/Lehrbuch • LINQ • .NET • Programmierung • Visual Studio • Windows 10 • Windows Universal Apps • WPF • XAML |
ISBN-10 | 3-8362-4093-9 / 3836240939 |
ISBN-13 | 978-3-8362-4093-2 / 9783836240932 |
Zustand | Neuware |
Haben Sie eine Frage zum Produkt? |
aus dem Bereich