以下のようにホスト名(a.hoge.com)をDNSに問い合わせ、IPアドレスの一覧を取得し、内部のプロパティに配列としてセットするメソッドがあるとします。
public function setHoge($hostName)
{
$lists = $this->_getHostIPs($hostName); // DNSからIPアドレスを取得
if (!count($lists)) {
return FALSE; // 一覧が見つからない場合はFALSE
}
$this->servers = $lists; // serversプロパティにセット
return TRUE; // TRUEを返す
}
返り値として、一覧を取得できればTRUEを、そうでなければFALSEを返すメソッドなのですが、適切なメソッド名が思い浮かびません。
直感的に分かりやすいメソッド名がありましたら教えて下さい。
よろしくお願いします。
戻りが TRUE / FALSE なメソッドので
もしクラス名が DNS を表す(もしくは包含する)ようなクラス名だったら、
isRegisterd($hostname) とか、hasRecord($hostname) 。
もしクラス名が DNS とまるで関係ないようなクラス名だったら、
isRegisterdInDNS($hostname) とか、hasRecordInDNS($hostname) 。
# isExist() は、何となくしっくりこない
DNS に問い合わせているんだよ、ということをメソッド名でアピールしたいのなら、
もしクラス名が DNS を表す(もしくは包含する)ようなクラス名だったら、
query($hostname) 。
もしクラス名が DNS とまるで関係ないようなクラス名だったら、
queryDNS($hostname) 。
わかりやすいのがよいのなら、ローマ字をつかって setIchiran とか、
英語の一部をつかって set AdList とかではどうでしょうか。
回答有り難うございます。
参考にさせて頂きます。
戻りが TRUE / FALSE なメソッドので
もしクラス名が DNS を表す(もしくは包含する)ようなクラス名だったら、
isRegisterd($hostname) とか、hasRecord($hostname) 。
もしクラス名が DNS とまるで関係ないようなクラス名だったら、
isRegisterdInDNS($hostname) とか、hasRecordInDNS($hostname) 。
# isExist() は、何となくしっくりこない
DNS に問い合わせているんだよ、ということをメソッド名でアピールしたいのなら、
もしクラス名が DNS を表す(もしくは包含する)ようなクラス名だったら、
query($hostname) 。
もしクラス名が DNS とまるで関係ないようなクラス名だったら、
queryDNS($hostname) 。
クラス名にDNSは含めないので、has~がしっくりきそうです。
参考になりました。回答どうも有り難うございます!
boolean を返すメソッドということは、おそらく
$bool = $obj->setHoge($hostName)
if($bool){
// 見つかったときの処理
}else{
// 見つからなかったときの処理
}
のような処理をされると想像できますが、であれば
そのメソッドは IP アドレスを取得する役割だけを持たせて
getIPAddressList とでもしておき、返却されたリストの中身があるかどうかで判断するのも一案です。
public function getIPAddressList($hostName) { return $this->_getHostIPs($hostName); } $lists = $obj->getIPAddressList($hostName); if (count($lists)) { $this->servers = $lists; // serversプロパティにセット }
機能を分割するということですね、なるほど。
回答有り難うございます。
クラス名にDNSは含めないので、has~がしっくりきそうです。
2013/12/26 07:28:29参考になりました。回答どうも有り難うございます!