PHP-проект с отличным дизайном ООП для целей изучения

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

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

Поэтому я решил поискать несколько проектов, выполненных более опытными программистами ООП, которые Я мог бы учиться. Я ищу PHP веб-приложение, желательно с архитектурным шаблоном MVC. Также я не против, если у него анемичная модель (которую обычно считают антипаттерном, но в приложениях с большими объемами данных я Я часто вынужден использовать анемичные модели).

Большое спасибо.

РЕДАКТИРОВАТЬ: Я не ищу рамки, но для полного применения. Обычно фреймворки не имеют ничего общего с архитектурой модели.

8
задан Tomik 31 August 2010 в 21:10
поделиться

3 ответа

Magento Commerce имеет сложные многоуровневые модели (www.magentocommerce.com), из которых вы можете почерпнуть один или два приема.

Но мой (личный) опыт работы с Magento был разочаровывающим: я работал с ним примерно в версии 0.8-1.1, и он оказался перепроектированным и плохо документированным. Попытка выяснить, как это на самом деле работает, была сложной: в вашем редакторе открывались тонны файлов, большинство из которых назывались Abstract.php. Надеюсь, с тех пор ситуация значительно улучшилась.

1
ответ дан 5 December 2019 в 22:15
поделиться

Я настоятельно рекомендую серию CodeIgniter с нуля на Nettuts+.

http://net.tutsplus.com/tutorials/php/codeigniter-from-scratch-profiling-benchmarking-hooks/

РЕДАКТИРОВАТЬ: @Galen

Это неверно. CodeIgniter поддерживает PHP 5.3.0, начиная с версии 1.7.2.

0
ответ дан 5 December 2019 в 22:15
поделиться

Если вы ищете "отличный ООП-дизайн", вы, вероятно, заглядываете не в тот угол. . PHP не очень силен в своих шаблонах ООП. Если ваше обучение и ситуация позволяют, я рекомендую вместо этого изучить проект Java.

0
ответ дан 5 December 2019 в 22:15
поделиться
Другие вопросы по тегам:

Похожие вопросы: