Domains als Namespaces

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Benutzeravatar
veers
User
Beiträge: 1219
Registriert: Mittwoch 28. Februar 2007, 20:01
Wohnort: Zürich (CH)
Kontaktdaten:

Domains als Namespaces

Beitragvon veers » Sonntag 30. Dezember 2007, 16:58

Hi ihrs,

Ich habe mal eine Frage bezüglich der Namespaces. Bei Java & co ist es ja üblich den Domain Namen eines Projektes als Namespace zu verwenden.
Die Idee finde ich eigentlich nicht schlecht - es wird ein bestehendes globales System zur Verhinderung von Kollisionen verwendet. In Python wird das ja nicht so gemacht.

Die Frage ist nun wo soll ich meine semiprivaten Module ablegen. Es geht dabei primär um kleine Helper welche ich in mehreren Projekten verwende die ich aber nicht wirklich als eigene Module publizieren will.

Eine weitere Frage ist wie ich in Python mehrere Versionen eines Modules gleichzeitig installiert haben kann.

Gruss,
Jonas
My Website - 29a.ch
"If privacy is outlawed, only outlaws will have privacy." - Phil Zimmermann
Benutzeravatar
Leonidas
Administrator
Beiträge: 16023
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Re: Domains als Namespaces

Beitragvon Leonidas » Sonntag 30. Dezember 2007, 17:21

veers hat geschrieben:Eine weitere Frage ist wie ich in Python mehrere Versionen eines Modules gleichzeitig installiert haben kann.

Mit setuptools kannst du beliebig viele Versionen von einem Modul nutzen, ohne dass es zu Konflikten kommt. Dabei kannst du auch exakt definieren welche Version geladen werden soll, sowie auch eine Default-Version haben, die verwendet wird, wenn Programme die setuptools nicht nutzen auf die Module zugreifen.

Damit ist es auch möglich RuleDispatch und PyDispatch gleichzeitig installiert zu heben, welche beide das Package ``dispatch`` definieren.

Domains als Namespaces finde ich selbst nicht so besonders gut, denn obwohl es zwar recht einzigartig ist, sagt es recht wenig über das Package selbst aus und ist teilweise auch einfach schwer zu merken. Aber gehen tut es natürlich auch in Python, indem du Packages verschachtelst.
My god, it's full of CARs! | Leonidasvoice vs Modvoice
Benutzeravatar
veers
User
Beiträge: 1219
Registriert: Mittwoch 28. Februar 2007, 20:01
Wohnort: Zürich (CH)
Kontaktdaten:

Re: Domains als Namespaces

Beitragvon veers » Sonntag 30. Dezember 2007, 23:15

Leonidas hat geschrieben:Domains als Namespaces finde ich selbst nicht so besonders gut, denn obwohl es zwar recht einzigartig ist, sagt es recht wenig über das Package selbst aus und ist teilweise auch einfach schwer zu merken. Aber gehen tut es natürlich auch in Python, indem du Packages verschachtelst.
Das ist mir klar. Nur ist es Sinnvoll das zu tun? Was wäre besser?
My Website - 29a.ch

"If privacy is outlawed, only outlaws will have privacy." - Phil Zimmermann
Benutzeravatar
Leonidas
Administrator
Beiträge: 16023
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Re: Domains als Namespaces

Beitragvon Leonidas » Montag 31. Dezember 2007, 00:56

veers hat geschrieben:Was wäre besser?

Sinnvolle Packagenamen und setuptools.

Also wenn ich so schaue, dann bin ich bisher nur mit einer wirklich dummen Kollision zusammengetroffen, weil mein ``parser.py`` mit dem Parser aus der Stdlib kollidiert ist, der von RuleDispatch benutzt wurde, also hat mir RuleDispatch ganz merkwürdige Exceptions geworfen. Und eben das schon angesprochene Problem mit den Dispatchern. Wobei, es gibt einen PyDispatcher-Fork namens Louie, der kollidiert logischerweise nicht mehr mit RuleDispatch und PJE wird RuleDispatch sowieso vermutlich über kurz oder lang durch irgendetwas anderes ersetzen.
My god, it's full of CARs! | Leonidasvoice vs Modvoice

Wer ist online?

Mitglieder in diesem Forum: harryberlin