Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Статьи (http://www.flasher.ru/forum/forumdisplay.php?f=101)
-   -   Хорошее MVC (http://www.flasher.ru/forum/showthread.php?t=138349)

TanaTiX 09.11.2012 02:23

Я вот тут подумал, а правомерно ли говорить об MVC во флеш-проектах в полной мере? Думаю, что реально в проектах используется не 3, а 4 элемента:
1) Модель - ее предназначение дискутабельно в рамках данной темы, но данные она все же хранит
2) Вью - то, что рисует дизайнер в ИДЕ (да, именно такая структура бывает далеко не всегда, но, думаю, достаточно часто), а мы, к примеру, подключаем это в виде класса, который дергаем из swc.
3) Контроллер, который, по сути, является тоже вьюхой и одновременно контейнером для вью (п.2) - там как раз и происходит подписка на слушатели различных элементов и пр.
4) Собственно контроллер - один большой и важный, который содержит в себе глобальную логику, на мелочи не разменивается, к примеру, управляет состояниями приложения.

И есть одна вещь у тигры, с которой, думаю, никто спорить не будет - у каждого мвц свой. Кстати, в том же вики об этом упоминается, что для реализации мвц могут быть применены разные паттерны. Частично в этом (выбор реализации) нам помогает идеология as и флеша.

ЗЫ. туалет и ванная - потрясающие помещения: столько мыслей приходит.

Добавлено через 1 минуту
Dukobpa3, на счет переписывания вики - почитай историю. Там примерно одно и тоже. Правда я раньше некоторые моменты пропускал мимо :(

Dukobpa3 09.11.2012 02:29

В общем, вам в раздел: "наиболее частые ошибки"
Вики мвц

TanaTiX 09.11.2012 02:43

Dukobpa3, читал я этот раздел. Могу конечно ошибаться, но почему-то мне кажется, что та статья не учитывает специфику флеша. А может это и сила привычке во мне говорит. Вообще надо как-нибудь задуматься, чем плох/хорош используемый мной подход (в т.ч. и сам паттерн), чего бы хотелось и, соответственно, как это все реализовать.

Sintesis 09.11.2012 03:02

По той статье всё что здесь писали не правильно.

Dukobpa3 09.11.2012 03:08

а ты прочел всё что здесь писали?)))))

Sintesis 09.11.2012 03:26

Переубедил, хотя не ты а Википедия, да то что писал ПсихоТайгер не сходится с классическим активным MVC. Контроллер реализует только интерфейс с пользователем - ввод с клавиатуры и ввод с вьюшки, таким образом только соединяет модель и представление, в одну сторону от вьюшки в модель, модель всё решает, что делать с этим вводом и результат отдаёт в вьюпорт.
Понятно всё, почему-то в голову приходят сразу такие программы как Фотошоп, например всё что мы видим - делал один отдел программистов, а всё, чем думает программа - другой отдел, потом это соединили контроллером.
Зачем в начале темы так тщательно описан не правильный подход с пассивной моделью?

Dukobpa3 09.11.2012 03:56

Цитата:

Зачем в начале темы так тщательно описан не правильный подход с пассивной моделью?
у тигры спроси

Добавлено через 30 секунд
Цитата:

хотя не ты а Википедия
Я там выше говорил, не за что ;)

Sintesis 09.11.2012 04:04

Цитата:

Сообщение от Dukobpa3 (Сообщение 1103594)
Я там выше говорил, не за что ;)

Ты не убедил из-за того что сам путался
http://flasher.ru/forum/showpost.php...&postcount=490

Dukobpa3 09.11.2012 04:06

Цели убеждать нету как бы. Ты спросил я ответил)

Sintesis 09.11.2012 04:09

Но спасибо всё равно, а то не правильным путём пошёл-бы.

Добавлено через 14 минут
Цитата:

Сообщение от TanaTiX (Сообщение 1103581)
Dukobpa3, читал я этот раздел. Могу конечно ошибаться, но почему-то мне кажется, что та статья не учитывает специфику флеша.

Что-то и мне так кажется, в силу того, что у нас есть такие высокоуровневые классы как Sprite где и View и кусок Controller'а уже вроде как реализованы. Спрайт-то и отображаться может и события рассылать, осталось только модель добавить. Может по этому в начале поста выдумывают всякое?


Часовой пояс GMT +4, время: 03:51.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.