Your browser doesn't support the features required by impress.js, so you are presented with a simplified version of this presentation.

For the best experience please use the latest Chrome or Safari browser. Firefox 10 (to be released soon) will also handle it.

「異常な努力」をするまえに

@tsucchi

自己紹介

はじめに

CGI.pm

※個人の感想です

メール系

DB系

ちょっとだけまとめ

ところで

例1) CSV

例1) CSV

my @values = split(qr/,/, $input);

これで本当に大丈夫?

例1) CSV

CSV の仕様は意外と複雑(だし、標準もない)。じゃあどうすれば?

例1) CSV

例2) 配列から小配列を取る処理

例2) 配列から小配列を取る処理

my @ids = ... #処理したい10万件くらいのデータ
my $ceil = ceil(@ids/1000) - 1;
foreach my $i ( 0..$ceil ) {
    my $start_index = $i * 1000;
    my $end_index = $i != $ceil ? (($i + 1) * 1000 - 1) : $#ids;
    my @sub_ids = @ids[$start_index..$end_index];
    # @sub_ids が小配列なので、これ使って処理
}

例2) 配列から小配列を取る処理

例2) 配列から小配列を取る処理

my @ids = ... #10万件のidの配列
while ( my @sub_ids = splice(@ids, 0, 1000) ) {
    # @sub_ids が小配列なので、これ使って処理
}

例3) Otogiri::Plugin::DeleteCascade

例3) Otogiri::Plugin::DeleteCascade

まとめ

おしまい

Use a spacebar or arrow keys to navigate