2009-09-21 2 views
38

Ich sehe oft die Begriffe "Geschäftslogik" und "Anwendungslogik" in Bezug auf Web-Entwicklung (ich nehme an, dass es auch für die Programmierung im Allgemeinen und nicht nur für die Web-Entwicklung gilt).Geschäfts- und Anwendungslogik?

Das ist ziemlich neu für mich, also weiß ich nicht wirklich, was es bedeutet, kann mir bitte jemand erklären, was genau damit gemeint ist? Ist es nur ein "Schlagwort" von Programmierern? Oder?

+0

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

+5

Das gelistete Duplikat erklärt Geschäftslogik, aber nicht Anwendungslogik. –

Antwort

35

Geschäftslogik ist grundsätzlich Regeln des Systems nach funktionalen Spezifikationen. Zum Beispiel muss Objekt A vom Typ B C und D zugeordnet haben, aber nicht E. Anwendungslogik ist eher eine technische Spezifikation, wie die Verwendung von Java-Servlets und OJB, um in einer Oracle-Datenbank zu bestehen. Am Ende sind das Schlagworte, die helfen, die Ebenen der Technologie in einer Anwendung zu beschreiben. Hoffentlich in dem Bemühen, verschiedene Ebenen getrennt zu halten, um ein besseres Anwendungsdesign zu ermöglichen.

+0

Sauber und einfach. Gute Antwort. :) –

1
+1

Dieser Artikel erklärt kurz die Geschäftslogik, aber nicht die Anwendungslogik. –

+0

Nun, ja, denn die beiden beschreiben das Gleiche. –

+0

Ja, in der Tat, ich hatte Wikipedia schon angesehen und fand es ziemlich ambivalent. Hoffte auf eine genauere Erklärung. –

37

Angenommen, Sie schreiben ein System, das einen Geschäftsbedarf für einen Kunden löst.

Die Summe Ihres gesamten Codes ist die Anwendungslogik oder Systemarchitektur - im Wesentlichen die Gesamtheit des Systems, das Sie erstellen.

Die Geschäftslogik ist die Codeteilmenge, die tatsächliche Geschäftsprozesse modelliert und antreibt. "Was passiert, wenn eine Bestellung für Produkt X aufgegeben wird? Wie werden die Kosten für Produkt Y berechnet?" Ie. die Code-Teile, für die Sie wahrscheinlich eine Eingabe vom Kunden/Domänenexperten/Projekt-Stakeholder benötigen.

Idealerweise ist die Geschäftslogik in eine eigene Schicht oder Schicht unterteilt (see the Wikipedia article on N-tier architecture). Der Rest des Codes kann oft einfach als Infrastruktur zur Unterstützung der Geschäftslogik angesehen werden (Datenbank-Wrapper, Hilfsfunktionen, Service-Fassaden, externe Integration, GUI usw.).

0

Zuerst, was sind die Dinge, die Sie wissen müssen (Eingabe)?

Die Identität der Person, um die Übertragung zu machen Die Menge des Geldes zu Die Quellennummer Die Zielkontonummer Welche Girokonto übertragen werden einige der „Geschäftsregeln“, die angewendet werden müssen?

Die Person, die die Anfrage stellt, muss dazu befugt sein. Die Transaktion muss atomar sein. Die Transaktion kann Reporting-Anforderungen an die Regierung haben, wenn es über eine bestimmte Menge ist Mit "atomaren", ich meine, dass die Transaktion muss vollständig erfolgreich sein oder es muss vollständig fehlschlagen. Sie können keine Kontotransaktionen haben, bei denen Geld von einem Konto abgezogen wird, ohne in das andere zu kommen (Geld verschwindet), oder Geld wird auf ein Konto eingezahlt, aber nicht von einem anderen Konto abgebucht (Geld erscheint magisch aus dem Nichts).

Verwandte Themen