-Ïîèñê ïî äíåâíèêó

Ïîèñê ñîîáùåíèé â lj_codesign

 -Ïîäïèñêà ïî e-mail

 

 -Ïîñòîÿííûå ÷èòàòåëè

 -Ñòàòèñòèêà

Ñòàòèñòèêà LiveInternet.ru: ïîêàçàíî êîëè÷åñòâî õèòîâ è ïîñåòèòåëåé
Ñîçäàí: 18.07.2007
Çàïèñåé:
Êîììåíòàðèåâ:
Íàïèñàíî: 0


CPAN-Àâòîðñòâî ïî øàãàì. Øàã 2.

Âòîðíèê, 17 Ôåâðàëÿ 2009 ã. 20:42 + â öèòàòíèê
« Ïðåäûäóùèé øàã

Èòàê, ïîêà íàñ ðåãèñòðèðóþò, ìîæíî ïîäóìàòü î òîì, ÷òî-æå ìû áóäåì âûêëàäûâàòü ;)
Äóìàþ ó âàñ óæå åñòü íà ïðèìåòå ìîäóëü, êîòîðûé-äàâíî-õîðîøî-áû-âûëîæèòü.

1. Âûáåðåì åìó èìÿ.
Äëÿ íà÷àëà íóæíî îïðåäåëèòüñÿ, ýòî ïðàãìàòè÷åñêè ìîäóëü èëè îáû÷íûé.
Ïðàãìàòè÷åñêèé, ýòî êîòîðûé ïîõîæ ïî ïîâåäåíèþ íà êàêóþ-ëèáî èç âñòðîåííûõ ïðàãì (use strict, use open, use lib, ...).

Íà ìîé âçãëÿä ëó÷øèå èìåíà äëÿ îáû÷íûõ ïàêåòîâ, ýòî ñîñòîÿùèå èç 2õ ñëîâ, îäíî èç êîòîðõ ñóùåñòâèòåëüíîå, äðóãîå - ïðèëàãàòåëüíîå èëè ãëàãîë.
Òàêæå õîðîøî-áû ïîñìîòðåòü íà èìåþùèåñÿ íà ñåãîäíÿøíèé äåíü, îáùåïðèíÿòûå íåéìñïåéñû, íàïð. Devel::*
Õîðîøèå èìåíà ñóùåñòâóþùèõ ïàêåòîâ:
File::Find, Data::Dumper, HTTP::Async
Ïëîõèå èìåíà:
POE::Component::NonBlockingWrapper::Base - ñëèøêîì äëèííîå
Moose, Catalyst - íåïîíÿòíî, áåç ïðî÷òåíèÿ îïèñàíèÿ, ÷òî ýòî òàêîå.

Äëÿ ïðàãìàòè÷åñêîãî ìîäóëÿ èìÿ äîëæíî ñî÷åòàòüñÿ ñî ñëîâîì use, áûòü äîñòàòî÷íî êîðîòêèì è íàïèñàíî â íèæíåì ðåãèñòðå.

Èòàê, äîïóñòèì èìÿ ìû âûáðàëè (Mod::Name).

2. Ïðèñòóïèì ê ñîçäàíèþ äèñòðèáóòèâà.
ß ðåêîìåíäóþ íà äàííîì øàãå ñðàçó-æå îáçàâåñòèòü ñèñòåìîé êîíòðîëÿ âåðñèé. Äëÿ òåõ, ó êîãî íåò ñîáñòâåííîé, ìîæíî âîñïîëüçîâàòüñÿ ïóáëè÷íûìè áåñïëàòíûìè: code.google.com (svn) èëè github.com (git).

Ñòàâèì Module::Starter. Ñ íèì áóäåò óñòàíîâëåíà óòèëèòà module-starter. Çàïóñêàåì áåç ïàðàìåòðîâ, ñìîòðèì help.

Ïðîñòåéøèé âàðèàíò:
module-starter \
    --mi \ # èñïîëüçóåì Module::Install
    --module=Mod::Name \ # Óêàçûâàåì èìÿ ìîäóëÿ
    --author="Your CPAN Name" \ # Óêàçûâàåì ñâîå CPAN-èìÿ
    --email="name@cpan.org" \ # È email

Áóäåò ñîçäàíà äèðåêòîðèÿ Mod-Name. Ýòî øàáëîí äèñòðèáóòèâà.
Ìîæíî çàëèòü åãî â òàêîì âèäå â svn

Äàëåå:
Ñîçäàåì âñþ íåîáõîäèìóþ ñòðóêòóðó â lib/. ýòî ñîáñòâåííî âàø ìîäóëü.
Ïîïðîáóåì âûïîëíèòü make test (perl Makefile.PL && make test)
Åñëè òåñòû ïðîøëè íîðìàëüíî (
t/00-load.........1/1 # Testing Mod::Name 0.01, Perl 5.008009, /usr/local/bin/perl
t/00-load.........ok
t/boilerplate.....ok
t/pod-coverage....ok
t/pod.............ok
All tests successful.
Files=4, Tests=6,  0 wallclock secs ( 0.03 usr  0.03 sys +  0.19 cusr  0.07 csys =  0.32 CPU)
Result: PASS
) ýòî çíà÷èò, ÷òî ïî êðàéíåé ìåðå 1 ìîäóëü èç âàøåãî ïàêåòà êîìïèëèðóåòñÿ :)

 ñëóäóþùåì øàãå ìû äîïèøåì Makefile.PL è äîïèëèì òåñòû äî ñîñòîÿíèÿ, êîãäà èìè óäîáíî ïîëüçîâàòüñÿ.
À ïîêà ïèøåì â ìîäóëå $VERSION='0.01_1' è çàëèâàåì âñå èçìåíåíèÿ â svn.
(Âåðñèÿ ñ ïîä÷åðêèâàíèåì îáîçíà÷àåò, ÷òî ýòî íå ñòàáèëüíûé ðåëèç, à àëüôà/áåòà)

Èäåì ïðîâåðÿòü ïî÷òó, íå ïðèøëî-ëè óâåäîìëåíèå î ðåãèñòðàöèè. Åñëè ïðèøëî, ìîæíî ïîéòè ïîíàñòðàèâàòü àêêàóíò :))

Hint: àâàòàðû çàëèâàþòñÿ íà gravatar.com, ïî CPAN E-Mail'ó (name@cpan.org)

https://codesign.livejournal.com/46779.html

Ìåòêè:  

 

Äîáàâèòü êîììåíòàðèé:
Òåêñò êîììåíòàðèÿ: ñìàéëèêè

Ïðîâåðêà îðôîãðàôèè: (íàéòè îøèáêè)

Ïðèêðåïèòü êàðòèíêó:

 Ïåðåâîäèòü URL â ññûëêó
 Ïîäïèñàòüñÿ íà êîììåíòàðèè
 Ïîäïèñàòü êàðòèíêó