AGB  ·  Datenschutz  ·  Impressum  







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

Suche OOP-Modell für Projekt

Ein Thema von Kuonrat · begonnen am 19. Mär 2008 · letzter Beitrag vom 20. Mär 2008
Antwort Antwort
Kuonrat

Registriert seit: 27. Okt 2006
Ort: Berlin
33 Beiträge
 
#1

Suche OOP-Modell für Projekt

  Alt 19. Mär 2008, 00:25
Ich würde gerne mein Projekt (siehe unten), in OOP Art und Weise realisieren. Ich bin mit der rein praktischen Anwendung im Code bewandert, wie man Objekte erzeugt, einbindet etc. Was mir fehlt ist viel mehr das theoretische Denken, objektorientiert Denken! Sich das Programm und die Bestandteile in Objekte vorzustellen, da harpert es bei mir stark, vielleicht könnt ihr mir Vorschläge oder Anregungen geben.

Es handelt sich um ein Projekt, dass über ein Netzwerk ausgeübt wird. Es gibt mehrere Clients und einen Server. Die Clients stellen verschiedene Kassen dar (Supermarkt, Kaufhaus, Schreibwarengeschäft, usw.) in denen Kunden einkäufe erledigen können, dabei wird, wenn der Warenkorb gefüllt ist, die "EC"-Kartenr. des Kunden eingegeben, so dass sein Geld vom Bank-Server angebucht werden kann. Dabei wird dann auch ebend mitgeloggt, was er eingekauft hat. Die Kunden selber sind gespeichert und können bearbeitet (Daten) oder neue Kunden angelegt werden, selbiges gilt für die Artikellisten.

Also, vielleicht hat ja jemand eine Idee, denn bis auf GUI und "Rest" als Objekteinteilung, fällt mir so spontan nix ein.

Wäre dankbar



P.S.: Wo wir schon bei dem Projekt sind, hat jemand eine einfache Idee für die Datenspeicherung (Kunden, Artikel)? Ich dachte an typisierte Dateien oder XML, weiß nicht was besser ist, XML hab ich noch nicht ausprobiert und typisierte Dateienf and ich bisher etwas umständlich.
  Mit Zitat antworten Zitat
Benutzerbild von dajuhsa
dajuhsa

Registriert seit: 20. Apr 2007
397 Beiträge
 
Turbo Delphi für Win32
 
#2

Re: Suche OOP-Modell für Projekt

  Alt 19. Mär 2008, 00:55
wenn du kunde für kunde speichern möchtest, ist eine typ. Datei eigentlich eine gute Lösung, oder eben eine ini-datei.

ein paar Klassen-Vorschläge:
Delphi-Quellcode:
type

TArtikel = (Apfel,Papier,Eier,Buch,...(*kA was es da alles gibt*));

TKunde = class(TObject)
public
  ECNummer: Integer;
  zuletztGekauft: Array of TArtikel;
  Warenkorb: Array of TArtikel;
  procedure WarenkorbGefuellt(AKasse:TKasse);
  procedure AddToWarenkorb(AArtikel:TArtikel);
end;

TKasse = class(TObject)
public
  Kunden: Array of TKunde;
  GekaufteArtikel: Array of TArtikel;
  ErhaltenesGeld: Integer;
  function GetVerfuegbareArtikel: Array of TArtikel;virtual;abstract;
end;

TSupermarkt = class(TKasse)
public
  GetVerfuegbareArtikel:Array of TArtikel;override;
end;

TBank = class(TObject)
public
  Clients: Array of TKasse;
  function GetErhaltenesGeld:Integer;
  function GetKundenzahl:Integer;
end;

... //usw.
ich hoffe, dieser Vorschlag ist so etwa in deinem sinne, wenn nicht, tuts mir leid
das Essen ist wie das Internet - Downstream ist immer angenehmer als Upstream
-
Warum missbraucht die ganze Programmierwelt Images als Paintboxen
  Mit Zitat antworten Zitat
Dax
(Gast)

n/a Beiträge
 
#3

Re: Suche OOP-Modell für Projekt

  Alt 19. Mär 2008, 01:05
Öffentliche Felder sind böse, das sollte über Properties abgewickelt werden - und statt Arrays bitte TList-Nachfahren verwenden, sonst macht das keinen Sinn.
  Mit Zitat antworten Zitat
Kuonrat

Registriert seit: 27. Okt 2006
Ort: Berlin
33 Beiträge
 
#4

Re: Suche OOP-Modell für Projekt

  Alt 19. Mär 2008, 01:12
Ja, doch.. das gefällt mir ganz gut so
Wegen den typisierten Dateien, da ist es ja so, es sollten eigentlich eher mehrere Kunden in einer Datei gespeichert werden und bei den Artikeln, müsste ich eh ähnlich verfahren, da 1000 Artikel zuviele Dateien sind. Ist denn von XML bei so einem Fall gänzlich abzuraten?
  Mit Zitat antworten Zitat
Benutzerbild von dajuhsa
dajuhsa

Registriert seit: 20. Apr 2007
397 Beiträge
 
Turbo Delphi für Win32
 
#5

Re: Suche OOP-Modell für Projekt

  Alt 19. Mär 2008, 01:13
das mit der TList hätte mir einfallen sollen *böse,böse*

öffentliche felder - ich weiß, ich weiß - aber das soll ja nur eine anregung sein, wenn ich jetzt private felder gemacht hätte und ein haufen properties wäre der code doppelt so lange gewesen^^
das Essen ist wie das Internet - Downstream ist immer angenehmer als Upstream
-
Warum missbraucht die ganze Programmierwelt Images als Paintboxen
  Mit Zitat antworten Zitat
Benutzerbild von dajuhsa
dajuhsa

Registriert seit: 20. Apr 2007
397 Beiträge
 
Turbo Delphi für Win32
 
#6

Re: Suche OOP-Modell für Projekt

  Alt 20. Mär 2008, 20:25
also mit einer typisierten Datei kannst du soviele gleichartig aufgebaute Datensätze speichern wie du willst,
in einer ini- bzw. xml-datei kannst du jeden datensatz neu aufbauen, also:
Code:
datensatz1:
A=X
B=Y
datensatz2:
C=Z
datensatz3:
B=Z
D=X
eine typisierte datei ist eher so:
Code:
datensatz1:
A=U
B=V
datensatz2:
A=W
B=X
datensatz3:
A=Y
B=Z
du musst selbst entscheiden, was für dich das bessere ist
das Essen ist wie das Internet - Downstream ist immer angenehmer als Upstream
-
Warum missbraucht die ganze Programmierwelt Images als Paintboxen
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.768 Beiträge
 
Delphi 10.4 Sydney
 
#7

Re: Suche OOP-Modell für Projekt

  Alt 20. Mär 2008, 21:48
Zitat von Kuonrat:

Es handelt sich um ein Projekt, dass über ein Netzwerk ausgeübt wird. Es gibt mehrere Clients und einen Server. Die Clients stellen verschiedene Kassen dar (Supermarkt, Kaufhaus, Schreibwarengeschäft, usw.) in denen Kunden einkäufe erledigen können, dabei wird, wenn der Warenkorb gefüllt ist, die "EC"-Kartenr. des Kunden eingegeben, so dass sein Geld vom Bank-Server angebucht werden kann. Dabei wird dann auch ebend mitgeloggt, was er eingekauft hat. Die Kunden selber sind gespeichert und können bearbeitet (Daten) oder neue Kunden angelegt werden, selbiges gilt für die Artikellisten.
.. aber sollte man da nicht eher an Datenbanken denken, als an typisierten Dateien oder XML files.
Hier könnte es zu Zugriffsproblemen im Client Server Betrieb kommen.
Mit einer Datenbank wäre das kein Problem.

Grüße
Klaus
Klaus
  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 18:29 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