Вопрос

Преамбула:Я время от времени использую PHP более 8 лет, но никогда не использовал фреймворк, только писал скрипты и дополнения.В основном я использовал генераторы кода, такие как CodeCharge Studio, или собственный код для приложений интрасети.Поскольку я хорошо разбираюсь в шаблонах проектирования, Zend-фреймворк Мне не кажется слишком сложным учиться.

Начиная с ZF:Я прочитал руководство QuickStart и задаюсь вопросом, что может помочь мне ускорить разработку базовых веб-приложений Zend.Насколько я понимаю, есть повторяющиеся задачи это занимает много времени.

Вопросы:Например, почти для каждого сайта, который я разрабатываю, должен быть процесс регистрации пользователей, и я не хочу изобретать велосипед и тратить неделю на формы входа/профиля.

1) Используете ли вы, Zend-разработчики, какие-то написанные вами прототипы для быстрого развертывания базового сайта?

2) Или уже доступны исходные коды сайта, на которых можно построить?

3) Есть ли какой-нибудь генератор приложений или дополнительный инструмент для страниц с сетками, записями и т. д.?

P.S.Я прекратил изучать EJB более 6 лет назад, потому что мне некому было задать подобные вопросы.ТИА!

Это было полезно?

Решение

1) Используют ли разработчики ZF какие -то прототипы для быстрого развертывания основного сайта?

Zend Framework еще слишком молод для компонентов в этой области, однако есть неофициальный канал PEAR.По состоянию на март 2009 года лидеры мнений, кажется, все еще обсуждают лучшие способы все организовать.Меня лично больше всего радует доменные инициативы поскольку они будут наиболее надежными.

2) Есть ли некоторые исходные коды сайта, которые будут созданы для уже доступных?

Лучшими источниками на данный момент являются блоги, сайты и репозитории лидеров мнений ZF.Вот несколько ссылок для начала:

3) Есть ли какой -нибудь генератор приложений или незначительный инструмент для страниц с сетками, записями и т. Д.?

Eсть scaffolding-generator как часть Zend_Tool планируется выпустить в ZF v1.8.В настоящее время он находится в инкубаторе, я попробовал его на прошлой неделе, и он работает, но в его текущем состоянии создано не так много компонентов.

На прошлой неделе я наконец-то нашел время собрать вместе источники (в том числе ленту вопросов Stack Overflow ZF).Я положил их под Тег Zend Framework в Google Reader и со временем будет совершенствовать источники корма.Если вы предпочитаете управлять ими самостоятельно, вот текущий OPML.

Удачи!-Мэтт

<?xml version="1.0" encoding="UTF-8"?>
<opml version="1.0">
    <head>
        <title>expertseries | Zend Framework | Google Reader</title>
    </head>
    <body>
        <outline title="Zend Framework" text="Zend Framework">
            <outline text="A.J. Brown" title="A.J. Brown" type="rss"
                xmlUrl="http://feeds.feedburner.com/ajbrowns_blog" htmlUrl="http://ajbrown.org/blog"/>
            <outline text="Armando Padilla" title="Armando Padilla"
                type="rss" xmlUrl="http://www.armando.ws/?feed=rss2" htmlUrl="http://www.armando.ws"/>
            <outline text="Benjamin Eberlei" title="Benjamin Eberlei"
                type="rss"
                xmlUrl="http://www.whitewashing.de/about/rss/all" htmlUrl="http://www.whitewashing.de"/>
            <outline text="Bradley Holt" title="Bradley Holt" type="rss"
                xmlUrl="http://bradley-holt.blogspot.com/feeds/posts/default" htmlUrl="http://bradley-holt.blogspot.com/"/>
            <outline text="Cal Evans" title="Cal Evans" type="rss"
                xmlUrl="http://blog.calevans.com/feed/" htmlUrl="http://blog.calevans.com"/>
            <outline text="Chris Hope" title="Chris Hope" type="rss"
                xmlUrl="http://feedproxy.google.com/ElectricToolboxBlog" htmlUrl="http://www.electrictoolbox.com"/>
            <outline text="Codecaine.co.za" title="Codecaine.co.za"
                type="rss" xmlUrl="http://www.codecaine.co.za/rss/" htmlUrl="http://www.codecaine.co.za/"/>
            <outline text="Douglas Brown" title="Douglas Brown"
                type="rss" xmlUrl="http://www.brownphp.com/feed/" htmlUrl="http://www.brownphp.com"/>
            <outline text="Federico Cargnelutti"
                title="Federico Cargnelutti" type="rss"
                xmlUrl="http://blog.fedecarg.com/feed/" htmlUrl="http://blog.fedecarg.com"/>
            <outline text="Jani Hartikainen" title="Jani Hartikainen"
                type="rss" xmlUrl="http://codeutopia.net/blog/feed/" htmlUrl="http://codeutopia.net/blog"/>
            <outline text="Juozas Kaziukėnas" title="Juozas Kaziukėnas"
                type="rss" xmlUrl="http://dev.juokaz.com/feed/rdf" htmlUrl="http://dev.juokaz.com"/>
            <outline text="Matthew Turland" title="Matthew Turland"
                type="rss" xmlUrl="http://ishouldbecoding.com/atom/1" htmlUrl="http://ishouldbecoding.com/"/>
            <outline text="Matthew Weier O'Phinney"
                title="Matthew Weier O'Phinney" type="rss"
                xmlUrl="http://weierophinney.net/matthew/feeds/index.rss2" htmlUrl="http://weierophinney.net/matthew/"/>
            <outline text="Michelangelo van Dam"
                title="Michelangelo van Dam" type="rss"
                xmlUrl="http://www.dragonbe.com/feeds/posts/default" htmlUrl="http://www.dragonbe.com/"/>
            <outline text="Mike Rötgers" title="Mike Rötgers" type="rss"
                xmlUrl="http://www.roetgers.org/feed/" htmlUrl="http://www.roetgers.org"/>
            <outline text="Nick Lo" title="Nick Lo" type="rss"
                xmlUrl="http://www.ingredients.com.au/nick/feed/" htmlUrl="http://www.ingredients.com.au/nick"/>
            <outline text="Pádraic Brady" title="Pádraic Brady"
                type="rss"
                xmlUrl="http://blog.astrumfutura.com/feeds/index.rss2" htmlUrl="http://blog.astrumfutura.com/"/>
            <outline text="Raphael Stolt" title="Raphael Stolt"
                type="rss"
                xmlUrl="http://raphaelstolt.blogspot.com/feeds/posts/default" htmlUrl="http://raphaelstolt.blogspot.com/"/>
            <outline text="Rob Allen" title="Rob Allen" type="rss"
                xmlUrl="http://akrabat.com/feed/" htmlUrl="http://akrabat.com"/>
            <outline text="Robert Basic" title="Robert Basic" type="rss"
                xmlUrl="http://feeds2.feedburner.com/robertbasic/blog/" htmlUrl="http://robertbasic.com/blog"/>
            <outline text="Stack Overflow ZF" title="Stack Overflow ZF"
                type="rss"
                xmlUrl="http://stackoverflow.com/feeds/tag/zend-framework" htmlUrl="http://stackoverflow.com/questions/tagged/zend-framework"/>
            <outline text="Thomas Weidner" title="Thomas Weidner"
                type="rss"
                xmlUrl="http://www.thomasweidner.com/flatpress/feed/rss2/" htmlUrl="http://www.thomasweidner.com/flatpress/"/>
            <outline text="Tom Graham" title="Tom Graham" type="rss"
                xmlUrl="http://www.noginn.com/feed/" htmlUrl="http://www.noginn.com"/>
            <outline text="Zend Dev Zone" title="Zend Dev Zone"
                type="rss"
                xmlUrl="http://feeds.feedburner.com/ZendDeveloperZone" htmlUrl="http://devzone.zend.com/"/>
        </outline>
    </body>
</opml>

Другие советы

В DevNotes от Akra есть отличное руководство по созданию примера приложения:

http://akrabat.com/zend-framework-tutorial/

Именно здесь я начал работать с ZF.

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

Хотя мне вообще нравятся бесплатные инструменты, я должен сказать, что использование Zend Studio IDE (на основе Eclipse) помогает работать быстрее (30-дневная бесплатная пробная версия).

Основные моменты (кроме отладчика/профилировщика):

  • он может генерировать скелет для приложений MVC
  • скелеты кода по умолчанию для базовых кирпичиков (контроллеров, представлений, моделей)

И последний по порядку но не по значимости-

  • автозаполнение для всех классов Zend (и вы можете, удерживая Ctrl, щелкнуть по именам классов, чтобы открыть их).Очень удобно, надо сказать.

Просто убедитесь, что у вас есть компьютер с большим объемом памяти!

Я сейчас нахожусь в вашей точной ситуации (только меньше лет с php: P)

В настоящее время я использую Zend FrameWork в действии в качестве образца, и, судя по тому, что я видел до сих пор, довольно легко повторно использовать структуру из старых работ.После того как вы настроили предпочтительные параметры и древовидную структуру, вы можете использовать их снова и снова.

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

Использование фреймворка означает, что вам не придется делать все эти утомительные повторяющиеся действия.

Насколько я понимаю, есть повторяющиеся задачи, которые занимают много времени.

Это правда, и, как вы сказали, почти на каждом веб-сайте есть процесс регистрации и тому подобное.Хотя я согласен, что реализация таких функций снова и снова может в некоторой степени повторяться, каждое приложение будет иметь свой собственный уникальный набор требований - это означает, что потребуется хотя бы небольшая работа по настройке, даже если вы повторно используете код из старый проект на базе ZF.Теперь мне предстоит ответить на ваши пронумерованные вопросы.

Вы, разработчики Zend, используете какие -то прототипы, которые вы написали, чтобы быстро развернуть базовый сайт?

Не совсем.Я бы не выбрал ZF для «базового» сайта и не стал бы использовать какую-либо структуру MVC.В настоящее время я предполагаю, что базовый сайт состоит из примерно 8–12 отдельных частей, без какой-либо особой функциональности и с ограниченными требованиями.Помните, что когда мы говорим «фреймворк», почти всегда происходит заметное снижение производительности в дополнение к любым ошибкам и проблемам, которые могут быть присущи этой инфраструктуре.«Прототипы», о которых вы говорите, будут находиться в классах, доступных в Zend Framework, например: Zend_Auth для создания полнофункциональной системы аутентификации примерно за 15 минут.

2) или есть некоторые исходные коды сайта, которые будут созданы для уже доступных?

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

3) Есть ли какой -нибудь генератор приложений или незначительный инструмент для страниц с сетками, записями и т. Д.?

Я не совсем понимаю, что вы имеете в виду, но если бы мне пришлось угадать, возможно, Zend Studio?

Есть хорошая немецкая книга, стартовое приложение можно найти в архиве на этом сайте и изучить код: http://www.zend-framework-buch.de/

У нас есть инструмент, который может помочь: nWire для PHP анализирует ваш код, помогает вам перемещаться по нему и визуально представляет компоненты и ассоциации.В конечном итоге вам понадобится прочитать код, и с nWire это станет намного проще.

Для начала вы можете прочитать "Изучите ZF2" книга.Он написан с помощью основных членов команды Zend Framework 2 (ZF2) и создателей курсов ZF2 и, вероятно, лучше всего подходит для получения хорошего понимания Zend Framework 2 и его функций.К книгам прилагается исходный код, который шаг за шагом знакомит вас с различными концепциями.Интересное чтение, которое становится лучше с каждой страницей.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top