Как стать автором
Обновить

Комментарии 33

плюсанул бы, да кармой не запасся )
америку открыл. любое php приложение можно представить как MVC паттерн.
> ASP.NET, J2EE, Spring. Drupal, являясь системой управления контентом, довольно удачно перенял этот опыт
ага, перенял используя функции
MVC паттерн действительно такая штука малоконкретная, что под неё всё подряд подогнать можно при желании.
Кто у кого и что перенял тут не важно, потому что если уж какая-то технология реализует MVC намеренно, то это всегда специфическая модель со своими особенными средствами.
отлично разжевано, спасибо!
Drupal — система егоист, которая пожирает немало ресурсов, а базу данных вообще не жалеет.
В следующей версии может сократиться число запросов к базе:
drupal.ru/node/26334
Мы на нашем сайте уже давно сделали функцию node_load_range().
И соответсвующий хук nodeapi — load_range
Количество запросов закратилось значительно.
Все это сделано для 5ой версии, и расчитано, что в своих модулях вы будете использовать эту функция для загрузки нескольких нод.
Расскажи это Битриксу =)))
Да сколько же таких умников тут? Стоит только упомянуть Drupal, каждый считает своим долгом брякнуть про большое количество к базе.
Да их много, и уже 1000 раз объясняли, почему так и как с этим жить. Хватит холивары разводить, тема не про это.
>>Такой подход уже зарекомендовал себя в таких технологиях, как ASP.NET
хорошая шутка, только посмотрите когда он появился там — 2009-03-18 ASP.NET MVC RTM released
ru.wikipedia.org/wiki/ASP.NET_MVC_Framework
mvc зарекомендовала себя практически во всех языках, даже в VB умудрались его реализовать через пень-колоду.
статья очень спорная, холиварить не буду. отмечу только то, что главная идея mvc — разделяй и властвуй. чёткое разделение позволяет осуществлять принцип dry и лёгкий рефакторинг кода. но не обязательно делить только на m v c, сущностей можно использовать и больше и меньше.
Действительно ASP.NET MVC официально релизнулся только на днях, тем не менее всем .NET разработчикам хорошо известно, что оно там вообще-то с самого начала было и постоянно видоизменялось. Вот можно на rdsn почитать: www.rsdn.ru/article/patterns/modelviewpresenter.xml.
В целом с комментарием согласна.
Добрый вечер. Я новичок в общении с Друпалом. И все же умудрился ничего нового из вашей статьи не узнать. :( Девушка конечно получит свою долю плюсов, но все же — для кого написана статья?
Я считаю, возможно статья пригодится тем, кто уже освоился в Drupal, но не задумывался откуда ноги растут у его архитектуры. С точки зрения быстрого клепания сайтиков, знание MVC в принципе нафиг не сдалось.
А вообще изначально это маленький кусочек дипломной работы, в которой по ходу дела в целях просвещения пришлось разжевать, какое отношение MVC имеет к такой «несерьезной» вещи как Drupal :)
какова тема диплома, если не секрет?
Не секрет. Тема диплома — монетизация очередной говносоциалки :) В плане разработка всего этого дела (кучи модулей, если вкратце), хотя бизнес модель тоже рассматривается. Сама социалка пошла в качестве диплома у моего напарника по проекту, так вот. Кафедра на всё это смотрит, как баран на новые ворота, хех.
отлично. успехов.
Спасибо.
Если под «уже освоился в Drupal» понимается только верстка и интеграция шаблонов плюс модерирование контента, тогда да.
статья для тех, кто собирается перерости друпал ;)

кстати, здесь очень здорово написано «Так называемое DB API (набор функций для работы с базой данных) тоже является частью Модели.» и «Представлению относятся шаблоны страниц, написанные на движке PHPTemplate, CSS файлы стилей, Javascript, отвечающий за рюшечки в интерфейсе. „
только ради этого статью нужно прочесть раза со два, сейчас развелось куча “экспертов» которые пытаются ограничивать view до шаблона, а модель до collection и item (друпала тоже касается ;))
Такой подход уже зарекомендовал себя в таких технологиях, как ASP.NET, J2EE, Spring. Drupal, являясь системой управления контентом, довольно удачно перенял этот опыт, фактически предложив полноценную платформу для создания любого типа веб-сайтов на основе архитектуры MVC в самой распространенной на сегодня связке LAMP (Linux-Apache-MySQL-PHP).

Вы, конечно извините, но сравнивать перечиленные вещи и Друпал, некорректно, вто плане, что ему до тогоже j2EE,Spring и т.п. как до Китая, в сравнении с ними Друпал — мешанина и гадость.
И к чему была упомянута LAMP? достаточно было написать «на PHP».

Согласен с одним из предыдущих комментов, хорошо, что хоть не все смешано и раздлелили в общем-то, но ставить в достоинства довольно слабую реализацию MVC не стоит, имхо.
Друпал — система предыдущего поколения.
Забавно, предчувствовала, что упоминание всуе .NET и Java вызовет бурю негодований и эмоций :)
В статье Drupal с ними сравнивается? Нет. Эти технологии упоминаются в качестве самых известных примеров, в которых реализован паттерн MVC. Понятное дело, Drupal до них еще пилить и пилить по этой части.

Всё таки Drupal есть всего навсего платформа для построения social-oriented сайтов. Если его используют для чего-то более сложного, то имеет смысл задуматься — а не сменить ли технологию? Тем не менее при всей «несерьезности» Drupal, в нем вменяемо реализован MVC, в статье показано как.

По поводу того, что Drupal — система предыдущего поколения, уже столько сказано и пересказано, но пока никто так и не смог дать определение системы «нового поколения». Её банально еще нету. А пока Drupal в своей области справляется отличтно: «All content management systems suck, Drupal just happens to suck less.» — Boris Mann
Всё таки Drupal есть всего навсего платформа для построения social-oriented сайтов.

Вы ничего не путаете?
Так сложилось, что именно с этой целью была создана данная CMS. Со временем к ней появилось множество модулей-расширений, в том числе таких как Ubercart и eCommerce. Можно навешать на Друпал кучу всяких многофункциональных, к сожалению зачастую крайне тяжеловесных, рюшечек — это как раз благодаря удобной архитектуре.
Придирка, на самом деле, была к фразе «довольно удачно перенял этот опыт».
По поводу того, что Drupal — система предыдущего поколения, уже столько сказано и пересказано, но пока никто так и не смог дать определение системы «нового поколения»

Если говорить о ПХП, то тут все просто — PHP 5.2+, OOP в полном объеме. И это уже реализовно многими фреймврками, CMF и т.п.
ZF, Symfony, etc

«All content management systems suck, Drupal just happens to suck less.» — Boris Mann

Удел CMS — быстрые, «не серьезные» сайты, имхо.
Чорт. А я верил, что друпал — достойная альтернатива всем этим новомодным MVC
Drupal — Drupal
Joomla в инкарнации 1.5.х вся сотворена с использованием идеологии (какой нафиг паттерн, идеолгия) MVC.
Причем с точки зрения начинающего программера программирование под Joomla проще чем под Drupal
«Архитектура программного обеспечения» — эти слова обычно пугают большинство веб-разработчиков фрилансеров.

Вы только что дискредитировали в моих глазах всех фрилансеров О_о
Думаю, что таким не место на рынке
спасибо, полезно
никогда бы не стал делать _любой_ сайт на друпал. В друпал пародия на MVC.
Я всегда представлял себе MVC как layer'ную архитектуру, другими словами не должно быть доступа из слоя модели к слою представления минуя контроллер.

То, что описано в статье я бы назвал недо-MVC.
>не должно быть доступа из слоя модели к слою представления минуя контроллер
в статье такие манипуляции не описаны
Полностью с вами согласен. Хотя на диаграмму посоветовал бы посмотреть повнимательнее.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации