Hallo Ham-star!
Die Welt geht hinter dem Horizont von relationalen Datenbank übrigens noch weiter ;) *scnr*. Die andere Seite hat aber ein analoges Problem :)
Für die Implementierung von Software haben sich im Laufe der letzten Jahrzehnte immer wieder ähnliche Schemen abgezeichnet, wie *ähnliche* Aufgabenstellungen umgesetzt worden sind, quasi-standar*t*s. Mittlerweile unter dem Begriff "Patterns" durchaus geläufig. Solche Patterns gibt es auf verschiedenen Ebenen:
Architektur z.b. SOA, REST
Design z.b. MVC
Implementierung z.b. Composite, Flyweight, Commands
Es gibt dann noch die Unterklassifizierung z.b. nach Strukturellen ~ und Verhaltens-Patterns.
Und Patterns sind plattformunabhängig. Ein MVC oder Singleton kannst du mit C++, Delphi, .Net oder Java hochgradig gleich (vom Konzept) umsetzen.
Was erörtert worden sein sollte: Wie modelliere ich eine Presentationsschicht (in objektorientierter Weise), welche bestehenden *elaborierten* Praktiken gibt es für soetwas? Was hat sich durchgesetzt, was ist stabil, was verspricht die grössten Erfolgschancen.
Eine Softwareanwendung ist heutzutage im Durchschnitt eher komplex, die einfachen Terminal-Datenbankeingabe-Frontends von früher werden durch Software abgelöst, die nicht-triviale Prozesse abbildet (z.b. einen Fragebogen anlegen). Aus bestehenden Fragen auswählen, bei Bedarf gleich neue Fragen anlegen, ne Vorschau und das Speichern oder Verwerfen (Undos etc) ... Solche Dinge müssen irgendwie koordiniert werden. Da tauchen dann solche Fragen auf, wie: Verpacke ich den ganzen Prozess in einen Wizard oder in ein MDI (Multiple Document Interface) oder in Tabbed Dialogs (Kartenreiter-Dialoge) usw.
Links zum Thema Patterns:
http://de.wikipedia.org/wiki/Model_View_Controller
http://www.patterndepot.com/put/8/JavaPatterns.htm
James W Cooper und Erich Gamma sind die Gurus auf diesem Gebiet.
Noch Fragen (nachdem du dich selbständig belesen hast?)? ;)
Ciao, Frank