英語独習法に出てきたSketch EngineのAPIクライアントをSpring Boot Starterライブラリとして書いた

Dev/Java/Spring Boot
Spring Boot
Spring AutoConfiguration
Sketch Engine
English

更新日時 : 2021/02/28 09:27
投稿日時 : 2021/02/28 09:27

概要

個人的に英語勉強をしていて、最近読んだ本である「英語独習法」(詳細略)でコーパスを学ぶためにSketch Engineというサービスが出てきた。書籍の中では、主に無料版のSkeLLが紹介されていた。
Sketch EngineではAPIが公開されていたので、自分の勉強に活かせないかとまずクライアントライブラリを書いてみた。
せっかくなので、久しぶりにSpring AutoConfigurationの仕組みを用いて、Spring Bootで使いやすいようにライブラリ化してみた。一応モジュール分けたので、Spring Boot使ってなくても使えるはず。。(実装はRestTemplate使ってるけども)

今回紹介する内容

  • モジュール構成
  • サンプルコード

モジュール構成

  • sketch-engine-client
    • API接続
  • sketch-engine-autoconfigure
    • Spring AutoConfigurationの仕組みを用いて自動でBean登録するライブラリ
  • spring-boot-starter-sketch-engine
    • クライアントライブラリ利用のための依存関係記述セット
    • 上手い表現ができていないが、公式のspring-boot-starter-webのように設定記載することで関連する依存関係を解決してくれる
  • sketch-engine-client-sample
    • 上記スターターを用いたサンプルコード

サンプルコード

https://github.com/vagivagi/sketch-engine-modules

今後

各モジュールとファイルの解説を徐々にやっていこうと思う。
Sketch Engine使って色々やってみたいことがあるので、そちらもできたら記事にする。

残課題

  • READMEの充実
    • サンプルの解説や使い方など
  • Maven Repositoryへのjarデプロイ
    • Maven Central出なくGitHubにできるっぽいので調べる
  • APIの各エンドポイントへの対応やパラメータの充実
    • 今は必要最小限
  • WebFlux対応