Programm aufzuteilen?

ImDoomed

Mitglied
Hallo,

ich weis nicht ob es sowas schon gibt, wusste aber nicht nach was ich suchen sollte, deshalb post ich die Frage einfach mal.
Ich hab in meiner Schule Java gehabt und habe hier schon einige Beispiele gesehen/nach programmiert.
Mein Prob ist dass wir in der Schule zwar Objektorientiert programmiert haben, aber so wie es mein Dozent machte ist es irgendwie "unsinnig" z.B. gesamte programm in einer Klasse.


Als Beispiel: habe hier DatabaseHelper gezogen und da ist "Databasehelper" und "Main" in 2 extra packages.
In der Schule habe wir nur 1 package und rest in Klassen


Deshalb meine Frage die eigentlich recht simpel ist:
Wie ist es am besten geeignet ein Programm aufzuteilen?
1 oder mehr Packages?; alles "selbstständige" in eine eigene Klasse?


Mein Dozent hat es halt immer so gemacht wie er gerade wollte deshalb bin ich mir da recht unsicher.
Danke schonmal für die Antworten und schönen Gruß

Im´Doomed
 
Zuletzt bearbeitet:
Alles was ein eigenständiges Objekt darstellt gehört auch in eine Klasse. Ein Auto hat einen Motor und Sitze. Statt aber sowohl die PS-Zahl des Motors und die Farbe der Sitze im Auto unterzubringen, sollte man stattdesse eigene Klassen für Motor und Sitz anlegen und deren Attribute dort reinschreiben und im Auto dann nur auf die Objekte verweisen.

Bei großen Projekt teilt man die Sachen noch logisch in verschiedene Packages auf. Wenn ein Projekt mehrere Hunderte Klassen hat, wäre es sonst natürlich sehr unübersichtlich alles in einem Package zu haben. Außerdem kann man neben public auch noch andere Modifikatoren für Klassen verwenden die auch was mit Packages zu tun haben. So kann man einstellen, dass eine Klasse außerhalb eines Package z.B. gar nicht genutzt werden kann.

Den Packages gibt man dann auch entsprechend sinnvolle Namen was sie enthalten wie z.B.
de.tutorials.ui (für Klassen die was mit der Nutzeroberfläche zu tun haben)
de.tutorials.tools (Für Klassen die Hilfsmethoden enthalten)
de.tutorials.model (Für Klassen die das Modell darstellen, wie z.B. Auto)

Theoretisch nicht alles so einfach zu erklären. Da gehört dann auch ein wenig Erfahrung zu. Aber vielleicht hat dir das schonmal geholfen.
 
Zurück