в очередной раз с толкнулся с не совсем понятным для себя моментом
а именно:
имеем некий класс (набор методов) для обработки неких данных (получить, сохранить, ...)
по причине своей "лени" и не желанию запоминать ключи для assoc массива есть желание возвращать на запросы объекты, но не stdObject. а чет более формальное, тоесть свой класс для данных
и вот тут вопрос
тоесть у меня есть (будет, еще не написан) класс со статическими методами для получения данных, и класс объекты которого будут возвращаться предыдущим, классом,
логически это дело все относится к одному и тому же, но хотелось определиться разделять эти классы или слепить в одно целое, и почему?
больше интересует почему.
1. DlTA - 19 Февраля, 2013 - 15:49:49 - перейти к сообщению
2. NoPaper - 19 Февраля, 2013 - 18:36:51 - перейти к сообщению
DlTA пишет:
тоесть у меня есть (будет, еще не написан) класс со статическими методами для получения данных, и класс объекты которого будут возвращаться предыдущим, классом,
логически это дело все относится к одному и тому же, но хотелось определиться разделять эти классы или слепить в одно целое, и почему?
логически это дело все относится к одному и тому же, но хотелось определиться разделять эти классы или слепить в одно целое, и почему?
Зачем эти static? Думаю, я правильно понял:
PHP:
скопировать код в буфер обмена
скопировать код в буфер обмена
- $do = new ToDoSmth();
- $r1 = $do->Action('delete'); //"Result: delete"
- $r2 = $do->Action('create'); //"Result: create"
- class ToDoSmth{
- public function Action($param){
- //Что-то делаем
- //...
- //Возвращаем результат
- return new Result($param);
- }
- }
- class Result{
- private $resultate;
- public function __construct($in){
- $this->resultate = 'Result: '.$in;
- }
- public function Get(){
- return $this->resultate;
- }
- }
Если методы класса Result будут статическими, будет сохранен результат последней выполненной операции. Как предложенный мною вариант, возвращать класс result с хранимыми в нем данными. А вообще это извращение какое-то, лень, конечно, двигатель прогресса, но лучше лишний раз постараться, чем потом изобретать подобные 'костыли'.