okladka

Przetwarzanie danych to czynność, którą programiści na całym świecie wykonują niemal codziennie. Konwersja danych pomiędzy systemami informatycznymi, zmiana formatów plików tekstowych, przeszukiwanie logów serwerów WWW -- to wszystko można nazwać przetwarzaniem danych. Znajomość technik, dzięki którym takie procesy odbywają się szybko i efektywnie, to jedna z najważniejszych umiejętności programisty. Trudnością może okazać się brak jednego uniwersalnego sposobu przetwarzania danych. Do każdego typu problemu należy podejść w sposób indywidualny, próbując rozłożyć go na sekwencję prostych przekształceń, łatwych do implementacji i testowania.

Czytając książkę "Przetwarzanie danych dla programistów", poznasz metody rozwiązywania problemów programistycznych związanych z konwersją danych różnego typu. Nauczysz się analizować istotę zagadnienia i dobierać najbardziej optymalny sposób realizacji zadania. Dowiesz się, jak w systemach Unix/Linux wykorzystać wyrażenia regularne i powłoki tekstowe do przetwarzania danych tekstowych. Przeczytasz o użytecznych, lecz często niedocenianych cechach języków Java i Python oraz innych języków programowania. Przekonasz się, że mimo rozbieżności pomiędzy różnymi typami danych istnieje kilka ogólnych wzorców, które powtarzają się w wielu zastosowaniach niezależnie od użytego języka programowania lub detali implementacyjnych.

  • Przetwarzanie danych tekstowych za pomocą powłoki Uniksa
  • Stosowanie wyrażeń regularnych
  • Analiza dokumentów XML
  • Pakowanie i rozpakowywanie danych binarnych
  • Zapytania w relacyjnych bazach danych
  • Testowanie mechanizmów konwersji danych

Opanuj jedną z podstawowych umiejętności profesjonalnego programisty.


Rozdział 1. Wprowadzenie (5)
  • 1.1. Narysować molekułę (5)
  • 1.2. Czarna owca (7)
  • 1.3. Morał (8)
  • 1.4. Pytania o przetwarzanie danych (9)
  • 1.5. Plan książki (13)
Rozdział 2. Tekst (17)
  • 2.1. Odwracanie kolejności wierszy w pliku (17)
  • 2.2. Przeformatowanie danych (20)
  • 2.3. Obsługa rekordów wielowierszowych (29)
  • 2.4. Testowanie kolizji (36)
  • 2.5. Włączanie plików zewnętrznych (42)
  • 2.6. Powłoka Uniksa (47)
  • 2.7. Bardzo duże zbiory danych (56)
  • 2.8. Podsumowanie (57)
Rozdział 3. Wyrażenia regularne (59)
  • 3.1. Powłoka (61)
  • 3.2. Podstawy wzorców dopasowań (63)
  • 3.3. Wydobywanie dopasowanych wartości (72)
  • 3.4. Zastosowania praktyczne (83)
  • 3.5. Różne języki (95)
  • 3.6. Inne systemy (99)
  • 3.7. Podsumowanie (104)
Rozdział 4. XML (105)
  • 4.1. Szybkie wprowadzenie (106)
  • 4.2. SAX (112)
  • 4.3. DOM (126)
  • 4.4. XPath (137)
  • 4.5. XSLT (143)
  • 4.6. Podsumowanie (153)
Rozdział 5. Dane binarne (157)
  • 5.1. Liczby (158)
  • 5.2. Wejście i wyjście (165)
  • 5.3. Ciągi znaków (171)
  • 5.4. Podsumowanie (182)
Rozdział 6. Relacyjne bazy danych (185)
  • 6.1. Proste zapytania (186)
  • 6.2. Zagnieżdżanie i negacja (197)
  • 6.3. Agregacje i perspektywy (203)
  • 6.4. Tworzenie, modyfikacja i usuwanie (207)
  • 6.5. Zastosowanie SQL-a w programach (216)
  • 6.6. Podsumowanie (220)
Rozdział 7. Diabeł tkwi w szczegółach (223)
  • 7.1. Testy jednostkowe (223)
  • 7.2. Kodowanie i dekodowanie (235)
  • 7.3. Arytmetyka zmiennoprzecinkowa (239)
  • 7.4. Daty i czas (242)
  • 7.5. Podsumowanie (248)
Dodatek A Bibliografia (249)
Skorowidz (251)