2010-10-19 7 views
1

Si j'avais quelque chose comme ceci:MVC - où est-ce que ce produit appartient?

Class diagram

Où serait chaque classe aller? Quelqu'un at-il des liens vers de bons exemples de MVC?

+0

Dans quelle langue programmez-vous? – RobertPitt

+0

J'utilise C# dans Visual Studio 2010 – John

+1

Ne semble pas être un projet pour MVC, ne forcez pas seulement les modèles dans le code – BlackTigerX

Répondre

0

En supposant Shape, Rectangle, Circle et Drawing tous ont des données dans les points sur qui les composent, ces classes sont certainement Model classes. Je ne suis pas tout à fait sûr de ce que sont V1Drawing et V2Drawing, ni DrawPackage1 ou DrawPackage2, donc je ne sais pas trop où cela irait. Cela étant dit, les méthodes draw() sur toutes les classes sont un peu hors de place dans un monde MVC. Les objets du domaine (le Model ne devrait rien savoir de la manière dont leurs informations sont présentées au monde.) En général, un Shape sait qu'il peut être utilisé par un éditeur graphique ASCii d'une minute, un graphisme "normal" éditeur le suivant, puis (pour notre application web MVC) étant présenté à un navigateur qui a besoin d'avoir des choses dessinées sur lui via javascript

La puissance de MVC est qu'il vous permet de garder les objets de votre domaine faiblement couplés La couche View contiendrait différentes sortes de classes Drawer qui pourraient prendre des formes et, parce qu'elle sait ce qu'il y a dans les formes et où elles dessinent, produit le type correct de sortie. sans en savoir plus, il est difficile de pousser l'architecture beaucoup plus loin, mais en un mot, de mettre des choses orientées données qui représentent l'état et traiter SEULEMENT avec cet état (pas des choses externes) dans le Model les données sont représenté dans le View

Questions connexes