AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Datenzugriffs-Schicht

Ein Thema von hanspeter · begonnen am 6. Nov 2007 · letzter Beitrag vom 6. Nov 2007
Antwort Antwort
hanspeter

Registriert seit: 26. Jul 2003
Ort: Leipzig
1.350 Beiträge
 
Delphi XE2 Professional
 
#1

Datenzugriffs-Schicht

  Alt 6. Nov 2007, 09:16
Hallo,
wird sind gerade in der Planung einer Datenbankzugriffs-Schicht für ein größeres Projekt.
Da gibt es verschiedene Lösungsansätze zur Zwischenspeicherung der Daten.
Mich würde interessieren, welche Lösung Ihr favoritisieren würdet und warum.

Als Server dient ein Firebird Server. Der Zugriff erfolgt über Ibobjects oder Fibplus.

Variante 1.
Die gewünschten Daten werden in einem Memorydataset bereitgestellt.
Vorteil: Tabellenstruktur bleibt erhalten. Über CachedUpdate ist ein sauberes transactionsgesteuertes
Update/Insert möglich.
DB-sensitive Komponenten können verwendet werden.
Weniger Programmieraufwand.
Bessere Erweiterbarkeit
Nachteil Overhead von MemDataset. Weniger flexibel.

Variante 2
Speicherung in eigenen Klassen und Listen.

Also
TData = Class
Kundennr : string;
PLZ : String ...

Vorteil: flexibler in der Anwendung, schneller als Memdataset.
Nachteil: Höherer Programmieraufwand, Erweiterungen ziehen Änderungen im Quellcode nach sich.

Es gibt wohl noch eine dritte Varinte mit einem Applicationsserver. Da fehlt mir aber noch die Erfahrung.

Was mich interessiert, welche Variante würdet Ihr empfehlen?
Gibt es noch eine weitere Variante.


Mit Gruß
Peter
  Mit Zitat antworten Zitat
majmarcus

Registriert seit: 24. Jul 2005
Ort: Neulengbach
3 Beiträge
 
RAD-Studio 2009 Pro
 
#2

Re: Datenzugriffs-Schicht

  Alt 6. Nov 2007, 15:25
Hallo hanspeter,

ich gehe davon aus, dass du ein paar gedanken anderer lesen möchtest und nicht die ultimative Antwort erwartest .
Ab mittelgroßen Projekten (>1000PT) und/oder dort wo mehrere Client-Systeme zumindest angedacht sind wird bei uns auf einem klassischen Mehrschichtensystem aufgesetzt. Grob gesagt gibt es Klassen die für die gesamte Persistenz (DB-Zugriffe, Dateien, usw.) zuständig sind, die Business-Schicht mit der eigentlichen Logik und dann natürlich die Präsentationsschicht. Alles jetzt recht Grob erklärt.

Bei kleinen Projekten oder wo nicht andere wirklich gute Gründe für eine Mehrschichtapplikation vorliegen geht die Kosten/Nutzen Rechnung einfach nicht auf und es wird 2-Schicht orientiert programmiert.

Zitat:
Erweiterungen ziehen Änderungen im Quellcode nach sich.
Trifft auf beide deiner genannten Varianten zu. Aus unserer Erfahrung ist bei halbwegs guter Schichtenarchiktur ist im Mehrschichtbereich sogar tendenziel weniger zu tun.

Was fehlt ist, das Mehrschicht-Applikationen besser auf Teams verteilt werden können und letztlich auch der Test davon profitieren kann.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:20 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz