🪨

Quarkusのライブ情報からの収穫

2021/03/14に公開

Quarkusを自分でガイド見てこれまで使ってきたけれど、もう少し、他の人がどう使っているのかを知りたいという気持ちになった。
Twitterで時々見かけていた、リアルタイムではそれほど視聴者のいない(笑)、Quarkus Insightsを順に追っていってみよう、という試みを始めた。

まだEpisode 0と1しか見ていないが、それだけでもいくつか収穫があった。(Youtube Liveに慣れてなくてぐだぐだしているところも多いんだけど、徐々にこうやって出来上がっていくのだな、というのが見れて好感を持てた)

Quarkus Insights #0: Inception

https://www.youtube.com/watch?v=YKm8rVzLhNE

Quarkus Insights #1: Tests

https://www.youtube.com/watch?v=OCPFdpvL1Q0

Quarkusのワークショップ

セルフペースでの学習になるけれど、こんなのが紹介されていた。

Quarkus Workshop

https://quarkus.io/quarkus-workshops/super-heroes/

内容を見ると多分驚く。下の方までずらっっっっっとページが続いている。
ただ、これで間違いなくベースが整う。

困った時に見るページ

困った時ってどこ見たらいいんだっけ?なんて話が出ていた。

基本的にこのページの記載内容の通り。

Support When You Need It

https://quarkus.io/support/

メーリスがあるのは見落としていた。
早速購読してみたら、数日のところで、Red Hatの日本法人の方たちが中心となって有志で日本語翻訳をしたのでコミュニティに寄贈したい、と申し出ていたのを見かけた。
その投稿から2週間もしないうちに、次のページが公開された。これで日本でもユーザーが増える、かもしれない。

Quarkus - Supersonic Subatomic Java

https://ja.quarkus.io/

あとは、自分もQuarkusがもっと盛り上がったら面白い、と思っているところもあり、自分が回答できそうな質問が流れてきた時に、ちょっとだけ汗をかいて質問に回答してみた。
役に立てただろうか。わからないけれど。

その他、設定に困ったらどこ見る?という話の流れでこのページが紹介されていた。
すべての設定が載っていて、自分が使っている設定なども検索すれば必ず見つかる。ただ、全設定なので、表示までの速度が結構遅め。今後これ、どうにかしないとダメかもなあ。

Quarkus - All configuration options

https://quarkus.io/guides/all-config

その他拾いもの

話の中では当たり前のように何度もPanacheは出てきていた。
Hibernatesをより直感的に使える類のもので、今までは困っていなかったので使っていなかったのだけど、コミュニティ的に結構推しなんだなということがわかったので、自分も使ってみようかなと思った。
ちなみに、現状では制約でMultiple Persistance Unitsを使う場合、Panacheに対応させられるのは1つだけ(Named Persistance Unitに対応していないみたい)なので注意。

Quarkus - Simplified Hibernate ORM with Panache

https://quarkus.io/guides/hibernate-orm-panache

他に、ライブコーディング中に見かけたので興味深かったのはConstructor Injection。
ガイド的にはこのページ。こういう使い方もできるとなればテストは書きやすいかも。(エピソード内は#1の25:30頃とか)

Quarkus Dependency Injection

https://quarkus.io/blog/quarkus-dependency-injection/#simplified-constructor-injection

他には、SDKMANを使っていて、ああ、これ使っている人いるんだなあと思った。
複数バージョンのJavaを使いたい場合は確かにこれが欲しいかも。
Gradleが出てしばらくした時、Gradleの公式がSDKMANでのインストールを勧めていたのを思い出した。(当時は、必要性もわからないしなぜGradleインストールのためにさらにライブラリマネジャー的なものを入れないといけないのかと訝しって入れなかった)

Home - SDKMAN! the Software Development Kit Manager

https://sdkman.io/

最後はTestcontainers。Docker Containerが動かせる環境であることを前提に、テスト時にDBのコンテナをあげてDBを使ったテストを実現し、その後テストが終わったらそのコンテナを消すという代物。
まだ使ってはないのだけど、やってることが、確かに欲しいと思えるものだった。普段はリポジトリパターンで共通I/Fにした上でインメモリのDBを自分で実装して代替していたから、こういうの使った方がいいのかもしれない。

Postgres Module - Testcontainers

https://www.testcontainers.org/modules/databases/postgres/

というわけで割と学びのある感じだった。
そこそこの頻度で更新が続いているので、なかなか追いつけないのだけど、ぼちぼち見ながら学びを深めたい気持ち。

Discussion