2010-03-22 5 views

ответ

4

Это зависит от того, как вы разработали приложение.

За исключением ActiveRecord, ZF предоставляет реализации для трех из четырех Data Source Architectural patterns in PoEAA. Если объекты вашей модели очень тесно связаны с вашей структурой базы данных, то для вашего приложения могут быть достаточно компонентов ZF.

Если ваши объекты сопоставлены/объединены из нескольких таблиц, пользовательский DataMapper поверх классов ZF DB или полноценный ORM, например Doctine или Propel, может быть лучше подходит. Только вы можете это решить.

+0

Спасибо, ребята, что поделитесь своими знаниями и мнениями -DevD – user274383

1

Я бы рекомендовал:

  1. Doctrine 2.0 - кросс-платформенный, простота в использовании, хорошая производительность, хорошая документация, поддержка пространств имен, POWERFULL, может быть, это будет частью ZF 2,0
  2. Doctrine 1.2 - крест, платформа, простота в использовании, легко реализовать, полезные расширения (например, NestedSet, Taggable, Commentable), хорошая документация, работы с ZF заряжания, инструмент CLI, YAML, светильниками данных
+0

Doctrine 2.0 все еще находится в альфа-стадии – Gordon

2

полноценный ОРМ может также предоставляют некоторые дополнительные функции, которые используются ul для вас. Некоторым может понравиться DQL, как используется в Doctrine, другие, возможно, хотели бы избежать написания запросов вручную для извлечения объектов и, возможно, предпочли бы беглые интерфейсы, такие как API запросов ModelCriteria, в предстоящем Propel 1.5.

Таким образом, все зависит от ваших собственных потребностей, нет единого «лучшего решения», которое бы соответствовало всем проектам.

+0

Согласен. Лично мне нужны конкретные методы getter & setter, которые предлагает Propel. «Виртуальные» методы getter/setter Doctrine просто не соответствуют моему предпочитаемому стилю. Я думаю, это то, что я получаю для работы с Java-ребятами какое-то время;) –