web-dev-qa-db-fra.com

Alternatives au MVC

Quelles sont les "méthodes de conception" alternatives au Model View Controller? MVC semble être populaire (SO a été construit avec, je sais beaucoup), mais est-ce la seule méthode utilisée?

64
Teifion

Il en existe bien d'autres:

31
Jason Olson

L'une des meilleures descriptions de plusieurs modèles d'architecture d'application interactive différents est ce blog très détaillé et bien documenté . Il couvre Model-View-Controller, trois versions différentes de Model-View-Presenter, plusieurs versions différentes de Presentation-Abstraction-Control, Supervising Controller, Passive View et Hierarchical MVC.

Un autre modèle intéressant est le modèle Presenter First par Atomic Objects. Ce n'est pas seulement un modèle de conception, c'est aussi un modèle de processus. IOW: le nom "Presenter First" n'est pas arbitraire, il décrit en fait un processus de développement, dans lequel le Presenter est écrit en premier, conduisant la conception du reste du système.

48
Jörg W Mittag

MVC est un modèle architectural. Ce sont les autres modèles architecturaux que vous pouvez essayer (à partir de Wikipedia):

  • Couches
  • Architecture à plusieurs niveaux
  • Présentation Abstraction Control (PAC)
  • Présentateur de vue de modèle (MVP)
  • Vue du modèle ViewModel (MVVM)
  • Pipeline
  • Invocation implicite
  • Système de tableau noir
  • D'égal à égal
  • Architecture orientée services (SOA)
  • Objets nus

Ceux-ci sont disponibles ici dans Wikipedia .

14
7
java.is.for.desktop

MVC fait partie d'un plus grand groupe de modèles de conception. Je n'ai aucune idée de votre expérience, donc je ne sais pas comment cibler cette réponse. Je suis un programmeur .NET, mais j'ai trouvé le Java book Head First Design Patterns extrêmement utile. Les modèles de conception sont généralement divisés en groupes avec d'autres modèles qui aident à résoudre problèmes similaires.

J'ai également trouvé le site Web Data Object Factory très utile également. Vous devriez chercher des ressources dans votre langue préférée.

3
Hector Sosa Jr

Nous n'utilisons pas tant une alternative mais un hybride appelé MVC-ARS .

1
dacracot

Je connais les [~ # ~] mvcs [~ # ~] de Joe Berkovitz.

Le professeur Kowarschick a utilisé cette approche pour développer le [~ # ~] vclsd [~ # ~] - Pattern (Wiki écrit en allemand! Peut-être que quelqu'un a le temps de le traduire - moi je ne suis qu'un débutant en programmation)

MVCS: Model View Control Service
VCLSD: Afficher les données du service de logique de contrôle

1
Ruben MM

Que diriez-vous de flux.js de Facebook? Je sais que cela dépend de la plate-forme, mais c'est une architecture de flux de données utilisée par FB en remplacement de MVC, donc je pense que vous pouvez également en tirer des idées.

0
Novellizator