Qu’est-ce que la logique de domaine?

Qu’est-ce que la logique de domaine? La page Wikipedia pour la logique de domaine redirige vers la logique métier. Sont-ils la même chose et, sinon, en quoi diffèrent-ils?

Le domaine est ce que vous modélisez.

Si vous modélisez un problème d’entreprise, c’est la même chose.

Si vous modélisez autre chose, la physique par exemple, il n’y a probablement pas de logique métier dans votre système, mais les composants physiques sont toujours la logique du domaine.

Le domaine est le monde dans lequel votre application vit. Donc, si vous travaillez sur un système de réservation de vol, par exemple, le domaine d’application serait les réservations de vol.

Business Logic, quant à lui, est un bloc plus discret de l’ensemble du domaine d’application. Business Logic est généralement un bloc de code conçu pour exécuter un processus métier spécifique. Vous auriez donc une logique métier pour prendre une réservation. Un autre élément de logique métier serait le code pour rembourser les billets annulés.

Les objects qui supportent votre processus métier deviennent alors vos objects métier!

La logique métier est téléologique (concernant la manière d’atteindre un objective) alors que la logique de domaine est ontologique (ce qui existe ou le modèle d’object utilisé pour raisonner)

Logique métier spécifique à un domaine / domaine d’expertise particulier.

La logique de domaine s’applique au domaine problématique, par exemple “traitement des commandes”. La logique de domaine concerne les entités avec lesquelles vous travaillez (le modèle object) et leurs relations.

La logique métier contient des règles spécifiques à votre contexte, par exemple “les commandes des clients du groupe X doivent être traitées en utilisant la remise Y si elles dépassent le montant Z”. Business “logic” consiste à coder des faits sur votre entreprise (ou sur l’entreprise du client qui utilise le programme).

Couvrons un scénario.

Vous avez un client pour la retenue XYZ et il veut que vous rendiez son système en ligne.
Où l’utilisateur peut passer une commande en ligne, les suivre, effectuer un paiement, etc.

Du sharepoint vue du client, ce système serait appelé Business Idea tandis que “passer une commande en ligne” serait un processus métier et si l’utilisateur passe une commande en ligne, il souhaite afficher chaque détail de l’utilisateur, etc. être la logique métier .

Vous allez maintenant modéliser son idée d’entreprise dans votre sharepoint vue de manière à ce que votre système puisse accomplir tous ses processus métier ou son idée d’entreprise complète, à savoir le domaine de problème, le domaine d’ application ou le domaine de votre application .

Vous allez maintenant identifier tous les processus métier. Et identifier des entités ou des objects pour accompagner les processus métier. Ces objects seraient Business Object ou Domain Object, ainsi que la méthode ou la logique implémentant un processus métier tel que placeOrder appelé Domain Logic .

Ainsi , la logique métier correspond à ce que le client souhaite, car son implémentation est la logique du domaine métier client et du domaine . parce que c’est dans votre domaine d’application.

Je dirais que la Business Logic est liée à:

Toute logique ou association entre entités du domaine.

Alors, comment un étudiant se rapporte-t-il à une classe ou à un étudiant? Comment une nouvelle classe est-elle créée et comment enregistrez-vous un étudiant pour cette classe?

Tout ce qui concerne les règles métier, la détermination des résultats, des services, des événements, des processus, des calculs, des transformations et des manipulations / créations de données associées.

J’ai eu du mal à trouver de bons livres / enseignants pour aider à structurer la logique de domaine. Il est facile de structurer le domaine. Mais la logique du domaine me semble être un endroit où personne ne veut aller.

Mon domaine est pharmaceutique. Il traite des compartiments, des doses, des équations différentielles et des statistiques. Si vous voulez appeler ça mon “business”, alors je suppose que c’est la “logique métier”.

  • La logique métier consiste à coordonner les interactions valides entre la vue et le modèle (interface utilisateur et données).
  • La logique de domaine consiste à conserver une représentation de modèle cohérente en interne des deux côtés de l’application (client et serveur).