Trivial Pursuit: jOOQ

jOOQ Trivia – das QUIZ: Wie gut kennst du dich mit jOOQ aus?

Lukas Eder

© Shutterstock / Frazao

Eine neue Ausgabe unserer beliebten Quiz-Reihe – diesmal steht euer Wissen zu jOOQ, das dabei hilft, SQL in Java zu schreiben, auf dem Prüfstand. Lukas Eder hat uns dabei geholfen, die passenden Fragen für Euch auszusuchen. Also: Wie gut kennt Ihr Euch mit jOOQ aus? Findet es heraus!

Kommt und stellt euer Wissen auf die Probe! Es ist Zeit für einen weiteren Teil unserer anhaltenden Quiz-Reihe – heute zum Thema jOOQ.

jOOQ ist eine leichtgewichtige Bibliothek für das Datenbank-Mapping in Java, die das Active Record Pattern implementiert.

Aus diesem Grund haben wir gemeinsam mit Lukas Eder, Gründer der DataGeekery GmbH, die für jOOQ verantwortlich zeichnet, ein Quiz erstellt, um euer Wissen über jOOQ zu testen.

Beantwortet die folgenden sieben Fragen und findet heraus, wie viel ihr über jOOQ wisst!

1.)Wie spricht man jOOQ aus?

a) Jock
b) Joke
c) Juke
d) J-O-O-Q

Antwort

c) Juke. Allerdings gibt es keinen Grund, warum dies die bevorzugte Aussprache sein sollte, abgesehen davon, dass diese Webseite dies sagt und Lukas es immer so ausspricht. Es gibt mittlerweile heftige Streits, wie es sie auch bei der Frage „Es-Queue-El“ oder „Sequel“ in Bezug auf SQL gibt. Wie spricht man eigentlich PostgreSQL aus? (Ganz nebenbei. Es wird „Sequel“ ausgesprochen. Definitiv.)

 

2. Wie lange existiert jOOQ bereits?

a) Brandneue Spitzentechnologie: seit 2018
b) Wie JDBC seit 1997
c) Ein Jahrzehnt, also seit 2008
d) Unlängst: 2013

Antwort

c) Ein Jahrzehnt: jOOQ gibt es seit 2008. Die Library ist jetzt fast 10 Jahre alt. Gegründet im Jahr 2008 trat sie 2009 zum ersten Mal in Erscheinung. 2013 war das Jahr, in dem jOOQ durch die doppelte Lizensierung zu einem erfolgreichen Unternehmen wurde.

 

3. Wie viele Committer hat jOOQ?

a) Hunderte
b) Im zweistelligen Bereich
c) 3
d) 1

Antwort

d.)1. Obwohl es über die Jahre einzelne Mitwirkende gegeben hat, gibt es bei jOOQ nur einen Hauptcommitter und das ist Lukas Eder.

 

4. Wie viele RDBMS unterstützt jOOQ?

a) 80
b) 25
c) 10
d) 10

Antwort

b) 25. Im Laufe der Jahre wurde die Unterstützung für viele Datenbankanbieter hinzugefügt. Version 3.11 unterstützt jetzt 25 RDBMS.

 

5. Wird jOOQ jemals MongoDB unterstützen?

a) Nein
b) Nein
c) Nein
d) Ja. War nur ein Scherz, nein.

Antwort

a) Nein; b) Nein; c) Nein; und d) Ja. War nur ein Scherz, nein.

 

6. Warum gehen jOOQs Record-Typen von Record1 bis Record22<T1, T2, ..., T22>?

a) Weil 8 (wie bei den Tuples von .NET) für SQL nicht genug sind
b) Weil Lukas 22 Jahre alt war, als er jOOQ erschaffen hat
c) Weil jOOQ 22 Jahre alt ist
d) Weil Tuples bei Scala auch 22 Attribute haben
e) Wegen Catch-22

Antwort

d) Weil Tuples bei Scala auch 22 Attribute haben. Ohne höhere Typen

(die eine zusätzliche Indirection auf deren generischen Typvariablen unterstützen, um beliebige Arity-Typvariablen zuzulassen) müssen APIs wie jOOQ irgendwann damit aufhören, zusätzliche Typvariablen hinzuzufügen. Alle Entscheidungen sind willkürlich. Die Anzahl 8 in .NET ist beliebig. Die Anzahl 16 in jOOλ ist beliebig. Die 2 in Map.Entry ist beliebig. Die 22 in Scala ist beliebig. Für die Interoperabilität von jOOQ mit Scala entschied man sich für jOOQ dafür, Scala hier zu imitieren, weshalb jOOQ die Typsicherheit auch für bis zu 22 Spalten unterstützt (größere Reihen werden immer noch unterstützt, aber die Typsicherheit geht verloren). Nun ist die eigentliche Frage: Warum hat sich Scala für 22 entschieden?

 

7. Aus wievielen Zeilen Code besteht die jOOQ Runtime?

a) 25.000
b) 80.000
c) 350.000
d) 2.000.000

Antwort

c) 350000. Das jOOQ API besteht aus Tonnen von Javadoc und vielen, sich wiederholenden Methoden/Typen wegen starker Überlastung und Tuple-Sicherheit für Record1 bis zu Record22<T1, T2, ...., T22>-Typen. Es gibt insgesamt 670 Schnittstellen, die größtenteils aus dem DSL API bestehen, sodass unter den 350.000 Zeilen Code nicht alles Code ist.

 

Ergebnisse

Also, wie habt ihr euch geschlagen? Hier geht es zur Auswertung:

0-2 richtige Antworten: Beim Thema jOOQ bist du noch grün hinter den Ohren.
3-4 richtige Antworten: Nicht schlecht, aber vielleicht könnte ein bisschen mehr Detailwissen nicht schaden.
5-6 richtige Antworten: Du kennst jOOQ wie deine Westentasche.
7 richtige Antworten: Du bist ein Meister in Sachen jOOQ.

Lust auf mehr? Dann teste doch dein Grundlagenwissen in Sachen Theia:

Theia Trivia – das QUIZ: Wie gut kennst du dich mit Theia aus?

Verwandte Themen:

Geschrieben von
Lukas Eder
Lukas Eder
Lukas Eder ist leidenschaftlicher Java- und SQL-Entwickler. Er ist Gründer und Leiter der Forschungs- und Entwicklungsabteilung der Data Geekery GmbH, dem Unternehmen hinter jOOQ - die einfachste Art, um SQL in Java zu schreiben.
Kommentare

Hinterlasse einen Kommentar

Hinterlasse den ersten Kommentar!

avatar
400
  Subscribe  
Benachrichtige mich zu: