IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ASP.NET MVC Discussion :

[Critique]Professional ASP.NET MVC 3


Sujet :

ASP.NET MVC

  1. #1
    Responsable .NET

    Avatar de Hinault Romaric
    Homme Profil pro
    Consultant
    Inscrit en
    Janvier 2007
    Messages
    4 570
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Consultant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2007
    Messages : 4 570
    Points : 252 372
    Points
    252 372
    Billets dans le blog
    121
    Par défaut [Critique]Professional ASP.NET MVC 3
    Bonjour,

    La rédaction de Developpez.com a lu pour vous l'ouvrage suivant :
    Professional ASP.NET MVC 3 de Jon Galloway, Phil Haack, Brad Wilson, K. Scott Allen

    Au vu de mon orientation de plus en plus vers ASP.NET MVC pour la conception de mes applications, je me suis dit qu'il était temps pour moi malgré tous les articles que j'ai lus en ligne sur les nouvelles fonctionnalités de la version 3 du Framework, de me mettre à la lecture d'un livre qui traite du sujet.

    Mon choix s'est porté sur Professional ASP.NET MVC 3, qui est écrit par Phil Haack et Brad Wilson, qui font partie de l'équipe de développement du framework, ainsi que Jon Galloway et K. Scott Allen, des pionniers de la technologie. Ce livre est le guide parfait pour toute personne désireuse de maitriser le framework ASP.NET MVC 3.

    Contrairement au titre qui donne l'impression d'un livre réservé aux professionnels, le chapitre 1 un présente de façon détaillée le framework (description, installation, création d'une première application, etc.) et effectue une comparaison avec ASP.NET et les raisons qui ont entrainé sa création. Le chapitre 2, également un chapitre introductif pour moi, revient en détail sur la notion de contrôleur. C'est à compter des chapitres trois et quatre présentant respectivement la vue et le modèle, que le lecteur découvrira les nouveautés intéressantes comme le moteur de vue Razor, l'échafaudage et Entity Framework Code First. L'utilisation des formulaires, des helpers HTML et les améliorations apportées à la validation des données utilisateur notamment avec DataAnnotations seront décrites dans les deux chapitres suivants.
    Lire la critique entière : http://dotnet.developpez.com/livres/...L9781118076583

    L'avez-vous lu ? Comptez-vous le lire bientôt ?

    Quel est votre avis ?
    Vous souhaitez participer aux rubriques .NET ? Contactez-moi

    Si déboguer est l’art de corriger les bugs, alors programmer est l’art d’en faire
    Mon blog, Mes articles, Me suivre sur Twitter
    En posant correctement votre problème, on trouve la moitié de la solution

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    128
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 128
    Points : 122
    Points
    122
    Par défaut
    Bonjour. Est-ce que ce livre conviendrait aussi aux novices en MVC ? Je connais ASP.NET et ai utilisé VS 2008 (je viens d'installer le 2012).

    A noter que Professional ASP.NET MVC 4 est sorti en fin d'année dernière (avec passage au MVC4).

  3. #3
    Membre émérite

    Homme Profil pro
    Software Developer
    Inscrit en
    Mars 2008
    Messages
    1 470
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Software Developer

    Informations forums :
    Inscription : Mars 2008
    Messages : 1 470
    Points : 2 368
    Points
    2 368
    Par défaut
    Citation Envoyé par goran kajfes Voir le message
    Est-ce que ce livre conviendrait aussi aux novices en MVC ? Je connais ASP.NET et ai utilisé VS 2008 (je viens d'installer le 2012)..
    Oui, tu peux te faire une idée en regardant le sommaire.

    Citation Envoyé par goran kajfes Voir le message
    A noter que Professional ASP.NET MVC 4 est sorti en fin d'année dernière (avec passage au MVC4).
    Le contenu change pas beaucoup, généralement le livre reste exactement le meme mais ils ajoutent seulement un chapitre MVC 4 a la fin. Il n'y a pas beaucoup de différences entre MVC 3 et 4.
    A noter que MVC 5 sortira prochainement et apportera encore de nouvelles choses (enfin Boostrap, nouveau systeme utilisateur, EF 6, ...)

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    128
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 128
    Points : 122
    Points
    122
    Par défaut
    @alex_vino: Finalement, j'ai commencé Pro ASP.NET MVC4 d'Adam Freeman. J'ai fini la première partie hier (Introducing ASP.NET MVC 4). J'en suis donc à la moitié. Après je ne vais peut-être pas continué à lire le livre séquentiellement, mais à piocher au besoin.

    J'ai beaucoup appris, mais je partais de loin : pas de connaissance préalable de MVC (ni d'un autre patron séparant les couches d'un projet), du domaine du modèle, des injections de dépendance, des mocks, des mappeurs object-relationnel , CRUD, des expressions lambda, de Linq, types anonymes, initialisateurs d'objets et de collections... Je n'avais jamais créé de tests unitaires (et donc encore moins fait de développement piloté par les tests), ni d'interface (IMonInterface).

    Par contre, à ce stade, j'aurais encore bien du mal à créer un site web un peu complexe reposant sur une base de données. J'explique pourquoi. L'application principale d'exemple d'Adam Freeman utilise sur une seule table de base de données : la table produit. Il met même le champ "catégorie" dedans (ou plus précisément, le libellé de la catégorie). Normalement, il faudrait créer une autre table pour la catégorie de produits et n'importer que l'identifiant de la catégorie dans la table produit. Cela conduirait à changer le mappage objet-relationnel et le domaine du modèle.
    La théorie du modèle du domaine est expliquée avec un autre exemple (pas l'appli principale du livre). Il n'est malheureusement pas entièrement implémenté. L'auteur prend ici l'exemple d'une vente aux enchères. On a les tables Membre, Enchères et Article (mis aux enchères). A partir de ça il identifie 2 agrégats (aussi appelées entités racine) : Article et Membre, l'Enchère étant incluse dans l'article. Niveau objet, cela se traduit par les classes suivantes :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
     
    public class Member {
        public string LoginName { get; set; } // The unique key
        public int ReputationPoints { get; set; }
    }
     
    public class Item {
        public int ItemID { get; private set; } // The unique key
        public string Title { get; set; }
        public string Description { get; set; }
        public DateTime AuctionEndDate { get; set; }
        public IList<Bid> Bids { get; set; }
    }
     
    public class Bid {
        public Member Member { get; set; }
        public DateTime DatePlaced { get; set; }
        public decimal BidAmount { get; set; }
    }
    J'aurais bien aimé avoir le code Entity Framework correspondant.
    Il va peut-être falloir que je lise Professional ASP.NET MVC 4 en diagonale pour cela (on ne pourrait pas télécharger la totalité du code du livre mais seulement des parties via Nuget). D'après mes informations, le projet principal du livre est basé sur 3 tables, avec échange de clé étrangères. Il suffirait d'aller regarder comment la partie Entity Framework a été codée...

    Mais de toute façon, je crois que je ne pourrais pas éviter la lecture d'un livre ou d'un tutoriel un minimum détaillé sur Entity Framework. L'auteur de Pro ASP.NET MVC4 dit que c'est un sujet en soi.

    Il serait peut-être aussi utile de lire un livre sur la Conception Pilotée par le Domaine (Domain-Driven Design) pour construire au mieux ces satanées entités du domaine du modèle. Il parait qu'il ne faut pas avoir l'interface en tête pour les identifier. L'auteur dit que c'est la partie la plus importante du développement...

    Je manque également d'exemples concrets de sites complexes réalisés en MVC. Ce n'est pas en étudiant le code de 2 petits sites que je pourrais créer des applications de qualité professionnelle. Il m'en faudrait une dizaine assez complexe (c'est à dire qui reposent sur une base de données relativement complexe).

  5. #5
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par goran kajfes Voir le message
    Il serait peut-être aussi utile de lire un livre sur la Conception Pilotée par le Domaine (Domain-Driven Design) pour construire au mieux ces satanées entités du domaine du modèle. Il parait qu'il ne faut pas avoir l'interface en tête pour les identifier. L'auteur dit que c'est la partie la plus importante du développement...
    Je te recommande ces 2 bouquins :
    - Programming Entity Framework : Code First
    - Programming Entity Framework : DbContext

    Citation Envoyé par goran kajfes Voir le message
    Je manque également d'exemples concrets de sites complexes réalisés en MVC. Ce n'est pas en étudiant le code de 2 petits sites que je pourrais créer des applications de qualité professionnelle. Il m'en faudrait une dizaine assez complexe (c'est à dire qui reposent sur une base de données relativement complexe).
    Tu peux lire le code de Nerd Dinner.

  6. #6
    Membre émérite

    Homme Profil pro
    Software Developer
    Inscrit en
    Mars 2008
    Messages
    1 470
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Software Developer

    Informations forums :
    Inscription : Mars 2008
    Messages : 1 470
    Points : 2 368
    Points
    2 368
    Par défaut
    @h2s84: En effet références pertinentes, je ne connaissais pas NerdDinner et ne savait pas non plus mes références en terme de programmation (Hanselman, Guthrie, Gallaway) l'avaient dévelopé

    Il y a aussi plein de tres bonnes vidéos de Julie Lerman sur Pluralsight (Entity Framework pour débutant, patterns en entreprise, business validation...), sinon je conseille ce bouquin que j'adore: Pro ASP.NET MVC Framework

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    128
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 128
    Points : 122
    Points
    122
    Par défaut
    Bonjour.

    Citation Envoyé par h2s84 Voir le message
    Le code d'abord, la base de données ensuite ??? C'est ça la conception pilotée par le domaine ? J'ai toujours cru qu'il fallait d'abord concevoir sa base de données avant de passer au code. Et pourtant, un autre monde existe... J'ai lu qu'il ne fallait pas faire de jointure de tables de données avec Code First. Ça change les habitudes... On gagne beaucoup en productivité avec cette méthode ?

    Et est-ce que Entity Framework est utile quand on veut créer une interface graphique pour une base de données existante ? Est-ce que Programming Entity Framework : DbContext l'explique ?

    Citation Envoyé par h2s84 Voir le message
    Tu peux lire le code de Nerd Dinner.
    Le lire, mais pas l'exécuter. Le projet principal est incompatible avec VS 2012.

  8. #8
    Membre émérite

    Homme Profil pro
    Software Developer
    Inscrit en
    Mars 2008
    Messages
    1 470
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Software Developer

    Informations forums :
    Inscription : Mars 2008
    Messages : 1 470
    Points : 2 368
    Points
    2 368
    Par défaut
    Citation Envoyé par goran kajfes Voir le message
    Le code d'abord, la base de données ensuite ??? C'est ça la conception pilotée par le domaine ? J'ai toujours cru qu'il fallait d'abord concevoir sa base de données avant de passer au code. Et pourtant, un autre monde existe... J'ai lu qu'il ne fallait pas faire de jointure de tables de données avec Code First. Ça change les habitudes... On gagne beaucoup en productivité avec cette méthode ?

    Et est-ce que Entity Framework est utile quand on veut créer une interface graphique pour une base de données existante ? Est-ce que Programming Entity Framework : DbContext l'explique ?


    Le lire, mais pas l'exécuter. Le projet principal est incompatible avec VS 2012.
    Le forum (et ces livres) sont la pour répondre a tes questions techniques, attention a ne pas mélanger dans le flux d'une critique de livre. Merci.

  9. #9
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par goran kajfes Voir le message
    On gagne beaucoup en productivité avec cette méthode ?
    Citation Envoyé par goran kajfes Voir le message
    Et est-ce que Entity Framework est utile quand on veut créer une interface graphique pour une base de données existante ? Est-ce que Programming Entity Framework : DbContext l'explique ?
    Si tu veux mon avis. J'aime pas cette approche. L'approche Code First nuit à la productivité. Si tu as une base de données existante alors je te conseille d'utiliser l'approche Database First. Si tu veux quand même faire du Code First avec une base de données existante alors sache qu'il y a une extension qui permet de faire du Reverse Engineering.


    Citation Envoyé par goran kajfes Voir le message
    Le lire, mais pas l'exécuter. Le projet principal est incompatible avec VS 2012.
    Utilise la version 2010

  10. #10
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    128
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 128
    Points : 122
    Points
    122
    Par défaut
    Merci pour votre aide. Suite à la remarque de Alex Vino, je continue la discussion ici.

  11. #11
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    128
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 128
    Points : 122
    Points
    122
    Par défaut
    Pour en revenir au sujet, je me suis fait prêter Professional ASP.NET MVC 4 de Jon Galloway, Phil Haack, Brad Wilson, K. Scott Allen, et je déconseille ce livre. Il présente d'un côté le modèle, de l'autre la vue, d'un autre le contrôleur. Tout est saucissonné; on n'a pas de vision d'ensemble du MVC et au final on ne retient pas grand chose. Les détails sont donnés dans le tutoriel MVC3 MusicStore... extérieur au manuel ! Le livre papier ressemble à un survol de ce tutoriel. On se demande pourquoi les auteurs ne sont pas partis sur un seul manuel. Je ne vois pas ce qui le justifie... surtout pas ce qu'avance les auteurs : The Music Store tutorial is intended for beginners and moves at a pretty slow pace; because this is a professional series book, we’ll move faster and cover some more advanced background detail. If you want a slower, simpler introduction to any of these topics, feel free to refer to the MVC Music Store tutorial. Il faut toujours se méfier des livres de programmation écrits à plusieurs. Ce message exprime bien mieux que moi les carences du livre. Qu'il soit noté 4,5/5 sur developpez.com me gêne. Je suis en désaccord avec le jugement "Ce livre est le guide parfait pour toute personne désireuse de maitriser le framework ASP.NET MVC 3".

    Un bon conseil : préférez Pro ASP.NET MVC4 d'Adam Freeman. C'est long, un poil verbeux, mais l'auteur est un excellent pédagogue. Son livre est bien structuré. Du travail de pro.

  12. #12
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par goran kajfes Voir le message
    [...]
    Un bon conseil : préférez Pro ASP.NET MVC4 d'Adam Freeman. C'est long, un poil verbeux, mais l'auteur est un excellent pédagogue. Son livre est bien structuré. Du travail de pro.
    J'approuve ce que tu dis même si je n'ai pas acheté ni lu ce livre. Tout simplement parce que j'évite d'acheter des bouquins écrits par pas mal d'auteurs. De mon expérience, j'ai remarqué que les livres écrits par un ou maximum 2 personnes, sont les plus structurés et facile à lire donc à comprendre.

Discussions similaires

  1. [Livre] Professional ASP.NET MVC 1.0
    Par Jérôme Lambert dans le forum ASP.NET
    Réponses: 0
    Dernier message: 31/08/2009, 02h02

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo