Иногда я сталкиваюсь с несколькими методами в классе, которые требуют одинаковых данных (например, объект запроса).Как правило, существует один открытый метод с общим именем, таким как parseReport()
, который, в свою очередь, делегирует обработку нескольким частным методам и, наконец, возвращает готовый продукт:
public function parseReport( queryObject ) {
queryObject = correctDatesAndTimes( queryObject );
queryObject = sortByCusomter( queryObject );
queryObject = buildHierarchy( queryObject );
return queryObject;
}
private function correctDatesAndTimes( queryObject ) {
// do some stuff
return queryObject;
}
private function sortByCusomter( queryObject ) {
// do some stuff
return queryObject;
}
private function buildHierarchy( queryObject ) {
// do some stuff
return queryObject;
}
Так что мой вопрос, должен ли мой queryObject
быть свойством класса, на которое будут ссылаться все мои методы, а не передавать его в качестве аргумента методу при каждом его вызове?