Skip to content

Latest commit

 

History

History
729 lines (449 loc) · 17.3 KB

perlstyle.pod

File metadata and controls

729 lines (449 loc) · 17.3 KB

NAME

perlstyle - Perl ��鴻�帥�ゃ�˨�㋘�ゃ��

DESCRIPTION

�����㏍�違�í����壔�������<�����篋冴�������������������í�若����������˨�壠ソ��帥����������с��������; ��������������������ゃ����勉�㋘�ゃ����í�ゃ�潟��緇������������˨����c�⓾�������㏍�違�í����勐櫝˛��с�� 篆�絎���с����������������������с����障�����

�����c��������荀���ŝ�������壔����ゃ�㏍�˨����㏍�違�í����� -w �����í�違����ゃ���� 莎違����������������с����� 綽�荀���с�������違��no warnings �����í�違����� $^W 紊���違��篏睡�������⓾�潟�若���� 筝������������ц⑥���������腓榊����˨�ŝ����˨����障����� ��障�������ゃ�㏍�� use strict ���篏睡�������鴻����с��; ���������use strict ��� 篏睡�������ŝ����ŝ����������勛����宴����������̥��茹c����⓾�������鴻����с����� use sigtrap ��� use diagnostics �����í�違�����箴水�í�с�����������

��潟�若����㋘�ゃ�≪�⓾����勛��荀潟�̹�≪����⓾�壔��Larry ���綣激�閶���˨�������⓾�������勉�壔����c��筝���ゃ�� 茲���域����� BLOCK ��勰�����筝㏍����c����壔�������勖�����������紮���������㏍�若�壔�若�����������篏�臀勉� ��ŝ����⓾�壔�ŝ����ŝ�������������������������с����� ��������壠�ャ�������⓾����������障�у七�����壔�ŝ��綵若�勐ソ��帥�壚札筝���勰�������с��:

  • 4 ��˨�í����勉�ゃ�潟����潟�����

  • �櫝�純�ŝ��������紮�筝㏍����c�������㏍�若�壔�若��������筝�茵����; ��������с�ŝ�������違�����紮���� ���������������

  • 茲���域�� BLOCK ��勰��紮�筝㏍����c����勐����˨�鴻����若�鴻��

  • 1 茵���� BLOCK ��壚賢�����c�������˨�����1 茵���с��

  • ��祉����潟�㏍�潟�勐����̥Ã��純�ŝ�����

  • "��㏍��" 1 茵� BLOCK ��с�壔�祉����潟�㏍�潟�������ャ��

  • ��祉�������í�勖��膊�絖���勐��緇���˨�壔�鴻����若�鴻��

  • "茲�������"篁e��(�����í�宴��������)��勐��緇���˨�壔�鴻����若�鴻��

  • ��違�ŝ����������������������c�潟�壔�勰����˨�夌Ã茵����

  • else ��������c�ゃ����ŝ�����

  • ��∽�医����◒��紮���˨����潟�勰����˨�壔�鴻����若�鴻�ŝ�����

  • ��˨�潟����勐�������˨�壔�鴻����若�鴻��

  • ��激��茵���壔��羲�膊�絖���勐�������ф�壕��������(and ��� or �����ゃ��)���

  • 茵���勖��緇���勉�˨����潟�勐�������˨�鴻����若�鴻��

  • 絲上��������荀�膣���勰��紮�篏�臀勉�����������������

  • �����激�ʃ;�憗�壔�������������˨�������ŝ����ŝ����������夌����ャ��������

Larry ��˨�壔�����������������������絅純�������宴����������障��������綵寂札紊���勌査��������������障�c���� ��������с�����綽�荀���壔�ŝ����������c�⓾����障�����

篁���˨�����������荀���ŝ�鴻�帥�ゃ�˨�勐�馹����腓冴����障��:

  • 篏���������������号����� ��с����� ��������������c�⓾�������� �����鴻�� �����奝�������障�������� Perl ��壚����ゃ�勉��������罕������ʋ�号����с�с�������������̬┃荐���������⓾����障����������������� 茯㏍�帥�������������勉����吾�吟��������綽���������⓾�������������� �����������違��

    open(FOO,$foo) || die "Can't open $foo: $!";

    �����������勉�壚札筝���勉����勉�������壔����с��:

    die "Can't open $foo: $!" unless open(FOO,$foo);

    ��ŝ����ŝ�����2 ��ょ�勉�с�壔�������勖����勌源荀�������篆勰﹅絖���̹�������⓾����障�c�⓾����障����� �����˨��

    print "Starting analysis\n" if $verbose;

    �����������勉�壚札筝���勉����勉�������壔����с��:

    $verbose && print "Starting analysis\n";

    �����勖����勌源荀������壔����⓾�若�吟�� -v �����帥�ゃ�������������í����� ��с�壔�ŝ����������с�����

    ���罕���˨��������羲�膊�絖������������í�˨��綣���違����喝�������⓾�������������������c�⓾������� ��������í�˨�����篏帥����ŝ����⓾�壔�ŝ����ŝ�������������������˨�壔�ŝ����障�������� �����勉�������í�˨����ゃ����������勉�壔�������違�ŝ�激�鴻����������㏍�違�í��������筝���冴����㏍�違�í����� ��吾����������勉�������˨�������障����� �����㏍�違�í�����茯㏍�帥����������������˨�壔��綣���違�������ャ����ŝ����������˨����障�����������

    ���罕���˨��紊������勐�贋����с�˨����潟�������� ��с����障�� ������篁ヤ����勉������� �����ャ�������������������壩ァ��������鴻����с��������:

    return print reverse sort num values %array;
    return print(reverse(sort num (values(%array))));

    菴激�c����������壔����˨����潟����吾����⓾�������������� 絨���ŝ�������������������������������� vi ��� % ��㏍�若�с����ゃ�í�ゃ�������������������с����障�����

    菴激�c�⓾����ŝ����������������������с����勉�潟�若�������<�潟�������潟�鴻�����篋冴�勛��羇祉�� ��������⓾�����������; ��������c����������˨�˨����潟����������⓾����障����������������障��������

  • ��˨�若����勐����㏍�����絨障�ф�������冴����勉�˨����違����������潟�若�������������ŝ����с�����������; Perl ��˨�� last 羲�膊�絖������������勉�с�����筝㏍�ф�������冴�������������с����障����� ��<����c��������茯㏍�帥����������������˨�� "��≪�⓾�������潟��" �����障��:

    LINE:
            for (;;) {
                statements;
              last LINE if $foo;
                next LINE if /^#/;
                statements;
            }
  • ��˨�若����勉�í����˨�夌��罐窮����˩戎�����障�������� -- �櫝˛��с�������������勉����宴�˨��紊�罧級���� ��˨�若����������冴�������с�������������˨�ŝ����障����� �����祉�í�勌�����荀���⓾��������������

  • grep() (��� map())�����障�� `�����壔�í�若��` �����≦�鴻�潟�潟����㏍�鴻�������ゃ�障�� 菴������ゃ����∴�������������т戎��������ŝ����с�������������� �����������勰�∽�違�壔����鴻�☀�������ゃ�������c�⓾����障��������������������篏睡�������⓾�������������� ��������ŝ����勉�с�������違��foreach() ��˨�若����� system() ��∽�違�� 篏睡�������⓾��������������

  • �����若�帥����ŝ����c�勉�������˨�������鴻�⓾�勉����激�潟�у��茖���������⓾����ŝ����������������ŝ��罘���純�� 篏睡�������������壔����������� eval ��у�蚊�c�⓾��紊掩�������������í����������с����壔����⓾�������������� ������罘���純�������í�勉����若�吾�с�潟�������������㋘����˨�у��茖���������⓾����������ャ�c�⓾����� ��翫����˨�壔��$] (English ��≪�吾�ャ�若�˨�с�壔��$PERL_VERSION) ��� �����с����壔����������������с����障����� Config ��≪�吾�ャ�若�˨��篏帥����違��Perl ��ゃ�潟�鴻����若�������� Configure �����㏍�違�í���� �����c�〠浦絎������������ゃ��茯帥�鴻�������������с����障�����

  • �����若�≪�������壔�ʃ����ュ�������吾����с�������������� �����勉����若�≪�������壔��篏���������潟����������������冴����ŝ�������違����馹���с�����

  • $gotit ��勉�������ɾ�㏍��茘���ュ����ŝ�� ok ��с����������������激��茘���ュ����勐��茯���� ��阪�������˨�壔�≪�潟����若�鴻�潟�≪��篏睡�������⓾�������������� 筝���㋜����˨�壔����������̬�沿����勉����ゃ����c����鴻����若�˨�若�с�ŝ��篋冴�˨����c�⓾�壔�� $var_names_like_this ��勖�鴻�� $VarNamesLikeThis ������茯㏍�帥����������с����� �����勉�˨�若�˨�� VAR_NAMES_LIKE_THIS ��˨�ゃ����⓾�����罕����綵���⓾�壔�障����障�����

    ��������宴�若�後����壔�������勉�˨�若�˨�勌��紊���˨�ŝ�������������������障����� Perl ��壠�����絖���勉�≪�吾�ャ�若�����������integer ��� strict ��勉��������"�����í�違��" ��≪�吾�ャ�若�˨�勉�������˩��膣������⓾����障����� �����勌����勉�≪�吾�ャ�若�˨�壠ぇ���絖���������壔�������⓾��絨����絖����羞激����☖戎��������鴻����с�������� ��≪�潟����若�鴻�潟�≪�壚戎��������障�����; �����ŝ�������c����ŝ����<�ゃ�˨�激�鴻�������с�壔�� ��≪�吾�ャ�若�������������<�ゃ�˨�������☀;�憗����������˨�������ゃ����違�勐�狗�������������������с�����

  • 紊���違�勉�鴻�潟�若�������ц蟹���茵◐憗�������勉�˨��紊ф��絖�絨����絖����篏帥�����箴水�í�с����������� ������������:

    $ALL_CAPS_HERE   絎���違�勉�� (perl 紊���違����勤��腦����羈����!)
    $Some_Caps_Here  ��������宴�若�吾�壔�ゃ����ŝ�違�㏍�若�����/��鴻�帥����c����壠����
    $no_caps_here    ��∽�違�鴻�潟�若����� my(),local()紊���

    ��∽�違����<�純�������勐�������壔����鴻�☗�����絖������������鴻����с����� 箴������違��$obj->as_string()���

    �����㏍�˨�≪�潟����若�鴻�潟�≪����ゃ�������������˨����c�⓾��紊���違����∽�違��絎�臂í�������������宴�若�後���� 篏睡�������鴻����с�ŝ�����������腓冴�������������с����障�����

  • ��祉�������˨����<�������<����ʋ③荀頫◐憗��篏帥����翫����˨�壔��/x 篆勰﹅絖����篏睡������� ��鴻����若�鴻����������������帥�帥�������˨�ŝ����ŝ����������˨����⓾�������������� 罩h�頫◐憜����˨�鴻�í����激�ャ����������壔�鴻�í����激�ャ����������������˨�壔�������ŝ����帥� ��鴻�í����激�ャ��篏帥����ŝ����������˨��

  • ��違����� and ��� or 羲�膊�絖����篏睡����������ŝ�鴻��羲�膊�絖���勉�˨����潟���������������� ��ŝ�c��������&& ��� || ���紊ч����榊����������勉����帥����⓾�������������� ��泣����˨�若����潟�壔����∽�違����ŝ�鴻��羲�膊�絖���с����������勉����������宴�������≪�潟����泣�潟����� ��˨����潟��紊ч����榊����������勉����帥����⓾��������������

  • print() ������膵違��菴���������������≪����㏍�ャ�<�潟�����篏睡�������⓾��������������

  • 絲上�������������勉�勰��紮�篏�臀勉�壔����������⓾����������������������˨��1茵���˨�������障����ŝ�������勉� ��≪����⓾��

    $IDX = $ST_MTIME;
    $IDX = $ST_ATIME           if $opt_u;
    $IDX = $ST_CTIME           if $opt_c;
    $IDX = $ST_SIZE            if $opt_s;
    
    mkdir $tmpdir, 0700     or die "can't mkdir $tmpdir: $!";
    chdir($tmpdir)      or die "can't chdir $tmpdir: $!";
    mkdir 'tmp',   0777     or die "can't mkdir $tmpdir/tmp: $!";
  • ��激�鴻�������潟�若�˨�勤�������潟�若����壔�ゃ�㏍�˨����с����壔����⓾�������������� ��壔�������í�若�<����祉�若�吾�� STDERR �����吾����冴����������馹������榊����������� �����㏍�違�í�����������紊掩����������激�鴻�������潟�若�˨��綣���違�����������(�����⓾�����荀�)罔�羣� ��激�鴻����������í�若�<����祉�若�吾����˨����鴻����с����� 篁ヤ����壔�激�潟����˨�с����������������ŭ����с��:

    opendir(D, $dir)         or die "can't opendir $dir: $!";
  • 荀������������ŝ����翫����˨�壔��tr ��勰��紮�篏�臀勉�������������⓾��������������

    tr [abc]
       [xyz];
  • �����ñ����с�������勉����障����������� �����������������������с�������������������ŝ����������˨����潟�勐�����筝���冴�勉����㏍�違�í���� ��♂����˨�����綽�荀���壔�������障�����? ��潟�若����勌����㋚����������勉�������≪�吾�ャ�若�˨����ŝ����吾�с�壔����壔�í�鴻����吾����������� �����勉����障����������� ��潟�若����� use strict ��� use warnings (������������ -w) ��������鴻�с�� �����<�������������������勉����障����������� ��潟�若����������☗サ�����������������勉����障����������� 筝������勤����鴻��紊���������������������勉����障����������� 篁���˨����⓽�⓾��������������������������

  • �����ŝ����勉�潟�若����������後�������⓾��筝�莢˨�������号����� Pod �����í�若�����������篏帥���������� ��ɱ�������⓾�������������� 篁ヤ����壠�������喝����������⓾�������g����с��:

    • ��∽�医�����紊���医�������≪�吾�ャ�若�����(��������潟�����筝���㋜����˨�壔�������<�ゃ�˨����潟����˨�� ��劫����勐�ゃ�勉�������ŝ����潟�若����勌�������◑��������������������)��˨�� C<> ��� 篏帥�c�⓾�������������� ��∽�医����壔��function() ��勉�������˨����������勐�������˨����c�����篁��������� ������茯㏍�帥����������ŝ����◑�������������⓾����障�����

    • cat ��� grep ��勉�������ŝ�潟����潟�������˨�� B<> ���篏帥�c�⓾��������������

    • �����<�ゃ�������˨�� F<> ��� C<> ���篏帥�c�⓾�������������� F<> ��壔����<�ゃ�������勉�������勐�壚����� Pod ��潟�若����с�������鴻����с�������� ��祉�������í�� Pod �����í�若�������帥�壔����������ゃ�帥�ŝ����壚����ц;腓冴�������������� Unix ��� Windows ��с����鴻�˩戎�����������鴻�í����激�ャ�������鴻�í����激�ャ��茯㏍�帥�˨�������с��; C<> ��壔����������頫◐ず��������障�����

  • ��ゃ�㏍�˩��莢���с�����

  • ��ゃ�㏍�̥����泣�˨��