2012-04-15 13 views
1

Ich möchte n-Tier-Architektur mit einem Repository-Muster erstellen. Ich frage mich, macht es Sinn, alle meine Anrufe nur durch die BLL-Schicht zu duplizieren und dann auf Daten nur Anrufe über die BLL zuzugreifen? Oder kann ich einige Dinge direkt über die DAL und einige über die BLL zugreifen?Wenn ich eine BLL verwende sollte ich noch auf die DAL zugreifen?

+0

Ich persönlich zugreifen nur meine dal durch meine bll und wird die Anrufe duplizieren. Sie wissen nie, wann Sie eine Geschäftslogik hinzufügen müssen, und es ist viel einfacher, den Anruf in der blll zu ändern, als einen neuen Anruf zur bll hinzufügen zu müssen. –

+0

Wie definieren Sie "Daten nur Anrufe"? Warum fühlst du dich in der BL "Duplizieren von Anrufen"? Welche Technologie programmieren Sie (Winforms, Webforms, MVC ...?)? –

Antwort

1

IMO es macht keinen Sinn, nur für sie zu duplizieren.
(wenn auch wirklich jeder Ansatz seine Vor- und Nachteile hat, ist nichts immer falsch oder per se gut)

der Regel allerdings mit zum Beispiel Angebote Datenschicht (vereinfacht) ein wenig ‚granuliert‘ Daten, die Tabellen genau usw. entsprechen

Während Ihre Business-Schicht könnte das kombinieren und ist mehr um die "Logik" und Ihr logisches Modell (dann das Datenmodell und die Daten) zentriert.

Wenn Sie eine genaue Replik der DAL in Ihrer Business-Schicht haben, dann vermissen Sie höchstwahrscheinlich einen Punkt. Einige Dinge müssen möglicherweise neu organisiert, weggeworfen oder einfach vereinfacht werden.

oder z.B. Fragen Sie sich selbst - wenn Sie z. Ersetzen Sie die DAL durch verschiedene Arten von Speicher (unterschiedliche Organisation der Dinge oder alles, was Sie ändern müssen, wie Ihre Daten/DAL funktioniert) - wie wird Ihr BLL aussehen? Das Gleiche? Ihre Geschäftsschicht sollte nicht "den Daten folgen" - sie sollte ihre eigenen Regeln haben, mehr wiederum über die Logik Ihrer Domäne, was Sie tun. Während Daten sollten über Daten sein.

Kurz gesagt ist die Frage hauptsächlich, wie Sie Ihr System entwerfen - wenn Sie eine Business-Schicht gut nutzen (und normalerweise sollten Sie, wenn es nicht relativ einfach ist oder Sie sich beispielsweise für eine völlig andere Architektur entscheiden), dann verwenden Sie es, Wenn nicht, müssen Sie nicht duplizieren.

hoffe das hilft.

Verwandte Themen