Hallo Leute,
bin in letzter Zeit ein wenig dran, mir die objektorientierte Programmierung reinzupfeifen, bin mir aber immer noch nicht sicher (und finde diesbezüglich auch irgendwie nichts), wie ein OOP System aussehen sollte. Da das natürlich für alles unterschiedlich sein kann hier mal ein Beispiel von mir für ein Browsergame (jaja, lacht nur...):
Es gibt eine SQL Klasse 'connection', die die Datenbank steuert.
Nun war meine Idee die folgende: Jede weitere Klasse ist Kindklasse von Connection und dient somit als Schnittstelle zur Datenbank, z.B.:
class user extends connection {...}
class character extends connection {...}
class message extend connection {...}
etc.
Nun instantiiere ich zu Beginn des Scripts sämtliche Klassen, die ich gebrauchen könnte (user, character, party), wo auch schon mein Problem liegt.
Das ganze scheint mir total Banane zu sein insbesondere da ich die Klassen nur auf einzelne Objekte beziehe (z.B. nur ein user) und ich somit mit diesen Klassen keine Übersicht aller Objekte hinbekomme (oder nur sehr aufwendig...).
Nun dachte ich an eine Realisierung in der Art wie Javascript es hat, also statt:
$user = new user($session_id());
$character = new character($user->character);
$character->name
sowas:
$user[$session_id()]->character->name
wobei dann in der klasse user natürlich die unterklassen angelegt werden müssten...
Wollte da mal die Meinung nach Sinn und Vorgehen bei sowas haben (auch allgemeiner), bzw. falls existent gerne auch Verweise auf entsprechende Tuts.
Danke schonmal
bin in letzter Zeit ein wenig dran, mir die objektorientierte Programmierung reinzupfeifen, bin mir aber immer noch nicht sicher (und finde diesbezüglich auch irgendwie nichts), wie ein OOP System aussehen sollte. Da das natürlich für alles unterschiedlich sein kann hier mal ein Beispiel von mir für ein Browsergame (jaja, lacht nur...):
Es gibt eine SQL Klasse 'connection', die die Datenbank steuert.
Nun war meine Idee die folgende: Jede weitere Klasse ist Kindklasse von Connection und dient somit als Schnittstelle zur Datenbank, z.B.:
class user extends connection {...}
class character extends connection {...}
class message extend connection {...}
etc.
Nun instantiiere ich zu Beginn des Scripts sämtliche Klassen, die ich gebrauchen könnte (user, character, party), wo auch schon mein Problem liegt.
Das ganze scheint mir total Banane zu sein insbesondere da ich die Klassen nur auf einzelne Objekte beziehe (z.B. nur ein user) und ich somit mit diesen Klassen keine Übersicht aller Objekte hinbekomme (oder nur sehr aufwendig...).
Nun dachte ich an eine Realisierung in der Art wie Javascript es hat, also statt:
$user = new user($session_id());
$character = new character($user->character);
$character->name
sowas:
$user[$session_id()]->character->name
wobei dann in der klasse user natürlich die unterklassen angelegt werden müssten...
Wollte da mal die Meinung nach Sinn und Vorgehen bei sowas haben (auch allgemeiner), bzw. falls existent gerne auch Verweise auf entsprechende Tuts.
Danke schonmal
Kommentar