Das Serverframework Ktor

Termin:

KW 23, Montag 05. - Mittwoch 07.06.2024

Das Framework Ktor basiert auf Coroutinen und erlaubt es, asynchrone Server und Clients zu erstellen. Hier werden die typischen Einsatzgebiete vorgestellt: Dynamische Website bzw. Web Appplikation, Restful Backend (API) und chatartige Anwendungen mit WebSockets.

Die Serverseite steht im Mittelpunkt dieses Kurses, doch wird auch die Gegenseite entwickelt, sowohl mit der Ktor eigenen Clientbibliothek als auch über andere Optionen wie den Netzwerkclient ab Java 11 (von Kotlin aus nutzbar).

Inhalt

Einleitung

  • Anwendungsbereiche

  • Verschiedene Engines

  • Vergleich zu JakartaEE und Spring (Boot)

  • Projekterzeugung

  • Konfiguration mit Code oder Konfigurationsdateien

  • Überblick über Plugins

  • Loggen und Testen

  • Deploymentoptionen

Webanwendungen

  • Statische Website

  • Konfiguration von Pfaden

  • Request und Response Objekte

  • Cookies, Session Handling

  • Templatesprachen: FreeMarker, Thymeleaf, Velocity

  • Dynamische Anwendungen

  • Die HTML und CSS DSL von Kotlin

  • Varianten für Client: Browser, Postman, Curl, Java 11, Ktor Client

  • Persistenzschicht mit Exposed

Rest API-Entwicklung

  • Vergleich mit JAX-RS

  • Erste Bespiele mit Text

  • JSON Datenaustausch, kotlinx.serialization

  • OpenAPI Generierung und Bereitstellung

  • Ausführliches Beispiel mit Get, Post, Put, Delete

  • Authentication und Authorization

  • Implementierung von HATEOAS

  • Ausblick: GraphQL als Alternative

WebSockets

  • Einsatzmöglichkeiten

  • Konfiguration

  • Zunächst: Echo-Server

  • Client: Postman oder Ktor Client

  • Frametypen

  • Connection Handling

  • Chat Beispiel

  • Zielgruppe

    Es richtet sich an routinierte Kotlin-Entwickler, die serverseitig mit Kotlin entwickeln möchten.

  • Voraussetzungen

    Routinierte Kenntnisse in Kotlin, Basiserfahrung mit Webentwicklung.

  • Dauer

    3 Tage.

  • Preis

    € 1.750 zzgl. MwSt.