Scala Tools - Language Server Protocol und Build Server Protocol - Metals und Bloop

Classroom Schulung | Deutsch | Anspruch

Schulungsdauer: 1 Tag

Ziele

Das Language Server Protocol(LSP) und das Build Server Protocol(BSP) bilden heute die Grundlage für die Integration von Programmiersprachen und Build-Systeme in IDEs und Editoren. Während das LSP abstrakte Funktionen wie die automatische Vervollständigung von Klassen- und Funktionsnamen oder Goto Definition anbietet, erfüllt das BSP eine ähnliche Funktion für Build- und Konfigurationstools. Will man also eine neue Programmiersprache bzw. ein neues Build System in eine neue, LSP bzw. BSP unterstützende, IDE integrieren, so muss man lediglich einen LSP Server für die entsprechende Programmiersprache oder einen BSP Server für das konkrete Build System schreiben. Editoren und IDEs wie zum Beispiel Vim, VS Code und IntelliJ agieren dabei als Clients für diese Server.

Im Falle von Scala ist Metals der wohl am weitesten verbreitete LSP Server. Metals ist außerdem ein BSP-Client, der Bloop als BSP-Server nutzt um die Kompilierung anzustoßen und die von diesem erhaltenen Compiler-Fehler dem Editor zur Verfügung zu stellen.

Am Ende des Kurses verstehen die Teilnehmer/innen, wie diese beiden Protokolle diversen Tools das Zusammenspiel beim Entwicklungprozess ermöglichen. Sie wissen, die Vorteile von Metals beim Editieren des Scala-Codes zu nutzen und können bloop von der Kommandozeile steuern. Außerdem lernen Sie, wie man den Build-Server bloop auch durch den sbt-Build-Server ersetzen kann.

Zielgruppe

Software-Entwickler/innen mit soliden Kenntnissen der Sprache Scala und der Scala-Standardbibliothek

Voraussetzungen

Kenntnisse der Inhalte des Kurses "Scala Language - Basics II" oder gleichwertige Kenntnisse

Agenda

  • LSP (Language Server Protocol)
  • LSP Clients and LSP Server
  • Metals and LSP powered Editors
  • BSP (Build Server Protocol)
  • BSP Clients and BSP Server
  • bloop and BSP powered Build-Clients
  • Replace bloop as Build Server with sbt

Ziele

Das Language Server Protocol(LSP) und das Build Server Protocol(BSP) bilden heute die Grundlage für die Integration von Programmiersprachen und Build-Systeme in IDEs und Editoren. Während das LSP abstrakte Funktionen wie die automatische Vervollständigung von Klassen- und Funktionsnamen oder Goto Definition anbietet, erfüllt das BSP eine ähnliche Funktion für Build- und Konfigurationstools. Will man also eine neue Programmiersprache bzw. ein neues Build System in eine neue, LSP bzw. BSP unterstützende, IDE integrieren, so muss man lediglich einen LSP Server für die entsprechende Programmiersprache oder einen BSP Server für das konkrete Build System schreiben. Editoren und IDEs wie zum Beispiel Vim, VS Code und IntelliJ agieren dabei als Clients für diese Server.

Im Falle von Scala ist Metals der wohl am weitesten verbreitete LSP Server. Metals ist außerdem ein BSP-Client, der Bloop als BSP-Server nutzt um die Kompilierung anzustoßen und die von diesem erhaltenen Compiler-Fehler dem Editor zur Verfügung zu stellen.

Am Ende des Kurses verstehen die Teilnehmer/innen, wie diese beiden Protokolle diversen Tools das Zusammenspiel beim Entwicklungprozess ermöglichen. Sie wissen, die Vorteile von Metals beim Editieren des Scala-Codes zu nutzen und können bloop von der Kommandozeile steuern. Außerdem lernen Sie, wie man den Build-Server bloop auch durch den sbt-Build-Server ersetzen kann.

Zielgruppe

Software-Entwickler/innen mit soliden Kenntnissen der Sprache Scala und der Scala-Standardbibliothek

Voraussetzungen

Kenntnisse der Inhalte des Kurses "Scala Language - Basics II" oder gleichwertige Kenntnisse

Agenda

  • LSP (Language Server Protocol)
  • LSP Clients and LSP Server
  • Metals and LSP powered Editors
  • BSP (Build Server Protocol)
  • BSP Clients and BSP Server
  • bloop and BSP powered Build-Clients
  • Replace bloop as Build Server with sbt

Dieser Lerninhalt wird in folgenden Lernplänen verwendet

Tags

Diese Seite weiterempfehlen