Books & Videos

Table of Contents

  1. Chapter 1 Von null auf hundert: Scala kennenlernen

    1. Warum Scala?

    2. Scala installieren

    3. Weitere Informationen

    4. Eine Kostprobe Scala

    5. Ein Häppchen Nebenläufigkeit

    6. Zusammenfassung und Ausblick

  2. Chapter 2 Weniger tippen, mehr erreichen

    1. Zu diesem Kapitel

    2. Das Semikolon

    3. Variablen deklarieren

    4. Methoden deklarieren

    5. Inferenz

    6. Literale

    7. Tupel

    8. Option, Some und None: Wie man Nullwerte vermeidet

    9. Den Code in Dateien und Namensräume organisieren

    10. Typen und ihre Member importieren

    11. Abstrakte Typen und parametrisierte Typen

    12. Reservierte Wörter

    13. Zusammenfassung und Ausblick

  3. Chapter 3 Ein paar Grundlagen fehlen noch

    1. Operatoren

    2. Methoden ohne Klammern und Punkte

    3. Domainspezfische Sprachen

    4. Die if-Anweisung

    5. Die for-Comprehension

    6. Weitere Schleifenkonstrukte

    7. Bedingungsoperatoren

    8. Pattern-Matching

    9. Enumerationen

    10. Zusammenfassung und Ausblick

  4. Chapter 4 Traits

    1. Einführung in Traits

    2. Stapelbare Traits

    3. Traits konstruieren

    4. Zusammenfassung und Ausblick

  5. Chapter 5 Elementare objektorientierte Programmierung in Scala

    1. Klassen und Objekte

    2. Elternklassen

    3. Konstruktoren

    4. Verschachtelte Klassen

    5. Sichtbarkeitsregeln

    6. Zusammenfassung und Ausblick

  6. Chapter 6 Fortgeschrittene objektorientierte Programmierung in Scala

    1. Member von Klassen und Traits überschreiben

    2. Begleitobjekte

    3. Case-Klassen

    4. Gleichheit von Objekten

    5. Zusammenfassung und Ausblick

  7. Chapter 7 Das Objektsystem in Scala

    1. Das Predef-Objekt

    2. Klassen und Objekte: Was ist aus »static« geworden?

    3. Versiegelte Klassenhierarchien

    4. Die Typhierarchie von Scala

    5. Linearisierung der Objekthierarchie

    6. Zusammenfassung und Ausblick

  8. Chapter 8 Funktionale Programmierung in Scala

    1. Was ist funktionale Programmierung?

    2. Funktionale Programmierung in Scala

    3. Rekursion

    4. Tail-Calls und Tail-Call-Optimierung

    5. Funktionale Datenstrukturen

    6. Traversieren, abbilden, filtern, falten und reduzieren

    7. Pattern-Matching

    8. Partielle Funktionen

    9. Currying

    10. Implizite Definitionen

    11. Call-by-name, Call-by-value

    12. Verzögerte Initialisierung

    13. Zusammenfassung: Abstraktionen funktionaler Komponenten

  9. Chapter 9 Robuste, skalierbare Nebenläufigkeit mit Aktoren

    1. Das Problem des gemeinsamen synchronisierten Zustands

    2. Aktoren

    3. Aktoren in Scala

    4. Traditionelle Nebenläufigkeit in Scala: Threading und Events

    5. Zusammenfassung und Ausblick

  10. Chapter 10 Aufzucht und Pflege von XML

    1. XML lesen

    2. XML schreiben

    3. Zusammenfassung und Ausblick

  11. Chapter 11 Domainspezifische Sprachen

    1. Interne DSLs

    2. Externe DSLs mit Parserkombinatoren

    3. Zusammenfassung und Ausblick

  12. Chapter 12 Das Scala-Typsystem

    1. Reflexionen über Typen

    2. Parametrisierte Typen

    3. Varianz bei Vererbung

    4. Typgrenzen

    5. Null und Nothing

    6. Abstrakte Typen verstehen

    7. Pfadabhängige Typen

    8. Werttypen

    9. Self-Typ-Annotationen

    10. Strukturtyp

    11. Existenzielle Typen

    12. Infinite Datenstrukturen und Trägheit

    13. Zusammenfassung und Ausblick

  13. Chapter 13 Anwendungsdesign

    1. Annotationen

    2. Enumerationen oder Pattern-Matching verwenden

    3. Überlegungen zu Annotationen und Enumerationen

    4. Nullwerte oder Optionen verwenden

    5. Exceptions und ihre Alternativen

    6. Skalierbare Abstraktionen

    7. Effektives Trait-Design

    8. Entwurfsmuster

    9. Bessere Designs durch Design by Contract

    10. Zusammenfassung und Ausblick

  14. Chapter 14 Werkzeuge, Bibliotheken und Unterstützung durch IDEs

    1. Befehlszeilenwerkzeuge

    2. Build-Tools

    3. Integration mit Entwicklungsumgebungen

    4. Testgetriebene Entwicklung in Scala

    5. Andere bemerkenswerte Scala-Bibliotheken und -Werkzeuge

    6. Interoperabilität mit Java

    7. Interoperabilität mit Java-Bibliotheken

    8. Zusammenfassung und Ausblick

  1. Appendix Quellenverzeichnis

  2. Glossar

  3. Colophon