опрос был создан для того, чтобы показать, как «всё запущено» ;) потому что многие PHP разработчики считают себя «архитекторами», даже на зная, что такое UML. но смысл не в том, чтобы просто показать. я предлагаю с этим что-то делать.
ну тогда, я думаю, вам стоит выделить специалиста по БД который будет 2 раза в неделю тратить по 2 часа на синхронизацию. это гораздо надёжнее, и, возможно, дешевле, чем «скрестив пальцы» отадваться автоматическуму скрипту.
всегда синхронизирую вручную, да и делать это приходится всего несколько раз за проект. Если вам нужно делать это через день — у вас не production, а ещё один dev-сервер по-моему.
решение ничуть не усложняет структуру классов. изменяется лишь метод, ответсвенный за выдачу данных шаблонизатору. логика формирования списка и экземпляра данных у меня не простая, потому что у меня сплошные классы и объекты с хорошей инкапсуляцией, и нужно как-то повлиять на логику определенных методов.
пример кода:
на странице:
…
$this->add( Auctions::getFeatured(), new Parameters('Auction/Vehicle/VehicleProfile:mode=short') );
…
в классе VehicleProfile:
…
$params->useContext('VehicleProfile');
if( $params->get('mode') == 'short') $fieldsParam= new Parameters('Fields:Manufacturer,Model,Year');
я применяю ООП, так что у меня каждая сущность занимается «своими делами». да, у меня сотня (ато и больше) запросов на странице — не вижу в этом проблемы. поэтому мне и нужноданное решение.
вот поэтому си я ява серъёзнее воспринимается — потому что там профессиональный подход. Вернее «только» профессиональный. Большенство PHP программистов — «умельцы», способные быстренько «сварганить» всё что нужно прямо на коленках. Поэтому большие и серъёзные проекты делаются на java и .net. А ведь это не справедливо, верно?
пример кода:
на странице:
…
$this->add( Auctions::getFeatured(), new Parameters('Auction/Vehicle/VehicleProfile:mode=short') );
…
в классе VehicleProfile:
…
$params->useContext('VehicleProfile');
if( $params->get('mode') == 'short') $fieldsParam= new Parameters('Fields:Manufacturer,Model,Year');
$data->add( $this->Data_Fields( $fieldsParam ) );
«большие и серъёзные» есть, но их можно посчитать по пальцам.