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

Autres Discussion :

technologie objet et architecture n-tiers


Sujet :

Autres

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    PhD Student, Engineer, Teaching Assistant
    Inscrit en
    Juillet 2010
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : PhD Student, Engineer, Teaching Assistant

    Informations forums :
    Inscription : Juillet 2010
    Messages : 17
    Points : 32
    Points
    32
    Par défaut technologie objet et architecture n-tiers
    Bonjour,

    Contexte

    Dans le cadre d'une refonte de mon application web (PHP) je cherche à mettre en pratique une architecture simple, efficace, ... combinée à la technologie objet.

    Or je me heurte depuis un long moment à ce qui me paraît être une incompatibilité entre l'architecture N-tiers et la méthodologie objet. Si vous pouviez m'éclaircir les idées, je vous serez reconnaissant.


    Définition

    La technologie objet:
    - type = module = classe
    - une classe est composée de caractéristiques (attributs et routines)

    Architecture N-tiers:
    - couche DAL
    - couche métier
    - couche de presentation

    - manipulation d'objet métier (DTO)


    Doute
    J'ai pu constater que les classes métiers contenaient uniquement des attributs, accesseurs et modifieurs. Et que les traitement s'effectués dans des classes de collection de fonction.
    Mais n'est ce pas en soi une "aberration" de la méthodologie objet?
    J'ai l'impression que les classes sont aux services des fonctions, procédures, ce qui est contraire à la raison de la naissance de la technologie objet.


    La logique métier ne devraient-elle pas être incluse dans les objets métiers?

    Dans une vision N-tiers les classes seraient-elles devenus de simple conteneur? Les classes métiers, des types sans aucunes opérations?


    Merci de votre aide.

  2. #2
    Membre émérite
    Inscrit en
    Janvier 2011
    Messages
    805
    Détails du profil
    Informations personnelles :
    Localisation : Autre

    Informations forums :
    Inscription : Janvier 2011
    Messages : 805
    Points : 2 918
    Points
    2 918
    Par défaut
    Première précision : il faut bien faire la différence entre N-tier qui décrit la distribution physique d'une application (les tiers étant habituellement séparés les uns des autres par le réseau, ex : tiers client, tiers serveur d'application, tiers serveur de BDD) et application en couches qui décrit le découpage logique du code. Les deux se confondent souvent mais pas toujours.

    Dans ton cas tu sembles parler des couches applicatives.

    Citation Envoyé par Conaclos Voir le message
    Mais n'est ce pas en soi une "aberration" de la méthodologie objet?
    J'ai l'impression que les classes sont aux services des fonctions, procédures, ce qui est contraire à la raison de la naissance de la technologie objet.
    Tu as raison, orienté objet implique théoriquement encapsulation des données et des comportements dans les objets métier. Lorsque ce n'est pas le cas et que toute la logique métier se trouve dans des services (l'équivalent de ce que tu nommes classes de collection de fonction) certains qualifient la chose d'anti-pattern (Anemic Domain Model). Il y a débat dans la communauté pour savoir si et quand c'est vraiment une mauvaise pratique ou non.

    Rassure toi, il n'y a pas du tout incompatibilité entre N-Tier (ou multi-layer) et orienté objet, si tu te sens plus à l'aise avec une logique encapsulée dans les objets métier, n'hésite pas à le faire. Certaines méthodes de conception (DDD) sont même fondées autour de ce concept. Cela a notamment pour avantage un code qui colle plus aux vrais concepts métier et plus lisible car moins épars ; en revanche attention à bien attribuer les bonnes responsabilités aux bons objets.

Discussions similaires

  1. Architecture 3 tiers : quelle est la véritable nouveauté ?
    Par unix27 dans le forum Langages de programmation
    Réponses: 8
    Dernier message: 11/03/2007, 18h21
  2. [N-Tier] Problème conception architecture 3-tiers
    Par Royd938 dans le forum Autres
    Réponses: 3
    Dernier message: 17/06/2005, 11h47
  3. [info] Architecture 3-tiers
    Par Shiryu44 dans le forum Servlets/JSP
    Réponses: 22
    Dernier message: 29/03/2005, 10h30
  4. [VB.NET] Architecture n-tiers
    Par Dnx dans le forum ASP.NET
    Réponses: 2
    Dernier message: 08/02/2005, 19h10
  5. [Design Patterns] Architecture 3 tiers
    Par HPJ dans le forum Design Patterns
    Réponses: 1
    Dernier message: 29/07/2003, 11h49

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