Best Practice: Daten aufnehmen-speichern-bereitstellen

mla.rue

Bekanntes Mitglied
Guten Morgen,
wiedermal eine einfache Frage, wie ich etwas am besten umsetze:

Meine GUI Klasse nimmt 100 Daten auf (100 Strings), diese kann ich entweder in einer Map speichern (innerhalb der GUI Klasse), ist mit ganz wenig Code und funktioniert einwandfrei. Oder, ich schreibe eine eigene "Daten"Klasse, auch die ist schon fertig und funktioniert einwandfrei.

Die Frage: geht die Map in Ordnung, oder soll ich doch lieber eine eigene Datenklasse nehmen?


Danke

PS: ich habe so einiges dazu gelesen aber wirklich überzeugend waren die Begründungen nicht. Ein kurzes Für + Wider wäre super.
 

127.0.0.1

Bekanntes Mitglied
Guten Morgen,

also eine Map nimmst du ja wenn du Value und Key hast.
Wenn du beide Werte pro Eintrag zusammenbekommst macht eine Map durchaus Sinn....

Wenn du aber nur einen Wert pro Eintrag hast würde sich ein Set anbieten, wobei dir ein Set doppelte Einträge rausschmeißt.


Also Beispielsweise (für deine String Werte):
Map: "Kundennummer"<--> "Kunde"
Set: "Hallo" "Test" "Langeweile" "Computer" ....
 
Zuletzt bearbeitet:

mla.rue

Bekanntes Mitglied
es ist eine Map "Typ"<--->"Wert"

Bei der Datenklasse meine ich so ein Monster mit jeder Menge getter und setter, kann die Typen als Variablen ablegen, da sie sich eh nie ändern.
 

mla.rue

Bekanntes Mitglied
Was man programmiertechnisch (hier im Hinblick auf Java) vom Design/Style/Logik so am besten nimmt... so frei nach dem Motto: ich kann in einer GUI Klasse ja auch "extends JFrame" schreiben, aber wenn ich nur benutze statt erweitere, ist das BestPractice eben, es nicht zu machen.

Ist quasi eine Grundsatzfrage, würde ich einen Kollegen fragen, nur bin ich der einzige 'Programmierer' hier in der Firma und noch in der Ausbildung.
 

Ark

Top Contributor
es ist eine Map "Typ"<--->"Wert"

Bei der Datenklasse meine ich so ein Monster mit jeder Menge getter und setter, kann die Typen als Variablen ablegen, da sie sich eh nie ändern.
Ich glaube, hier solltest du etwas konkreter werden: Was macht ein Monster aus? Und wozu brauchst du diese bijektive Typ-Wert-Beziehung bzw. wo kommt diese her?

Ist quasi eine Grundsatzfrage, würde ich einen Kollegen fragen, nur bin ich der einzige 'Programmierer' hier in der Firma und noch in der Ausbildung.
Bildest du dich dann selbst aus? :joke:

Ark
 

FArt

Top Contributor
Nun, die GUI gehorcht mehr oder wenig dem Muster MVC, dazu noch das OO-Paradigma... wenn ich das berücksichtige, hätte ich schon eine Präferenz...
 

mla.rue

Bekanntes Mitglied
Monster weil: 100 Werte(paare)... 100 Variablen, 100 getter, 100 setter (naja in der Realität sinds nur 96 aber 100 klingt so schön rund)

Meine Werte sind die Einstellungsoptionen für bestimmte Messungen, es gibt zig verschiedene Messungstypen, und jede Messung kann 0, 1, mehrere oder alle dieser vorgegebenen Optionen haben. Der Benutzer definiert eine Messung und sagt: diese Messung wird mit den Optionen 1,2,3 ausgeführt, Messung2 mit 2,3,6,20, Messung3 mit 1,2,40,60 usw usf. Diese Optionen sind so Sachen wie Anode, Isotop, Kontrastmittel... gespeichert wird das ganze in einer DB zwecks Statistikauswertung... am Ende interessiert nämlich weniger, wieviele Messungen1,2,3,4...n gemacht wurden, sondern, wieviel Kontrastmittel wurde "verbraten".

In der GUI kann man sich die Messung anlegen und dann über Checkboxen die einzelnen Optionen dazu"klicken"... wenn eine Chebkbox aktiviert wird, taucht ein Eingabefeld auf, wo der Wert eingegeben werden kann, der wird dann entweder in der Map oder der Datenklasse gespeichert. Da 100 Optionen recht viel ist, gibt es ein serparates Dialog, wo eine Übersicht der eingetragenen Werte dargestellt wird (hier müssen dann aus der Map oder der Datenklasse die Werte eingelesen werden), ist man zufrieden und fertig, wird der Messungstyp abgespeichert und das Ganze geht an die Datenbank, wo wiederum aus der Map oder Datenklasse die Werte genommen werden.

[OT]Ja, ist eine theoretische Ausbildung und ich mache grad ein Praktikum[/OT]

Edit: meine Präferenz ist die Datenklasse mit der Monsterladung Variablen, Gettern und Settern. Auf der anderen Seite erfüllt die Map den Zweck genausogut mit deutlich weniger "Schreibaufwand" (ok das ist eh irrelevant, da ich die Klasse ja schon habe)... die Map macht die Klasse überflüssig, Programm wird kleiner. Hat alles so seine Vor- und Nachteile, die Frage ist, wie macht mans am besten ... für und wider? Wie gesagt, als Auszubildender ohne Ausbilder ist das schwierig einzuschätzen, Schriftstücke (Bücher+Internet) geben da keine eindeutigen Antworten.
 
Zuletzt bearbeitet:

Ark

Top Contributor
Mach doch einfach eine Datenklasse mit dieser Map. Also z.B. eine Klasse mit einem Feld
Code:
Map<Typ, Integer>
und den Methoden
Code:
void set(Typ key, int value)
und
Code:
int get(Typ key)
, wobei
Code:
Typ
z.B. ein enum ist (mit den 96 Sachen, die es da so gibt). Dabei könnte man dann sagen: Immer, wenn ein Eintrag (Schlüssel) in der Map fehlt, dann bildet er implizit auf 0 ab (ergo: nicht eingetragen → nicht verbraucht).

Die Daten sollten aber dringend unabhängig von der GUI gehalten werden, wie FArt schon anmerkte (MVC!).

(Das ist jetzt aber nur ein ganz grober Ansatz.)

Ark
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
T Best Practice überprüfen von Übergabeparametern Allgemeine Java-Themen 17
S best practice: Einordnung Enitity und Datenklasse Allgemeine Java-Themen 11
temi best practice: Parameter überprüfen, wo? Allgemeine Java-Themen 9
Airwolf89 JUnit: Vorschläge/ Best Practice Allgemeine Java-Themen 7
H Best Practice zu vielen konstanten Objekten? Allgemeine Java-Themen 10
F best practice Allgemeine Java-Themen 5
J Input/Output Dateien bearbeiten - "Best Practice" Allgemeine Java-Themen 3
R Statische Klasse: Best practice mit flags (2) Allgemeine Java-Themen 3
musiKk Best Practice für kleine Variationen in gegebenen Modellklassen Allgemeine Java-Themen 11
J Best Practice für implementierung von equals(...) Allgemeine Java-Themen 7
Daniel_L Best Practice zum Löschen von Log-Files? Allgemeine Java-Themen 8
Ameise03 Best&Worst Case bei Insertionsort Allgemeine Java-Themen 10
S Best Practices CopyConstrutor mit ArrayList Allgemeine Java-Themen 1
F Error Logging - best practices? Allgemeine Java-Themen 3
M Best Practices für Undo/Redo Allgemeine Java-Themen 16
G Best Practices Software-Engineering‏ Allgemeine Java-Themen 3
G Best Practices Allgemeine Java-Themen 10
M Best Practices Exception Handling für eigene library Allgemeine Java-Themen 8
S best practise Allgemeine Java-Themen 6
S Array: Anzahl Elemente mit best. Wert zählen Allgemeine Java-Themen 4
M Best Match / Best Fit auf Strings Allgemeine Java-Themen 9
I Mehrere Klassen mit den selben Daten Allgemeine Java-Themen 5
padde479 Collections Daten in Dreiecksform Allgemeine Java-Themen 13
V Umgang mit fehlenden Daten in einer Java-Datenanalyseanwendung Allgemeine Java-Themen 5
torresbig Url nach Webseiten-Login auslesen & Daten an Webseite senden Allgemeine Java-Themen 9
A Hartgecodete Daten auslagern Allgemeine Java-Themen 4
F Laden von bestimmten Daten aus TAR Archiv Allgemeine Java-Themen 23
S Webservices für binäre Daten? Allgemeine Java-Themen 5
OnDemand Daten in RAM zwischenspeichern oder lieber aus DB holen? Allgemeine Java-Themen 24
J Daten über serielle Schnittstelle empfangen Allgemeine Java-Themen 4
J JSON Daten von einer Webseite erhalten Allgemeine Java-Themen 2
S Entities aus XML - Daten. Allgemeine Java-Themen 1
M Schnelleres Speichern von XML-Daten über URLConnection Allgemeine Java-Themen 4
kodela Klasse mit "gezipten" Daten Allgemeine Java-Themen 6
M Daten aus MatLab Datei lesen Allgemeine Java-Themen 8
N Daten einer JCoTable in JTextArea anzeigen Allgemeine Java-Themen 7
kodela Klassen Klasse "vergisst" ihre Daten Allgemeine Java-Themen 2
C Daten für Klassifikationsverfahren gewinnen Allgemeine Java-Themen 6
J Daten von Quelltext Allgemeine Java-Themen 5
K OOP Daten addieren sich bei GUI-Eingabe Allgemeine Java-Themen 10
J Jasper Reports - Daten vom Hoster Allgemeine Java-Themen 2
kodela Daten während Laufzeit zugriffsbereit Allgemeine Java-Themen 15
J Millisekunde zwischen 2 Daten Allgemeine Java-Themen 6
Q Selbständig ActionEvent auslösen zum Daten senden über serielle Schnittstelle Allgemeine Java-Themen 7
J Daten aus Website-Quelltext auslesen Allgemeine Java-Themen 62
R Android Daten online senden Allgemeine Java-Themen 0
P Datenbank-MiniGUI fügt keine Daten ein Allgemeine Java-Themen 4
K Gespeicherte Daten von einer LinkedList auf vier LinkedList verteilen Allgemeine Java-Themen 6
Q-bert Daten von Java Programm speichern Allgemeine Java-Themen 4
K Datei (CSV-ähnlich) in Java einlesen & mit teil der Daten Graphen erstellen Allgemeine Java-Themen 9
A Erste Schritte Daten aus einer Website auslesen Allgemeine Java-Themen 7
OnDemand Desktop-Applikation schreiben, wie daten persistent? Allgemeine Java-Themen 9
S Erste Schritte Fehlender Gedanken-Ansatz bei Interpretation von Daten Allgemeine Java-Themen 1
J Auslesen Daten Java/HTML Allgemeine Java-Themen 15
K Große Mengen an Daten speichern Allgemeine Java-Themen 9
D Daten in MySQL-Datenbank schreiben Allgemeine Java-Themen 13
A Swing FileWriter schreibt keine Daten in Datei Allgemeine Java-Themen 13
M Daten aus anderen Programmen auslesen Allgemeine Java-Themen 2
D Best Practice Login-Daten: Wie am besten abrufen? Allgemeine Java-Themen 6
L Best Practice Log Dateien analysieren und eventuell passende Daten am Chart darstellen Allgemeine Java-Themen 1
J Serial Port Daten empfangen Allgemeine Java-Themen 5
H Daten via COM Schnittstelle erhalten Allgemeine Java-Themen 2
J Daten persistent speichern Allgemeine Java-Themen 14
S Allgemeine parallelisierte Loesung um Daten im Hintergrund zu laden..? Allgemeine Java-Themen 6
L Daten ohne Datenbank richtig abspeichern Allgemeine Java-Themen 5
G Daten aus Website auslesen Allgemeine Java-Themen 7
J Daten aus GUI auslesen und in Objekte umwandeln Allgemeine Java-Themen 6
O Serial Port Daten als Tastaturanschlag senden Allgemeine Java-Themen 0
N Zeitabstand zwischen 2 Daten(Mehrzahl von Datum) Allgemeine Java-Themen 3
T Input/Output Daten in eine Datei schreiben Allgemeine Java-Themen 4
Z daten bindung Allgemeine Java-Themen 1
A Datentypen Gregorian Calendar - 2 Daten sind gleich?? Allgemeine Java-Themen 3
L Vergleich-Xml-Daten Allgemeine Java-Themen 3
vandread Daten verschlüsseln mit Java oder Datenbank Allgemeine Java-Themen 15
A Daten in Formularen/Vorlagen erstellen und ausdrucken Allgemeine Java-Themen 3
C HtmlUnit Daten einer Tabelle bekommen ohne, dass diese eine ID aufweist Allgemeine Java-Themen 1
T Daten über port abfangen mit proxy server Allgemeine Java-Themen 12
Todesbote Excel Blattschutz aufheben und Daten einfügen Allgemeine Java-Themen 3
T Mit Apache Poi Daten aus einer Excel Tabelle kopieren und in Word einfügen Allgemeine Java-Themen 1
OnDemand PC identifizieren / Daten auslesen Allgemeine Java-Themen 15
G Combobox füllen mit daten aus einer Tabelle Allgemeine Java-Themen 4
J Maven .war enthält veraltete Daten Allgemeine Java-Themen 3
N Daten aus Jar laden Allgemeine Java-Themen 10
P Datentypen String-Daten zu Byte-Zahlen konvertieren - Komme nicht weiter nach vielem versuchen :-/ Allgemeine Java-Themen 7
K Input/Output Daten speichern / laden Allgemeine Java-Themen 2
T Daten effizient verwalten Allgemeine Java-Themen 4
B JTable eigene Daten Add Methode Allgemeine Java-Themen 2
S OOP Apache Commons Math - Verwendung von Genetics - Wie werden Daten in Chromosomen gespeichert? Allgemeine Java-Themen 4
C Daten über URL an PHP verschicken Allgemeine Java-Themen 4
R Daten aus DB auslesen in ein formular (JSP) Allgemeine Java-Themen 13
S Library fuer Internet-Text-Daten-Quellen..? Allgemeine Java-Themen 8
H OOP Daten über TCP Allgemeine Java-Themen 5
H Input/Output Binäre Daten konvertieren, Output hat Zeilenumbrüche?? Allgemeine Java-Themen 9
D Daten eines User auslesen. Allgemeine Java-Themen 5
B Input/Output Einbinden von Daten in Java Allgemeine Java-Themen 3
L Einbinden von Daten in ausführbare Jar Allgemeine Java-Themen 6
N Methoden Einzelne Daten aus "Person" auslesen Allgemeine Java-Themen 3
R SerialPort auslesen und Daten verarbeiten Allgemeine Java-Themen 23
ARadauer Wo liegen die Daten der Preferences Klasse Allgemeine Java-Themen 3
Madlip Erste Schritte Java speichert Daten im Programm?!? Allgemeine Java-Themen 9

Ähnliche Java Themen


Oben