[ascoders] AW: Re: OOP Struktur Ansatz

  • From: "Andre Seifert" <andre.seifert@xxxxxxxxxx>
  • To: <ascoders@xxxxxxxxxxxxx>
  • Date: Tue, 16 Sep 2003 15:34:22 +0200

Du möchtest Klassen in einem Namespace haben. Ok.
Also Isometric.Controller, Isometric.Tile

Dein Problem ist, dass es in der Klasse Isometric.Controller keinen Member
gibt, der "Tile" heisst.

So wie du es unten geschrieben hast, greifst du mit GameIso.Tile auf die
(nichtvorhandene!!!) Eigenschaft "Tile" von Isometric.Controller zu.

Du brauchst also in deiner Controller-Klasse auch ein Feld "Tile". Das kann
aber natürlich vom Typ "Isometric.Tile" sein. Ich kann dir leider erst heute
Abend etwas Code dazu senden...


Aber prinzipiell sollte es so aussehen
(ungetestet)

Isometric.Controller.Tile = function() {}
...

GameIso.Tile = new Isometric.Tile();

> -----Ursprüngliche Nachricht-----
> Von: ascoders-bounce@xxxxxxxxxxxxx 
> [mailto:ascoders-bounce@xxxxxxxxxxxxx] Im Auftrag von André Michelle
> Gesendet: Dienstag, 16. September 2003 14:46
> An: ascoders@xxxxxxxxxxxxx
> Betreff: [ascoders] Re: OOP Struktur Ansatz
> 
> Florian Krüsch wrote:
> > wozu brauchst Du Instanzen von Isometric? das ist doch nur Dein 
> > Namensraum, keine Klasse!
> > wenn Du eine übergeordnete Klasse für das Spielfeld anlegen willst, 
> > musst Du auch dafür eine Klasse(!) definieren und sie in den 
> > Namensraum packen. Die "Verknüpfung" der Instanzen untereinander 
> > kannst Du nicht "vordefinieren", das musst Du nach Anlegen der 
> > Instanzen machen...
> 
> Ich befürchte ich suche nach Befehlen, die wirklich 
> fantastisch wären, aber noch nicht existieren. Was mir immer 
> sauer hochstösst, sind viele Paramterangaben beim 
> Instanzieren. Ich brauche ca. 4 Parameter, die aber nicht 
> wichtig sind für die MainClass, sondern erst für den 
> MapBuilder, TileProperties, etc.
> 
> Gibt es irgenteine Möglichkeit Abhängigkeiten zu erkennen ?
> 
> <neuer Ansatz>
> 
> _global.Isometric = {};
> 
> Isometric.Controller = function () {};
> Isometric.Tile = function ( dx , dy ) {
>  this.dx = dx;
>  this.dy = dy;
> }
> Isometric.MapConstructor = function () {  trace ( 
> path.Tile.dx ); // ???
> }
> 
> GameIso = new Isometric.Controller();
> GameIso.Tile = new Isometric.Tile ( 24 , 8 ); trace ( 
> GameIso.Tile.dx ); // 24 GameIso.MapConstructor = new 
> Isometric.MapConstructor();
> 
> </neuer Ansatz>
> 
> Ich will vermeinden, dem MapConstructor zu sagen, über welche 
> Referenze das Objekt Tile anzusprechen ist. Es ist ja 
> offensichtlich, dass beide Eigenschaft von GameIso ist.
> 
> Ist denn verständlich,dass ,auch wenn es ohne nicht geht, 
> eine solche Syntax wünschenswert wäre ?  :o)
> 
> aM
> http://www.andre-michelle.com
> http://public.extrajetzt.de
> 
> ------------------------------------------------------
> Archiv   : //www.freelists.org/archives/ascoders/
> Optionen : //www.freelists.org/list/ascoders
> ------------------------------------------------------

------------------------------------------------------
Archiv   : //www.freelists.org/archives/ascoders/
Optionen : //www.freelists.org/list/ascoders
------------------------------------------------------

Other related posts: