🕶️

情報量が少ないライブラリを扱う際に意識したいこと

2022/04/12に公開

このようなケースは、案外多い

「情報量が少ないライブラリなんて、扱う機会が無いのですが・・・」
みたいに思っている方も多いかと思いますが、意外とこういうケースって多いです。
実際に、「プロジェクト予算の関係で有料のライブラリは使えないから、なんとか無料のもので頑張って欲しい」みたいな状況って結構あるんです。
話を聞くだけだと「公式のライブラリなんだから、公式ドキュメントがあるはずだし大丈夫でしょ」と思いがちですが、そこが落とし穴になります。

どんな時でも公式ドキュメントが助けてくれるわけではない

利用者数の多いメジャーなライブラリであれば、大抵は公式ドキュメントも充実しているので心配することはありません。
しかし、あまり認知されていないようなライブラリを利用する場合、以下のようなことがあります。

  • 日本語訳されていない(これはメジャーなライブラリでもよくある)
  • そもそもドキュメントの情報量が少ない
  • 利用者が少ないため、サンプルソースが上がっていない(CodeSandbox等)
  • 実装例が少なく、参考になる記事等が少ない

このような事態に陥った場合、どこから情報を仕入れていけば良いのか分からなくなってしまいがちです。
今回は実体験を元に、このような場合に持つべき意識的な話をメモがてら書いていこうと思います。

1. ライブラリ選定基準の見直し

これはそもそも論になってしまうのですが、まずは「本当にそのライブラリを使う必要があるのか?」という観点から考えていきます。
ライブラリには、同じ動きをしていても「メジャー」なものと「メジャーでない」ものに分かれます。
この基準としては様々ですが、Github上で以下の項目を見てみると良いかもしれません。

  • Star・・・SNSで例えると「いいね!」のようなもの
  • Releases・・・近日行われたリリース履歴(あまりに放置されていないか確認)
  • UsedBy・・・ライブラリの利用者

あくまで目安ですが、同じ動きをしているライブラリなのであれば、上記の値が大きい方を利用するのが吉かと思います。
利用者数に比例して情報量も増えるため、比較的調べやすく実装もスムーズになるでしょう。
何か不具合が発生した際の対応策も見つかりやすいので、運用・保守フェーズでも恩恵があります。

2. 外国語から逃げない

これはまあよくある話です。英語やら中国語やら、とにかく逃げちゃダメです。
このご時世、コピペするだけで翻訳が可能な時代ですから、愚直に頑張りましょう。

3. ソースコードを実際に動かしてみる

はい、これに尽きます。Github等からソースを落として、実際に動かしましょう。
公式ドキュメントも、実際のソースを元に執筆されていきます。ソースが正です。
正直このフェーズが一番大変ですが、ここを投げ出してしまう人にライブラリは扱いきれないと言っても過言ではないと思います。(自分が知らない言語である場合を除く)
ちなみに、自分でソースを探って動きを把握していくことで、以下の恩恵を受けれる気がしてます。

  • 他のライブラリにおいても、自分が知りたい処理がどこにあるのか「アタリ」がつくようになる
  • デバッグ力の向上
  • プログラム読解力の向上
  • ディレクトリ構成等の理解が深まる
    上記はライブラリを扱う以外にも大変役に立つことばかりなので、「一種の訓練」と思って頑張ってみてほしいです。

終わりに

開発をしていく中で、ライブラリを利用する機会というのはかなり増えてきていますよね。
今回ここに書いた内容はあくまで意識的な話ですが、意識を変えるだけで沼から抜け出せる場面というのは多くあると思っています。(実際に自分がそうでした)
「開発をスムーズに進めるために利用するライブラリのはずが、そのせいで開発がスムーズにいかない」なんてことが無くなるように、是非様々な角度から切り込みを入れてみてください。

Discussion