Я давно использую PHP-пользователя, когда речь заходит о веб-приложениях, и я очень люблю его. Тем не менее, у меня есть один полу-большой проект, обслуживание/расширяемость которого достигло конца жизненного цикла. Я взвешивал разные фреймворки PHP (когда проект не возникал), так как это способ пойти на этот проект, и я пришел к выводу, что опция ebst будет делать это с помощью Zend Framework.
- Symfony казался сложным (мне не нравится настраивать модель базы данных как
- CakePHP казался мутным
- Igniter Мне понравилось сначала, но тогда мне показалось, что это больше похоже на Zend с меньшими возможностями и без Zend.
- Zend Мне нравится система, в которой я могу использовать только то, что мне нравится, и не привязана к конкретной структуре каталогов, и, конечно же, Zend стоит за ней. Производительность - это то, что потенциально беспокоит меня.
Теперь, после этого небольшого обоснования выбора Zend, есть несколько вещей, которые я вижу в качестве разрыва сделки при выборе рамки.
- Я не использовал ORM в прошлом, потому что я более чем удобен для написания SQL напрямую, поэтому мне все еще нужно убедиться, что вы используете ORM
- Не слишком большая абстракция происходит от кишок
- Гибкая структура каталогов
Пока этот проект будет написан заново, я также могу написать его в Python/Django, так как я хорошо знаком с Python, но не с Django. Итак, я хотел бы знать, есть ли кто-то, кто работал с платформами Zend Framework и Django, и может ли он выделить несколько ключевых различий?
Я также должен сказать, что этот проект выполнен как стандартный проект сайта/администратора. То есть, это в основном два сайта в одном. Один для интерфейсов и пользователей, другой для администрирования данных в бэкэнд. Я должен и буду строить бэкэнд самостоятельно, некоторые методы строительства будут прохладными, но полные автоматические строительные леса так же хороши, как ничего в этом случае.
Я по-прежнему не совсем уверен, как один из них подходит для создания в основном двух приложений в структуре каталогов, что должно быть, одного приложения. Вы просто делаете два отдельных приложения и полагаетесь на схему URL-адресов оттуда, чтобы отделить их? www.example.com и все /* - одно приложение, а www.example.com/admin/* - второе приложение.
Извините за длинный вопрос (ы), но, как вы можете видеть - все в значительной степени связано с одной проблемой - мне нужно начать проект заново, он уже установил базу данных + данные, которые я могу переделать, но хотел бы сохранить это вид работы минимум.
Хорошо, спасибо всем - похоже, я попытаюсь реализовать этот материал с Zend, дает мне большую гибкость из пакета (я делал тесты с обоими), и мы посмотрим, как это происходит.