Применение метода: Заяц.Съесть(Морковка)
Вопрос был про одновременно, когда и заяц, и кролик едят одновременно одну и ту же морковку :) Я про параллельные вычисления и многозадачность говорю. Объекты начинают знать слишком много.
Простая задача скопировать таблицу из БД в файл. Есть объект Таблица, есть объект Файл. Кто этим занимается?
Должна ли таблица уметь записывать себя в файл? Нет, не должна. Файлов много: xml, json, html, text, cvs, serialize-array, ещё всё тоже самое запакованное в zip, rar, 7z... с паролем. А там ещё некоторые поля нужно сконвертировать, например, unixtime в нормальный datetime. И чего получается?
Файл->записать(таблица())
Таблица->сохранить(файл)
Всё не то, задача куда сложнее.
Нужно создавать некий записыватель таблицы в файл.
ЗаписывательТаблицыВФайл->записывай(таблица, файл) - это уже не отражение реального мира и, если файл ещё можно в разных форматах представить, то таблица с некоторыми сконвертированными полями - это уже выходит за рамки объектов.
Я не спорю, я как раз пытаюсь разобраться, может, есть способ лаконично решить эти задачи в ООП и я просто о нём не знаю.