Boroda aka Hamster (fantaseour) wrote,
Boroda aka Hamster
fantaseour

  • Music:

PDO, Адаптеры, мосты

На сегодняшний день есть несколько хороших, стабильных и признанных наборов библиотек, которые хотелось бы использовать.
В первую очередь интересуют конечно Zend, eZ и Doctrine.


Все они для работы с БД используют PDO и другие драйверы, если PDO не дает возможности доступа к БД. Все они содержат "адаптеры" к PDO, для реализации фичей вроде quote_identifier, которых нет в интерфейсе PDO. Zend и Ez поверх адапетров имеет еще и построителей запросов, поверх которых имеется легкий persistance layer (на ORM это не тянет ИМХО). Доктрина поверх адаптеров строит полноценный ORM.

Хотелось бы придумать какой-то удобный механизм кооперации этих компонентов, -- ведь в самом низу у них общий драйвер PDO. Скорее всего использовать адаптер Zend для eZ или для Доктрины вряд ли понадобится. Нужно иметь возможность получить нужный адаптер, используя конфиг системы и, по возможности, не плодить лишних соединений с БД. Простейшее решение -- сделать фабрику, которая на основе конфига или DSN (Data Source Name) создаст адаптер нужного типа.

Наверное нужен будет еще скрипт, который будет при выкладывании на сервер брать из этих библиотек, только то, что нужно,-- используемые модули без тестов и документации.

В этой схеме имеем несколько вопросов
1. Нет ли у кого такого опыта?
2. Только Доктрина позволяет создать новый адаптер передав в конструктор качестве параметра PDO объект. Поэтому, возможно, платой за мост будет несколько соединений к Базе -- по одному от каждого фреймворка. Как бы промониторить количество соединений к Базе?
Tags: development, php
Subscribe

  • Так. Чуть не бросил дневник :)

    Ну вот, хотел не бросать и опять сюда не пишу :( Потому, что в будние дни сил нет писать, а в выходные вот то у меня ДР, то у пасынка. То просто…

  • 46

    Дня рожденья пост. Ну ничего, мы еще позажигаем :)

  • (no subject)

    Я очень люблю конференции. Они зажигают в разработчике свечечку, которую он потом бережно несет в себе через весь год! Когда-то давно, я с завистью…

  • Post a new comment

    Error

    default userpic

    Your reply will be screened

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 1 comment