100 sposobow na Perl.pdf

(276 KB) Pobierz
IDZ DO
PRZYK£ADOWY ROZDZIA£
SPIS TREœCI
100 sposobów na Perl
Autorzy: Damian Conway, Curtis „Ovid” Poe
T³umaczenie: S³awomir Dzieniszewski
ISBN: 83-246-0634-3
Tytu³ orygina³u:
Perl Hacks: Tips & Tools
for Programming, Debugging, and Surviving
Format: B5, stron: 320
KATALOG KSI¥¯EK
KATALOG ONLINE
ZAMÓW DRUKOWANY KATALOG
TWÓJ KOSZYK
DODAJ DO KOSZYKA
Zbiór skutecznych rozwi¹zañ dla programistów aplikacji internetowych
• Zwiêkszanie produktywnoœci pracy
• Tworzenie interfejsów u¿ytkownika
• Wyszukiwanie i usuwanie b³êdów
Perl, od swojego zaistnienia na rynku, wyewoluowa³ od prostego narzêdzia do
przetwarzania tekstów i budowania raportów do formy zaawansowanego jêzyka
programowania pozwalaj¹cego na tworzenie praktycznie ka¿dej aplikacji dzia³aj¹cej
w sieci. Mimo doœæ zaawansowanego „wieku”, nie traci nic na popularnoœci. W sieci
pojawiaj¹ siê coraz nowsze wersje, a grono programistów korzystaj¹cych z Perla
stale roœnie. Spo³ecznoœæ u¿ytkowników tego jêzyka skupiona wokó³ portalu CPAN
udostêpnia napisane przez siebie skrypty, wskutek czego z wieloma problemami
programistycznymi mo¿na sobie poradziæ, korzystaj¹c z gotowych rozwi¹zañ lub
siêgaj¹c do innych Ÿróde³.
Dziêki ksi¹¿ce „100 sposobów na Perl” odkryjesz ma³o znane i mniej typowe
zastosowania tego jêzyka. Czytaj¹c j¹, dowiesz siê, w jaki sposób wykorzystaæ Perl
do ró¿nych zadañ. Nauczysz siê zwiêkszaæ efektywnoœæ swojej pracy, tworzyæ
elementy interaktywne i przetwarzaæ pliki tekstowe w nietypowy sposób. Zapoznasz
siê z odczytywaniem danych z baz i arkuszy kalkulacyjnych, prac¹ z modu³ami oraz
programowaniem obiektowym. Znajdziesz tu tak¿e informacje o testowaniu kodu,
usuwaniu b³êdów i optymalizowaniu wydajnoœci programów napisanych w Perlu.
• Korzystanie z biblioteki CPAN
• Automatyczne formatowanie kodu w edytorze Emacs
• Generowanie elementów graficznych
• Przetwarzanie arkuszy kalkulacyjnych
• Praca z bazami danych
• Tworzenie zestawu narzêdziowego modu³ów
• Korzystanie z obiektów
• Testowanie kodu
• œledzenie wykonywania programu
CENNIK I INFORMACJE
ZAMÓW INFORMACJE
O NOWOœCIACH
ZAMÓW CENNIK
CZYTELNIA
FRAGMENTY KSI¥¯EK ONLINE
Wydawnictwo Helion
ul. Koœciuszki 1c
44-100 Gliwice
tel. 032 230 98 63
e-mail: helion@helion.pl
O autorach ..................................................................................................................................... 7
Przedmowa ................................................................................................................................... 13
Rozdział 1. Sposoby zwiększające produktywność .................................................................. 19
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
Dodawanie skrótów biblioteki CPAN do przeglądarki Firefox .............................. 19
Zaprzęganie do pracy narzędzia Perldoc .................................................................... 22
Przeglądanie dokumentacji Perla w internecie .......................................................... 25
Zastępowanie poleceń powłoki aliasami ..................................................................... 27
Autouzupełnianie identyfikatorów Perla w edytorze Vim ...................................... 30
Dobieranie najlepszego dla Perla trybu edytora Emacs ........................................... 33
Wymuszanie lokalnego stylu ........................................................................................ 35
Unikanie zachowywania złego kodu Perla ................................................................. 38
Automatyzowanie przeglądów kodu .......................................................................... 42
Uruchamianie testów z edytora Vim ........................................................................... 44
Uruchamianie kodu Perla spod edytora Emacs ......................................................... 46
Rozdział 2. Interakcja z użytkownikiem ...................................................................................... 49
12.
13.
14.
15.
16.
17.
18.
Wykorzystywanie edytora ze zmiennej $EDITOR jako interfejsu użytkownika .... 49
Prawidłowa współpraca w wierszu poleceń .............................................................. 51
Upraszczanie interakcji z terminalem .......................................................................... 53
Ostrzeganie naszego Maca ............................................................................................. 58
Interaktywne aplikacje graficzne .................................................................................. 61
Zbieranie informacji na temat konfiguracji programu .............................................. 66
Przepisywanie na nowo stron WWW .......................................................................... 69
Rozdział 3. Obsługa danych ........................................................................................................ 73
19.
20.
21.
22.
23.
24.
Traktowanie pliku jak tablicy ........................................................................................ 73
Odczytywanie plików wstecz ........................................................................................ 75
Wykorzystywanie jako źródła danych dowolnego arkusza kalkulacyjnego ........ 76
Porządkowanie kodu współpracującego z bazą danych .......................................... 81
Budowanie biblioteki kodu SQL ................................................................................... 84
Dynamiczne przepytywanie baz danych bez pomocy kodu SQL ............................... 86
Spis treści
|
3
25. Wiązanie kolumn bazy danych ..................................................................................... 87
26. Wykorzystywanie iteracji i technik generowania kosztownych danych ............... 89
27. Pobieranie z iteratora więcej niż jednej wartości ....................................................... 91
Rozdział 4. Praca z modułami ..................................................................................................... 95
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
Skracanie długich nazw klas ......................................................................................... 95
Zarządzanie ścieżkami do modułów ........................................................................... 96
Ponowne ładowanie zmodyfikowanych modułów ................................................... 99
Przygotowywanie osobistych zestawów modułów ................................................ 100
Zarządzanie instalowaniem modułów ...................................................................... 103
Zachowywanie ścieżek do modułów ......................................................................... 105
Tworzenie standardowego zestawu narzędziowego modułów ............................ 107
Pisanie przykładowych kodów do przewodników dla użytkowników .............. 110
Zastępowanie wadliwego kodu pochodzącego z zewnątrz ................................... 112
Wznieś toast za CPAN .................................................................................................. 114
Poprawianie warunków uruchamiających wyjątki ................................................. 115
Lokalne odszukiwanie modułów CPAN ................................................................... 118
Przekształcanie samodzielnych aplikacji Perla w pakiety ...................................... 122
Tworzenie własnych leksykalnych komunikatów ostrzegawczych ..................... 126
Odszukiwanie i raportowanie błędów w modułach ............................................... 127
Rozdział 5. Sposoby na obiekty ................................................................................................ 133
43.
44.
45.
46.
47.
48.
49.
50.
Tworzenie zamkniętych obiektów .............................................................................. 133
Darmowe (prawie) serializowanie obiektów ............................................................ 136
Umieszczanie dodatkowych informacji w atrybutach ............................................ 138
Upewnianie się, że metody są prywatne dla obiektów .......................................... 140
Autodeklarowanie argumentów metod .................................................................... 144
Kontrola dostępu do zdalnych obiektów .................................................................. 147
Przygotowywanie naprawdę polimorficznych obiektów ....................................... 150
Automatyczne generowanie metod dostępu ............................................................ 152
Rozdział 6. Wykrywanie i usuwanie błędów .............................................................................. 157
51.
52.
53.
54.
55.
56.
57.
58.
59.
Szybkie wyszukiwanie błędów kompilacji ............................................................... 157
Uwidacznianie niewidocznych wartości ................................................................... 159
Wyszukiwanie błędów za pomocą testów ................................................................ 161
Wykrywanie błędów za pomocą komentarzy .......................................................... 163
Wyświetlanie kodu źródłowego związanego z błędem ......................................... 167
Analiza funkcji anonimowych ..................................................................................... 170
Nadawanie nazw procedurom anonimowym .......................................................... 172
Wyszukiwanie źródła pochodzenia procedury ........................................................ 174
Dopasowywanie debugera do naszych potrzeb ...................................................... 175
4
|
Spis treści
Rozdział 7. Triki dla twórców programów ................................................................................ 179
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
Przebudowywanie dystrybucji kodu ......................................................................... 179
Testowanie z użyciem specyfikacji ............................................................................. 181
Oddzielanie testów programisty od testów użytkownika ..................................... 185
Automatyczne uruchamianie testów ......................................................................... 188
Oglądanie informacji o niepowodzeniach — w kolorze! ........................................ 189
Testy na żywym kodzie ................................................................................................ 192
Poprawianie rekordów szybkości ............................................................................... 195
Budowanie własnej wersji Perla .................................................................................. 196
Uruchamianie zestawów testów z trwałym ładowaniem potrzebnego kodu .... 199
Symulowanie w testach nieprzyjaznego środowiska .............................................. 204
Rozdział 8. Poznaj swój kod ...................................................................................................... 209
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
Kolejność wykonywania kodu .................................................................................... 209
Badanie naszych struktur danych ............................................................................... 213
Bezpieczne wyszukiwanie funkcji .............................................................................. 215
Sprawdzanie, jakie moduły tworzą rdzeń Perla ...................................................... 218
Śledzenie wszystkich wykorzystywanych modułów .............................................. 219
Wyszukiwanie wszystkich symboli używanych w pakiecie ................................. 223
Zaglądanie za zamknięte drzwi .................................................................................. 225
Wyszukiwanie wszystkich zmiennych globalnych ................................................. 228
Dokonywanie introspekcji procedur .......................................................................... 231
Odnajdywanie importowanych funkcji ..................................................................... 234
Profilowanie rozmiaru programu ............................................................................... 236
Ponowne wykorzystywanie procesów Perla ............................................................ 239
Śledzenie operatorów ................................................................................................... 241
Pisanie własnych ostrzeżeń ......................................................................................... 243
Rozdział 9. Poszerz swoje zrozumienie Perla .......................................................................... 247
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
Podwajanie danych za pomocą funkcji dualvar() .................................................... 247
Zastępowanie miękkich odwołań prawdziwymi odwołaniami ............................ 249
Optymalizowanie kłopotliwych elementów ............................................................. 252
Blokowanie tablic asocjacyjnych ................................................................................. 253
Sprzątanie po sobie przy wychodzeniu z zakresu ................................................... 255
Dziwne sposoby wywoływania funkcji ..................................................................... 257
Użycie funkcji glob w ciągach ..................................................................................... 263
Jak zaoszczędzić sobie pracy przy kodzie sprawdzającym błędy ........................ 266
Przygotowywanie lepszych wartości zwracanych przez procedury .................... 268
Zwracanie wartości aktywnych .................................................................................. 272
Tworzenie własnej składni Perla ................................................................................ 275
Spis treści
|
5
95.
96.
97.
98.
99.
100.
101.
Modyfikowanie semantyki kodu za pomocą filtrów kodu źródłowego ............. 277
Korzystanie ze wspólnych bibliotek bez pomocy kodu XS ................................... 281
Uruchamianie dwóch usług na pojedynczym porcie TCP ..................................... 283
Poprawianie naszych tablic dyspozycji ..................................................................... 287
Śledzenie przybliżeń w obliczeniach ......................................................................... 290
Przeciążanie operatorów .............................................................................................. 293
Pożytki z zabaw z kodem ............................................................................................ 298
Skorowidz ................................................................................................................................. 301
6
|
Spis treści
Zgłoś jeśli naruszono regulamin