Slick 2.0 will Anhängern funktionaler Programmierung helfen

Im zweite Major Release der Bibliothek für die Programmiersprache Scala soll das Paradigma des Functional Relational Mapping durch Abstraktion die Anbindung relationaler Datenbanken erleichtern.

In Pocket speichern vorlesen Druckansicht 2 Kommentare lesen
Lesezeit: 2 Min.
Von
  • Julia Schmidt

Seit 2012 bietet Typesafe das Scala Language Integrated Connection Kit (Slick) nun schon an. Scala-Entwicklern haben so eine Möglichkeit, in Datenbanken hinterlegte Daten wie bei der In-Memory-Verwendung mit Scala-Klassen und Collections abzufragen und zu bearbeiten. Eine neue Treiberarchitektur in der aktuellen Slick-Version 2.0 soll die Palette der verwendbaren Datenbanken um Varianten erweitern, die nicht mit SQL oder Java Database Connectivity arbeiten.

Darüber hinaus steht etwa ein Codegenerator zur Verfügung, der ausgehend vom Datenbankschema den Quelltext erstellt, der für die Arbeit mit Slick nötig ist. Ein Scheduling-Mechanismus sorgt dafür, dass sich mit einer einzelnen Anfrage nun auch mehrere Datenbanken gleichzeitig abfragen lassen und Änderungen an der API sollen die Syntax an die der Scala-Collections anpassen. Außerdem machen die Entwickler auf das neue Activator-Template aufmerksam, das dabei helfen soll, einen guten Einstieg in Slicks Functional Relational Mapping zu bekommen.

Letzteres soll Mapping direkt in Scala ermöglichen und die übermäßige Komplexität für Anhänger funktionaler Programmierung beim Einbinden relationaler Datenbanken durch Abstraktion umgehen. Zu den Vorteilen gegenüber objektrelationaler Abbildung zählen die Entwickler eine effektivere Kommunikation mit der Datenbank, Typsicherheit beim Schreiben von Datenbankanfragen und ein modulares Modell zum Aufbau von Abfragen.

Da es einige Kompatibilitätsbrüche zu Version 1.0 der Bibliothek gibt, sei ein Blick in den Migration Guide empfohlen. Slick steht unter der BSD-Lizenz und lässt sich über die Projektseite und GitHub beziehen. Weitere Details zu Änderungen lassen sich den Release Notes entnehmen. (jul)