2010-11-06 2 views
5

Я создаю приложение с использованием Zend Framework, и мне интересно, слишком ли размыта эта структура или закончилась. Возможно, так я решаю проблему, но вижу, что использование этой структуры заставляет меня писать гораздо больше кода.Zend Framework стоит того?

Любые предложения или рекомендации?

+0

Что вы пытаетесь построить? – rwilliams

+0

система бронирования билетов, а также cms – snakeyyy

+0

проверить redmine. он имеет управление выпуском, svn-интеграцию и вики. вы можете получить «устанавливаемый» из битнами. –

ответ

3

Компоненты ZF отлично подходят для целенаправленных задач - например, Zend_Oauth, Zend_Pdf, Zend_Gdata и т. Д. Вы можете использовать их для достижения этих задач, даже если вы не основываете свое приложение на структуре ZF MVC, и я определенно советую вам это сделать (отказ от ответственности: я являюсь автором ZF, поэтому я могу быть субъективным) ,

Что касается большого ZF-материала, такого как Zend_Application, Zend_View и т. Д. - это зависит от вашей потребности и стиля. Для большого проекта, я бы сказал, пойти на это, это может показаться большим в начале, но в конечном итоге вы получите что-то примерно такое большое.

Если, с другой стороны, у вас есть меньший проект, вы можете подумать о том, чтобы использовать что-то простое или, возможно, нет рамки, но будьте осторожны, некоторые небольшие проекты растут быстрее, чем вы ожидаете.

Глядя на ваш комментарий, что вы строите систему билетов и CMS, похоже, что она достаточно большая для фреймворка. Попробуйте ZF попробовать. Начните с меньших, более простых примеров, используя хорошую книгу, и некоторые примеры кода могут быть очень полезными. Когда вы займетесь мышлением, вы обнаружите, что на самом деле это не так раздуто, как вы думали - у него просто больше функций и точек расширения, но вы обнаружите, что вам может понадобиться эта функциональность по дороге.

1

Это только предложения или советы, поэтому вставьте отказ от ответственности здесь.

Это не код, который вы должны написать, чтобы показать первую страницу в своем приложении. сколько всего кода будет в вашем приложении, когда вы закончите, и сколько его будет повторяться повсюду. и как легко это будет делать изменения/поддерживать.

С помощью zend вы больше написали код, чтобы позже писать меньше кода. в начале вы пишете контроллеры, модели, карты, виды, формы и макеты. довольно скоро вы будете добавлять действия к контроллерам, только писать формы и представления.

Стоимость написания модели не должна выделяться при первом просмотре, который вы пишете. выделять его над добавлениями, редактировать, удалять и просматривать списки, а также просматривать виды.

Я всего лишь 4 недели в рамке zend и поэтому считаю себя новичком в нем, но я программировал в течение 25 лет, а php - 6 лет, поэтому я вижу мудрость.

то, что вам может потребоваться, чтобы знать о том, что некоторые подпрограммы zend не работают в php 5.3, я больше об этом не знаю.

Редактировать: если вы ищете более простые фреймворки, попробуйте codeigniter (или kohana, который является вилкой кодифицирующего устройства). его проще использовать, потому что вы вручную добавляете файлы вместо запуска скрипта для создания контроллеров, моделей и т. д. (например, с symfony, zend, cakephp, yii и т. д.). большая часть работы, которую я сделал до сих пор, была связана с codeigniter.

3
  1. Вы уверены, что вам нужна ваша CMS? Будете ли вы писать хороший антиспамовый фильтр? Это не ZF заставляет вас писать больше кода. Возможно, вы выбрали неправильный путь.

Рассмотрите возможность интеграции своего приложения с некоторыми хорошими решениями, такими как Wordpress или Drupal.

  1. Zend Framework не раздувается. Фактически, это пример хорошей практики программирования. Он зрелый, и это означает, что он должен использоваться для зрелых проектов и зрелых программистов.

Altought ZF является лучшим здесь, вы можете попробовать Symfony, может быть, вы сочтете его более дружелюбным. Есть много предоставленных пользователем, готовых ресурсов.

0

Ну, если вы ожидаете быстрее развиваться с типизацией, Zend Framework может оказаться не лучшим выбором. Это определенно занимает больше времени, например, $this->getRouter()->getWhatever()->thenSmtMore()->theFuncNeeded(). Однако он хорошо структурирован и хорошо спроектирован. И то, что Саша Шуманн сказал на собрании QA, «вы тратите больше времени на чтение кода, чем написание его». Ну, это имеет смысл, когда вы так думаете, но в реальной жизни, особенно если вы работаете над кучей проектов с низким бюджетом, где вы можете немного пожертвовать качеством, инфраструктура приложений по умолчанию Zend Framework может замедлить вас. Но это не значит, что ZF раздувается ...

Что мне нравится в ZF, так как модули слабо связаны, у вас всегда есть возможность использовать его в качестве библиотеки или создать собственную рабочую среду на основе компонентов ZF. И это именно то, что я сделал, поэтому я потратил несколько месяцев на создание собственной структуры на основе компонентов ZF, и я могу быстрее создавать новые проекты, как мне нравится.

По моему опыту, когда вы используете какой-либо фреймворк, в том числе Ruby on Rails или Django, да, вы получаете скорость в начале, но когда вы сталкиваетесь с особыми случаями, становится сложнее найти правильное решение для этого случая. Решение состоит в том, чтобы потратить достаточно времени на освоение фреймворка, определенно получить поддержку сообщества, поскольку стандартная документация никогда не бывает достаточной и оптимизировать ваш рабочий процесс (например, создание библиотеки фрагментов кода с использованием передовой IDE, такой как netbeans или Zend Studio, с использованием кода шаблоны и т. д.)

Смежные вопросы