Perl_Zaawansowane_programowanie_Wydanie_II_perlz2.pdf

(382 KB) Pobierz
IDZ DO
PRZYK£ADOWY ROZDZIA£
SPIS TREŒCI
Perl. Zaawansowane
programowanie. Wydanie II
Autor: Simon Cozens
T³umaczenie: S³awomir Dzieniszewski, Mateusz Michalski
ISBN: 83-246-0231-3
Tytu³ orygina³u:
Advanced Perl Programming, 2nd Edition
Format: B5, stron: 288
KATALOG KSI¥¯EK
KATALOG ONLINE
ZAMÓW DRUKOWANY KATALOG
TWÓJ KOSZYK
DODAJ DO KOSZYKA
B¹dŸ na bie¿¹co z najnowszymi narzêdziami i technikami programowania
• Wykorzystaj mo¿liwoœci szablonów
• Po³¹cz skrypty Perla z programami napisanymi w innych jêzykach programowania
• Przetestuj kod i popraw wydajnoœæ projektu
Perl, jeden z pierwszych jêzyków skryptowych s³u¿¹cych do dynamicznego
generowania zawartoœci witryn WWW, nie traci popularnoœci mimo doœæ sêdziwego
wieku. Ci¹gle wzrasta zainteresowanie tym jêzykiem, co pewien czas powstaj¹ kolejne
jego wersje. W sieci funkcjonuj¹ tysi¹ce witryn poœwiêconych programowaniu w Perlu,
jednak podczas pracy nad rozbudowan¹ aplikacj¹ nie zawsze znajdujemy czas na
poszukiwanie niezbêdnych informacji. Zgromadzenie w jednym tomie opisów technik
stosowanych przez doœwiadczonych programistów pozwoli³oby znacznie przyspieszyæ
pracê.
Ksi¹¿ka „Perl. Zaawansowane programowanie. Wydanie II” to kompendium wiedzy dla
wszystkich, którzy tworz¹ aplikacje w Perlu. Autor opisuje zmiany, jakie wprowadzono
w Perlu w ci¹gu ostatnich lat, koncentruj¹c siê na technikach rozwi¹zywania
konkretnych problemów, a nie na teoretycznych rozwa¿aniach. K³adzie du¿y nacisk na
mo¿liwoœci stosowania gotowych kodów z witryn Comprehensive Perl Archive Network,
w których zgromadzono setki przyk³adów wykorzystania Perla. Uczy efektywnej pracy
i zachêca do stosowania zaawansowanych narzêdzi i technik programistycznych.
• Techniki przetwarzania danych tekstowych
• Stosowanie szablonów
• Pobieranie wiadomoœci RSS
• Obs³uga baz danych
• Korzystanie z kodowania Unicode
• Programowanie sterowane zdarzeniami
• Testowanie kodu i usuwanie b³êdów
• £¹czenie kodu Perla z kodem C za pomoc¹ modu³u Inline
Odkryj magiê Perla
CENNIK I INFORMACJE
ZAMÓW INFORMACJE
O NOWOŒCIACH
ZAMÓW CENNIK
CZYTELNIA
FRAGMENTY KSI¥¯EK ONLINE
Wydawnictwo Helion
ul. Chopina 6
44-100 Gliwice
tel. (32)230-98-63
e-mail: helion@helion.pl
Spis treści
Przedmowa .................................................................................................................... 7
1. Techniki zaawansowane .............................................................................................. 11
Introspekcja
Modyfikacja modelu klas
Nieoczekiwany kod
Podsumowanie
12
29
34
50
2. Techniki parsowania.....................................................................................................51
Gramatyki Parse::RecDescent
Parse::Yapp
Inne techniki parsowania
Podsumowanie
52
74
78
82
3. Szablony ....................................................................................................................... 83
Formaty i Text::Autoformat
Text::Template
HTML::Template
HTML::Mason
Template Toolkit
AxKit
Podsumowanie
84
88
93
98
109
115
117
4. Obiekty, bazy danych i aplikacje ................................................................................ 119
Coś więcej niż zwykłe pliki…
Serializacja obiektów
Bazy danych obiektów
119
120
130
3
Obsługa baz danych
Zastosowania praktyczne w aplikacjach sieciowych
Posumowanie
134
141
147
5. Narzędzia językowe................................................................................................... 149
Perl i praca z tekstem
Obróbka tekstów angielskich
Moduły do parsowania tekstów angielskich
Klasyfikacja i pozyskiwanie informacji
Podsumowanie
149
150
153
158
168
6. Perl i Unicode...............................................................................................................169
Terminologia
Co to takiego Unicode?
Formaty UTF
Obsługa danych UTF-8
Moduł Encode
Unicode dla programistów XS
Podsumowanie
169
171
173
176
181
187
191
7. POE...............................................................................................................................193
Programowanie w
środowisku
sterowanym zdarzeniami
Elementy najwyższego poziomu — komponenty
Podsumowanie
193
204
211
8. Testowanie..................................................................................................................213
Test::Simple
Test::More
Test::Harness
Test::Builder
Test::Builder::Tester
Łączenie
testów z kodem
Testowanie jednostek kodu
Podsumowanie
213
215
218
219
221
223
224
230
9. Rozszerzanie możliwości Perla za pomocą modułu Inline ...................................... 233
Prosty moduł Inline::C
Programowanie bardziej złożonych zadań z pomocą Inline::C
Inline::Inne moduły
Podsumowanie
233
236
249
254
4
|
Spis treści
10. Zabawy z Perlem........................................................................................................ 255
Nieczytelność
Just another Perl hacker
Golf Perla
Poezja Perla
Acme::*
Podsumowanie
255
260
262
264
265
269
Skorowidz....................................................................................................................271
Spis treści
|
5
ROZDZIAŁ 3.
Szablony
Na grupie
comp.lang.perl
pojawił się niedawno wątek, w którym dyskutujący próbowali
ustalić rytualną drogę każdego programisty Perla — indywidualne wyważanie szeroko otwar-
tych drzwi. Na liście pokonywanych zadań znalazł się system obsługi szablonów, warstwa
abstrakcji bazy danych, parser HTML, procesor argumentów wiersza poleceń oraz moduł ob-
sługi dat i czasu.
Ciekawe, czy poniższa historia nie wyda Ci się znajoma. Musisz przygotować pewien formu-
larz listu. Część tekstu jest stała i niezmienna, niektóre wyrażenia się zmieniają. Tworzysz więc
taki mniej więcej szablon:
my $template = q{
Szanowny Panie(Pani) $name,
Otrzymaliśmy państwa zamówienie dotyczące $product. Z naszych ustaleń wynika,
że
będziemy w stanie dostarczyć go do państwa w dniu $date za cenę około $cost.
Dziękujemy za zainteresowanie naszą ofertą,
Acme Integrated Foocorp.
};
a następnie zmagasz się z koszmarnymi wyrażeniami regularnymi przy każdej linii, na przy-
kład
s/(\$\w+)/$1/eeg
, osiągając w końcu coś, co lepiej lub gorzej działa jak powinno.
Jak to zwykle bywa z każdym projektem, dwa dni od wprowadzenia programu do użytku
zmienia się specyfikacja danych i nagle Twój prosty wzorzec musi uwzględniać zastosowanie
pętli dla elementów tablic, wyrażenia warunkowe czy wreszcie wykonywanie kodu Perla
w samym
środku
wzorca. I nawet nie spostrzegasz, jak to się stało,
że
utworzyłeś własny ję-
zyk obsługi wzorców.
Jeżeli rozpoznałeś w tym siebie, nie przejmuj się. To samo przydarza się niemal wszystkim
przynajmniej raz. I właśnie dlatego w CPAN znaleźć można tak wiele modułów obsługują-
cych szablony plików tekstowych i HTML, wśród których występują tak koncepcje niewiele
bardziej złożone od
s/(\$\w+)/$1/eeg
, jak i niezależne języki programowania wzorców.
Zanim przejdziemy do omawiania tych modułów, przyjrzymy się rozwiązaniu wbudowane-
mu w Perla — formatom.
83
Zgłoś jeśli naruszono regulamin