10-06-2009, 09:47 PM
l'intérêt est multiple.
si je dis à un codeur xslt fait moi tel écran, il n'a pas besoin de connaître php, java, ruby ou autre, il code en ce qu'il sait faire..xslt
idem pour le php ou le xml (et encore idem pour les couche spécifique qui peuvent très bien être dans différents langages). la seule chose qui compte c'est l'entrée et la sortie, le reste c'est la tambouille du spécialiste de ce domaine.
si demain, j'ajoute une fonctionnalité les répercussions sont localisé et.. contrôlé. C'est encore plus vrai si 'est pour un web services (comme tu l'a cité)
Je vais citer des exemples succincts.
1) Il m'est arrivé de devoir décider de changer le systeme de droit (nous souhaitons avoir une gestion de droit en 4 dimension..la roll royce) des gestion de droits) que j'avais fait pour une application. Nous y avons réfléchit 3 mois (à 3 personnes). et grâce a ce système, on l'a implémenté en 2 semaines (avec 6 personnes).
2) le support client décide (comme chaque souvent), d'ajouter une nll fonctionnalité. Avec ce systèmes, on le fait bien plus rapidement car tout est compartimenté. Il a besoin de changer l'aspect graphique ok, pas besoin de connaître php/java/ruby.. Il a besoin d'ajouter un nouveau champs, pas besoin de connaitre la couche modèle, ce qu'il demande se trouve déjà dans ce que ramène la couche service, il suffit juste de l'afficher...
3) Microsoft (mon ex-employeur depuis peu) m'avait demandé de modifier la couche contrôleur de mon logiciel qu'il jugeait trop "permissif" (hum...) en matière de sécurité web. La maison mère avait estimé le boulot a 6 mois, le directeur technique de la filiale l'avait estimé à 3 mois...je l'ai réalisé en 1 mois. sans cette séparation, ca n'aurait pas était possible en si peu de temps
Autre avantage, les différentes couches sont la suite logique de l'analyse uml faite au préalable (surtout la couche model). Du coup, d'un coup d'oeil, on sait exactement quoi implémenter et comment (et la plupart du temps sans réfléchir..;sisi vous avait bien lu..sans réfléchir). C'est ainsi qu'un stagiaire c'est vus attribuer le fait d'écrire des setter/gette (etc..) en batterie...
Bref, des exemples j'en ai pleins.
Maintenant, tout est relatif. Surtout quand des personnes mettent la pression pour coder (car enjeu monétaire, stratégique etc... sur du cour terme ou tout simplement le codeur débutant) pensent qu'il est plus intéressant de coder que de penser à ce que l'on va codé
si je dis à un codeur xslt fait moi tel écran, il n'a pas besoin de connaître php, java, ruby ou autre, il code en ce qu'il sait faire..xslt
idem pour le php ou le xml (et encore idem pour les couche spécifique qui peuvent très bien être dans différents langages). la seule chose qui compte c'est l'entrée et la sortie, le reste c'est la tambouille du spécialiste de ce domaine.
si demain, j'ajoute une fonctionnalité les répercussions sont localisé et.. contrôlé. C'est encore plus vrai si 'est pour un web services (comme tu l'a cité)
Je vais citer des exemples succincts.
1) Il m'est arrivé de devoir décider de changer le systeme de droit (nous souhaitons avoir une gestion de droit en 4 dimension..la roll royce) des gestion de droits) que j'avais fait pour une application. Nous y avons réfléchit 3 mois (à 3 personnes). et grâce a ce système, on l'a implémenté en 2 semaines (avec 6 personnes).
2) le support client décide (comme chaque souvent), d'ajouter une nll fonctionnalité. Avec ce systèmes, on le fait bien plus rapidement car tout est compartimenté. Il a besoin de changer l'aspect graphique ok, pas besoin de connaître php/java/ruby.. Il a besoin d'ajouter un nouveau champs, pas besoin de connaitre la couche modèle, ce qu'il demande se trouve déjà dans ce que ramène la couche service, il suffit juste de l'afficher...
3) Microsoft (mon ex-employeur depuis peu) m'avait demandé de modifier la couche contrôleur de mon logiciel qu'il jugeait trop "permissif" (hum...) en matière de sécurité web. La maison mère avait estimé le boulot a 6 mois, le directeur technique de la filiale l'avait estimé à 3 mois...je l'ai réalisé en 1 mois. sans cette séparation, ca n'aurait pas était possible en si peu de temps
Autre avantage, les différentes couches sont la suite logique de l'analyse uml faite au préalable (surtout la couche model). Du coup, d'un coup d'oeil, on sait exactement quoi implémenter et comment (et la plupart du temps sans réfléchir..;sisi vous avait bien lu..sans réfléchir). C'est ainsi qu'un stagiaire c'est vus attribuer le fait d'écrire des setter/gette (etc..) en batterie...
Bref, des exemples j'en ai pleins.
Maintenant, tout est relatif. Surtout quand des personnes mettent la pression pour coder (car enjeu monétaire, stratégique etc... sur du cour terme ou tout simplement le codeur débutant) pensent qu'il est plus intéressant de coder que de penser à ce que l'on va codé