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

 .NET Discussion :

compréhension : La couche BO(Business Object)


Sujet :

.NET

  1. #1
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2007
    Messages
    643
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2007
    Messages : 643
    Points : 305
    Points
    305
    Par défaut compréhension : La couche BO(Business Object)
    Salut à tous,

    Je débute en C# et j'essaye d'avoir une idée précise de la façon d'architecturer mon application avant de me lancer bêtement. Je suis tombé sur un très bon document expliquant le développement en couches en C# et j'ai assez bien compris le principe sauf pour une couche.

    http://morpheus.developpez.com/architecture/

    Il s'agit de la couche BO(Business Object).Je sais que cette couche peu être créé automatiquement grâce à Entity Framework et quelle retranscrit les données en base par des classes dans le code .NET.

    Mais comment ces classes d'objet métier sont-elles remplis ?
    De plus, une fois rempli comment celle-ci sont gérer pour être mise à jour ?

    Dans le cadre d'une architecture multicouche
    - GUI Graphical User Interface)
    - BO Business Objects
    - BLL Business Logic Layer
    - DAL Data Access Layer

    on a le schéma d'appel suivant :

    GUI ---> BLL ----> DAL

    Mais à quel moment intervient la couche BO et où ?
    Même si je pense avoir compris ce qu'est la couche BO dans le principe, j'ai du mal à comprendre son utilisation dans la pratique.

    Auriez-vous quelques éclairages à m'apporter à ce sujet ?

    Merci d'avance pour votre future contribution

  2. #2
    Rédacteur
    Avatar de Nathanael Marchand
    Homme Profil pro
    Expert .Net So@t
    Inscrit en
    Octobre 2008
    Messages
    3 615
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Expert .Net So@t
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2008
    Messages : 3 615
    Points : 8 080
    Points
    8 080
    Par défaut
    Citation Envoyé par miltone Voir le message
    Salut à tous,

    Je débute en C# et j'essaye d'avoir une idée précise de la façon d'architecturer mon application avant de me lancer bêtement. Je suis tombé sur un très bon document expliquant le développement en couches en C# et j'ai assez bien compris le principe sauf pour une couche.

    http://morpheus.developpez.com/architecture/

    Il s'agit de la couche BO(Business Object).Je sais que cette couche peu être créé automatiquement grâce à Entity Framework et quelle retranscrit les données en base par des classes dans le code .NET.

    Mais comment ces classes d'objet métier sont-elles remplis ?
    De plus, une fois rempli comment celle-ci sont gérer pour être mise à jour ?

    Dans le cadre d'une architecture multicouche
    - GUI Graphical User Interface)
    - BO Business Objects
    - BLL Business Logic Layer
    - DAL Data Access Layer

    on a le schéma d'appel suivant :

    GUI ---> BLL ----> DAL

    Mais à quel moment intervient la couche BO et où ?
    Même si je pense avoir compris ce qu'est la couche BO dans le principe, j'ai du mal à comprendre son utilisation dans la pratique.

    Auriez-vous quelques éclairages à m'apporter à ce sujet ?

    Merci d'avance pour votre future contribution
    Dans un projet simple, ca n'est pas une vraie couche, c'est une couche transversale: les entités sont crées dans la dal, utilisées dans la BLL et affichées dans le GUI.

  3. #3
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2007
    Messages
    643
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2007
    Messages : 643
    Points : 305
    Points
    305
    Par défaut
    Pour ma part j'ai besoin de travail dans un contexte de projet compliqué (en opposition à ton projet simple).

    Je prend bien note de ce que tu me dit mais je ne suis pas sur que ce soit la solution la plus "professionnel" qui soit.

  4. #4
    Expert éminent Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Points : 7 903
    Points
    7 903
    Par défaut
    Wikipedia : Within a BLL objects can further be partitioned into business processes (business activities) and business entities. Business process objects typically implement the controller pattern, i.e. they contain no data elements but have methods that orchestrate interaction among business entities.
    Une BLL peut être divisée en BP (Business Process) et BO (Buisness Objects).
    Les BP ne contiennent pas les données qui sont dans les BO , mais gèrent les interactions entre BO.

    Le schéma GUI ---> BLL ----> DAL deviendrait :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
         | -->  BP --> |    
    GUI -|             |- BO ---> DAL      
         | --------->  |
    " Le croquemitaine ! Aaaaaah ! Où ça ? " ©Homer Simpson

  5. #5
    Rédacteur
    Avatar de Nathanael Marchand
    Homme Profil pro
    Expert .Net So@t
    Inscrit en
    Octobre 2008
    Messages
    3 615
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Expert .Net So@t
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2008
    Messages : 3 615
    Points : 8 080
    Points
    8 080
    Par défaut
    Citation Envoyé par miltone Voir le message
    Pour ma part j'ai besoin de travail dans un contexte de projet compliqué (en opposition à ton projet simple).

    Je prend bien note de ce que tu me dit mais je ne suis pas sur que ce soit la solution la plus "professionnel" qui soit.
    Simple ne signifie pas non-professionnel!
    L'autre solution serait d'avoir des DTO entre toutes les couches. Les BO seraient donc utilisés uniquement dans la BLL. C'est une infra très lourde puisqu'il faut convertir un objet à chaque traversée de couche: il faut des contraintes qui le nécessite vraiment!
    J'ai sous les yeux le Microsoft Application Architecture Guide et eux aussi recommandent des BO transverses (jusqu'à la couche service).

  6. #6
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2007
    Messages
    643
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2007
    Messages : 643
    Points : 305
    Points
    305
    Par défaut
    En fait je pencherais plus sur le fait de passer par des POCO dans ma couche BO mais je ne comprends pas comment gérer les liaisons avec ma DAL si mes POCO non pas de gestion de persistance ?

    quel seraient les appels succéssif de methodes et de classes de la couche GUI jusqu'a la DAL en passant absolument par mes BO ?

  7. #7
    Rédacteur
    Avatar de Nathanael Marchand
    Homme Profil pro
    Expert .Net So@t
    Inscrit en
    Octobre 2008
    Messages
    3 615
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Expert .Net So@t
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2008
    Messages : 3 615
    Points : 8 080
    Points
    8 080
    Par défaut
    Citation Envoyé par miltone Voir le message
    En fait je pencherais plus sur le fait de passer par des POCO dans ma couche BO mais je ne comprends pas comment gérer les liaisons avec ma DAL si mes POCO non pas de gestion de persistance ?

    quel seraient les appels succéssif de methodes et de classes de la couche GUI jusqu'a la DAL en passant absolument par mes BO ?
    Il faut que tu regardes du côté du pattern repository pour faire ta DAL.

  8. #8
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2007
    Messages
    643
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2007
    Messages : 643
    Points : 305
    Points
    305
    Par défaut
    Malheureusement je ne trouve que peu d'informations sur ce pattern et cela complexifie encore plus mon incompréhension.

    J'aimerais pouvoir me faire une idée (et une architecture surtout) simple de comment organiser mon code pour ma 1e vrai application un peu sérieuse avec des principes de professionnels.

    Mais je tombe vite dans l'excès et la démesure d'explication hyper méga technique dans lesquelles je me noie plus qu'autre chose. J'ai vraiment du mal à avancer.

    Si on pouvait m'aider à finaliser et comprendre mon architecture actuelle, cela serait plus constructif pour moi. Je pense que j'ai déjà le très gros de ma structure déjà pensé. Reste le détail de la couche BO que j'ai encore du mal à comprendre.

Discussions similaires

  1. problème de conversion de dimension dans BUSINESS OBJECT
    Par greatmaster1971 dans le forum Deski
    Réponses: 4
    Dernier message: 28/04/2014, 13h15
  2. [BO INFOS]Logiciel Business Object
    Par cassi dans le forum Débuter
    Réponses: 8
    Dernier message: 29/11/2004, 14h20
  3. Dephi Business Object Framework comment faire ?
    Par phplive dans le forum Bases de données
    Réponses: 6
    Dernier message: 17/11/2004, 16h05
  4. requetes BUSINESS OBJECT sur une base ACCESS
    Par greatmaster1971 dans le forum Deski
    Réponses: 1
    Dernier message: 06/10/2004, 14h10
  5. Notion de boucles dans Business Object
    Par lionelEIGIP dans le forum Deski
    Réponses: 1
    Dernier message: 08/04/2004, 11h26

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