-
perlをはじめて使う 2007-07-04 00:00:00
仕事で初めてperlを使いました。思っていたほど複雑ではないという印象。OOを使ったからかもしれません。呼び出される側のソースコードで、最後に
1;をつけなければならないところとか、仕様的にちょっと納得いかないところはありますが……。
クラスはpackageを使って定義してあげます。package ClassSuper; sub new { my $class = shift; my ($arg1, $arg2) = @_; my $self = { 'arg1' => $arg1, 'arg2' => $arg2 }; bless $self,$class; } sub put { my $self = shift; print $self->{arg1}, "\n"; }のような感じ。インスタンス変数はハッシュで表現するようです。Rubyになれているから、行の最後のセミコロンをついつい忘れてしまいます。
サブクラスはこんな感じで定義します。package ClassSub; use ClassSuper; use base qw( ClassSuper ); sub new { my $class = shift; my $self = new ClassSuper; bless $self, $class; } sub put2 { my $self = shift; print 'arg2: ', $self->{arg2}, "\n"; } sub put { my $self = shift; print 'arg1: ', $self->{arg1}, "\n"; $self->put2(); }という感じでオーバーライドもできます。親クラスのメソッドを使いたいときは SUPER::method() みたいにSUPERで指定してやります。
はじめてまともにperlに触れてみたけど、なかなかこれもおもしろいですね。

コメント(
リンク元(14)