たとえば、通常の使用法がオブジェクトの作成であるローカライズされた日付クラスがあるとします。
$d = new Date(mktime(), 'MM-DD-YYYY', array('locale' => 'es'));
では、新しいオブジェクトを常に明示的に作成するのではなく、次のようなものが必要だとしたらどうでしょうか。
<p>The date is <?php echo
Date::formatDate( mktime(), 'MM-DD-YYYY', array('locale'=>'es') );?>
</p>
私のformatDate
メソッドでは、コンストラクターを呼び出して日付オブジェクトを内部的に作成することをお勧めしますか、それともすべての内部メソッド呼び出しを完全に静的にする必要がありますか?
class Date {
function getLocalisedDate( $time, $format, $options ) {
$obj = Date::Date(
$time, $format, $options
); // invoke the constructor
return $obj->get();
}
};
私は多くのクラスを開発したことがありません.OO言語で一般的なパターンであるかどうか疑問に思っています.