Philipp Hasenfratz: Ein erster Prototyp zum testen - Komponenten-Beschreibungen

Beitrag lesen

Halihallo Simon

Hatte gerade etwas Zeit und habe mal etwas gebastelt:
http://www.emedias.ch/tmp/doc.zip

Gefällt mir ganz gut.
Nur ein paar Sachen noch:

Immer gerne! Danke.

...
sub getNotes {
   my ($self) = @_;
   my $desc = $self->getElementsByTagName( 'description' );
...

Da müsste 'notes' stehen.

Uha, danke. Zuviel Copy&Paste :-)

<method type="constructor" name="new">
<method type="public" name="parseFile">

Ich würde das noch trennen. constructor ist ja eine ganz andere Sache als public. Das eine ist wirklich der Typ der Methode, das andere würde ich (zumindest in Java) unter einem Attribut restriction einbinden. Ich weiß nicht, wie es in Perl ist, aber in Java kann eine Methode Constructor sein und trotzdem noch die Restrictions public/private/protected/nichts haben. Ich weiß auch nicht, welche von diesen Schlüsselwörtern es in Perl gibt, denn Du hast in Doc.pm ja nur eine Methode isPublic().

In Perl gibt es eigentlich gar nichts, die Methoden werden nicht weiter charakterisiert.
Es gibt weder private, noch public oder andere Methodenrestriktionen. Perl war anfänglich
nicht für OOP konzeptioniert und dementsprechend schwach ist die Syntax heute
implementiert. Eine Klasse ist in Perl nichts anderes als ein Modul mit Funktionen und
Prozeduren, welchen eine "geblesste" Referenz übergeben wird. Es gibt demnach eigentlich
gar keine Syntax für Klassen.
Dass Restrictions und Types getrennt implementiert sein sollten stimmt. Das werde ich
noch ändern, stammte noch aus dem Anfang der Planung, wo ich es mir noch einfach gemacht
habe (nicht zuletzt deswegen, dass es das in Perl gar nicht gibt, jedoch möchte ich
schon eine Schnittstelle, die Sprachenunabhängig ist).

Interessant wäre noch, Dein Format mit XSLT zu transformieren. Dann brauchst Du kein kompliziertes Perl-Script mehr dazu. ;-)

Das hab ich mir auch überlegt, jedoch mag ich eine Dokumentationskomponente mehr ;-)

Viele Grüsse

Philipp

0 43

Klassenbeschreibungen

Philipp Hasenfratz
  • projektverwaltung
  1. 0

    Klassenbeschreibungen - Beispiele? - Vorlagen?

    Philipp Hasenfratz
    1. 0
      Simon Reinhardt
      1. 0
        Philipp Hasenfratz
  2. 0
    Andreas Korthaus
    1. 0
      Philipp Hasenfratz
  3. 0
    Philipp Hasenfratz
    1. 0
      Simon Reinhardt
      1. 0
        Martin Speiser
  4. 0
    Martin Speiser
    1. 0
      Philipp Hasenfratz
      1. 0
        Martin Speiser
        1. 0
          Philipp Hasenfratz
      2. 0
        Simon Reinhardt
        1. 0
          Philipp Hasenfratz
  5. 0

    Ein erster Prototyp zum testen - Komponenten-Beschreibungen

    Philipp Hasenfratz
    • perl
    1. 0
      Simon Reinhardt
      1. 0
        Philipp Hasenfratz
        1. 0

          Status

          Philipp Hasenfratz
          1. 0
            Simon Reinhardt
            1. 0
              Philipp Hasenfratz
              1. 0
                Simon Reinhardt
                1. 0
                  Philipp Hasenfratz
      2. 0

        XSLT Tranformierung der Componenten-XML-Datei

        Philipp Hasenfratz
        • xsl
        1. 0
          Thomas J.S.
          1. 0
            Philipp Hasenfratz
            1. 0
              Thomas J.S.
              1. 0
                Philipp Hasenfratz
                1. 0
                  Thomas J.S.
    2. 0
      Thomas J.S.
      1. 0
        Philipp Hasenfratz
      2. 0
        Simon Reinhardt
        1. 0
          Thomas J.S.
        2. 0
          Philipp Hasenfratz
          1. 0
            Thomas J.S.
            1. 0
              Philipp Hasenfratz
              1. 0
                Thomas J.S.
                1. 0
                  Philipp Hasenfratz
                  1. 0
                    Thomas J.S.
                    1. 0
                      Philipp Hasenfratz
                      1. 0
                        Thomas J.S.
                        1. 0
                          Philipp Hasenfratz
  6. 0
    Philipp Hasenfratz