Kapitel 18. Offen für versiegelte Klassen

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

Unsere Systeme bestehen aus Typen und Operationen, Substantiven und Verben. In Java werden Substantive als Klassen und Schnittstellen ausgedrückt, Verben als Methoden; Kotlin fügt jedoch versiegelte Klassenhierarchien und eigenständige Funktionen hinzu. Was bringen sie mit sich?

Änderungen sind eine ständige Herausforderung bei der Entwicklung von Software. Je mehr Menschen unsere Software nutzen, desto mehr Dinge fallen ihnen ein, die sie mit ihr machen wollen. Um neue Anwendungsfälle zu unterstützen, müssen wir neue Funktionen hinzufügen, die mit bestehenden Datentypen arbeiten, und neue Datentypen, die mit bestehenden Funktionen arbeiten. Wenn unser Design gut auf die Art und Weise abgestimmt ist, wie sich die Software weiterentwickeln muss, können wir neue Funktionen hinzufügen, indem wir neuen Code hinzufügen und nur wenige, lokal begrenzte Änderungen an unserem bestehenden Code vornehmen. Wenn es nicht gut abgestimmt ist, müssen wir viele Funktionen ändern, wenn wir einen neuen Datentyp hinzufügen, oder viele Datentypen ändern, wenn wir eine Funktion hinzufügen müssen.

Dieses Spannungsverhältnis zwischen der Variabilität von Datentypen und Funktionen spüren wir am deutlichsten bei den Kernentitäten unseres Domänenmodells. Die Reiseroute des Reisenden ist zum Beispiel eine Kernentität unserer Travelator-Anwendung. ...

Get Von Java zu Kotlin 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.