Entwurfsmuster in Kotlin: Ein praktischer Leitfaden
Entwurfsmuster in Kotlin: Ein praktischer Leitfaden
Zusammenfassung:
Dieses Buch ist ein praktischer Leitfaden zur Anwendung klassischer und moderner Entwurfsmuster in der Sprache Kotlin. Im Gegensatz zu abstrakten Lehrbüchern wird jedes Muster durch die Brille realer Aufgaben betrachtet: von der Code-Organisation in Android-Apps bis zur Erstellung von Serverlösungen mit Ktor.
Das Buch beginnt mit den grundlegenden Prinzipien SOLID und GRASP und analysiert dann nacheinander die 23 GoF-Muster, die an die Kotlin-Idiome angepasst sind. Sie werden sehen, wie Sprachfunktionen wie sealed classes, data classes, extension functions und coroutines es ermöglichen, Muster eleganter und sicherer zu implementieren als in Java.
Was Sie lernen werden:
- Wie man die klassische Factory durch ein companion object mit dem Operator
invokeersetzt - Warum coroutines Observer und Mediator einfacher und effizienter machen
- Wie man sealed classes zur Implementierung von State und Visitor ohne Boilerplate verwendet
- Methoden zur Abhängigkeitsinjektion mit inline reified
- Muster für die Arbeit mit Coroutinen: Channel, Flow, SharedFlow
Für wen dieses Buch ist:
- Kotlin-Entwickler mit grundlegender Erfahrung, die die Architektur ihrer Projekte verbessern möchten
- Java-Programmierer, die zu Kotlin wechseln und nach den "richtigen" Redewendungen suchen
- Android-Entwickler, die sauberen, testbaren und skalierbaren Code schreiben möchten
- Studenten und Absolventen von Kursen, die verstehen möchten, wie man die Theorie in der Praxis anwendet
Jedes Kapitel enthält: eine Problemstellung, ein UML-Diagramm, eine schrittweise Implementierung in Kotlin, einen Vergleich mit Java-Äquivalenten sowie einen Abschnitt "Antipatterns" – typische Fehler und wie man sie vermeidet. Alle Beispiele sind mit Unit-Tests versehen und im GitHub-Repository verfügbar.
Am Ende des Buches werden Sie nicht nur die Namen der Muster gelernt haben – Sie werden lernen, in Kotlin zu denken, die richtigen Architekturentscheidungen zu treffen und Code zu schreiben, der leicht zu warten und weiterzuentwickeln ist. Dies ist eine Pflichtlektüre für alle, die von "einfach funktionierendem Code" zur professionellen Entwicklung übergehen möchten.