p4s8x
@p4s8x

Архитектура приложения. Альтернативы MVC?

Разрабатываем приложения - бэкэнд для социальных игр. Работаем с MVC, но получается это все не очень удобно.
С клиента приходят события типа startGame - Вся Основная логика зашита в моделях и событиях, каждый action контроллера представляет из себя нечто вроде
public function actionStartGame ($map, $level, $someParams) {
    $user = User::getById($clientID);
    $user->game->start($map, $level, $someParams);
    return $user->responseEvents;
}

Есть большое количество компонентов, которые "подключаются" к модели и подписываются на её события:
onStartGame()
onLoseGame()
и т.д.

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

Из описания подобного нашлась ссылка на хабр на некий MOVE, но примеров реализаций в сети не отыскалось.

Какие есть паттенры\фреймворки для схожих задач?
  • Вопрос задан
  • 1244 просмотра
Пригласить эксперта
Ответы на вопрос 2
@Simasik
Ну наверное достаточно понять, что паттерн - это шаблон. Шаблон - это уже готовое решение, которое вы будете или не будете применять в своём проекте. Мое мнение таково, что шаблон стоит использовать не повсеместно, чтобы потом кричать: "А у меня движок сделан на mvc". Вы можете взять общие принципы с нескольких шаблонов, слить их воедино и получится, то что вам нужно. Не ограничивайте себя рамками шаблонов!
Ответ написан
Комментировать
usdglander
@usdglander
Yipee-ki-yay
> Есть большое количество компонентов, которые "подключаются" к модели и подписываются на её события:
Возможно Вам больше подойдёт Observer.
upd: Хотя вот сейчас мне показалось, что я немного запоздал с ответом...
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы