So mache ich das auch
(wusste nur nicht, das das OO ist)
Aber da ich häufiger Programme als Spiele schreibe, ist das antürlich noch einmal anders.
Wobei ich auch da nur eine Eventloop habe, und je nachdem welche fenster aktiv sind werde andere Proceduren jeden Durchgang (oder zeit gesteuert) ausgeführt.
Zum "Vorbeireiten" meiner Projekte:
Zuerst überleg ich mir natürlich, was ich machen will (meistens Windows-Applikationen) und mit welchen Hilfsmitteln ich das bewerkstelligen will (externe DLL's (Z.B.: FMOD)).
Dann schreibe ich die Fenster Proceduren, und die Einstellungsprocedure (die die das schreiben und lesen der Datei, wo man seine individuellen Einstellungen später abspeichert, damit diese beim laden direkt bei der Fensterprocedure ausgeführt werden (zb Sprache)).
Dann kommt der Eventloop (immer Forever) udn die Procedure ende().
Der Eventloop besteht derzeit nur aus der "#Pb_event_closeWindow" abfrage.
Danach werden Proceduren geschreiben, die die einzelnen events wie gadget-klicks und menüeinträge übernehmen. Das Fenster wird dementsprechend erweitert.
Mein Mainloop besteht nur auf einer großen Select, die Cases immernur aus einem Proceduren aufruf.
Zb Procedure ButtonPlay() übernimmt das überprüfen auf "pause/play/stop/liste leer und ruft dann die Hauptfunktionen "PlaySound()"/"PauseSound()"/"ResumeSound()"/"LoadSound()" auf (kleines Beispiel).
so wird alles immer erweiter (zeitgestuerte Callbacks, mehr Proceduren, Sicherheitsproceduren (zeitmesser wg nicht reagieren etc (aber erst ganz am ende))evt DLL...)
Diese Art des Programmierens benutze ich seit Ca einem Halben Jahr udn ich komme gut zurecht (bei neinem Vorherigen Projekten kam ich sonst meistens in unerreichbar hohe CPU Auslastungen , unnötigen HDD zugriffen, endlosschleifen etc.
Unmöglicher Codestil eben
