Perl, Moduly (47.díl)

Napsal O webu (») 30. 7. 2008 v kategorii Programování, přečteno: 1360×
obrazky/logo_perl.jpg

Tvorba modulů

Modul je soubor obsahující to samé, co ostatní programy napsané v Perlu. Znamená to, že obsahuje proměnné, definice podprogramů, různé deklarace, příkazy atd. Aby byl modul modulem, je třeba udělat něco navíc — říct interpretu, že se jedná o modul, a specifikovat rozhraní pro okolí modulu.


To, že se jedná o modul, je dáno umístěním stejnojmenného balíku v souboru s příponou .pm.
Rozhraní modulu je možné poskytnout dvěma způsoby.


1. Definovat množinu symbolů, které lze v jiných jmenných prostorech importovat, neboli řekneme, která jména mají být importována do aktuálního prostoru jmen, a dále je tam bude možné používat bez plné specifikace.


2. Napsat modul objektově orientovaným způsobem a komunikovat pouze prostřednictvím volání metod objektů.


Oba způsoby lze kombinovat — modul může být napsán objektově orientovaným způsobem a zároveň může umožňovat import některých symbolů. Vždy je ovšem očekáváno, že zaváděný soubor vrátí pravdivou hodnotu, která indikuje, že vše proběhlo v pořádku. Proto by posledním výrazem v příslušném souboru měl být pravdivý výraz. Často Používá se příkaz "return 1;" nebo pouze "1; ". Pokud by nebylo zajištěno, že poslední hodnota v modulu není pravdivá, bylo by to považováno za chybu.



// soubor Podil.pm

package Podil;

use Carp;

sub podil {

my ($x, $y) = @_;

if ($y) { return $x/$y; }

else { carp 'Nelze dělit nulou.'; }

}

1;

// soubor podil

use Podil;

print Podil::podil(1, 0);

// vytiskne 'Nelze dělit nulou. at podil line 2




A to by bylo pro dnešek všechno. V dalším díle se podíváme na tvorbu modulů. V případě jakýchkoliv dotazů mě kontaktujte na email: habrman@banan.cz.


Autor: Robert Habrman
Štítky: Perl
Facebook Twitter Topčlánky.cz Linkuj.cz

Komentáře

Zobrazit: standardní | od aktivních | poslední příspěvky | všechno
Článek ještě nebyl okomentován.


Nový komentář

Téma:
Jméno:
Notif. e-mail *:
Komentář:
  [b] [obr]
Odpovězte prosím číslicemi: Součet čísel jedenáct a sedm