�Ȥ����������Τʤ��Ϥ��α��ò�����������Ȥߤ����Ǥ�ȯ������Ƥ���ΤǤ���
�ӥ������Τۤ��ۤ� Kansai.pm��8��ߡ��ƥ��󥰤˹ԤäƤ��ޤ���@��¤���������ơ�Perl�Υ��֥������Ȼظ��ˤ� ���ò�����������ȤߤϤʤ�
���Ĥ��񤳤��ȻפäƤ������ɡ����礦�ɤ�������ʤΤǡ�
�����Ǥ���Ȥ��ơ�name,uri�Ȥ�����ĤΥ��󥹥����ѿ�����ĥ��֥������Ȥ�������Ƥߤޤ���
InsideOut.pm{ package InsideOut; use strict; use warnings; my %objects; sub new { my $class = shift; bless \eval{ my $scalar }, $class; } sub DESTROY{ my $self = shift; delete $objects{$self+0}; } sub name{ my $self = shift; $objects{$self+0}{name} = shift if @_; $objects{$self+0}{name}; } sub uri{ my $self = shift; $objects{$self+0}{uri} = shift if @_; $objects{$self+0}{uri}; } 1; }insideout.pl
use strict; use warnings; use InsideOut; use Data::Dumper; my $o = InsideOut->new(); $o->name("dankogai"); $o->uri("http://blog.livedoor.jp/dankogai/"); print $o->name, ",", $o->uri, "\n"; print Dumper $o;
�����ǡ�insideout.pl��¹Ԥ��Ƥߤ�ȡ��ʲ��Τ褦�ˤʤ�ޤ���
% perl insideout.pl dankogai,http://blog.livedoor.jp/dankogai/ $VAR1 = bless( do{\(my $o = undef)}, 'InsideOut' );
���Ƥ��̤ꡢ�Τ���accessor���̤������ˤϡ֥��󥿥��ѿ��פϥ��������Ǥ���Τˡ����֥������Ȥ���Ȥ϶��äݤǤ���
�����ǡ�InsideOut.pm�λ��Ȥߤ�褯���Ƥߤޤ������֥������Ȥ϶��äݤ�blessed scalar reference�Ǥ���Perl�ξ�硢���֥������Ȥ�blessed reference�Ǥ���в��Ǥ�OK�ʤΤǡ��������Ƥ��ޤ���
����accessor�򸫤Ƥߤޤ��礦��$objects{$self+0}{name}
�Ȥϰ��Τʤ�Ǥ��礦?$self+0
�����ܤ��Ƥߤޤ��礦������ϰ��Τʤ�Ǥ��礦��?��ñ�ʥ��֥������Ȥ��äƼ¸����Ƥޤ��礦��
% perl -MCGI -le '$q=CGI->new; printf "%s,%d,0x%x\n", $q, $q+0, $q+0' CGI=HASH(0x1801180),25170304,0x1801180
�����ʤΤǤ�����ե���󥹤���ͥ���ƥ����Ȥ�ɾ������ȡ����ɥ쥹���֤äƤ��ޤ�������ϳƥ�ե���󥹤˸�Í�ʤΤǡ����֥������Ȥ�ID�ˤʤ�ޤ���accessor�Ϥ���ID�ò¥¡ï¿½ï¿½Ë¤ï¿½ï¿½ï¿½ï¿½Ï¥Ã¥ï¿½ï¿½å¡¢%objects
�˥����������Ƥ��ޤ���
�Ȥ�����������%objects
�ϥì¥ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½Ñ¿ï¿½ï¿½Ç¤ï¿½ï¿½ï¿½InsideOut.pm
�ΰ��ֳ�¦��{}
�γ�������������������Ǥ��ʤ��ΤǤ���accessor���̤���������ޤ��󡣤���ǡ�Perl 5�ǤⱣ�ò�����ǽ�Ǥ��뤳�Ȥ�������ޤ�����
����object��������äƤ���ǡ��������ˤ��롣����Τ��������Ǽ������줿���֥������Ȥ�Inside-Out Object�ȸƤӤޤ���
���α�դ��ʤ���Фʤ�ʤ��Τϡ����������ξ�硢DESTROY
��ɬ���������Ƥ���ɬ�פ�����ޤ����ǡ����ϥ��֥������Ȥ���ˤϤʤ��Τǡ����֥������Ȥ��˴������ݤˡ������ɳ�Ť����ǡ����ϡ�%objects
�������륹���������DESTROY
�Ǻ�����Ƥ��ɬ�פ�����ΤǤ���
����������Damian Conway�Τ���������ǡ����줬�󤸤��ब���������Τ�Class::Std�Ǥ���Inside-Out Object�ˤޤĤ�����ؤ򡢤ޤȤ�����ݤߤƤ����Ȥ�����ΤǤ���̾����Class::Std�ȤʤäƤ���Ȥ��������Hubris�򴶤����ˤϤ����ޤ���
�ܤ����ϡ���Ǥ�Perl Best Practices�������졣
Dan the Inside-Out Blogger
�֤������ɤä��ǻȤ��󤸤�ʤ�����
�������ʤ��δ֣����֡������֡ˡ�����
�ֳƥ��֥������ȤΥץ��ѥƥ����ò��Τ�����äƤ���
���Τ�ʤ���狼�뤫������
���������������������ɤ�ʤ��פΤ��ٶ���Â�Τ����Ǥ���
���٤η��ء����꤬�Ȥ��������ޤ���