Edited at

真偽値を返すメソッド名のつけ方の例

真偽値を返すメソッド名のつけ方の例です。

様々な意見があるので画一的な正解はありませんが、一定の基準にはなるでしょう。


はじめに

ここでは、メソッド名をあなた(=開発者)が自由につけられることを前提としています。

言語やライブラリ、フレームワークによる制約がある場合や、命名規則が定められている場合はそれに従いましょう。

記事中ではJavaやJavaScriptにおける例を示しますが、他の言語においてもおおむね当てはまるかと思います。


中身が空か確認するメソッド

中身が空かどうかを確認するメソッドの名前は、isEmptyとします。

たとえば、JavaのListインターフェースにはisEmptyメソッドがあります。

final List<String> list = List.of();

if (list.isEmpty()) {
// do something
}

このように、真偽値を返すメソッドの名前はis...とすることが多いです。

ただし、なんでもかんでもisをつければいいというわけではありません。


存在するか確認するメソッド

存在するかどうかを確認するメソッドの名前は、existsとします。

たとえば、JavaのFileクラスにはexistsメソッドがあります。

final File file = new File("./example.txt");

if (file.exists()) {
// do something
}

たまにisExistのような名前を見かけますが、existは動詞なので文法的におかしいです。


値を含むか確認するメソッド

値を含むかどうかを確認するメソッドの名前は、containsincludeshasなどとします。

たとえば、JavaのListインターフェースにはcontainsメソッドがあります。

final List<String> list = List.of("munieru_jp");

if (list.contains("munieru_jp")) {
// do something
}

また、JavaScriptのArrayオブジェクト(配列)にはincludesメソッドがあります。

const array = ['munieru_jp']

if (array.includes('munieru_jp')) {
// do something
}

また、JavaScriptのMapオブジェクトにはhasメソッドがあります。

const map = new Map([['munieru_jp', 'https://qiita.com/munieru_jp']])

if (map.has('munieru_jp')) {
// do something
}


~できるか確認するメソッド

~できるかどうかを確認するメソッドの名前は、can...とします。

たとえば、JavaのFileクラスにはcanReadメソッドがあります。

final File file = new File("./example.txt");

if (file.canRead()) {
// do something
}


参考リンク