web-dev-qa-db-fra.com

Logique métier et applicative?

Je vois souvent les expressions "logique métier" et "logique applicative" en termes de développement Web (je suppose que cela s'applique également à la programmation en général plutôt qu'au développement Web).

C'est assez nouveau pour moi, donc je ne sais pas vraiment ce que cela signifie, quelqu'un pourrait-il m'expliquer ce que cela signifie exactement? Est-ce juste un "mot à la mode" utilisé par les programmeurs? Ou?

44
Waleed Amjad

La logique métier est essentiellement des règles du système selon les spécifications fonctionnelles. Par exemple, l'objet A de type B doit avoir attribué C et D, mais pas E. La logique d'application est davantage une spécification technique, comme l'utilisation de Java servlets et OJB pour persister dans une base de données Oracle. In La fin, ce sont des mots à la mode pour aider à décrire les niveaux de technologie dans une application.

37
Jay

Supposons que vous écriviez un système qui résout un besoin commercial pour un client.

La somme de tout votre code correspond à la logique de l'application ou à l'architecture du système - essentiellement l'intégralité du système que vous créez.

La logique métier est le sous-ensemble de code qui modélise et pilote les processus métier réels. "Que se passe-t-il lorsqu'une commande pour le produit X est passée? Comment le coût du produit Y est-il calculé?" C'est à dire. les bits de code pour lesquels vous avez probablement besoin d'une contribution du client/expert du domaine/partie prenante du projet.

Idéalement, la logique métier est séparée en son propre niveau ou couche ( voir l'article Wikipédia sur l'architecture N-tier ). Le reste du code peut souvent être simplement considéré comme une infrastructure pour aider cette logique métier à s'exécuter (wrapper de base de données, fonctions d'assistance, façades de service, intégration externe, interface graphique, etc.).

43
thomanil

Ce n'est peut-être pas très précis, mais j'utilise la réflexion suivante pour déterminer s'il s'agit d'une application, d'une logique métier ou autre:

flowchart

2
Vanuan