Форум программистов, компьютерный форум, киберфорум
PHP: ООП
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.72/50: Рейтинг темы: голосов - 50, средняя оценка - 4.72
 Аватар для Dizel
0 / 0 / 0
Регистрация: 20.03.2012
Сообщений: 9

С чего лучше начать изучать MVC

20.03.2012, 05:31. Показов 10863. Ответов 59
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Подскажите с чего лучше всего начать изучать MVC, делимся литературой ссылками и так далее
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
20.03.2012, 05:31
Ответы с готовыми решениями:

С чего начать лучше? P.S. расскажите про Попова
Всем здравствуйте! Решил я начать изучать PHP, книг много, всякой всячины ещё больше. 1) Может для более быстрого продвижения...

Решил начать изучать графику. Подскажите с чего начать
Решил начать изучать графику в паскале. Подскажите с чего начать. Отличается ли графика Турбо паскаля и Паскаля абц?

Решил начать изучать 1С.С чего начать, что скачать?
Решил начать изучать 1С.С чего начать, что скачать?Какую среду, учебник, что для начала попробовать написать.мб у вас есть серия...

59
 Аватар для Alex_pac
1302 / 708 / 107
Регистрация: 25.05.2011
Сообщений: 2,158
Записей в блоге: 51
23.03.2012, 10:26
Студворк — интернет-сервис помощи студентам
шалонизатор это View то есть представление.

данные View получает из модели.

а контролеер определяет какая страница запрошена и, получая данные из модели, отправляет их в View , то есть в шаблонизатор.

вот и вся логика.
0
163 / 163 / 9
Регистрация: 08.01.2011
Сообщений: 850
23.03.2012, 10:28
запрос -> контроллер -> модель -> контроллер -> вид.

Только контроллер определяет, куда и какие данные идут.
0
508 / 358 / 13
Регистрация: 12.03.2012
Сообщений: 1,896
23.03.2012, 10:58
запрос -> контроллер -> модель -> контроллер -> вид.
Схема не плоская. Не хватает модель -> вид.
0
163 / 163 / 9
Регистрация: 08.01.2011
Сообщений: 850
23.03.2012, 11:05
Цитата Сообщение от OnYourLips Посмотреть сообщение
Схема не плоская. Не хватает модель -> вид.
Нет, модель -> вид нельзя, это противоречит MVC.
0
508 / 358 / 13
Регистрация: 12.03.2012
Сообщений: 1,896
23.03.2012, 11:51
KoIIIeY, с тобой не согласна википедия и популярные фреймворки.
0
163 / 163 / 9
Регистрация: 08.01.2011
Сообщений: 850
23.03.2012, 12:43
Разве?

Цитирую вики:

В оригинальной концепции была описана сама идея и роль каждого из элементов модели, представления и контроллера. Но связи между ними были описаны без конкретизации. Кроме того, различали две основные модификации:
Пассивная модель — модель не имеет никаких способов воздействовать на представление или контроллер, и используется ими в качестве источника данных для отображения. Все изменения модели отслеживаются контроллером и он же отвечает за перерисовку представления, если это необходимо. Такая модель чаще используется в структурном программировании, так как в этом случае модель представляет просто структуру данных, без методов их обрабатывающих.
Активная модель — модель оповещает представление о том, что в ней произошли изменения, а представления, которые заинтересованы в оповещении, подписываются на эти сообщения. Это позволяет сохранить независимость модели как от контроллера так и от представления.
0
508 / 358 / 13
Регистрация: 12.03.2012
Сообщений: 1,896
23.03.2012, 13:00
KoIIIeY, ну тут обычная пассивная модель, только модель - не просто структура, а полноценный объект с методами.

Пример:
{{ book.author.name }}
0
163 / 163 / 9
Регистрация: 08.01.2011
Сообщений: 850
23.03.2012, 13:31
Само собой модель это объект, в современном понимании это почти всегда.
Но все равно не надо давать модели доступ в вид.
0
508 / 358 / 13
Регистрация: 12.03.2012
Сообщений: 1,896
23.03.2012, 13:45
KoIIIeY, мы друг друга не поняли.
Я говорил не про доступ модели вид, а про доступ вида в модель(под стрелочкой я имел ввиду поток данных).
0
163 / 163 / 9
Регистрация: 08.01.2011
Сообщений: 850
23.03.2012, 13:48
Цитата Сообщение от OnYourLips Посмотреть сообщение
KoIIIeY, мы друг друга не поняли.
Я говорил не про доступ модели вид, а про доступ вида в модель(под стрелочкой я имел ввиду поток данных).
ок
Но все равно, исключительно через хелпер
0
35 / 35 / 7
Регистрация: 27.03.2011
Сообщений: 146
23.03.2012, 13:50
Ни вид, ни модель понятия не имеет о друг друге.
0
508 / 358 / 13
Регистрация: 12.03.2012
Сообщений: 1,896
23.03.2012, 14:29
Ни вид, ни модель понятия не имеет о друг друге.
с тобой не согласна википедия и популярные фреймворки.

Но все равно, исключительно через хелпер
Какой хелпер? Вид имеет прямой доступ к модели. Посмотри наконец картинки в википедии(статья MVC) или посмотри на фреймворки. Код из Django я привел.
0
 Аватар для Alex_pac
1302 / 708 / 107
Регистрация: 25.05.2011
Сообщений: 2,158
Записей в блоге: 51
23.03.2012, 15:27
Цитата Сообщение от OnYourLips Посмотреть сообщение
Ни вид, ни модель понятия не имеет о друг друге.
с тобой не согласна википедия и популярные фреймворки.
как раз таки действительно не имеет понятия. ибо контроллер определяет какие данные должны отправится в представление для отображения. И получается совершенно не важно откуда достал данные контроллер из модели, или сам сгенерировал. это не имеет значения.
Модель и представление между собой не имеют связи.

А то что на практике получается что Шаблон представления в точности повторяет логическую структуру данных получаемых из модели, так это чистое совпадение, обусловленное простотой передачи данных в Представление без большой степени обработки.
0
508 / 358 / 13
Регистрация: 12.03.2012
Сообщений: 1,896
23.03.2012, 15:53
Модель и представление между собой не имеют связи.
Вот тут вид делает запрос у объекта book, получая автора, поле которого и отображает: {{ book.author.name }}

И еще раз: картинка на википедии.
0
35 / 35 / 7
Регистрация: 27.03.2011
Сообщений: 146
23.03.2012, 16:34
Контроллер передает в вид данные о авторе, пример из Kohana:

PHP
1
2
3
4
5
6
7
8
9
public function action_index()
{
// Тут можно заполнить $data данными, полученными из модели
    $data = array(
                  'name' => 'Васька', 
                  'age' => 25
    );
    $this->response->body(View::factory('welcome', $data)); 
}
Во вьюсе
PHP
1
<h2>Привет!</h2> Меня зовут, <?php echo $name; ?>. Мне <?php echo $age; ?> лет.
( http://kohanaframework.su/starting/view_1 )
0
163 / 163 / 9
Регистрация: 08.01.2011
Сообщений: 850
23.03.2012, 16:50
gephaest, поддерживаю. То же самое в Zend и Yii Framework'ах.
0
 Аватар для Alex_pac
1302 / 708 / 107
Регистрация: 25.05.2011
Сообщений: 2,158
Записей в блоге: 51
23.03.2012, 16:54
Вот тут вид делает запрос у объекта book
ну тогда это не MVC а чтото другое. Ибо не может вид, в обход контроллера, данные получать.
Либо это следствие

А то что на практике получается что Шаблон представления в точности повторяет логическую структуру данных получаемых из модели, так это чистое совпадение, обусловленное простотой передачи данных в Представление без большой степени обработки.
приведенного выше "принципа совпадения"
0
508 / 358 / 13
Регистрация: 12.03.2012
Сообщений: 1,896
23.03.2012, 17:13
Ибо не может вид, в обход контроллера, данные получать.
Так я и говорю про обратное. Может.

Википедия: http://upload.wikimedia.org/wi... m2.svg.png

Zend Framework: http://framework.zend.com/imag... ro.mvc.png
0
163 / 163 / 9
Регистрация: 08.01.2011
Сообщений: 850
23.03.2012, 17:14
Цитата Сообщение от OnYourLips Посмотреть сообщение
Не может, единственный похожий случай - через хэлпер, но хелперы работают как миниконтроллеры.
0
35 / 35 / 7
Регистрация: 27.03.2011
Сообщений: 146
23.03.2012, 17:20
OnYourLips, что значит прерывистая линия?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
23.03.2012, 17:20
Помогаю со студенческими работами здесь

Хочу начать изучать Cisco с чего начать?
Вопрос у меня такой! Хочу в будущем изучать cisco но купить маршрутизатор дорого, а найти где-нибудь поэксперементировать, позаниматься...

С чего начать изучать C++
С чего начать изучать C++ желательно книгу попроще так как мне 12 лет. P.S Решение не оспаривать хочу попробовать P.S.S Работаю в...

Хочу начать изучать java. С чего посоветуете начать, какие книги или какие-то советы есть?
Хочу начать изучать java. С чего посоветуете начать, какие книги или какие-то советы есть? Спасибо заранее

С чего начать изучать Anguliar
Посоветуйте плз.... Книги, хелпы, видео... для новичка! (почему такое не присоединено к шапке ветки?) Знаю html, чистый js,...

C чего начать изучать криптографию
Братка, ты хоть это в мою тему там где Си добавь, а то всё выпелил, даже главное: &quot;Подскажите что ли план действий, с чего начать...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
40
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru