image image image
Introduction au développement en couche
Le déclin de l'informatique au Qc
Devenir un développeur Freelance
Introduction au développement en couche En entreprise, les logiciels les plus fréquemment développés sont des interfaces utilisateurs permettant la gestion d'un ensemble de données tel que les données clients d'une entreprise. Ils veulent pouvoir ajouter, supprimer et modifier les informations de leurs clients. Une base de données permet de stocker leur information.
  Plus ...
Le déclin de l'informatique au Qc Les années 1990 ont connu une fulgurante explosion dans tous les domaines se rapportant à l'informatique et aux nouvelles technologies. Dans ces années, on pouvait voir une quantité phénoménale d'étudiants en informatique qui cherchait à faire fortune dans un domaine en plein essor. La diversité des emplois et le nombre de postes disponibles étaient en constante augmentation.

Plus ...
Devenir un développeur Freelance Avez-vous déjà rêvé d'être un développeur web indépendant; Freelance ? Que vous travailliez pour quelqu'un ou que vous développez pour le plaisir, il y a quelques trucs et conseils que vous pouvez utiliser pour vous faciliter la vie en tant que développeur web indépendant même si vous ne le faites qu'à temps partiel.

Plus ...
Vendredi Septembre 03 , 2010
TEXT_SIZE
   
Erreur
  • Erreur lors du chargement des données de flux.

Articles

Introduction au développement en couche (N-Tier)

En entreprise, les logiciels les plus fréquemment développés sont des interfaces utilisateurs permettant la gestion d'un ensemble de données tel que les données clients d'une entreprise. Ils veulent pouvoir ajouter, supprimer et modifier les informations de leurs clients. Une base de données permet de stocker leur information.

Lors de la démocratisation de l'informatique, dans les premiers programmes de gestion, l'interface utilisateur lisait, modifiait la base de données et enregistrait celle-ci. Très vite, avec l'évolution de ces logiciels, les développeurs ont très vite aperçu les limites de cette technique.

C'est alors que le besoin de travailler sur des couches est apparu en programmation fonctionnelle. Donc, par exemple, pour afficher la liste des clients :
  • La couche présentation (Presentation Layer) : une WinForm affichait la liste qui elle faisait appel à :
  • La couche métier (Business Layer) : une fonction ChargeListe située dans une classe Client sélectionnait les clients qui elle faisait appel à :
  • La couche d'accès aux données (Data Access Layer) : une fonction lisait la base de données.
Cela a par la suite été formalisé en programmation-objet.

** Il arrive parfois qu'on entende parler d'architecture distribuée, cette approche vient du fait que chaque couche est sur un ordinateur différent et peut-être même dans des lieux différents.


Architecture n-tiers

Dans une architecture n-tier, si on fait abstraction de tout, on peut résumer ceci par : Chaque couche est le client d'une couche et le serveur d'une autre. Le cas le plus fréquent de ce type d'architecture est le modèle Client/Serveur qui est en 2-tiers.
  • Tier « Client » – contiens l'interface utilisateur, adresse des requêtes au serveur.
  • Tier « Serveur » - contiens la base de données. Reçois les requêtes, renvoi des données.

 
Dans les modèles 3-tiers et plus, il existe des composants intermédiaires qu'on appelle middleware.
 

Un exemple typique d'un système 3-tier est le suivant :

  • Tier de présentation – contiens l'interface utilisateur. Utilisation des différents types de clients léger (Web, ASP, JSP ...) ou lourd (Swing, WinForm ...).
  • Tier métier - contiens la logique des traitements.
  • Tier d'accès à la base de données – Les programmes du deuxième tier font appel à ce dernier pour consulter ou mettre à jour les données relatives à l'entreprise.
Sur le même schéma, on peut ajouter des couches supplémentaires et obtenir une architecture 4, 5, …, n-tier.
 

Un exemple d'architecture à 5 couches :

  • Couche présentation : Contient tous les composants graphiques du module composant l'interface homme-machine (fenêtres, contrôle utilisateur…) avec le code propre à l'affichage de leur représentation et de leur contenu. Cette couche ne peut référencer que les couches « Référence » et « Application ». ** Mettre le moins de code possible dans cette couche.
  • Couche application : Contient tous les contrôleurs de cas d'utilisation du module. Cette couche assure le lien entre les composants graphiques et les composants métier. Cette couche ne peut référencer que les couches « Métier », « Persistance » et « Référence ».
  • Couche métier : Contient tous les composants métier dont le module. Ces composants métier ont en charge la gestion du cycle de vie des objets métier géré par le module. Cette couche ne peut référencer que les couches « Référence » et « Persistance ».
  • Couche référence: Cette couche contient les objets de données pures qui transitent entre toutes les autres couches. Ces objets sont aussi parfois nommés DataValues ou DataObjects.
  • Couche persistance : Contient les composants assurant le « mapping » entre les objets définis dans la couche Métier et les composants de stockage définis dans la base de données. Cette couche ne peut référencer que les couches « Référence » et la base de données. Concrètement, il s'agit de la seule couche ayant un lien avec la base de données.


Architecture 3 tiers:

L'architecture 3-tier vise à séparer trois couches logicielles au sein d'une même application, à modéliser et à présenter cette application comme un empilement de trois couches dont le rôle est clairement défini :
  • La présentation des données : correspondant à l'affichage, la restitution sur le poste de travail, le dialogue avec l'utilisateur.
  • Le traitement métier : correspondant à la mise en œuvre de l'ensemble des règles de gestion et de la logique applicative, c’est à ce niveau que se trouvent toutes les règles de gestion, et toute l’intelligence de la démarche.
  • L'accès aux données : correspondant aux données qui sont destinées à être conservées.

Relation entre les couches

Les services d'une couche sont mis à disposition de la couche supérieure. On s'abstient alors lorsqu'on programme, qu'une couche invoque les services d'une couche plus basse que la couche immédiatement inférieure ou plus haute que la couche immédiatement supérieure (chaque niveau ne communique qu'avec ses voisins immédiats). Voir les flèches sur le schéma suivant :
 

 

Astuces : Mettre en place une solution N-Tier sous Visual Studio

Pour mettre en place une application N-tiers en .NET, voici comment débuter le tout avec Visual Studio :
  • Créer une solution vierge qui s'occupera de contenir les différentes couches de ton application.
  • Créer un projet Web ou Windows que tu peux appeler UI (User Interface) par exemple dans cette solution. Ce premier projet de ta solution représente la couche « Présentation ».
  • Créer d'autres projets de type "Bibliothèque de classes". Soit un projet pour ta couche « Métier (Businesse Logic Layer) », un projet pour la couche « d'accès aux données (Data Access Layer) » et ainsi de suite.
Vu: 10928
Commentaires (12)Add Comment
rien
Par Salut , avril 18, 2010
salut rien lool
mmmmmmmmm
Par mmmmm , mai 20, 2010
Not too bad
dress up games
Par dress up games , juin 09, 2010
I definitely enjoying every little bit of it I have you bookmarked to check out new stuff you post.
slt
Par rochna , juillet 21, 2010
je programme avec une architecture 2 tiers je vx savoir s'il ya une difference entre les deux(2 tiers et 3 tiers) SVP
...
Par writing online , juillet 28, 2010
Especially i liked the schemes because they are very easy to understand
lace wigs
Par cocoli , août 06, 2010
A lace front wig is a normal wig that contains lace within the first few inches of the hairline for a natural appearance. Some lace front wigs include lace near the hairline as well as near the nape of the neck. A traditional lace wigs solely has lace in the front.
wedding invitations
Par wedding , août 06, 2010
may be hard on your budget because of the technique used to create this type of junior bridesmaid dresses.This handcrafted cheap hair extensions is elegant and refined but needs to be done by a skilled calligrapher who may be difficult to find.
gain muscle mass
Par gain muscle mass , août 14, 2010
Pour mettre en place une application N-tiers en .NET, voici comment débuter le tout avec Visual Studio. El gain muscle mass pronto.
...
Par tyy , août 19, 2010
catalog-gucci-jewelry-23
...
Par evening dresses , août 23, 2010
Das Bikde mal putzen” - kam mir auch direkt in den
Air Max
Par Air Max , septembre 02, 2010
What a fun pattern! It's great to hear from you and see what you've sent up to. All of the projects look great! You make it so simple to this.Thanks!
Ferrari 1947 Limited Edition
Par Ferrari 1947 Limited Edition , septembre 02, 2010
vNice information, valuable and excellent design, as share good stuff with good ideas and concepts, lots of great information and inspiration, both of which we all need, thanks for all the enthusiasm to offer such helpful information here.

Ecrivez un commentaire
Réduire l'éditeur | Agrandir l'éditeur

busy

Réseaux sociaux

Add this page to Blinklist Add this page to Del.icoi.us Add this page to Digg Add this page to Facebook Add this page to Furl Add this page to Google Add this page to Ma.Gnolia Add this page to Newsvine Add this page to Reddit Add this page to StumbleUpon Add this page to Technorati Add this page to Yahoo

Connexion

Publicités

MeilleursPrix.ca

Services offerts

image

Développement Web

Que ce soit pour faire la conception d'un site Web ou pour la refonte d'un site existant, nous avons la solution.

La création et la conception Web sont au cœur de nos activités. Chaque concept et création sont différents, et chaque client est unique. Rien n’est laissé au hasard pour faire de votre création multimédia un outil unique de promotion.

image

Développement Windows

Quel que soit votre projet, nous pouvons le réaliser pour vous !

Grâce à notre expertise en programmation, nous sommes en mesure de concevoir une variété d’applications qui pourront vous permettre d’augmenter votre clientèle, de la fidéliser ou encore de réduire vos coûts d’opération ! Nos critères élevés de contrôle de qualité ainsi que la grande expertise de nos programmeurs et de nos chargés de projets contribuent au succès des mandats qui nous sont confiés.

image

Base de données

...
image

Autres

Quel que soit vos projets ou vos idées, contactez nous!

Grâce à notre expérience et notre expertise en informatique, nous serons en mesure d'évaluer vos projets et nous pourrons trouver une solution à vos problèmes. Que ce soit de la programmation ou de la base de données ou bien tout autres problèmes informatiques, contactez nous, nous serons là pour vous.