Files
perl-examples/Writerside/topics/Module.md
2024-06-21 14:57:07 +09:00

1.4 KiB

모듈

PERL의 모듈은 확장자로 __.pm__을 사용합니다.

모듈은 package 선언으로 시작됩니다.

package MyTest;
# MyTest.pm
use warnings;
use strict;

my $var = 1;

sub say_hello {
    return "Hello";
}
1;

스크립트에서 다른 모듈을 사용하려면 use등을 사용해서 사용하려는 모듈을 선언해야 합니다.

#!/usr/bin/perl
use warnings;
use strict;
use lib '/home/elex/Workspace/perl-examples'; # @INC에 모듈의 경로를 알려주기 위해 사용되었습니다.
use MyTest; # 사용할 모듈을 불러온 다음,

$a = MyTest::say_hello(); # 모듈의 서브루틴을 호출합니다.

print "$a\n";
  • do

    @INC에 정의된 경로에서 모듈 파일을 찾고, 찾은 모듈을 삽입합니다.

  • require

    모듈을 한 번만 불러옵니다. 모듈을 찾지 못하면 오류가 표시됩니다.

  • use

    require와 비슷하지만, 프로그램 실행 전에 모듈을 불러옵니다. 대부분의 경우, use가 사용됩니다.

BEGIN 블록과 END 블록

BEGIN 블록은 스크립트가 로딩된 직후에 다른 실행문이 실행되기 이전에 실행됩니다. END 블록은 스크립트가 실행을 마친 직후에 실행됩니다.

#!/usr/bin/perl
use strict;

package Foo;

sub hello {
    print 'Hello.';
}
BEGIN {
    print 'Begin..';
}
END {
    print '..End.';
}
1;