Leser: 31
2012-02-21T18:42:35 pktmund kann ultra grottig programmiert werden (also unwartbar usw.).
QuoteDie Öffentlichkeitsarbeit ist - falls es welche gibt - einfach mies.
2012-02-21T18:42:35 pktmJa, da hat Perl nachzuholen, den abgestandenen Mief des CGI-Skript-Lieferanten loszuwerden.Die Energie sollte besser woanders investiert werden. Z.B. in Öffentlichkeitsarbeit :)
2012-02-21T18:42:35 pktm... Jetzt auf dieser Aussage rumzureiten bringt nicht viel und ändert nichts. Die Energie sollte besser woanders investiert werden. ...
2012-02-22T09:26:16 Relais2012-02-21T18:42:35 pktm... Jetzt auf dieser Aussage rumzureiten bringt nicht viel und ändert nichts. Die Energie sollte besser woanders investiert werden. ...
pktm for Bundeskanzlerin!
2012-02-21T18:30:08 rostiWas hat, PHP, was Perl nicht hat?
say"OMG, it's Perl!"if$name~~/Perl/;
2012-02-21T19:02:52 GwenDragonOder wo kann ich mit PHP folgendes so kurz schreiben:Code (perl): (dl )say"OMG, it's Perl!"if$name~~/Perl/;
2012-02-21T19:18:44 janWenn ich was kurzes brauche, ja.2012-02-21T19:02:52 GwenDragonOder wo kann ich mit PHP folgendes so kurz schreiben:Code (perl): (dl )say"OMG, it's Perl!"if$name~~/Perl/;
Und so würdest Du das in perl wirklich schreiben?
1 2 3 4
#!/usr/bin/perl use Response; tie my $response, 'Response'; print $response;
2012-02-21T19:44:45 GwenDragonPHP ist deswegen auch niedrigschwellig, weil es gleich mit Code direkt in die Webseite eingebaut werden kann.
Das kann Perl eben nicht. Das ist ein Manko.
2012-02-21T20:05:03 janWieviele davon mit kommerziellem Support (um Battie mal auszuschließen)?
QuoteCGIs sind cool cool für kleine Sachen, aber man kann den Performanceverlust messen.
Guest ronnie_gastHeutzutage ist die Chance, dass man als Perl-Neuling erstmal "use strict;" um die Ohren gehauen bekommt relativ hoch.
2012-02-21T20:03:27 pqaber das bekommt man zum glück mittlerweile auch in jedem guten tutorial, und dann ist es gut (wenn es gleich am anfang benutzt und kurz erklärt wird).
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77
# einfache Klasse für die Ausgabe eines Scripts # welches Eingaben erwartet, die zu prüfen sind # Benutzereingaben werden über Exceptions gehandelt # Beachte \n am Ende eines die() zur Unterdrückung des Backtrace package OUT; use strict; use warnings; use Getopt::Long; # Construction sub new{ my $class = shift; # Datenversteck für Ein/Ausgabe my $self = bless{ STASH => { name => undef, vname => undef, }, }, $class; return $self; } # Darstellung auf der Konsole # nenne es presenter oder view sub presenter{ my $self = shift; # feststellen ob es Parameter gibt # den code der entsprechenden Methode laden # und auf Exception prüfen if(@ARGV){ my $code = $self->can('control'); my $result = ''; # mögliche Exception fangen eval{ $result = $self->$code }; if($@){ print "Eingabefehler: $@\n"; } else{ print $result; } } else{ print $self->default; } } ########################### controller methods ############################ # keine Eingabe-Parameter # stellt die Sicht ohne Eingaben dar sub default{ my $self = shift; return "Bitte --name=<Name> und --vname=<Vorname> eingeben\n"; } # Eingabe-Parameter liegen vor # Anwendung Exception-Model: Der Code wird später geprüft sub control{ local $SIG{__WARN__} = sub{die "@_\n"}; # Warnungen GetOptions my $self = shift; GetOptions( 'name=s' => \$self->{STASH}{name}, 'vname=s' => \$self->{STASH}{vname}, ); die "Name nicht eingegeben\n" unless defined $self->{STASH}{name}; die "Vorname nicht eingegeben\n" unless defined $self->{STASH}{vname}; return qq( Name: $self->{STASH}{name} Vorname: $self->{STASH}{vname} ); } 1;######################################################################### # Sehr einfache Application package main; my $out = OUT->new; $out->presenter;