Grapheneditor - Allgemeine Fragen zum Logikdesign

Semox

Bekanntes Mitglied
Liebe Community

Ich habe eine Aufgabe aus meinem Informatikstudium, einen Grapheneditor programmiert, der schon die wichtigsten rudimentären Fähigkeiten hat. Man kann ihn im Anhang laden und ausprobieren. Mich hat dieses Projekt schon nur auf Grund des Zeitaufwands, den ich bereits betrieben habe nun ein bißchen gekitzelt, daß Progrämmchen mit mehr Fähigkeiten auszustatten.

Kurze Beschreibung des Programms:
Auf einer graphischen Oberfläche kann man Knotenpunkte setzen, verschieben oder löschen. Dazu gibt ein ein Menü, mit der man die unterschiedlichen Aktionen Aufrufen kann. Außerdem vefügt das Programm die Fähigkeit die im Speicher abgelegten Daten in einer Datei abzulegen. Ziel ist es e-NFA bzw. DFA zu erstellen. Einschließlich der Möglichkeit ECLOSURE Hüllen (ACHTUNG: DOC Datei) zu berechnen bzw. selbst festzulegen. Somit kann man dann am Ende einen NFA in einen DFA umwandeln und den Automaten optimieren.

Nun sieht die Speicherung der Daten so aus, daß die Knotenpunkte in eine ArrayList gespeichert, die wiederum in eine Datei abgelegt wird. Jetzt stellt sich mir die Frage, ob es nicht vielleicht besser ist die Daten in eine Datenbank zu packen. Möglicherweise könnte man dann interessante Operationen damit anstellen.

Eine Operation wäre es zu jedem Knotenpunkt ein bestimmtes Set an Informationen mitzugeben. Beispielsweise müssen Übergänge bei der Umsetzung eines Automaten grafisch dargestellt werden können, inklusive eines Labels mit der Info, was den Übergang auslöst, z.B. wenn eine 1 oder 0 auftritt.

Da schließen sich noch ein Haufen anderer Fragen mit an. Wenn ich die Daten in einer DB ablege, gibt es da etwas was so schön klein und fein ist, wie eine stand-alone MS-Access DB, die man wie in .NET mit an die Software anhängen kann, jedoch das Office Paket nicht als Installationsgrundlage anfordert? Hat man da für Java auch solche Möglichkeiten? Was ich gern vermeiden möchte ist, daß der User dann gefordert ist, MySQL Datenbanken zu erstellen und zu installieren. Die DB soll ja nur für den Betrieb der Software ausgelegt sein. Vielleicht kennt einer von Euch so etwas? Etwas Einfaches und Erpobtes wäre wünschenswert.

Das ist denke ich für den Anfang schon eine Menge an Infos. Ich freue mich auf eine rege Diskussion.

Viele Grüße,
Semo
 

Anhänge

  • MyGraphEditor.zip
    6,1 KB · Aufrufe: 10

hartzie

Aktives Mitglied
Also es gibt in Java auch eingebettete Datenbanken wie Derby, H2, SQLite und noch andere. Die erfordern keine extra Installation sondern laufen eingebettet im Programm. Die sind alle relativ klein und fein.
Da ganz du gleich mit Hibernate oder noch einfacher JPA rangehen und ohne SQL-Gefuchtel auskommen. Es erfordert nur ein bisschen einarbeiten.
 

Ziegenpeter

Aktives Mitglied
Nicht direkt zu deiner Frage, aber ich hätte noch eine Anmerkung für das interne Automatendesign.
Du solltest darüber nachdenken lediglich ein symbolisches Modell des Automaten abzuspeichern und ihn nicht über Klassen zu modellieren. D.h. du kodierst die Zustände und Transitionen in Zahlen und instanziierst dafür nicht immer wieder Klassen. Gerade wenn die Automaten größer werden wird sich das als Vorteil herausstellen. Mein Model-Checker hat damals nämlich schnell schlapp gemacht als ich deinen Ansatz gewählt hab'.
 

Semox

Bekanntes Mitglied
@hartzie
Danke. Die Beispiele sind gut und werde ich definitiv ausprobieren. Die Mini-DBs sind prima für ein paar Ideen, die ich umsetzen möchte...

@Ziegenpeter
Warum würde der Model-Checker schlapp machen? Ich verstehe nicht ganz. Die JVM dürfte doch eigentlich ganz gut mit einer sehr großen Anzahl Objekte klar kommen, oder nicht? Millionen Knoten werde ich wohl nicht haben, aber selbst wenn - kann das problematisch sein?

Ich habe mir den Ansatz mit den Instanzen gewählt, weil ich da beliebig viele Informationen anhängen kann und die voneinander getrennt beliebig "benutzen" kann. Aber wenn es einen besseren Ansatz gibt, dann sollte man den wohl auch besser wählen. Ich möchte ja nicht das Rad neu erfinden... :)

Inwiefern kann ich die Zustände und Übergänge in Zahlen kodieren, ohne dabei den einzelnen Knoten als eine -- wie soll man das sagen... als zusammenhängende Entität zu verlieren? Dann dürften künftige Operationen wie neue Übergänge schaffen, doch viel schwieriger werden? Ich würde gern mehr dazu wissen... :oops:

Viele Grüße,
Semo

EDIT: Mir fällt noch ein, wenn man keine Objekte hat, wie kann man die zusammenhängenden Speicherinhalte jemals strukturiert persistieren?
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
B HTTP Allgemeine Fragen über Suchmaschine nutzen mit Java Allgemeine Java-Themen 20
T Allgemeine Frage: GUI für 3D-Visualisierung Allgemeine Java-Themen 5
R Allgemeine Frage zu RMI bei MVC Allgemeine Java-Themen 2
M Allgemeine Frage: Wie lernt man Java / Programmieren von Grund auf? Allgemeine Java-Themen 7
A Methoden Allgemeine Java Frage Allgemeine Java-Themen 3
S Allgemeine parallelisierte Loesung um Daten im Hintergrund zu laden..? Allgemeine Java-Themen 6
J Allgemeine Fragen zu Vererbung Allgemeine Java-Themen 1
M Allgemeine Fragen meinerseits Allgemeine Java-Themen 4
D Ein paar allgemeine Fragen zu Java Allgemeine Java-Themen 19
Q Kapselung Allgemeine Design- Frage Allgemeine Java-Themen 8
I Allgemeine Herangehensweise bei Übernahme Allgemeine Java-Themen 19
J Erste Schritte Applet allgemeine Funkion Allgemeine Java-Themen 8
S Stream ReadLine() Allgemeine Frage Allgemeine Java-Themen 5
S allgemeine Datenbankschnittstelle für Webservice Allgemeine Java-Themen 72
M allgemeine frage zur plattformunabhängigkeit Allgemeine Java-Themen 2
S 2 Fragen allgemeine fragen zu final und interface Allgemeine Java-Themen 13
D Allgemeine Fragen zum Speichern Allgemeine Java-Themen 3
F allgemeine Fragen zu Java Allgemeine Java-Themen 9
M allgemeine Architekturfrage Allgemeine Java-Themen 4
J Ganz allgemeine Frage Allgemeine Java-Themen 3
Zrebna Fragen zu Testabdeckungs-Metriken Allgemeine Java-Themen 4
MarvinsDepression Unbekanntes Zeichen in fremden Code wirft Fragen auf Allgemeine Java-Themen 4
K BlueJ - Fragen zu dem Spiel Pacman (Nachprogrammieren) Allgemeine Java-Themen 141
V Ich hätte 2 Fragen Allgemeine Java-Themen 5
ME2002 Fragen aus einer Java Klausur Allgemeine Java-Themen 67
H Fragen zur Kraken Api Allgemeine Java-Themen 1
nonickatall Klassen Grundsätzliche Fragen zu geplanter Programmstruktur Allgemeine Java-Themen 5
W Ein paar Fragen zu .properties und .css Allgemeine Java-Themen 6
W Mal ein paar generelle Fragen zu InputStream und OutputStream Allgemeine Java-Themen 4
X Fragen zur Javamail API und Gmail Allgemeine Java-Themen 4
T Fragen bezgl. Lambdas Allgemeine Java-Themen 20
X Collections Fragen zu gleichen Elementen in TreeSet Allgemeine Java-Themen 35
A Neuerungen in Java 8 StreamAPI- Paar fragen Allgemeine Java-Themen 4
temi Fragen zur Software-Architektur Allgemeine Java-Themen 123
M Diverse Design-Fragen Allgemeine Java-Themen 6
J 2 Fragen zur Vererbung Allgemeine Java-Themen 5
H Java FX 2 Fragen um Programm in mehrere sprachen zu übersetzen in Gluon Framwork Allgemeine Java-Themen 3
M Fragen beantworten über Textfeldeingabe Allgemeine Java-Themen 5
D Grundsätzliche Fragen zum Heap Space Allgemeine Java-Themen 12
V Wie kann ich die Fragen mit den anderen Klassen verbinden? Allgemeine Java-Themen 1
J Fragen zu generischer doppelt verketteter Liste (bei fehlendem Grundverständnis) Allgemeine Java-Themen 1
R Es gibt keine dummen Fragen (hab ich mal gehört) Allgemeine Java-Themen 11
T Fragen zum Thread-Thema Allgemeine Java-Themen 4
2 2 Klein Fragen Allgemeine Java-Themen 7
alderwaran .jar Code Signing, User-Keystore und Fragen dazu Allgemeine Java-Themen 0
T Fragen zum Thread-Thema Allgemeine Java-Themen 9
A Java Theorie-Fragen Allgemeine Java-Themen 7
K Java QUIZ-Spiel Fragen und Antworten generieren?! Allgemeine Java-Themen 5
R Socket Fragen zu UDP Allgemeine Java-Themen 1
B Noob-Fragen zu Tablets und PC kompatiblität... Allgemeine Java-Themen 6
L Fragen für Facharbeit: Analyse von Strings in Java Allgemeine Java-Themen 4
R Fragen zu Server + UI Allgemeine Java-Themen 2
U Vier Fragen zu Java Allgemeine Java-Themen 2
H MediaManager Fragen/Probleme Allgemeine Java-Themen 6
D Fragen zum erstellen einer ausführbaren Jar Datei Allgemeine Java-Themen 3
C Polymorphie Fragen zur Annotations von Persistenz Allgemeine Java-Themen 2
O Fragen über Fragen - Bei Änderung XML-Datei -> Anpassung GUI Allgemeine Java-Themen 7
StrikeTom Java Performance Fragen Allgemeine Java-Themen 5
Luk10 Fragen zum ByteBuffer (lwjgl - icons) Allgemeine Java-Themen 2
F Akkumulator Hough-Transformation offene Fragen Allgemeine Java-Themen 4
Luk10 Fragen zu Naming-Conventions Allgemeine Java-Themen 5
Z Einige Fragen Allgemeine Java-Themen 10
T OOP Einige Fragen zu UML-Klassendiagrammen Allgemeine Java-Themen 6
G Einige Fragen zu ResourceBundles Allgemeine Java-Themen 2
S Fragen zu verschiedenen Themen vom JCreator Allgemeine Java-Themen 2
DStrohma Grundsätzliche Fragen zum Aufbau eines komplexeren Programmes Allgemeine Java-Themen 8
O kleine Fragen eines Anfängers Allgemeine Java-Themen 2
X Executor fragen ob fertig Allgemeine Java-Themen 13
nrg Swing 2 Fragen zu Swing/AWT Allgemeine Java-Themen 7
K Reflections Fragen Allgemeine Java-Themen 7
S Fragen zum SCJD-Zertifikat Allgemeine Java-Themen 2
M Backend Entwicklung - Konzept fragen Allgemeine Java-Themen 3
E Fragen zu Scala Allgemeine Java-Themen 11
Daniel_L Fragen zu RegEx und URL umwandeln Allgemeine Java-Themen 4
J Diverse Fragen bezüglich Jasper Allgemeine Java-Themen 3
S Fragen zum ShutdownHook Allgemeine Java-Themen 7
V Fragen zu einem Java Browser Allgemeine Java-Themen 7
G Fragen zum eigenen Scheduler Allgemeine Java-Themen 4
M Drag and Drop: 3 Fragen Allgemeine Java-Themen 3
L Einige Fragen zu Java Allgemeine Java-Themen 9
F Linguistische Fragen zu Javadoc bzw. Englisch Allgemeine Java-Themen 4
E Einfache Fragen zu Dateien Allgemeine Java-Themen 7
E Thread Fragen in Verbindung mit Swing Allgemeine Java-Themen 4
M MVC Design Pattern - Verständniss Fragen Allgemeine Java-Themen 3
X Einige Fragen zu Serialisierung Allgemeine Java-Themen 2
H Java Multiplicoice Test (10 Fragen) Allgemeine Java-Themen 11
J Viele Fragen. =) Hoffentlich könnt ihr helfen Allgemeine Java-Themen 9
D Grundsätzliche Fragen zur Grafikdarstellung in Spielen Allgemeine Java-Themen 2
J 2 Fragen zu JMF und eine Rechtsfrage Allgemeine Java-Themen 3
S Viele Fragen eines Umsteigers (von .NET) Allgemeine Java-Themen 6
C LinkedList Fragen Allgemeine Java-Themen 7
P Fragen zur JBuilder und den kosten. Allgemeine Java-Themen 7
reibi JVM fragen welche Apps geladen sind Allgemeine Java-Themen 7
I Fragen zum Internetseiten Einlesen/Auswerten Allgemeine Java-Themen 5
F Paket und Software Design Fragen. Allgemeine Java-Themen 5
M ein paar fragen über JBoss und Catalina Allgemeine Java-Themen 7
S Fragen zu 4 speziellen Listen Allgemeine Java-Themen 4
U JFrame, JOptionPane - vor dem Schließen Benutzer fragen Allgemeine Java-Themen 10
I zwei simple fragen Allgemeine Java-Themen 22
G 2 Fragen Allgemeine Java-Themen 7

Ähnliche Java Themen

Neue Themen


Oben