Académique Documents
Professionnel Documents
Culture Documents
Version 1.2
Jean DALAT
James RAVAILLE
http://blogs.dotnet-france.com/jamesr
2 Introduction WCF [07/01/09]
Sommaire
1.1 Dfinition
Une application distribue est une application dont tous les lments qui la composent
(classes, persistance, logique mtier) sont distants gographiquement et communiquent entre eux
via des rseaux locaux dentreprise ou par Internet en utilisant le protocole IP.
Les composants des applications distribues sont rutilisables et servent souvent plus dune
application simultanment. Cependant, lutilisateur final na pas conscience de la nature distribue
de lapplicatif car il utilise une interface Web ou Windows Forms , dont le but souvent est de
fdrer tous les lments distants pour atteindre lobjectif de lapplication tout en masquant tous les
mcanismes daccs.
2.1 Dfinition
Selon lOASIS (Organisation for Avancement of Structured Information Standards),
lorganisation pour la promotion des standards de linformation structure, larchitecture oriente
service (SOA : Services Oriented Architecture) est un paradigme dorganisation des ressources
distribues, potentiellement contrles par des domaines diffrents. .
Au tout dbut, il nexistait que les langages purement procduraux, la seule faon dcrire du
code rutilisable tait dcrire des fonctions et des procdures dans un fichier spar du corps du
programme, et de faire appel ce fichier chaque fois que ncessaire. Ensuite, est apparue la
Programmation Oriente Objet (POO). Elle tait innovante dans le sens ou le concept mme
d objet permet lencapsulation et donc de masquer la complexit des oprations. Les objets
peuvent senvoyer des messages, grce aux appels de mthodes exposes par lobjet avec lequel ils
souhaitent communiquer sans pour autant savoir comment ledit objet implmente le traitement
quon lui demande dexcuter.
Malgr le fait que des technologies comme DCOM, RMI ou .Net Remoting permettent de
transporter les objets et donc de dpasser les frontires de la machine grce au rseau, on sest
souvent heurt des problmes de compatibilit entre plateformes, do le besoin dune
standardisation et la mise en commun des protocoles (SOAP, XML, ). De l est ne la notion
darchitecture oriente services (SOA).
Un service est une classe expose travers les rseaux. Le but de ce service est de fournir
une prestation bien dfinie (exemple : fournir la date et lheure dans un pays donn). Les dtails
dun service (la manire dont il doit tre appel, les paramtres spcifier) sont contenus dans un
document standardis, qui fait office de contrat entre le client et le serveur.
On a vu dans le premier principe du SOA, que les services exposent des contrats pour exposer
aux clients leurs fonctionnalits et comment les utiliser. Cette interface est la seule chose que le
serveur partage avec le client. Comme en programmation oriente objet, le client na pas a connaitre
comment procde le service pour arriver ses fins. En aucun cas, le service et le client ne doivent
partager du code.
Nous verrons plus tard dans les chapitres suivants quil est possible et mme recommand de
scuriser laccs un service, en utilisant un nom dutilisateur et un mot de passe par exemple.
Couche de prsentation
Couche de services
1
2 Services 3
Contrats Messages
4 5
Schmas
Les applications consomment des services distants, pouvant raliser des tches mtiers
et/ou techniques, en schangeant des messages ( ).
Chaque service possde un contrat qui fournit des spcifications techniques sur les
oprations quil propose (signature, donnes fournir entre, donnes retourne).
et Chaque contrat possde un schma, qui dcrit des messages changes entre les
services et les applications qui les consomment.
3 Conclusion
Dans ce chapitre dintroduction WCF, nous avons vu le concept dapplications distribues et
darchitectures oriente services. Aprs avoir lu ce chapitre, vous devriez tre en mesure de :