ゲッターとセッターのコードレイアウト
質問
ゲッターとセッターがたくさんあるクラスを書いていますが、次のことについて人々がどう思っているのか疑問に思っていました。
通常の方法は、次のようなコードです:
public function setChangeSort($changeSort)
{
self::$changeSort = $changeSort;
}
public function getChangeSort()
{
return self::$changeSort;
}
次のことについてあなたの意見はどうですか:
public function setChangeSort($changeSort) { self::$changeSort = $changeSort; }
public function getChangeSort() { return self::$changeSort; }
それはそれが行われるべき方法なので、私はそれを元の方法で問題なく実行します。私のクラスオン関数では、その機能が本当に明らかな多くのスペースを占有しているようです。
事前に感謝します。
解決
1行の条件付きブロックは、一貫性があり、明白で直感的であれば問題ありませんが、慎重にスペースを配置することをお勧めします。
他のヒント
「1行」を選択します変化。ただし、値を設定して取得するだけの場合は、のみ。 nullまたは他の検証のチェックを追加する場合、または取得または設定以外の操作を行う場合、コードを読みやすくするために最初の長いバリエーションを使用します。
私は通常、他の方法と同じ方法で1行の方法を脅します。読みやすく保守しやすいという意味であれば、ソースコードをN行より長くしてもかまいません。
また、次のドキュメントをチェックアウトすることをお勧めします http://framework.zend.com/manual/en/coding-standard。 html 私見は、これまでに利用可能な最高のPHPコーディング標準リファレンスです。
PHP5のマジックゲッター/セッターは、多数のゲッター/セッターを処理するときに本当に役立つと思います。
http:// fr .php.net / manual / en / language.oop5.overloading.php#language.oop5.overloading.members
そして例。
<?php
class A {
private $properties = array();
public function __set($key, $value) {
if (is_array($value)) {
$this->$key = $value;
} else {
$this->properties[$key] = $value;
}
}
public function __get($key) {
if (array_key_exists($key, $this->properties)) {
return $this->properties[$key];
}
return null;
}
}
?>