2009-09-21 14 views
38

Je vois souvent les expressions «logique métier» et «logique applicative» en termes de développement web (je suppose que cela s'applique aussi à la programmation en général plutôt qu'au développement web).Business et logique d'application?

Ceci est tout à fait nouveau pour moi, donc je ne sais pas vraiment ce que cela signifie, quelqu'un pourrait m'expliquer s'il vous plaît ce que cela signifie exactement? Est-ce juste un «mot à la mode» utilisé par les programmeurs? Ou?

+0

Dupliquer: http://stackoverflow.com/questions/1441202/why-is-it-called-business-logic-where-did-this-term-come-from –

+5

La copie répertoriée explique la logique métier, mais pas logique d'application. –

Répondre

35

logique métier est essentiellement 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. Application Logic est davantage une spécification technique, comme l'utilisation de servlets Java et d'OJB pour persister dans une base de données Oracle. En fin de compte, ce sont des mots à la mode pour aider à décrire les niveaux de technologie dans une application. Espérons que dans un effort de garder les différents niveaux séparés faisant un meilleur design d'application.

+0

Propre et simple. Bonne réponse. :) –

1
+1

Cet article explique brièvement la logique métier, mais pas la logique d'application. –

+0

Eh bien, oui, parce que les deux décrivent la même chose. –

+0

Oui, en effet, j'avais déjà regardé Wikipédia et je l'ai trouvé assez ambigüe. Espérait une explication plus concise. –

37

Dites que vous écrivez un système qui répond aux besoins d'un client.

La somme de tout votre code correspond à la logique de l'application ou à l'architecture du système, soit l'intégralité du système que vous construisez.

La logique métier est le sous-ensemble de codes qui modélise et pilote les processus métier réels. "Que se passe-t-il lorsqu'une commande de 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'informations de la part de l'expert client/du domaine/du partenaire du projet.

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

0

D'abord, quelles sont les choses que vous devez savoir (entrée)?

L'identité de la personne qui effectue le transfert Le montant d'argent à transférer Le numéro source de compte-chèques La cible de vérification numéro de compte Quelles sont quelques-unes des « règles métier » qui doivent être appliquées?

La personne qui fait la demande doit avoir l'autorisation de le faire. La transaction doit être atomique. La transaction peut avoir des exigences de déclaration au gouvernement, si elle est sur un certain montant Par "atomique", je veux dire que la transaction doit complètement réussir ou il doit complètement échouer. Vous ne pouvez pas avoir des transactions de compte où l'argent est retiré d'un compte sans arriver dans l'autre (l'argent disparaît), ou l'argent est déposé dans un compte, mais pas débité d'un autre compte (l'argent apparaît de nulle part).