2010-09-15 8 views
1

Je sais MVC est l'avenir, mais pour certains d'entre nous encore coincé dans la bonne vieille terre webform, j'essaie d'apprendre à faire TDD et introduire de meilleurs tests pour notre application actuelle ...Un bon code source pour apprendre MVP?

fondamentalement l'asp .net 2.0 C# application web est assez compliquée avec une certaine logique dans sproc, certains dans le javascript via json traitement des données, certains dans les contrôles utilisateur et d'autres dans le code derrière. sans parler de quelques bibliothèques ici et là pour le rendre plus joyeux. Je n'ai littéralement aucune idée de comment commencer à décomposer les choses en plus petits morceaux pour faire des tests.

donc je peux seulement trouver ce related question which doesn't really help much. et j'aime un peu comme ça simplistic way of getting things started but was looking for more comprehensive samples.

Toute aide dans le code source, tutoriels, etc serait bien :) merci!

+1

Am travaille actuellement avec une division d'application dans les niveaux de l'interface utilisateur et WCF avec l'interface utilisateur étant fait dans le modèle MVP, avec beaucoup de SQL paramétré contre un SGBD hérité, certains jQuery/JSON combinés avec WebMethods font des choses avec un peu de contenu dynamique sur les vues. Je ne suis pas sûr de ce qui pourrait être posté comme réponse à votre question. Si vous avez des détails je pourrais être en mesure d'aider, je pensais. Nous utilisons StructureMap pour IoC et nUnit avec Rhino Mocks pour la testabilité. –

+0

wow, il est bon de savoir que votre application est probablement bien au-dessus de ma tête. Mais ce que j'essaie de faire ici est de localiser du code, d'introduire quelques tests et de passer lentement à plus de codes avec des tests. comment et où avez-vous commencé? – melaos

+0

J'ai eu la chance de faire partie de cette équipe avec des personnes plus expérimentées en TDD et MVP ayant déjà pris le projet à mi-chemin. Mais entrer dans le paradigme des «animateurs testables qui dirigent les points de vue» serait certainement la première étape. La réponse de Leniel (http://stackoverflow.com/questions/3714189/any-good-source-code-to-learn-mvp-from/3714236#3714236) semble un bon point de départ ... –

Répondre

0

Le book de Dino Esposito a très bien fonctionné pour moi. BEAUCOUP de détails, y compris IIS7. Mais j'ai aussi suivi un cours payé par mon entreprise qui a ajouté beaucoup de détails. Javascript et JSON ne font finalement pas partie de ASP.NET MVC. ASP.NET MVC prend en charge eux. La différence peut être subtile, mais pour décomposer les choses en morceaux gérables pour l'apprentissage, il est bon de le réaliser. Donc, je vous recommande de mettre chacun dans leur propre petit seau en termes de décomposition.

Je voudrais même aller plus loin et dire que vous devriez d'abord comprendre chaque partie de MVC. M est un modèle et en fin de compte juste une vieille classe, donc pas grand chose à comprendre à part la façon dont View et Controller interagissent avec. OMI, le contrôleur est la partie la plus importante à comprendre et une partie de cela est de comprendre les routes. Le contrôleur est dans le siège du conducteur (d'où le nom) et les routes sont comment vous allez de l'URL au contrôleur droit. Tout le reste s'en écarte. Comprendre les vues consiste principalement à comprendre le langage HTML pur avec <%%> pour inclure vos bits d'application. En bref, si vous comprenez l'ASP classique, ou les Web Forms sans code, vous auriez une bonne compréhension de la quasi-totalité de la syntaxe dont vous avez besoin. Mais, vous aurez généralement beaucoup moins de code dans une vue et oublier < asp: xxx runat = « server >

Une fois que vous obtenez une prise uniquement sur la façon dont le contrôleur accepte l'entrée, puis des fils pour envoyer la droite. ActionResult (les vues étant les plus communes pour commencer), vous serez en mesure de commencer à apporter les autres bits

Je suis confiant après un court moment, vous ne manquerez pas WebForms.

+0

Je n'essaie pas d'être radical et a déplacé toute l'application à MVC d'un seul coup. Au contraire, j'essaie d'apprendre à faire TDD et d'introduire plus de tests à mon application webform actuelle :) – melaos

+0

@melaos - c'est ce que nous avons dit aussi. Ensuite, une fois que nous avons mis en place un seul morceau de fonctionnalité construit autour de MVC, nous avons dit que nous avions fini de construire de nouveaux formulaires Web. Nous avons tellement aimé ça. Bien qu'il semble qu'il y ait plus à comprendre dès le départ, il n'y en a vraiment pas. Et il semble que vous ayez beaucoup moins besoin de vous inquiéter une fois que vous serez en vol. –

0

Phil Haack, qui travaille sur Microsoft ASP.NET MVC, a deux messages bons de blog que vous pourriez trouver utiles:

  1. ASP.NET Supervising Controller (Model View Presenter) From Schematic To Unit Tests to Code
  2. Everything You Wanted To Know About MVC and MVP But Were Afraid To Ask

Ils ne seront pas tout à fait complète mais devrait servir de bonnes introductions pour vous aider à démarrer.

EDIT: Dino Esposito a écrit un article sur le sujet pour le magazine MSDN de septembre 2010: Better Web Forms with the MVP Pattern.