Aufteilung größerer Projekte

Antworten
Baloo
Beiträge: 25
Registriert: So 9. Nov 2008, 20:10
Wohnort: Neureut
Kontaktdaten:

Aufteilung größerer Projekte

Beitrag von Baloo »

Hallo Leute!
Hab mal ne kleinere Frage...

Es geht dabei um die grundsätzliche Aufteilung eines größeren Programmier Projekts:
Früher hab ich die Aufteilung immer frei nach Schnauze gemacht. So wie es mir halt gepasst hat. Also schon Objektorientiert, aber alles unter einem Package. Und wenn ich eine Oberfläche gebraucht hatte, dann kam die halt einfach auch noch in die Klasse rein. Nun werden es aber immer größere Projekte (Kundenverwaltung, Geschäftsverwaltung...) und ich hab mir mein eigenes Schema ausgedacht, weil ich dazu nichts finden konnte. Das sieht dann ungefähr so aus:
  • GUI (die Oberflächen und alles was dazu gehört...)
  • Daten (Konstanten, temporäre Daten wie die Auswahlmöglichkeiten einer Dropdown Box...)
  • Verarbeitung (Daten exportieren, grundlegende Funktionen wie Drucken usw...)
  • DBVerbindung (die "Datenbankschnittstelle": hier werden die Querys generiert, DB Verbindung aufgebaut...)
Aber dann tauchen schon die ersten Fragen auf: Die EventListener, wo werden die Implementiert? Im GUI teil, in der Verarbeitung oder extra...
Gibt es für sowas irgendwelche Regeln / Richtlinien etc... oder wie teilt ihr so ein Projekt auf? (Muss sich auch nicht unbedingt nur auf JAVA beschränken)

Danke für eure Antworten und schöne Feiertage... ;)
Baloo
The main rules of optimization
Rule 1: Don't do it.
Rule 2: (For experts only) Don't do it yet.
Nukleus
Beiträge: 27
Registriert: Mi 12. Nov 2008, 18:44

Re: Aufteilung größerer Projekte

Beitrag von Nukleus »

Obs Vorschriften oder Tipps dazu gibt, weiss ich nicht.
Man kann sowieso kein generelles Schema ausarbeiten, das haengt stark vom Projekt ab. Bei meinem aktuellen Projekt (Webserver) mache ich es so:

Code: Alles auswählen

/src
|--Socket/		// beinhaltet die ganzen Socketgeschichten, incl. Exception-Klassen die dafuer verwendet werden.
|--Template/	// beinhaltet die Template-Engine und alles, was nur hier benoetigt wird. Das kann man auch als "GUI" auffassen
|--Pages/		// Logik der einzelnen Seiten, ob dynamische oder statische. Nutzt die Template-Engine, aber kuemmert sich nicht um das Aussehen.
|--DBAL/		// Die Datenbankanbindung, Unterverzeichnisse fuer jede Datenbankschnittstelle.
|--HTTP/		// Alles fuer die Implementierung des HTTP-Protokolls.
|--I18N/		// Uebersetzungsfunktionen des Servers.
`--files		// Direkt im root, einige Klassen die man ueberall braucht.
Du siehst: Jedes Projekt seine Struktur. Versuche einfach, dein Projekt in Gruppen zu zerlegen, die dann alles enthalten, was logisch dazugehoert. Bei Darstellungen von Daten immer ans Model-View-Concept halten, dann gehts auch mir der GUI einfacher :-)
HTH
Antworten

Zurück zu „Allgemein“