Pull to refresh

ZFCore — CMF на Zend Frameworkе

Zend Framework

Представляю на суд общественности наработку моего отдела — CMF система на базе Zend Framework'а…

Преследуемые цели


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

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


Фичи проекта


Что же включает данный полуфабрикат:

Система:
  • максимальное количество опций вынесено в application.ini
  • настраиваемый через конфигурационный файл ACL (глобальный и для каждого модуля)
  • настраиваемая через конфигурационный файл навигация (глобальный и для каждого модуля)
  • настраиваемые через конфигурационный файл роуты (глобальный и для каждого модуля)

Пользовательская часть:
  • пользователи — регистрация/авторизация/активация — переделка формы регистрации не будет занимать больше одного дня (экономия времени 16-24 чч)
  • статические страницы — останется лишь слегка изменить внешний дизайн (~4-8 чч)
  • навигация, карта сайта и sitemap.xml (~4-8 чч)

Администрирование:
  • приемлемый дизайн в едином стиле (~4-8 чч)
  • управление пользователями (~12-16 чч)
  • управление статическими страницами (включая аплоад картинок) (~12-16 чч)
  • управление почтовыми уведомлениями (~12-16 чч)

В процессе разработки
  • Модуль Feedback (ContactUs если так больше будет понятно) (~12-16 чч)
  • Модуль блог/форум — отличаются они лишь представлением (~24-32 чч)

Данный функционал присутствует практически в каждом проекте, как результат — экономия времени разработки составит около 96 часов (плюс тестирование и менеджмент).

Примочки


  • Практически всё можно настроить/подключить из application.ini
  • Модули пишутся как можно более независимыми
  • Миграции БД
  • Action_Scaffold — не кодогенератор, но тоже удобно
  • Админка построена с использованием DojoToolkit и Zend_Dojo_Form
  • Стараемся покрывать код тестами

Связка Action_Scaffold + Zend_Dojo_Form дает вполне юзабельную админку:





Насчет покрытия кода — думаю, статистика покрытия будет более наглядной…

Покрытие application


Покрытие library


Заморочки


  • Миграции пока захардкождены под мускуль, адаптеры в пути
  • Модели еще не разнесены по модулям
  • Директория application должна лежать выше нежели document_root сервера, а public и должен быть этим самым рутом
  • Инсталляции нет как таковой
  • Dojo build скрипт еще не написан, так что пока используем как есть

Попробовать на зуб


На демо можно взглянуть на нашем тестовом сервере: http://zfcore.head.php.nixsolutions.com/.

Скачать можно единым архивом с code-google — http://code.google.com/p/zfcore/downloads/list, или таки взять «свежак» с SVN репозитория:

svn checkout zfcore.googlecode.com/svn/trunk zfcore-read-only


Пожелания и замечания принимаются в багтрекере.

Другие Open Source проекты


Для любознательных, советую так же покопаться в коде следующих систем:


Думаю стоит так же упомянуть различные кодо-генераторы для проектов на базе Zend Framework'а (scaffold):

Tags:zend framework
Hubs: Zend Framework
Total votes 87: ↑71 and ↓16 +55
Views4.6K

Popular right now

UI-дизайнер
June 25, 202147,940 ₽Нетология
Python для работы с данными
June 25, 202131,500 ₽Нетология
Node.js: серверный JavaScript
June 28, 202127,000 ₽Loftschool
Основы вёрстки сайтов
June 28, 202120,000 ₽Loftschool
Веб-дизайнер
June 28, 202183,000 ₽GeekBrains

Top of the last 24 hours