Антипаттерн

Духовность™

Продвинутый новичок
Антипаттерн

Читая форум(ы), у меня сложилось впечатление, что парадигма MVC в PHP (как один из примеров) является своего рода культом личности, священной коровой, которую все обсуждают, все на неё чуть ли не молятся, но её смысл улавливается весьма смутно. Некоторые небогоугодные оппортунисты предлагают мыслить шире рамками трехуровневой архитектуры, навязанной непонятно кем и непонятно зачем, но их мало кто слушает.

Я периодически читаю темы, которые возникают на клубе по поводу проектирования, и у меня складывается мнение, что тут каждый говорит о своем. Каждый на своих волнах. Никто не понимает то, что пишет другой. Вот пример: http://phpclub.ru/talk/showthread.php?s=&threadid=118341&rand=7
http://phpclub.ru/talk/showthread.php?s=&postid=891679
И таких тем очень много. Бывает такое, что спрашиваешь одно, а тебе отвечают другое. Почему так происходит?

Моё мнение - люди

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

В результате возникает ситуация, в которой все сообщество погрязает в конформизме. Это антипаттерн, это паттерн ради паттерна. Не находите такое?
 

fixxxer

К.О.
Партнер клуба
любой паттерн становится антипаттерном при неправильном применении. + архитектура порождает применение паттернов а не наоборот.

mvc по своей сути gui-шный паттерн, и в вебе его все трактуют по своему, оттуда и.
 
Да какой смысл может быть. Сейчас, все что не MVC, не Ajax, не Web2.0 - калл. По моему мнению, так сложилось и так будет, потому что есть умный который напишет о MVC, а остальная толпа (я кстати тоже оказался в ней) подражает написанному, лишь бы не выглядеть на фоне умного идиотом. И навязывает это каждый сам себе.
Эта тема, наверное, создана из за моей последней темы. Я соглашаюсь с тем что у меня нет понимания всего этого, потому и бьюсь головой о стену третий год, хотя мог на говнокоде зарабатывать какие-то деньги. Я не оправдываюсь. Действительно, а почему спрашиваешь одно, а тебе отвечают другое. Причина либо у того кто отвечает и он уже не видит ничего кроме фанатической погони за MVC или у того кто спрашивает, т.к. нету понимания вовсе.
Мое мнение.
 

fixxxer

К.О.
Партнер клуба
У тебя действительно неверное понимание паттерна, но отвечали тебе тоже не особо по делу, да.

Такие вещи лучше изучать по литературе и грамотным реализациям, а не спрашивая на форуме.

Посмотри джавовский Spring ;) не сам код конечно, там опухнешь, а документацию по архитектуре. Не к тому, что надо делать ровно как там - а как пищу для размышлений, разумеется.
 

Бочонок

http://frontender.info
fixxxer может лучше к первоисточникам? GoF? Я на их книгу несколько раз натыкался в открытом доступе.
http://ru.wikipedia.org/wiki/Шаблоны_проектирования
http://en.wikipedia.org/wiki/Model%E2%80%93view%E2%80%93controller
 

baev

‹°°¬•
Команда форума
MVC стал стереотипом и шаблоном
— в переводе на русский «паттерн» — это и есть «шаблон, образец». Странно утверждать, что «масло вдруг стало масленым».

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

fixxxer

К.О.
Партнер клуба
> fixxxer может лучше к первоисточникам? GoF? Я на их книгу несколько раз натыкался в открытом доступе.

и где там написано об mvc? ;)
 

Бочонок

http://frontender.info
Там написано о шаблонах. Толково написано.
После прочтения этого безобразия мне, насколько я помню, было гораздо проще разбиратся с остальными.
 

craz

Нестандартное звание
MVC - не панацея просто от его использования больше плюсов, чем минусов
 

korchasa

LIMB infected
triumvirat
Это стандартная проблема для любого нового знания. Путь от карго-культа к пониманию "идеи".
А MVC разное бывает. Сервис отдающий xml (модель), php-скрипт (контроллер), rich js-код (view) это тоже MVC. Его идея не в том, что есть три класса, и вид дергает модель, а в самом разделении. Суть в том, чтобы отделить локальный процесс от бизнес свойств данных, которые используются во многих местах. Ну и особенности отображения этих данных, соответственно.
 

dimagolov

Новичок
так сложилось и так будет, потому что есть умный который напишет о MVC, а остальная толпа (я кстати тоже оказался в ней) подражает написанному, лишь бы не выглядеть на фоне умного идиотом
Curly-fingers, понимаешь, свято место пусто не бывает. Если бы твое мнение соответствовало действительности, то нашелся бы второй умный, который бы продвинул antiMVC в массы, и если бы этот antiMVC оказался лучше (удобнее), то и толпа бы побежала за ним. А раз подобного не наблюдается, то видимо, в MVC что-то есть :)
 

Alexandre

PHPПенсионер
Если бы твое мнение соответствовало действительности, то нашелся бы второй умный, который бы продвинул antiMVC в массы, и если бы этот antiMVC оказался лучше (удобнее), то и толпа бы побежала за ним. А раз подобного не наблюдается, то видимо, в MVC что-то есть
++
triumvirat
MVC не догма, а руководство к действию!

но, ты прав: я общался на собесевованиях, и каждый понимает MVC по своему.
 

С.

Продвинутый новичок
MVC именно догма в лучшем смысле этого слова (да, у слова "догма" есть полезные смыслы). Организовывать взаимодействие трех компонентов можно по-разному, но коверкать назначение и смысл самих компонентов -- еретизм чистой воды. Понятно, что народ путается из-за того, что слова "модель" и "контролер" не отражают никакой четкой специфики и чисто условно выбраны. Но и даже и со "view", которое вроде бы как однозначное, тоже умудряются запутаться. Шаблонизатор -- часть контролера, а шаблоны -- view.
 

ps2007

Новичок
Шаблонизатор -- часть контролера, а шаблоны -- view.
Шаблонизатор это не часть контроллера, а часть View.
Из Контроллера передаются в Вид только данные. Дело в том что Вид это не просто шаблон, это слой представления. Это может быть активный шаблон или шаблонизатор со своей логикой представления плюс шаблоны.
 

fixxxer

К.О.
Партнер клуба
нет никакого "шаблонизатора"
это котеров придумал
 

grigori

( ͡° ͜ʖ ͡°)
Команда форума
активных шаблонов тоже нет :)

-~{}~ 03.03.10 22:13:

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

и он не смог написать мне алгоритм с точки зрения данных
для него MVC будет просто странным синтаксисом, а никак не искусством проектирования
сначала надо опустошить чашку :)
 
Сверху