Wie definieren Sie den Unterschied zwischen business-Modell und ein Daten-Modell?

Ich sehen, der Begriff wird Häufig verwendet, als ob es einen konkreten Unterschied zwischen den beiden, bei der Diskussion über MVC für OO-Sprachen. Von dem, was ich von Zusammenhang ist es Geschäftsmodelle, die eine Aktion ausführen zu mutieren der Daten die Modelle. Ist das eine korrekte Art und Weise zu äußern, den Unterschied.

Ich denke, was mich verwirrt ist aber, dass die meisten Beispiele von Modellen mischen beide diese Rollen und auf der Oberfläche fühlt es sich natürlich, das zu tun. Oft werden die Methoden, die Objekte ändern Staaten sind innerhalb dieser Objekte selbst. Ich denke, dass ich Schwierigkeiten haben, kommen mit einem Beispiel, wie das funktioniert in der realen Welt. Es scheint mehr Natürliche Methoden, die ein Objekt ändern, werden innerhalb dieses Objektes. Kann einer erklären, das ein wenig klarer?

  • Business Modell-und Daten-Modell nichts zu tun haben mit MVC. Es spielt keine Rolle, was das front-end ist (MVC, Silverlight, ...), es sollte getrennt werden von Ihrem Business Layer und Data Layer.
  • Wenn Sie sagen, dass "oft die Methoden, die Objekte ändern Staaten sind innerhalb dieser Objekte selbst" Sie sind (wahrscheinlich) sprechen von Active Record pattern. Bitte siehe meine Antwort unten.
  • Seine interessant, dass alle Antworten bisher, davon ausgehen, die Nutzung einer Datenbank. Ich weiß nicht, dass das Datenmodell bezieht sich notwendigerweise auf Datenbanken. Einige Programme, auch große mit den großen Architekturen verwenden Sie nicht eine Datenbank auf die alle, einige nicht einmal die Persistenz der Daten. So bedeutet dies, dass Sie nicht Daten-Modell. Ich meine das nicht genommen werden unsanft, aber es macht mich Frage mich, wie dies gilt auch für Anwendungen im Allgemeinen und nicht nur diejenigen, die funktionieren, nutzen Sie eine Datenbank...
  • diese Frage ist zu MVC - also es bedeutet, dass es eine Daten-Modell. Aber es nicht bedeutet, die Existenz einer Datenbank, nur, dass mindestens eine Datenquelle vorhanden ist (es könnte sein, eine xml-Datei, zum Beispiel, eben wie ich sagte, auf meine Antwort unten).
InformationsquelleAutor startoftext | 2010-09-24
Schreibe einen Kommentar