Kapitel 6. Traits und Enums

Diese Arbeit wurde mithilfe von KI übersetzt. Wir freuen uns über dein Feedback und deine Kommentare: translation-feedback@oreilly.com

Da Traits und Enums grundlegende Bausteine für große Scala-Anwendungen sind, werden sie in diesem zweiten Kapitel über Domain Modeling behandelt.

Traits können verwendet werden, um granulare Verhaltenseinheiten zu definieren. Diese granularen Einheiten können dann zu größeren Komponenten kombiniert werden. Wie in Rezept 6.1 gezeigt, können sie in ihrer grundlegendsten Anwendung wie ein Vor-Java 8 interface verwendet werden, wobei der Hauptgrund für ihre Verwendung darin besteht, die Signaturen für abstrakte Methoden zu deklarieren, die erweiterte Klassen implementieren müssen.

Scala-Traits sind jedoch viel leistungsfähiger und flexibler. Du kannst sie verwenden, um zusätzlich zu den abstrakten Mitgliedern auch konkrete Methoden und Felder zu definieren. Klassen und Objekte können dann in mehreren Traits gemischt werden. Diese Funktionen werden in den Rezepten 6.2, 6.3 und 6.4 vorgestellt.

Eine kurze Demonstration dieses Ansatzes: Anstatt zu versuchen, alles, was ein Hund tun kann, in einer einzigen Dog Klasse zu definieren, kannst du in Scala Traits für kleinere Funktionseinheiten wie Schwanz, Beine, Augen, Ohren, Nase und Mund definieren. Diese kleineren Einheiten sind einfacher zu denken, zu erstellen, zu testen und zu verwenden, und sie können später zu einem vollständigen Hund kombiniert werden:

class Dog extends ...

Get Scala Kochbuch, 2. Auflage now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.