logo       

Re: Neue CPANmodule: msg#00002

lx-office.devel

Subject: Re: Neue CPANmodule

Huhu,

On Monday 02 April 2007 15:54, Udo Spallek wrote:

> sehr gern würde ich die folgenden CPAN Module für Lx-Office benutzen:
> - Class::DBI
> - Class::Std
> - Contextual::Return
> - CGI::Carp
> - Regexp::Common

Ich hab eben mal bei Ubuntu 6.06 und bei OpenSuSE 10.2 nachgesehen,
welche Pakete davon Bestandteil der Distribution sind und welche nicht:

Modul Ubuntu OpenSuSE
Class::DBI ja nein
Class::Std nein nein
Contextual::Return nein nein
CGI::Carp ja ja
Regexp::Common ja ja

Sieht etwas gemischt aus.

> Class::DBI ermöglicht einen objektorientierten Zugriff auf die
> Datenbank und ist dabei datenbankunabhängig.

Ehrlich gesagt finde ich das absolut überflüssig. Wir stellen hier
gerade alle .pms auf parametrisierte Queries um und führen dabei immer
mehr Hilfsfunktionen in DBUtils.pm ein. Das mag zwar nicht die absolut
objektorientierte Version sein, aber wozu brauchst du dieses Modul, wenn
DBI selber bereits objektorientiert ist? DBI ist ebenfalls
datenbankunabhängig. Und es gibt immer genügend Stellen bei
SQL-Anfragen, die von einem Modul überhaupt nicht datenbankunabhängig
realisiert werden können, da muss der Programmierer halt ran (denk nur
an Subqueries... Die werden z.B. von MySQL gar nicht oder nur bei
bestimmten Tabellentypen unterstützt).

> Mit Class::Std ist es möglich, sog. inside-out Klassen zu
> generieren, die sich dadurch auszeichnen, vollständig gekapselt zu
> sein. Im Gegensatz zu hashbasierten Klassen müssen alle
> Objektattribute in der Klasse deklariert werden, und können nicht
> clientseitig 'reingebastelt' werden, was zu einer konsistenten
> Schnittstelle führt.

Klingt durchaus sinnvoll.

> Contextual::Return bietet die Möglichkeit, kontextbasierte
> Rückgabewerte für Funktionen oder Methoden zu generieren. Dabei ist
> es weitaus mächtiger und einfacher zu verstehen, als wantarray...

Ebenfalls sinnvoll.

> CGI::Carp ermöglicht es Fehler auszulösen und Meldungen zu erzeugen,
> die aus Aufrufersicht (Frontendcode) formuliert sind. Diese sind zum
> debuggen deutlich sinnvoller als die, welche von 'die' erzeugt werden.

CGI::Carp sollte doch eigentlich immer drauf sein, wenn CGI selber
installiert ist, glaube ich.

> Ferner sollten wir überlegen, verschiedene RegExe's über das Modul
> Regexp::Common zu realisieren. Dieses Modul ist sehr mächtig und in
> der Lage zuverlässig (175000 Tests! Umfassendste Testsuit des CPAN)
> tatsächlich das heraus zu filtern was man wirklich will...

Hmm, naja. Wenn du meinst, dass man's braucht... Ich bin etwas
skeptisch, wenn immer mehr und mehr (vor allem große) Module bei jedem
Zugriff geladen werden sollen.

> Angekündigt werden die neuen Voraussetzungen soweit ich weiss in
> - doc/INSTALL
> - doc/UPGRADE
> - SL/InstallationCheck.pm
>
> oder fehlt da noch etwas?!
>
> Wenn niemand etwas dagegen hat, so bitte ich Linet darum, die o.g.
> Module auf der Demoplattform nachzuinstallieren, damit ich meinen
> Code gefahrlos einchecken kann.

Ja, so ganz bin ich schlicht nicht überzeugt. Bei Modulen, die nicht auf
zumindest Debian/Ubuntu und OpenSuSE verfügbar sind, würde ich sie sogar
lieber gleich mitliefern (wie auch CGI::AJAX). Dazu müssten die
entsprechenden Dateien im Unterverzeichnis "modules" importiert
werden. Das geht natürlich nur, wenn die Module rein Perl sind und nicht
auch aus compiliertem Code bestehen.

Kannst du bitte mal herausfinden, welche Module die ersten drei
(Class::DBI, Class::Std und Contextual::Return) noch benötigen?
Lx-Office ist schon kompliziert genug zu installieren, und es wird durch
zu viele Module nur noch komplizierter. Gerade wenn's um
Debian-/RPM-Pakete geht und die Module für die Distribution nicht als
Paket verfügbar sind...

Mosu

--
Dipl.-Inform. Moritz Bunkus
Geschäftsführung

LINET Services GbR | Gotenweg 15 | 38106 Braunschweig
Tel. 0531-180508-0 | Fax 0531-180508-29

http://www.linet-services.de

Vertretungsberechtigte Gesellschafter:
Moritz Bunkus, Philip Reetz und Timo Springmann

USt-IdNr. DE 206946144

Attachment: pgpmo4Ty3n1Ef.pgp
Description: PGP signature

-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV_______________________________________________
Lx-office-devel mailing list
Lx-office-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.sourceforge.net/lists/listinfo/lx-office-devel
<Prev in Thread] Current Thread [Next in Thread>
Google Custom Search

News | FAQ | advertise