[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: MVC
paul85
Всем привет!

При реализации своего фреймворка, по принципу MVC, совершенно не реализовал модели. То есть работа с БД происходит из контроллера.
Строго говоря, это и не MVC получилась. Существует ли какое-нибудь название моей модели, или это попросту УГ? +)
inpost
http://ru.wikipedia.org/wiki/Model-View-Controller
ТТУК.
Но я с этим не согласен.

_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
paul85
inpost, с чем именно? Чтобы вся бизнес-логика содержалась в моделях?

inpost
Там написано, что это ужасно плохо для MVC и форма считается ТУПОЙ. В моих проектах используется частично-похожая форма на твою и я считаю её более предпочтительной чем модели, и мне кажется, что именно модели вредят коду, а не их отсутствие.

_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
Игорь_Vasinsky
не боись, у меня та же беда.

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
kaww
Цитата (inpost @ 26.04.2013 - 02:53)
мне кажется, что именно модели вредят коду, а не их отсутствие.

Как так у вас получается что модель - это "самая ненужная" часть паттерна mvc. обычно когда приходится иметь дело с кодом в котором не реализовано никакой абстракции для работы с данными , стараюсь первым делом реализовать именно m из аббревиатуры
N0ob
Лично я использую MVC без буковки M smile.gif
ApuktaChehov
Дело в том, что очень часто работа модели(то, что можно было бы туда поместить по "правилам") заключается в нескольких строках кода. По этому особого смысла использовать ее нет. Но опять же необходимо шире смотреть на ситуацию:

1) Код который используется разными частями приложения должен быть независим, что бы его могли использовать любые части системы(проблема повторяемости кода). Модель в этом отношении хорошо себя зарекомендовала.
Например: вернуть число записей в БД. Если это нужно нескольким контроллерам? Дергать базу 55 раз, повторять код?

2) Если модель выполняет большую часть работы, это не только работа с БД, это могут быть так же сложные вычисления.

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

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

Лично я использовал и VC, и MVC, и HMVC, и HVC, и сейчас я так же держусь оптимальности. Когда надо - юзаю модель, когда не надо - не юзаю.

_____________
inpost
1) Код который используется разными частями приложения должен быть независим, что бы его могли использовать любые части системы(проблема повторяемости кода). Модель в этом отношении хорошо себя зарекомендовала.

Вот смотри, то, что ты называешь в этом случае моделью, в моей структуре - это компоненты-модульные, не модель. Можно функцию создать, можно класс, можно ещё дубовее: include или iframe.

2) Если модель выполняет большую часть работы, это не только работа с БД, это могут быть так же сложные вычисления.
Вот тут неожиданно эти строчки превращают контроллер в своего роутера, который обычно попросту не нужен. А так как он не нужен, то у нас уже получается отсутствие роутера-контроллера, и непосредственно модель обработки входящих данных.

"Лично я использовал и VC, и MVC, и HMVC, и HVC, и сейчас я так же держусь оптимальности. Когда надо - юзаю модель, когда не надо - не юзаю."
идеальная фраза и полностью с тобой согласен. Надо подстраиваться под конкретные задачи, если вдруг потребуется модель в архитектуре - добавить без проблем лишний инклюд и всё.

_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
DedMorozzz
моё имхо, крупные проекты должны использовать всё.
И модели и хэлперы и компоненты и контролеры и вьюху, в небольших - уже по сутуации.
Я не представляю, как крупный проект будет состоять из контролера и вьюхи тока.
Будет каша. Нечитабельная каша

_____________
Если не говорить пользователям, что Linux это "Сложно и страшно", то им совершенно всё равно, в чём не разбираться
paul85
Модель, как способ разделения SQL и PHP для усиления DRY. Если я все правильно понял, то полностью соглашусь с inpost.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.