「続・初めてのPerl」で説明されていることのメモ
2006-05-09-1
[BookReview][Programming]
「続・初めてのPerl」のどこで何が説明されているかの自分用メモ。
■続・初めてのPerl - Perlオブジェクト、リファレンス、モジュール
追記:修正メモ。
■続・初めてのPerl - Perlオブジェクト、リファレンス、モジュール
§2. 大規模なプログラムの作成 do → require → package perl -V perl -I/home/yto/... §3. リファレンスの基礎 \@skipper @{$items} _ @$items $$items[1] _ $$items->[1] $root->[2]->[1]->[0] _ $root->[2][1][0] \%hash $crew[0]->{'name'} _ $crew[0]{'name'} @hash{qw(name position)} @$hash_ref{qw(name position)} ハッシュスライス §4. リファレンスとスコープ リファレンスカウント $reference_to_skipper = undef; ($ref->[-1]) my $array_ref = [ qw(a b c d e) ]; my $hash_ref = {a=>1, b=>2, c=>3}; §5. 複雑なデータ構造の操作 perl -d ("s", "x \%hash") Data::Dumper $Data::Dumper::Purity = 1; Storable grep map map %hash = map {$_, 3 * $_} @input_numbers; §6. サブルーチンのリファレンス my $ref_to_greeter = \&skipper_greets; &{$ref_to_greeter}("Gilligan") &$ref_to_greeter("Gilligan") $ref_to_greeter->("Gilligan") $sub_ref = sub { ... } File::Find でコールバック、クロージャの説明 sub create {my $count; return sub {print ++$count}} {my $count; sub count_one {++$count}} count_one(); §7. リファレンスの実用的な使用方法 sort {$a <=> $b} @array シュワルツ変換(Schwartzian Transform) 再帰的に定義されたデータ §8. オブジェクトの基礎 Class->method(@args) _ Class::method("Class", @args) @ISA SUPER §9. オブジェクトとデータ (あとで) §10. オブジェクトの破棄 (あとで) §11. オブジェクトの高度な使用方法 (あとで) §12. モジュールの使用方法 File::Basename use File::Basename (); my $base = File::Basename::basename($path); File::Spac Math::BigInt use lib "/home/yto/lib"; Exporter @EXPORT, @EXPORT_OK use CGI qw(param); my $f = param("foo"); §13. ディストリビューションの作成 h2xs -XAn Island::Plotting::Maps §14. テスト リグレッションテスト Test::Harness Test::Simple Test::More ok, cmp_ok, like, isa_ok, can_ok, TODO: { } §15. CPANへの登録 Comprehensive Perl Archive Network PAUSE (Perl Authors Upload Server) ID
追記:修正メモ。
$hash_ref{qw(name position)} → @$hash_ref{qw(name position)}