Szczegóły ebooka

Python 3. Kolejne lekcje dla nowych programistów

Python 3. Kolejne lekcje dla nowych programistów

Zed A. Shaw

Ebook

Jeśli masz już za sobą napisanie pierwszych programów w Pythonie, to już wiesz, jak bardzo wszechstronny jest ten język i że jego możliwości są imponujące. Python nadaje się do bardzo wielu zastosowań, jednak jeśli chcesz go wykorzystać w pełni, musisz wyjść poza podstawy. Efektywny programista korzysta z wiedzy wykraczającej poza znajomość struktur języka, poza tym jest zdolny do obiektywnej refleksji nad własnymi możliwościami i stara się cały czas doskonalić swój warsztat.

Dzięki tej książce, zanim się spostrzeżesz, wykonasz 52 interesujące i świetnie przygotowane projekty, dzięki którym zyskasz kluczowe praktyczne umiejętności i pogłębisz rozumienie sedna pracy programisty. Odkryjesz sposoby analizy problemu i nauczysz się projektować sposób jego implementacji w programie. Później zaczniesz projektować konkretne rozwiązania, dbając o ich prostotę i elegancję. Wystarczy, że wykażesz się dyscypliną, zaangażowaniem i wytrwałością, a już wkrótce zrozumiesz znaczenie procesu, rozwiniesz kreatywność, a przede wszystkim zadbasz o jakość tworzonego kodu. Twoim celem nie będzie już tylko pisanie "kodu, który działa". Zaczniesz tworzyć znakomity kod i staniesz się prawdziwym programistą, biegłym w Pythonie.

W tej książce:

  • praca ze złożonymi projektami
  • korzystanie ze struktur danych
  • algorytmy i przetwarzanie struktur danych
  • techniki parsowania i przetwarzania tekstu
  • modelowanie danych za pomocą języka SQL
  • stosowanie prostych i zaawansowanych narzędzi systemu Unix

Proces. Kreatywność. Jakość. Python.

Przedmowa (11)

  • To sprawa osobista (12)

CZĘŚĆ I. POCZĄTKOWA WIEDZA (14)

  • A jeśli naprawdę nie podoba mi się idea Twojego głupiego procesu osobistego, Zed? (15)
  • A jeśli się okaże, że jestem beznadziejny? (15)

Ćwiczenie 0. Konfiguracja (18)

  • Edytor programisty (18)
  • Python 3.6 (18)
  • Działający Terminal (19)
  • Działająca konfiguracja pip+virtualenv (19)
  • Dziennik laboratoryjny (19)
  • Opcjonalnie: oprogramowanie do nagrywania ekranu (19)
  • Dalsze badania (20)

Ćwiczenie 1. O procesie (22)

  • Wyzwanie (24)
  • Zrób to sam (24)
  • Dalsze badania (24)

Ćwiczenie 2. O kreatywności (26)

  • Wyzwanie (26)
  • Zrób to sam (27)

Ćwiczenie 3. O jakości (28)

  • Wyzwanie (30)
  • Zrób to sam (30)

CZĘŚĆ II. SZYBKIE SESJE KODOWANIA (32)

  • Jak ćwiczyć kreatywność? (33)
  • Proces dla początkujących programistów (34)
  • Proces kodowania dla początkującego programisty (35)

Ćwiczenie 4. Obsługiwanie argumentów wiersza poleceń (36)

  • Wyzwanie (36)
  • Rozwiązanie (37)
  • Zrób to sam (38)

Ćwiczenie 5. Polecenie cat (40)

  • Wyzwanie (40)
  • Rozwiązanie (41)
  • Zrób to sam (41)
  • Dalsze badania (41)

Ćwiczenie 6. Polecenie find (44)

  • Wyzwanie (45)
  • Zrób to sam (46)
  • Dalsze badania (46)

Ćwiczenie 7. Polecenie grep (48)

  • Wyzwanie (49)
  • Zrób to sam (49)
  • Dalsze badania (49)

Ćwiczenie 8. Polecenie cut (50)

  • Wyzwanie (51)
  • Zrób to sam (51)
  • Dalsze badania (51)

Ćwiczenie 9. Polecenie sed (52)

  • Wyzwanie (53)
  • Zrób to sam (53)
  • Dalsze badania (53)

Ćwiczenie 10. Polecenie sort (54)

  • Wyzwanie (54)
  • Zrób to sam (55)
  • Dalsze badania (55)

Ćwiczenie 11. Polecenie uniq (56)

  • Wyzwanie (56)
  • Zrób to sam (57)
  • Dalsze badania (57)

Ćwiczenie 12. Przegląd (58)

  • Wyzwanie (58)
  • Zrób to sam (59)
  • Dalsze badania (59)

CZĘŚĆ III. STRUKTURY DANYCH (60)

  • Uczenie się jakości poprzez struktury danych (61)
  • Jak studiować struktury danych? (62)

Ćwiczenie 13. Listy jednokierunkowe (64)

  • Opis (64)
  • Kontroler (66)
  • Test (67)
  • Wstępny audyt (69)
  • Wyzwanie (70)
  • Audyt (70)
  • Zrób to sam (70)

Ćwiczenie 14. Listy dwukierunkowe (72)

  • Wprowadzamy warunki niezmienne (73)
  • Wyzwanie (74)
  • Zrób to sam (74)

Ćwiczenie 15. Stosy i kolejki (76)

  • Wyzwanie (76)
  • Popsuj kod (78)
  • Dalsze badania (78)

Ćwiczenie 16. Sortowanie bąbelkowe, przez scalanie i szybkie (80)

  • Wyzwanie (80)
  • Zrób to sam (85)

Ćwiczenie 17. Słownik (88)

  • Wyzwanie (88)
  • Wykonanie kopii wzorcowej kodu (88)
  • Skopiuj kod (89)
  • Adnotuj kod (92)
  • Podsumuj strukturę danych (92)
  • Zapamiętaj podsumowanie (93)
  • Zaimplementuj z pamięci (94)
  • Powtarzaj (95)
  • Zrób to sam (95)
  • Popsuj kod (95)

Ćwiczenie 18. Mierzenie wydajności (96)

  • Narzędzia (96)
  • Analizowanie wydajności (98)
  • Wyzwanie (100)
  • Zrób to sam (100)
  • Popsuj kod (100)
  • Dalsze badania (100)

Ćwiczenie 19. Poprawianie wydajności (102)

  • Wyzwanie (103)
  • Dalsze badania (104)

Ćwiczenie 20. Binarne drzewo poszukiwań (106)

  • Wymagania BSTree (106)
  • Usuwanie (107)
  • Wyzwanie (108)
  • Zrób to sam (108)

Ćwiczenie 21. Wyszukiwanie binarne (110)

  • Wyzwanie (110)
  • Zrób to sam (110)
  • Dalsze badania (111)

Ćwiczenie 22. Tablice sufiksowe (112)

  • Wyzwanie (113)
  • Zrób to sam (113)
  • Dalsze badania (113)

Ćwiczenie 23. Drzewo trójkowe (114)

  • Wyzwanie (114)
  • Zrób to sam (116)

Ćwiczenie 24. Szybkie wyszukiwanie URL (118)

  • Wyzwanie (118)
  • Zrób to sam (119)
  • Dalsze badania (119)

CZĘŚĆ IV. ŚREDNIO ZAAWANSOWANE PROJEKTY (120)

  • Śledzenie błędów (121)

Ćwiczenie 25. Polecenie xargs (122)

  • Wyzwanie (122)
  • Zrób to sam (122)

Ćwiczenie 26. Polecenie hexdump (124)

  • Wyzwanie (125)
  • Zrób to sam (126)
  • Dalsze badania (126)

Ćwiczenie 27. Polecenie tr (128)

  • Wyzwanie (128)
  • Krytyka 45-minutowych bloków (129)
  • Zrób to sam (129)

Ćwiczenie 28. Polecenie sh (130)

  • Wyzwanie (130)
  • Zrób to sam (131)
  • Dalsze badania (131)

Ćwiczenie 29. Polecenia diff i patch (132)

  • Wyzwanie (132)
  • Zrób to sam (133)
  • Dalsze badania (133)

CZĘŚĆ V. PARSOWANIE TEKSTU (134)

  • Stopień pokrycia kodu (134)

Ćwiczenie 30. Automaty skończone (136)

  • Wyzwanie (137)
  • Zrób to sam (139)
  • Dalsze badania (139)

Ćwiczenie 31. Wyrażenia regularne (140)

  • Wyzwanie (142)
  • Zrób to sam (142)
  • Dalsze badania (142)

Ćwiczenie 32. Skanery (144)

  • Skaner szczątkowego Pythona (145)
  • Wyzwanie (147)
  • Zrób to sam (147)
  • Dalsze badania (147)

Ćwiczenie 33. Parsery (150)

  • Parser schodzenia rekurencyjnego (151)
  • Gramatyka BNF (152)
  • Szybki parser demo (153)
  • Wyzwanie (155)
  • Zrób to sam (156)
  • Dalsze badania (156)

Ćwiczenie 34. Analizatory (158)

  • Wzorzec Odwiedzający (159)
  • Krótki analizator szczątkowego Pythona (159)
  • Porównanie parsera i analizatora (162)
  • Wyzwanie (162)
  • Zrób to sam (163)
  • Dalsze badania (163)

Ćwiczenie 35. Interpretery (164)

  • Porównanie interpreterów i kompilatorów (164)
  • Python jest jednym i drugim (165)
  • Jak napisać interpreter? (165)
  • Wyzwanie (166)
  • Zrób to sam (166)
  • Dalsze badania (166)

Ćwiczenie 36. Prosty kalkulator (168)

  • Wyzwanie (168)
  • Zrób to sam (169)
  • Dalsze badania (169)

Ćwiczenie 37. Mały BASIC (170)

  • Wyzwanie (170)
  • Zrób to sam (171)

CZĘŚĆ VI. SQL I MAPOWANIE OBIEKTOWO-RELACYJNE (172)

  • SQL i tabele (172)
  • Czego się dowiesz? (173)

Ćwiczenie 38. Wprowadzenie do SQL (174)

  • Czym jest SQL? (174)
  • Konfiguracja (175)
  • Nauka słownictwa SQL (176)
  • Gramatyka SQL (177)
  • Dalsze badania (177)

Ćwiczenie 39. Tworzenie za pomocą SQL (178)

  • Tworzenie tabel (178)
  • Tworzenie wielotabelowych baz danych (178)
  • Wstawianie danych (179)
  • Wstawianie danych referencyjnych (180)
  • Wyzwanie (180)
  • Dalsze badania (181)

Ćwiczenie 40. Odczytywanie za pomocą SQL (182)

  • Wybieranie z wielu tabel (182)
  • Wyzwanie (183)
  • Dalsze badania (184)

Ćwiczenie 41. Aktualizacja za pomocą SQL (186)

  • Aktualizacja złożonych danych (186)
  • Podmienianie danych (187)
  • Wyzwanie (187)
  • Dalsze badania (188)

Ćwiczenie 42. Usuwanie za pomocą SQL (190)

  • Usuwanie przy użyciu innych tabel (190)
  • Wyzwanie (191)
  • Dalsze badania (192)

Ćwiczenie 43. Administrowanie bazą danych SQL (194)

  • Niszczenie i zmienianie tabel (194)
  • Migracja i ewoluowanie danych (195)
  • Wyzwanie (196)
  • Dalsze badania (196)

Ćwiczenie 44. Korzystanie z API baz danych Pythona (198)

  • Nauka API (198)
  • Wyzwanie (199)
  • Dalsze badania (199)

Ćwiczenie 45. Tworzenie ORM (200)

  • Wyzwanie (200)
  • Dalsze badania (201)

CZĘŚĆ VII. PROJEKTY KOŃCOWE (202)

  • Jaki jest Twój proces? (203)

Ćwiczenie 46. Narzędzie blog (204)

  • Wyzwanie (204)
  • Zrób to sam (205)

Ćwiczenie 47. Język bc (206)

  • Wyzwanie (206)
  • Zrób to sam (207)

Ćwiczenie 48. Narzędzie ed (208)

  • Wyzwanie (208)
  • Zrób to sam (209)

Ćwiczenie 49. Narzędzie sed (210)

  • Wyzwanie (211)
  • Zrób to sam (211)

Ćwiczenie 50. Narzędzie vi (212)

  • Wyzwanie (212)
  • Zrób to sam (213)

Ćwiczenie 51. lessweb (214)

  • Wyzwanie (214)
  • Popsuj kod (214)
  • Zrób to sam (215)

Ćwiczenie 52. moreweb (216)

  • Wyzwanie (216)
  • Popsuj kod (217)
  • Dalsze badania (217)

Skorowidz (219)

  • Tytuł: Python 3. Kolejne lekcje dla nowych programistów
  • Autor: Zed A. Shaw
  • Tytuł oryginału: Learn More Python 3 the Hard Way: The Next Step for New Python Programmers (Zed Shaw's Hard Way Series)
  • Tłumaczenie: Lech Lachowski
  • ISBN: 978-83-283-4238-5, 9788328342385
  • Data wydania: 2018-08-10
  • Format: Ebook
  • Identyfikator pozycji: pyt3ko
  • Wydawca: Helion