添削
なんやようわからんけど、添削ブームなんかな。
あ、ちなみに僕、jnaoya やけど、今日は naoya というよりは、どちらかというと j 寄りのほうな。
j 言うたらわかるやろ。
自転車好きなほうな。
自信のないPerlコードを投稿するとid:jtakesakoとid:jankogaiとid:jnaoyaが適切な添削をしてくれます。
僕そんなん言うてないよー。
何勝手に僕がそこに加わってるのかなー。
これ、なんやったっけ、大沢さん?
大沢さんが勝手にやってんの?
困るわぁ。
こんなこと勝手に言われると。
いや、ホンマよ。
いや、みらのさん、あなた、僕に添削してもらおうとか、そういう人と違いますやん。
MT 日本語版流行らせたの、あなたでしょう。
Sledge の名付け親、あなたでしょう。
ほな、よくわからんけど、ちょっと MLD::Info だけ見てみるわ。
require MLD::Info::MFi; require MLD::Info::SMAF; require MLD::Info::AMC; require MLD::Info::3GPP; require MLD::Info::3GP2; require MLD::Info::MP4; require MLD::Info::DCF;
これって、動的に load させれば良いんと違うんかなぁ。
要らんやつ読んでると、プロセスサイズがデカなるやろ。
if ($file =~ /\.mld/i) { $sub = 'MFi'; } if ($file =~ /\.mmf/i) { $sub = 'SMAF'; } if ($file =~ /\.amc/i) { $sub = 'AMC' }; if ($file =~ /\.3gp/i) { $sub = '3GPP' }; if ($file =~ /\.3g2/i) { $sub = '3GP2' }; if ($file =~ /\.mp4/i) { $sub = 'MP4' }; if ($file =~ /\.dcf/i) { $sub = 'DCF' };
えー、これって、なんや
our %ExtList = ( mld => 'MFi', mmf => 'SMAF', amc => 'AMC', '3gp' => '3GPP', '3g2' => '3GP2', mp4 => 'MP4', dcf => 'DCF', );
こんなんグローバルに定義しておいたら
my $sub = $file =~ /\.(\w+)$/ ? $ExtList{lc($1)} : undef;
こんなんでイケそうな気ぃすんねんけどなぁ。
なんや、スッキリやろ?このほうが。
いや、好きずきやから、こんなんせなあかんとは思わんで。
僕はそう思うってぐらい。
return undef if !$sub;
なんやったっけ。
undef 返したらアカンとか、Damian 先生言うてはった気がする。
何でかは知らんけど。
そんで、こんなんすんねん。
return () unless $sub; my $subclass = "$class\::$sub"; eval qq{ require $subclass }; croak($@) if $@;
ごめん。
なんかテキトー。
あと、use Carp しとかなアカンね。これ。
my $self = bless { file => $file, header => {}, opt => $opt, }, "$class\::$sub";
これって、自分自身とちゃうのに、$self って変数なんがちょっと違和感やわ。
いや、こういうもんなんかな。
僕やったら…うーん…そやなぁ…。
いい単語が思い浮かばへんわ。
my $jitensha = bless { file => $file, header => {}, opt => $opt, }, $subclass;
$jitensha でええかなぁ。
あとは、もう、なんや、添削したいけど、もう眠たい。
久々やわぁ。
こんな遅くまで起きてたの。
get_ なんとか time() なものは、全部、DateTime あたりのオブジェクト返すメソッド用意しておいて、そこから strftime() 呼ぶ wrapper みたいにしたらええんとちゃう?
あと、MLD::Info::* やけど
% cd MLD/Info % grep -h ^sub *.pm | sort | uniq -c | sort -nr 7 sub get_title { 7 sub get_song_writer { 7 sub get_copyright { 7 sub get_author { 7 sub _parse { 3 sub get_version { 2 sub get_description { 1 sub get_supt { 1 sub get_prot { 1 sub get_memo { 1 sub get_date { 1 sub get_artist { 1 sub _parse_opda { 1 sub _parse_cnti {
なんか、共通化出来るとこは、雛形を作っておいて、それを use base 'MLD::Info::Jitensha' みたいに継承したほうがええんとちゃうかな。
あと、中で何やってるか、全然わからんから、そこらへんは、なんか専門家のほうがええんやろな。
小飼さんとか。
こんなもんでええかな。
僕の添削。
ていうか、マジレスすぎておもろないやろ。
ごめんなー。
もう今日はそろそろ自転車のギアに油さして、寝るわー。
ほな。