J’ai une petite question sur la conception d’un site rails. […]
Mon grain de sel de débutant, n’hésitez surtout pas à me contredire…
J’ai compris le MVC comme “simplement” (ce n’est pas toujours si
simple) demandant de bien ségréger modèles, vues et contrôleurs. C’est
un exercice que je fais encore : à chaque fois que j’écris ne
serait-ce qu’une seule ligne, je me dis “est-ce un modéle, une vue ou
un contrôleur ?”. Et je crois que ça se limite à ça.
Ensuite, ta façon de découper les controleur pour gérer quels modèles
en employant quelles vues c’est déjà autre chose. C’est me semble-t-il
plus une question d’habitude, d’affinité de programmeur.
Bon, ensuite des directives comme REST imposent presque le choix des
contrôleurs, mais c’est pas très gênant.
Voici mes reflexions :
- Modèle : ça traite vraiment des données. Pour moi c’est ce qui est
représenté le plus facilement par le développement objet tel qu’on me
l’a appris à l’école : des données avec des méthodes qui permettent de
les gérer. Par exemple tu auras le film ainsi que la méthode “evaluer”
qui permet de donner une note automatiquement au film en fonction du
budget du film et des recettes (mais c’est débile comme exemple
ça!!!)
- Vues : tout ce qui concerne les technique d’affichage : le HTML, le
CSS… toute la présentation.
- Contrôleur : il prépare les vues (en calculant les données
nécessaires), et s’occupe des enchaînements des pages.
Pour tout dire, j’ai pas mal de soucis avec les contrôleurs. Quels
contrôleurs ? Qui gèrent quoi ?
Ma façon de voir, c’est de se dire “un contrôleur pour chaque façon
différente d’attaquer mon appli”.
Par exemple pour tes films tu peux imaginer l’ultra classique
découpage suivant :
- un controleur d’administration
- un contrôleur pour les utilisateurs
- un contrôleur pour gérer le distributeur automatique de location de
DVD que tu as implanté au bas de chez toi
Tu vois dans ce découpage que chaque contrôleur manipulera différents
modèles, et que de toutes façons la plupart des podèles seront
manipulés par les 3 contrôleurs (un utilisateur s’inscrit sur
Internet, il loue avec ce meme compte un DVD, et toi, l’admin, tu
consulte sa fiche)
Voilà, si j’ai dis une bêtise, dites-le moi !
gUI
–
Pour la santé de votre ordinateur, préférez les logiciels libres.
Lire son mail : http://www.mozilla-europe.org/fr/products/thunderbird/
Browser le web : http://www.mozilla-europe.org/fr/products/firefox/
Suite bureautique : http://fr.openoffice.org/