Показать сообщение отдельно
Старый 28.02.2018, 20:27
dimarik вне форума Посмотреть профиль Отправить личное сообщение для dimarik Найти все сообщения от dimarik
  № 65  
Ответить с цитированием
dimarik
.
 
Аватар для dimarik

модератор форума
Регистрация: Sep 2003
Адрес: Москва
Сообщений: 4,630
Записей в блоге: 20
Цитата:
Сообщение от undefined Посмотреть сообщение
Dimarik:
Цитата:
Не делайте так. Сериализация/десериализация должна быть внешней по отношению к модели и осуществлена с помощью контроллера.
Выходит что события модели слушает контроллер и дергает нужные вью.Когда тогда вью должна(и должна ли) слушать модель?
Модель работает с данными. Данные приходят извне. Можно использовать подход, когда в модели есть свой механизм Serialize/Deserialize, заточенный на конкретный протокол данных, который целиком передается этому механизму, но это не очень хорошо, потому что ее невозможно без переделок использовать в другом окружении. А можно внешним, легкозаменяемым десериализатором распарсить данные и скормить модели через сеттеры, например. Короче встроенный в модель десериализатор не так удобен.

Добавлено через 10 минут
Цитата:
Сообщение от in4core Посмотреть сообщение
И вот смотрим : жму я +, по парадигме я должен отправить ивент в контроллер из вью, контроллер доложен дернуть модель, модель должна записать данные - а затем и разослать всем. Это на какой то пук кнопки. А вот если я отойду в неком приложении от этой идеи, и лишь в этом месте дерну модель напрямую как model.plus() - я выходит сразу стану балдой и балбесом, и это нифига не МВС, когда все остальное написано без таких вот изварщений?
Могут быть условия, при которых нельзя делать model.plus(). И контроллер знает об этом, а вью — не должна в принципе. В данном случае контроллер реализует паттерн "Посредник". Поэтому все нормально в парадигме.

Добавлено через 17 минут
Цитата:
Сообщение от Psycho Tiger Посмотреть сообщение
Так рад видеть тебя снова
Такая же фигня, братюня )
__________________
Воспитан в TimeZero. Работаю в Mail.ru.