30
30

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

「取得」メソッドの命名では適切な動詞をチョイスしよう

Last updated at Posted at 2023-11-25

はじめに

ひとえに「取得」といっても、データベースからの取得、外部APIからの取得など、細かなニュアンスが異なる「取得」がある。
各パターンに応じて適切な動詞を用いた命名を行いプログラム保守性を高める。

結論

動詞 ニュアンス
get オブジェクトからprivateなフィールドの値を取り出す。
fetch 外部サービス(API等)へ通信してレスポンスを取得する。
retrieve データベースやストレージを検索しリスト等を取得する。(汎用的)
find データベースやストレージを検索し1件だけ存在するユニークデータを取得する。(限定的)
select 配列などのコレクションから条件にマッチするデータを取得する。

補足

  • なんでもかんでも雑にgetと命名するのは処理のヘビー具合が感じ取れないのでアンチパターン。アクセサ (getter / setter) やプロパティ以外では回避すべき。
  • selectはSQL文のSELECT文実行するだけの処理に使っても良い(現にそのような命名をするライブラリは多い)。ただしSELECT文以外の加工処理が含まれそうであればretrieveが無難。
  • searchは使わない。英単語としての目的語は場所を取る。プログラミングの文脈での使用に即するのはsearch forという表現になるが、冗長。そもそも「取得する」という意味合いが薄いので、代わりにretrieveを推奨。

参考

30
30
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
30
30

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?