回答編集履歴

1

編集

2018/02/26 18:12

投稿

mpyw
mpyw

スコア5223

test CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  - ファクトリクラス・コンフィグクラス・シングルトンクラス等の一部のユースケースを除き,一般的にオブジェクトは**イミュータブル**であるほうが望ましいとされるため,Setterはむしろ使わないほうがいい。この考えに則る場合は,プロパティに設定すべき内容はSetterではなくConstructorで渡すようにする。後からプロパティを変更したい場合は, `setXXX` の代わりに `withXXX` という命名を使って,返り値に変更を反映した新しいオブジェクトを返すようにする。
4
4
 
5
- - もしPHPにおいて,プロパティにJavaの`final`(Constructorでのみ代入を認めてそれ以降の変更は認めない)相当の制約を課すことが可能であるならGetterは必ずし必要とは言えないが,そのような機能はないため結局のところ多くの場合はGetterが必要になる。
5
+ - もしPHPにおいて,プロパティにJavaの`final`(Constructorでのみ代入を認めてそれ以降の変更は認めない)相当の制約を課すことが可能であるなら,`public final` で宣言すればGetterは無くて済むが,そのような機能はないため結局のところ多くの場合はGetterが必要になる。また,取得のたびにリアルタイムな値を使って再計算するような場合もGetterが必要。
6
6
 
7
7
 
8
8