O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Perl. Mistrzostwo w programowaniu

Book Description

Perl. Mistrzostwo w programowaniu" to wyjątkowa książka pomagająca w samodzielnej nauce, przeznaczona dla programistów, którzy używali już Perla i znają jego podstawy. Podążając...

Table of Contents

  1. Perl. Mistrzostwo w programowaniu
  2. Przedmowa
  3. Wstęp
    1. Struktura książki
    2. Konwencje używane w książce
    3. Przykładowy kod
    4. Podziękowania
  4. 1. Wprowadzenie: jak zostać mistrzem?
    1. Co to znaczy być mistrzem?
    2. Kto powinien przeczytać tę książkę?
    3. Jak czytać tę książkę?
    4. Co należy wiedzieć zawczasu?
    5. Co opisano w tej książce?
    6. Czego nie opisano w tej książce?
  5. 2. Zaawansowane wyrażenia regularne
    1. Referencje do wyrażeń regularnych
      1. (?imsx-imsx:WZORZEC)
      2. Referencje jako argumenty
    2. Grupy nieprzechwytujące, (?:WZORZEC)
    3. Czytelne wyrażenia regularne, /x i (?#...)
    4. Dopasowywanie globalne
      1. Kotwice dopasowywania globalnego
    5. Patrzenie w przód i w tył
      1. Asercje z patrzeniem w przód, (?=WZORZEC) i (?!WZORZEC)
        1. Pozytywne asercje z patrzeniem w przód
        2. Negatywne asercje z patrzeniem w przód
      2. Asercje z patrzeniem w tył, (?<!WZORZEC) i (?<=WZORZEC)
    6. Odszyfrowywanie wyrażeń regularnych
    7. Końcowe myśli
    8. Podsumowanie
    9. Dalsza lektura
  6. 3. Bezpieczne techniki programowania
    1. Złe dane mogą zepsuć dzień
    2. Kontrola skażeń
      1. Ostrzeżenia zamiast fatalnych błędów
      2. Automatyczna kontrola skażeń
      3. mod_perl
      4. Skażone dane
      5. Skutki uboczne kontroli skażeń
    3. Odkażanie danych
      1. IO::Handle::untaint
      2. Klucze asocjacji
      3. Wybieranie danych nieskażonych za pomocą skażonych
    4. Listowe postacie wywołań system i exec
      1. Trójargumentowa funkcja open
      2. sysopen
      3. Ograniczanie specjalnych przywilejów
    5. Podsumowanie
    6. Dalsza lektura
  7. 4. Debugowanie Perla
    1. Zanim stracimy czas
    2. Najlepszy debuger na świecie
      1. Jak zrobić to, co się chce?
      2. Śledzenie programu
      3. Bezpieczne modyfikowanie modułów
      4. Owijanie procedur
    3. perl5db.pl
    4. Alternatywne debugery
      1. Używanie innego debugera: opcja -d
      2. Devel::ptkdb
      3. Devel::ebug
    5. Inne debugery
      1. EPIC
      2. Komodo
      3. Affrus
    6. Podsumowanie
    7. Dalsza lektura
  8. 5. Profilowanie Perla
    1. Znajdowanie winowajcy
    2. Ogólne podejście
    3. Profilowanie DBI
      1. Inne raporty DBI::Profile
      2. Jeszcze łatwiejszy sposób
      3. Zmiana bazy danych
    4. Devel::DProf
    5. Pisanie własnego profilera
      1. Devel::LineCounter
    6. Profilowanie zestawów testowych
      1. Devel::Cover
    7. Podsumowanie
    8. Dalsza lektura
  9. 6. Testowanie wydajności Perla
    1. Teoria testowania wydajności
    2. Mierzenie czasu
    3. Porównywanie kodu
    4. Nie wyłączać myślenia
    5. Zużycie pamięci
    6. Narzędzie perlbench
    7. Podsumowanie
    8. Dalsza lektura
  10. 7. Czyszczenie Perla
    1. Dobry styl
    2. perltidy
    3. Dekodowanie
      1. Dekodowanie ukrytego kodu źródłowego
      2. Dekompilacja kodu za pomocą modułu B::Deparse
    4. Perl::Critic
      1. Tworzenie własnej polityki Perl::Critic
    5. Podsumowanie
    6. Dalsza lektura
  11. 8. Tablice symboli i typegloby
    1. Zmienne pakietowe i leksykalne
      1. Uzyskiwanie dostępu do wersji pakietowej
    2. Tablica symboli
      1. Typegloby
      2. Aliasy
      3. Uchwyty plików jako argumenty w starszym kodzie
      4. Nadawanie nazw procedurom anonimowym
    3. Podsumowanie
    4. Dalsza lektura
  12. 9. Procedury dynamiczne
    1. Procedury jako dane
    2. Tworzenie i zastępowanie nazwanych procedur
    3. Referencje symboliczne
    4. Iterowanie po listach procedur
    5. Przetwarzanie potokowe
    6. Listy metod
    7. Procedury jako argumenty
    8. Metody wczytywane automatycznie
    9. Asocjacje jako obiekty
    10. AutoSplit
    11. Podsumowanie
    12. Dalsza lektura
  13. 10. Modyfikowanie i rozszerzanie modułów
    1. Wybór właściwego rozwiązania
      1. Wysyłanie poprawek do autora
      2. Lokalne poprawki
      3. Przejmowanie kontroli nad modułem
      4. Rozwidlanie
      5. Zaczynanie od zera
    2. Zastępowanie części modułu
    3. Tworzenie podklas
      1. Przykład: moduł ExtUtils::MakeMaker
      2. Inne przykłady
    4. Owijanie procedur
    5. Podsumowanie
    6. Dalsza lektura
  14. 11. Konfigurowanie programów Perla
    1. Czego nie należy robić?
      1. Kod w oddzielnym pliku
    2. Lepsze sposoby
      1. Zmienne środowiskowe
      2. Specjalne zmienne środowiskowe
      3. Włączanie dodatkowych wyników
    3. Opcje wiersza polecenia
      1. Opcja -s
      2. Moduły Getopt
        1. Getopt::Std
        2. Getopt::Long
    4. Pliki konfiguracyjne
      1. ConfigReader::Simple
      2. Config::IniFiles
      3. Config::Scoped
      4. AppConfig
      5. Inne formaty konfiguracyjne
    5. Skrypty o różnych nazwach
    6. Programy interaktywne i nieinteraktywne
    7. Moduł Config
      1. Różne systemy operacyjne
    8. Podsumowanie
    9. Dalsza lektura
  15. 12. Wykrywanie i zgłaszanie błędów
    1. Podstawowe informacje o błędach Perla
      1. Błędy systemu operacyjnego
      2. Błędy procesów potomnych
      3. Błędy specyficzne dla systemu operacyjnego
    2. Raportowanie błędów modułu
      1. Oddzielanie zadań
    3. Wyjątki
      1. eval
      2. Wiele poziomów die
      3. Instrukcja die z referencją
      4. Propagacja obiektów za pomocą instrukcji die
      5. Fatal
    4. Podsumowanie
    5. Dalsza lektura
  16. 13. Rejestrowanie zdarzeń
    1. Rejestrowanie błędów i innych informacji
    2. Log4perl
      1. Konfigurowanie modułu Log4perl
      2. Rejestrowanie trwałe
      3. Inne funkcje modułu Log::Log4perl
    3. Podsumowanie
    4. Dalsza lektura
  17. 14. Utrwalanie danych
    1. Płaskie pliki
      1. pack
      2. Data::Dumper
      3. Podobne moduły
      4. YAML
    2. Storable
      1. Zamrażanie danych
    3. Pliki DBM
      1. dbmopen
      2. DBM::Deep
    4. Podsumowanie
    5. Dalsza lektura
  18. 15. Praca z formatem Pod
    1. Format Pod
      1. Dyrektywy
      2. Elementy treści
      3. Komentarze wielowierszowe
    2. Tłumaczenie formatu Pod
      1. Translatory Pod
      2. Pod::Perldoc::ToToc
      3. Pod::Simple
      4. Tworzenie podklas modułu Pod::Simple
      5. Pod w serwerze WWW
    3. Testowanie dokumentacji Pod
      1. Sprawdzanie dokumentacji Pod
      2. Zasięg dokumentacji Pod
      3. Ukrywanie i ignorowanie funkcji
    4. Podsumowanie
    5. Dalsza lektura
  19. 16. Praca z bitami
    1. Liczby binarne
      1. Zapis binarny
    2. Operatory bitowe
      1. Unarny operator negacji (NOT), ~
      2. Bitowy iloczyn logiczny (AND), &
      3. Bitowa suma logiczna (OR), |
      4. Operator alternatywy wykluczającej (XOR), ^
      5. Operatory przesunięcia w lewo << i w prawo >>
    3. Wektory bitowe
    4. Funkcja vec
      1. Przechowywanie łańcuchów bitowych
      2. Przechowywanie DNA
    5. Śledzenie stanów
    6. Podsumowanie
    7. Dalsza lektura
  20. 17. Magia zmiennych związanych
    1. Wyglądają jak zwykłe zmienne
    2. Na poziomie użytkownika
    3. Za kulisami
    4. Skalary
      1. Tie::Cycle
      2. Ograniczone liczby całkowite
      3. Samoniszczące się wartości
    5. Tablice
      1. Wymyślanie tablic od nowa
      2. Coś bardziej realistycznego
    6. Asocjacje
    7. Uchwyty plików
    8. Podsumowanie
    9. Dalsza lektura
  21. 18. Moduły jako programy
    1. Najważniejsza rzecz
    2. Krok wstecz
    3. Kto woła?
    4. Testowanie programu
      1. Tworzenie dystrybucji programu
      2. Rozwijanie skryptu
    5. Rozpowszechnianie programu
    6. Podsumowanie
    7. Dalsza lektura
  22. A. Dalsza lektura
    1. Książki o Perlu
    2. Książki o tematyce innej niż Perl
  23. B. Przewodnik briana po rozwiązywaniu problemów z Perlem
    1. Moja filozofia rozwiązywania problemów
    2. Moja metoda
  24. C. O autorze
  25. Indeks
  26. Kolofon
  27. Copyright