Hallo,
ich programmier nun schon seit einiger Zeit mit Java und JavaFX aber irgendwie fehlt es mir noch an den Grundlagen wie ich finde oder das Verständnis wie man ein Programm aufbaut, wie man sinnvoll was in welche Klasse/Methode aufteilt. Zurzeit arbeite ich an einem kleinen Projekt mit dem Ziel eine virtuelle Mediathek zu erstellen. Man soll sich einloggen können und dann Medien (Spiele, Filme, Bücher usw.) ausleihen. Zusätzlich hat der Admin die Möglichkeit alles zu bearbeiten, er kann also Medien/Benutzer hinzufügen, bearbeiten, entfernen usw.
Die Frage die ich mir jetzt Stelle ist wie Bau ich das Programm sinnvoll auf? Für was erstelle ich neue Klassen und was kann einfach in eine Klasse gepackt werden?
Ich hatte vor die verschiedenen Fenster für Login, Ausleihen von Medien, Adminbereich usw ohne FXML Dateien zu erstellen (wie in manchen Tutorials).
Jetzt stell ich mir die Frage, soll ich für Jede Scene eine eigene Klasse erstellen? Oder die gesamte GUI in eine Klasse und jede Scene für sich in eine Methode? Was macht Sinn was nicht?
Habe mich in letzter Zeit auch mit Clean Code beschäftigt. Dabei war die Rede von Single Responsibility Principle, also dass eine Klasse nur eine Aufgabe besitzen soll. Doch wie eng darf man das auslegen? Eine Aufgabe also jede Klasse ist nur für eine Scene zuständig oder eine Aufgabe im Sinne von eine Klasse "erstellt" die GUI.
Selbe Fragen stell ich mir auch grundsätzlich: Wie baut man ein Programm auf? Die Main Klasse startet in der Main Methode eine andere Klasse und damit beginnt das Programm?
Oder es gibt keine Main Klasse sondern nur eine main Methode in irgendeiner anderen Klasse? Braucht man immer eine Main Klasse?
Was denke ich richtig hilfreich ist, wäre einfach mal in ein großes Java Programm reinzuschauen und zugucken wie es aufgebaut ist. Habt ihr eine Idee was nicht allzu komplex ist aber trotzdem sauber programmiert ist und wovon man sich in der Art des Aufbaus inspirieren lassen kann?
Hoffe ihr versteht in etwas, was ich mich die ganze Zeit frage und mir diese Fragen sogar beantworten. Wenn ihr noch irgendwelche Tipps oder Quellen habt grundsätzlich zum Thema Programmieren um einfach ein besseres Verständnis zu schaffen (denn das ist irgendwie noch nicht richtig da) wäre ich euch auch sehr dankbar. MfG Marc
ich programmier nun schon seit einiger Zeit mit Java und JavaFX aber irgendwie fehlt es mir noch an den Grundlagen wie ich finde oder das Verständnis wie man ein Programm aufbaut, wie man sinnvoll was in welche Klasse/Methode aufteilt. Zurzeit arbeite ich an einem kleinen Projekt mit dem Ziel eine virtuelle Mediathek zu erstellen. Man soll sich einloggen können und dann Medien (Spiele, Filme, Bücher usw.) ausleihen. Zusätzlich hat der Admin die Möglichkeit alles zu bearbeiten, er kann also Medien/Benutzer hinzufügen, bearbeiten, entfernen usw.
Die Frage die ich mir jetzt Stelle ist wie Bau ich das Programm sinnvoll auf? Für was erstelle ich neue Klassen und was kann einfach in eine Klasse gepackt werden?
Ich hatte vor die verschiedenen Fenster für Login, Ausleihen von Medien, Adminbereich usw ohne FXML Dateien zu erstellen (wie in manchen Tutorials).
Jetzt stell ich mir die Frage, soll ich für Jede Scene eine eigene Klasse erstellen? Oder die gesamte GUI in eine Klasse und jede Scene für sich in eine Methode? Was macht Sinn was nicht?
Habe mich in letzter Zeit auch mit Clean Code beschäftigt. Dabei war die Rede von Single Responsibility Principle, also dass eine Klasse nur eine Aufgabe besitzen soll. Doch wie eng darf man das auslegen? Eine Aufgabe also jede Klasse ist nur für eine Scene zuständig oder eine Aufgabe im Sinne von eine Klasse "erstellt" die GUI.
Selbe Fragen stell ich mir auch grundsätzlich: Wie baut man ein Programm auf? Die Main Klasse startet in der Main Methode eine andere Klasse und damit beginnt das Programm?
Oder es gibt keine Main Klasse sondern nur eine main Methode in irgendeiner anderen Klasse? Braucht man immer eine Main Klasse?
Was denke ich richtig hilfreich ist, wäre einfach mal in ein großes Java Programm reinzuschauen und zugucken wie es aufgebaut ist. Habt ihr eine Idee was nicht allzu komplex ist aber trotzdem sauber programmiert ist und wovon man sich in der Art des Aufbaus inspirieren lassen kann?
Hoffe ihr versteht in etwas, was ich mich die ganze Zeit frage und mir diese Fragen sogar beantworten. Wenn ihr noch irgendwelche Tipps oder Quellen habt grundsätzlich zum Thema Programmieren um einfach ein besseres Verständnis zu schaffen (denn das ist irgendwie noch nicht richtig da) wäre ich euch auch sehr dankbar. MfG Marc