[ascoders] Namensräume
- From: Ralf Siegel <ralf@xxxxxxxxxxx>
- To: ascoders@xxxxxxxxxxxxx
- Date: Wed, 26 Mar 2003 10:24:08 +0100
http://moock.org/webdesign/lectures/ff2003Workshop/
Benutzt Ihr solche Namensräume für Klassen? Ich glaube ich hatte mit Tatsuo
letztes Jahr eine Diskussion zum Thema, wo ich meinte, dass ich Namensräume
in Form von Objektpfaden rein von der Handhabung derzeit in ActionScript
ziemlich umständlich finde und deshalb vermeide. Im Gegensatz zu z.B. Java
ist man nämlich in dem Fall gezwungen, immer den ganzen Pfad anzugeben.
new org.moock.ui.MessageDialog();
Vielleicht mal als Vergleich - in Java kann man einfach schreiben:
______________________________________________________________
import "org.moock.ui.*";
new MessageDialog():
______________________________________________________________
Ich hab deswegen mal versucht, Colin's Skript zu erweitern, und einen
'Lookup' zu simulieren. Das ganze funktioniert vorläufig nur mit einem
Namensraum ...
_______________________________________________________________
CODE
_______________________________________________________________
_global.AsSetupPackage = function(path) {
var a = path.split('.');
var o = _global;
for (var i = 0; i < a.length; i++) {
var name = a[i];
if (o[name] == undefined) {
o[name] = new Object();
}
o = o[name];
}
};
// ----------------------------------------
AsSetupPackage("org.moock.ui");
AsSetupPackage("de.audiofarm.ui");
// ----------------------------------------
org.moock.ui.MessageDialog = function() {
trace("org.moock.ui.MessageDialog");
};
de.audiofarm.ui.MessageDialog = function() {
trace("de.audiofarm.ui.MessageDialog");
};
// ----------------------------------------
objA = new org.moock.ui.MessageDialog();
objB = new de.audiofarm.ui.MessageDialog();
// ----------------------------------------
_global.AsSelectPackage = function(path) {
if (path == null) {
delete _global.__resolve;
}
_global.__resolve = function(c) {
return path[c];
};
};
// ----------------------------------------
AsSelectPackage(org.moock.ui);
objC = new MessageDialog();
AsSelectPackage(de.audiofarm.ui);
objD = new MessageDialog();
_______________________________________________________________
AUSGABE
_______________________________________________________________
org.moock.ui.MessageDialog
de.audiofarm.ui.MessageDialog
org.moock.ui.MessageDialog
de.audiofarm.ui.MessageDialog
_______________________________________________________________
Was denkt ihr?
ralf ...
------------------------------------------------------
Archiv : http://www.freelists.org/archives/ascoders/
Optionen : http://www.freelists.org/list/ascoders
------------------------------------------------------
- Follow-Ups:
- [ascoders] AW: Namensräume
- From: Andre Seifert
- [ascoders] AW: Namensräume
- From: Andreas Hucks
- References:
- [ascoders] Colin Moock goes OOP
- From: bokel
Other related posts:
- » [ascoders] Namensräume
- » [ascoders] Re: Namensräume
- » [ascoders] Re: Namensräume
- » [ascoders] Re: Namensräume
- » [ascoders] Re: Namensräume
- » [ascoders] Re: Namensräume
_global.AsSetupPackage = function(path) { var a = path.split('.'); var o = _global; for (var i = 0; i < a.length; i++) { var name = a[i]; if (o[name] == undefined) { o[name] = new Object(); } o = o[name]; } };
org.moock.ui.MessageDialog de.audiofarm.ui.MessageDialog org.moock.ui.MessageDialog de.audiofarm.ui.MessageDialog
------------------------------------------------------ Archiv : http://www.freelists.org/archives/ascoders/ Optionen : http://www.freelists.org/list/ascoders ------------------------------------------------------
- [ascoders] AW: Namensräume
- From: Andre Seifert
- [ascoders] AW: Namensräume
- From: Andreas Hucks
- [ascoders] Colin Moock goes OOP
- From: bokel