Scala Tools - scalafix, scalafmt und mdoc
Classroom Schulung | Deutsch | Anspruch
Schulungsdauer: 2 Tage
Ziele
scalafix ist ein Code Linter (Code-Prüfer) für Scala, der zusätzlich zum Compiler bestimmte Code-Regeln durchsetzen und die Compilierung abbrechen kann. Außerdem ist scalafix ein Refactoring-Tool, mit dem sich Scala-Quellcode auch nach definierten Regeln umschreiben lässt. So kann man scalafix z.B. verwenden, um den Code einer älteren Scala-Version in Code einer neueren Scala-Version umzustellen.
scalafmt ist ein Code-Formatierer, der sicherstellen kann, dass der gesamte Quellcode gewissen (konfigurierbaren) Formatierungsregeln entspricht. Z.B. lässt sich damit eine einheitliche Quellcode-Formatierung für ein ganzes Projekt durchsetzen.
Mit mdoc ist es möglich, den in einen Text (z.B. Markdown-Text) eingebetteten Scala-Code einer Compilerprüfung zu unterziehen. Dies kann für Dokumentationen oder Präsentationen nützlich sein, die Scala-Textschnipsel enthalten. Alle drei Tools basieren auf der Analyse des AST (Abstract Syntax Tree) mit Scalameta, die sich mit SemanticDB auch persistent speichern lässt.
Am Ende des Kurses haben die Teilnehmer/innen ein Grundverständnis von Scalameta und SemanticDB. Sie wissen, wie man syntaktische und semantische Regelm im Code mit Scalafix durchsetzen kann. Die Erstellung von scalafix-Regeln ist ein weiterer Gegenstand dieses Kurses. Außerdem erlernen die Teilnehmer/innen die Code-Formatierung mit scalafmt und das Erstellen compilierter Dokumentation mit mdoc.
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
Scalameta und SemanticDB
- Scalameta
- SemanticDB
Scalafix
- Installation
- Configuration
- Syntactic Rules
- Semantic Rules
- Using built-in Rules
- Write your own Rules
Scalafmt
- Installation
- Configuration
- Usage of scalafmt
mdoc
- sbt Project Setup for mdoc
- Compiled Code embedded within Text
- Invocation from sbt
- Invocation from CLI
Ziele
scalafix ist ein Code Linter (Code-Prüfer) für Scala, der zusätzlich zum Compiler bestimmte Code-Regeln durchsetzen und die Compilierung abbrechen kann. Außerdem ist scalafix ein Refactoring-Tool, mit dem sich Scala-Quellcode auch nach definierten Regeln umschreiben lässt. So kann man scalafix z.B. verwenden, um den Code einer älteren Scala-Version in Code einer neueren Scala-Version umzustellen.
scalafmt ist ein Code-Formatierer, der sicherstellen kann, dass der gesamte Quellcode gewissen (konfigurierbaren) Formatierungsregeln entspricht. Z.B. lässt sich damit eine einheitliche Quellcode-Formatierung für ein ganzes Projekt durchsetzen.
Mit mdoc ist es möglich, den in einen Text (z.B. Markdown-Text) eingebetteten Scala-Code einer Compilerprüfung zu unterziehen. Dies kann für Dokumentationen oder Präsentationen nützlich sein, die Scala-Textschnipsel enthalten. Alle drei Tools basieren auf der Analyse des AST (Abstract Syntax Tree) mit Scalameta, die sich mit SemanticDB auch persistent speichern lässt.
Am Ende des Kurses haben die Teilnehmer/innen ein Grundverständnis von Scalameta und SemanticDB. Sie wissen, wie man syntaktische und semantische Regelm im Code mit Scalafix durchsetzen kann. Die Erstellung von scalafix-Regeln ist ein weiterer Gegenstand dieses Kurses. Außerdem erlernen die Teilnehmer/innen die Code-Formatierung mit scalafmt und das Erstellen compilierter Dokumentation mit mdoc.
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
Scalameta und SemanticDB
- Scalameta
- SemanticDB
Scalafix
- Installation
- Configuration
- Syntactic Rules
- Semantic Rules
- Using built-in Rules
- Write your own Rules
Scalafmt
- Installation
- Configuration
- Usage of scalafmt
mdoc
- sbt Project Setup for mdoc
- Compiled Code embedded within Text
- Invocation from sbt
- Invocation from CLI