Hallo alle zusammen!
Ich möchte ein Programm schreiben, welches Kunden einer Firma verwalten kann.
Die Kunden können Privatpersonen sowohl als auch Firmen sein.
Kunden bekommen eine Kundennummer.
Meine Probleme:
Wenn ich die Firma als Kundenobjekt verwende(Eine Firma kann viele Personen haben) habe ich folgendes Problem:
Wenn nun eine Firma mehrere Ansprechpartner hat, ist das gut, da die Kundennummer dann in der Firma immer die gleiche ist.
Aber wenn nun ein Kunde ein Privatkunde ist, müsste ich für jeden Privatkunden eine extra Firma anlegen, damit jeder Privatkunde auch eine andere Nummer bekommt.
Andere Richtung:
Ich speichere Firmen in Personen (Jede Person kann eine Firma haben):
Da ich die Daten objektorientiert speichere wäre die redundanzfreiheit nicht gegeben (Da mehrere Personen dann die gleiche Firma haben könnten) und somit müsste ich bei Änderungen einer Firma
alle dieser Firma umschreiben.
Eine dritte Idee, die ich allerdings nicht sehr proffessionell finde:
Ich bau noch eine Kunde-klasse welche eine Kundennummer, den Kundentyp(Firma,Person) und das Objekt Firma bzw. Person enthält.
Was denkt Ihr darüber?
Habt Ihr eine bessere Idee?
Hier die zwei Klassen wie sie im Moment sind: (Firma hat viele Personen)
Firma:
Person:
Ich möchte ein Programm schreiben, welches Kunden einer Firma verwalten kann.
Die Kunden können Privatpersonen sowohl als auch Firmen sein.
Kunden bekommen eine Kundennummer.
Meine Probleme:
Wenn ich die Firma als Kundenobjekt verwende(Eine Firma kann viele Personen haben) habe ich folgendes Problem:
Wenn nun eine Firma mehrere Ansprechpartner hat, ist das gut, da die Kundennummer dann in der Firma immer die gleiche ist.
Aber wenn nun ein Kunde ein Privatkunde ist, müsste ich für jeden Privatkunden eine extra Firma anlegen, damit jeder Privatkunde auch eine andere Nummer bekommt.
Andere Richtung:
Ich speichere Firmen in Personen (Jede Person kann eine Firma haben):
Da ich die Daten objektorientiert speichere wäre die redundanzfreiheit nicht gegeben (Da mehrere Personen dann die gleiche Firma haben könnten) und somit müsste ich bei Änderungen einer Firma
alle dieser Firma umschreiben.
Eine dritte Idee, die ich allerdings nicht sehr proffessionell finde:
Ich bau noch eine Kunde-klasse welche eine Kundennummer, den Kundentyp(Firma,Person) und das Objekt Firma bzw. Person enthält.
Was denkt Ihr darüber?
Habt Ihr eine bessere Idee?
Hier die zwei Klassen wie sie im Moment sind: (Firma hat viele Personen)
Firma:
Code:
public class Company {
private String name;
private String number;
private List<Address> address;
private List<Person> customers;
.......
}
Code:
public class Person {
private String title;
private String firstname;
private String lastname;
private Map<String, String> email;
private Map<String, String> otherPossibilities;
private Map<String,String> phonenumbers;
.................
}