Kategorien
E-Books
-
Wirtschaft
- Bitcoin
- Geschäftsfrau
- Coaching
- Controlling
- E-Business
- Ökonomie
- Finanzen
- Börse und Investitionen
- Persönliche Kompetenzen
- Computer im Büro
- Kommunikation und Verhandlungen
- Kleines Unternehmen
- Marketing
- Motivation
- Multimedia-Training
- Immobilien
- Überzeugung und NLP
- Steuern
- Sozialpolitik
- Handbȕcher
- Präsentationen
- Führung
- Public Relation
- Berichte, Analysen
- Geheimnis
- Social Media
- Verkauf
- Start-up
- Ihre Karriere
- Management
- Projektmanagement
- Personal (HR)
-
Für Kinder
-
Für Jugendliche
-
Bildung
-
Enzyklopädien, Wörterbücher
-
E-Presse
- Architektura i wnętrza
- Biznes i Ekonomia
- Haus und Garten
- E-Business
- Finanzen
- Persönliche Finanzen
- Unternehmen
- Fotografie
- Informatik
- HR und Gehaltsabrechnung
- Computer, Excel
- Buchhaltung
- Kultur und Literatur
- Wissenschaftlich und akademisch
- Umweltschutz
- meinungsbildend
- Bildung
- Steuern
- Reisen
- Psychologie
- Religion
- Landwirtschaft
- Buch- und Pressemarkt
- Transport und Spedition
- Gesundheit und Schönheit
-
Geschichte
-
Informatik
- Office-Programme
- Datenbank
- Bioinformatik
- IT Branche
- CAD/CAM
- Digital Lifestyle
- DTP
- Elektronik
- Digitale Fotografie
- Computergrafik
- Spiele
- Hacking
- Hardware
- IT w ekonomii
- Wissenschaftliche Pakete
- Schulbücher
- Computergrundlagen
- Programmierung
- Mobile-Programmierung
- Internet-Server
- Computernetzwerke
- Start-up
- Betriebssysteme
- Künstliche Inteligenz
- Technik für Kinder
- Webmaster
-
Andere
-
Fremdsprachen lernen
-
Kultur und Kunst
-
Lektüre
-
Literatur
- Anthologien
- Ballade
- Biografien und Autobiografien
- Für Erwachsene
- Drama
- Tagebücher, Memoiren, Briefe
- Epos
- Essay
- Science Fiction
- Felietonys
- Fiktion
- Humor, Satire
- Andere
- Klassisch
- Krimi
- Sachbücher
- Belletristik
- Mity i legendy
- Nobelpreisträger
- Kurzgeschichten
- Gesellschaftlich
- Okultyzm i magia
- Erzählung
- Erinnerungen
- Reisen
- Gedicht
- Poesie
- Politik
- Populärwissenschaftlich
- Roman
- Historischer Roman
- Prosa
- Abenteuer
- Journalismus
- Reportage
- Romans i literatura obyczajowa
- Sensation
- Thriller, Horror
- Interviews und Erinnerungen
-
Naturwissenschaften
-
Sozialwissenschaften
-
Schulbücher
-
Populärwissenschaft und akademisch
- Archäologie
- Bibliotekoznawstwo
- Filmwissenschaft
- Philologie
- Polnische Philologie
- Philosophie
- Finanse i bankowość
- Erdkunde
- Wirtschaft
- Handel. Weltwirtschaft
- Geschichte und Archäologie
- Kunst- und Architekturgeschichte
- Kulturwissenschaft
- Linguistik
- Literaturwissenschaft
- Logistik
- Mathematik
- Medizin
- Geisteswissenschaften
- Pädagogik
- Lehrmittel
- Populärwissenschaftlich
- Andere
- Psychologie
- Soziologie
- Theatrologie
- Teologie
- Theorien und Wirtschaftswissenschaften
- Transport i spedycja
- Sportunterricht
- Zarządzanie i marketing
-
Handbȕcher
-
Spielanleitungen
-
Professioneller und fachkundige Leitfaden
-
Jura
- Sicherheit und Gesundheit am Arbeitsplatz
- Geschichte
- Verkehrsregeln. Führerschein
- Rechtswissenschaften
- Gesundheitswesen
- Allgemeines. Wissenskompendium
- akademische Bücher
- Andere
- Bau- und Wohnungsrecht
- Zivilrecht
- Finanzrecht
- Wirtschaftsrecht
- Wirtschafts- und Handelsrecht
- Strafrecht
- Strafrecht. Kriminelle Taten. Kriminologie
- Internationales Recht
- Internationales und ausländisches Recht
- Gesundheitsschutzgesetz
- Bildungsrecht
- Steuerrecht
- Arbeits- und Sozialversicherungsrecht
- Öffentliches, Verfassungs- und Verwaltungsrecht
- Familien- und Vormundschaftsrecht
- Agrarrecht
- Sozialrecht, Arbeitsrecht
- EU-Recht
- Industrie
- Agrar- und Umweltschutz
- Wörterbücher und Enzyklopädien
- Öffentliche Auftragsvergabe
- Management
-
Führer und Reisen
- Afrika
- Alben
- Südamerika
- Mittel- und Nordamerika
- Australien, Neuseeland, Ozeanien
- Österreich
- Asien
- Balkan
- Naher Osten
- Bulgarien
- China
- Kroatien
- Tschechische Republik
- Dänemark
- Ägypten
- Estland
- Europa
- Frankreich
- Berge
- Griechenland
- Spanien
- Niederlande
- Island
- Litauen
- Lettland
- Mapy, Plany miast, Atlasy
- Miniführer
- Deutschland
- Norwegen
- Aktive Reisen
- Polen
- Portugal
- Andere
- Russland
- Rumänien
- Slowakei
- Slowenien
- Schweiz
- Schweden
- Welt
- Türkei
- Ukraine
- Ungarn
- Großbritannien
- Italien
-
Psychologie
- Lebensphilosophien
- Kompetencje psychospołeczne
- zwischenmenschliche Kommunikation
- Mindfulness
- Allgemeines
- Überzeugung und NLP
- Akademische Psychologie
- Psychologie von Seele und Geist
- Arbeitspsychologie
- Relacje i związki
- Elternschafts- und Kinderpsychologie
- Problemlösung
- Intellektuelle Entwicklung
- Geheimnis
- Sexualität
- Verführung
- Aussehen ind Image
- Lebensphilosophien
-
Religion
-
Sport, Fitness, Diäten
-
Technik und Mechanik
Hörbücher
-
Wirtschaft
- Bitcoin
- Geschäftsfrau
- Coaching
- Controlling
- E-Business
- Ökonomie
- Finanzen
- Börse und Investitionen
- Persönliche Kompetenzen
- Kommunikation und Verhandlungen
- Kleines Unternehmen
- Marketing
- Motivation
- Immobilien
- Überzeugung und NLP
- Steuern
- Handbȕcher
- Präsentationen
- Führung
- Public Relation
- Geheimnis
- Social Media
- Verkauf
- Start-up
- Ihre Karriere
- Management
- Projektmanagement
- Personal (HR)
-
Für Kinder
-
Für Jugendliche
-
Bildung
-
Enzyklopädien, Wörterbücher
-
Geschichte
-
Informatik
-
Andere
-
Fremdsprachen lernen
-
Kultur und Kunst
-
Lektüre
-
Literatur
- Anthologien
- Ballade
- Biografien und Autobiografien
- Für Erwachsene
- Drama
- Tagebücher, Memoiren, Briefe
- Epos
- Essay
- Science Fiction
- Felietonys
- Fiktion
- Humor, Satire
- Andere
- Klassisch
- Krimi
- Sachbücher
- Belletristik
- Mity i legendy
- Nobelpreisträger
- Kurzgeschichten
- Gesellschaftlich
- Okultyzm i magia
- Erzählung
- Erinnerungen
- Reisen
- Poesie
- Politik
- Populärwissenschaftlich
- Roman
- Historischer Roman
- Prosa
- Abenteuer
- Journalismus
- Reportage
- Romans i literatura obyczajowa
- Sensation
- Thriller, Horror
- Interviews und Erinnerungen
-
Naturwissenschaften
-
Sozialwissenschaften
-
Populärwissenschaft und akademisch
- Archäologie
- Philosophie
- Wirtschaft
- Handel. Weltwirtschaft
- Geschichte und Archäologie
- Kunst- und Architekturgeschichte
- Kulturwissenschaft
- Literaturwissenschaft
- Mathematik
- Medizin
- Geisteswissenschaften
- Pädagogik
- Lehrmittel
- Populärwissenschaftlich
- Andere
- Psychologie
- Soziologie
- Teologie
- Zarządzanie i marketing
-
Handbȕcher
-
Professioneller und fachkundige Leitfaden
-
Jura
-
Führer und Reisen
-
Psychologie
- Lebensphilosophien
- zwischenmenschliche Kommunikation
- Mindfulness
- Allgemeines
- Überzeugung und NLP
- Akademische Psychologie
- Psychologie von Seele und Geist
- Arbeitspsychologie
- Relacje i związki
- Elternschafts- und Kinderpsychologie
- Problemlösung
- Intellektuelle Entwicklung
- Geheimnis
- Sexualität
- Verführung
- Aussehen ind Image
- Lebensphilosophien
-
Religion
-
Sport, Fitness, Diäten
-
Technik und Mechanik
Videokurse
-
Datenbank
-
Big Data
-
Biznes, ekonomia i marketing
-
Cybersicherheit
-
Data Science
-
DevOps
-
Für Kinder
-
Elektronik
-
Grafik / Video / CAX
-
Spiele
-
Microsoft Office
-
Entwicklungstools
-
Programmierung
-
Persönliche Entwicklung
-
Computernetzwerke
-
Betriebssysteme
-
Softwaretest
-
Mobile Geräte
-
UX/UI
-
Web development
-
Management
Podcasts
- E-Books
- Programmierung
- Python
- Profesjonalne programowanie w Pythonie. Poziom ekspert. Wydanie II
Details zum E-Book
Profesjonalne programowanie w Pythonie. Poziom ekspert. Wydanie II
Twórcy Pythona niemal od początku starali się opracować wieloparadygmatowy język zorientowany na czytelność kodu i produktywność programisty. Dziś język ten jest uważany za wszechstronny i potężny, a do tego cechuje się prostotą i elastycznością. Nadaje się zarówno do pisania niedużych skryptów, jak i wielkich systemów, a także do wysoce specjalistycznych zadań, jak choćby analiza danych w celach naukowych. Mimo to pisanie kodu, który jest wydajny, prosty w utrzymaniu oraz łatwy w użyciu, wciąż sprawia problemy nawet zaawansowanym programistom Pythona.
Niniejsza książka jest zbiorem praktyk stosowanych przez najlepszych programistów pracujących z Pythonem. Jest przeznaczona dla osób zawodowo zajmujących się rozwojem oprogramowania oraz dla ambitnych pasjonatów w tej dziedzinie. Poza opisem zaawansowanych technik programowania w Pythonie znalazły się tu również informacje o narzędziach i technikach stosowanych obecnie przez profesjonalnych programistów. Opisano metody zarządzania kodem, tworzenia, dokumentowania i testowania kodu oraz zasady optymalizacji oprogramowania. Przedstawiono również wzorce projektowe, które szczególnie docenią programiści Pythona.
Najważniejsze zagadnienia przedstawione w książce:
- metodologie pracy w Pythonie i najlepsze praktyki składniowe
- rozszerzenia Pythona napisane w innych językach programowania
- techniki profilowania aplikacji
- przetwarzanie współbieżne i równoległe
- najprzydatniejsze wzorce projektowe
Python — niezawodne narzędzie dla profesjonalisty!
O autorach (11)
O recenzencie (12)
Przedmowa (13)
Rozdział 1. Obecny status Pythona (19)
- Gdzie jesteśmy i dokąd zmierzamy? (20)
- Dlaczego i jak zmienia się Python (20)
- Bądź na bieżąco ze zmianami języka - dokumenty PEP (21)
- Popularność Pythona 3 w chwili pisania tej książki (22)
- Główne różnice pomiędzy Pythonem 3 a Pythonem 2 (23)
- Korzyści płynące ze znajomości starej wersji Pythona (23)
- Główne różnice składni i częste pułapki (24)
- Popularne narzędzia i techniki używane w celu utrzymania kompatybilności (26)
- Nie tylko CPython (30)
- Dlaczego powinieneś się przejmować? (30)
- Stackless Python (31)
- Jython (31)
- IronPython (32)
- PyPy (33)
- Nowoczesne podejścia do programowania w Pythonie (34)
- Izolacja środowisk Pythona na poziomie aplikacji (34)
- Zalety stosowania izolacji (36)
- Popularne rozwiązania (37)
- Które rozwiązanie wybrać? (41)
- Izolacja środowisk Pythona na poziomie systemu operacyjnego (42)
- Wirtualne środowiska robocze z wykorzystaniem narzędzia Vagrant (43)
- Konteneryzacja czy wirtualizacja? (45)
- Popularne narzędzia pracy ukierunkowane na produktywność (45)
- Alternatywne powłoki Pythona - IPython, bpython, ptpython (46)
- Interaktywne debuggery (48)
- Przydatne materiały (49)
- Podsumowanie (50)
Rozdział 2. Najlepsze praktyki składniowe - poniżej poziomu klas (51)
- Typy wbudowane Pythona (52)
- Ciągi znaków i bajtów (52)
- Kolekcje (56)
- Zaawansowane elementy składni (67)
- Iteratory (67)
- Instrukcja yield (69)
- Dekoratory (72)
- Zarządcy kontekstu - instrukcja with (83)
- Inne elementy składni, o których możesz jeszcze nie wiedzieć (87)
- Konstrukcja for ... else ... (87)
- Adnotacje funkcji (88)
- Podsumowanie (89)
Rozdział 3. Najlepsze praktyki składniowe - powyżej poziomu klas (91)
- Dziedziczenie po typach wbudowanych (92)
- Uzyskiwanie dostępu do metod klas nadrzędnych (94)
- Klasy w starym stylu oraz funkcja super() w Pythonie 2 (96)
- Porządek rozpatrywania metod w Pythonie (97)
- Pułapki związane z funkcją super() (101)
- Najlepsze praktyki (104)
- Zaawansowane wzorce dostępu do atrybutów (104)
- Deskryptory (105)
- Właściwości (111)
- Sloty (114)
- Metaprogramowanie (114)
- Dekoratory jako metoda metaprogramowania (115)
- Dekoratory klas (116)
- Wykorzystanie metody __new__() w celu nadpisania procesu tworzenia instancji klas (118)
- Metaklasy (120)
- Rady dotyczące automatycznego generowania kodu (127)
- Podsumowanie (134)
Rozdział 4. Właściwy dobór nazw (135)
- PEP 8 i najlepsze praktyki nazewnicze (135)
- Kiedy i dlaczego przestrzegać zasad PEP 8? (136)
- Poza PEP 8 - wytyczne stylu w zespołach (136)
- Notacje nazewnicze (137)
- Zmienne (138)
- Zmienne publiczne i prywatne (140)
- Funkcje i metody (142)
- Właściwości (145)
- Klasy (145)
- Moduły i pakiety (146)
- Dobre praktyki nazewnicze (146)
- Użycie prefiksów is oraz has przy elementach logicznych (146)
- Użycie liczby mnogiej przy zmiennych przechowujących kolekcje (146)
- Precyzyjne opisywanie słowników (147)
- Unikanie zbyt ogólnych określeń (147)
- Unikanie istniejących nazw (148)
- Najlepsze praktyki dla argumentów funkcji i metod (149)
- Projektowanie argumentów metodą przyrostową (150)
- Ufaj argumentom i testom (150)
- Ostrożne wykorzystanie magicznych argumentów *args oraz **kwargs (152)
- Nazwy klas (154)
- Nazwy modułów i pakietów (154)
- Przydatne narzędzia (155)
- Pylint (155)
- pep8 i flake8 (157)
- Podsumowanie (158)
Rozdział 5. Tworzenie i dystrybucja pakietów (159)
- Tworzenie pakietów (160)
- Zamieszanie wokół narzędzi do tworzenia i dystrybuowania pakietów (160)
- Konfiguracja projektu (162)
- Własne polecenia skryptu setup.py (172)
- Praca z pakietami podczas ich rozwoju (172)
- Pakiety przestrzeni nazw (174)
- Zastosowanie pakietów przestrzeni nazw (174)
- PEP 420 - domyślne pakiety przestrzeni nazw (176)
- Pakiety przestrzeni nazw w starszych wersjach Pythona (177)
- Praca z repozytorium pakietów (178)
- Python Package Index - repozytorium pakietów Pythona (179)
- Dystrybucje źródłowe a dystrybucje budowane (181)
- Samodzielne pliki wykonywalne (184)
- Kiedy samodzielne pliki wykonywalne są użyteczne? (186)
- Popularne narzędzia (186)
- Bezpieczeństwo kodu Pythona w samodzielnych plikach wykonywalnych (193)
- Podsumowanie (195)
Rozdział 6. Zdalne wdrożenia kodu (197)
- Manifest Twelve-Factor App (198)
- Automatyzacja wdrożeń z wykorzystaniem narzędzia Fabric (200)
- Własne repozytorium pakietów lub kopie lustrzane PyPI (205)
- Utrzymywanie kopii lustrzanych PyPI (206)
- Wdrożenia z wykorzystaniem dystrybucji pakietów (207)
- Popularne konwencje i dobre praktyki (215)
- Hierarchia systemu plików (215)
- Izolacja (216)
- Wykorzystanie narzędzi nadzoru nad procesami (216)
- Kod aplikacji powinien być uruchomiony w przestrzeni użytkownika (218)
- Korzystanie ze wstecznych serwerów proxy protokołu HTTP (219)
- Przeładowywanie procesów bez zastojów (219)
- Instrumentacja i monitorowanie kodu (221)
- Logowanie błędów (Sentry oraz raven) (221)
- Monitorowanie metryk systemowych i aplikacji (224)
- Obsługa logów (226)
- Podsumowanie (230)
Rozdział 7. Rozszerzenia Pythona w innych językach programowania (231)
- Inne języki, czyli C lub C++ (232)
- Jak działają rozszerzenia w C i C++ (232)
- Dlaczego warto tworzyć rozszerzenia (234)
- Zwiększanie wydajności w krytycznych sekcjach kodu (235)
- Integracja kodu napisanego w innych językach programowania (236)
- Integracja zewnętrznych bibliotek dynamicznych (236)
- Tworzenie własnych wbudowanych typów danych (236)
- Pisanie rozszerzeń (237)
- Zwyczajne rozszerzenia w C (238)
- Cython (253)
- Wyzwania związane z rozszerzeniami (257)
- Dodatkowa złożoność (258)
- Debugowanie (258)
- Korzystanie z dynamicznych bibliotek bez pisania rozszerzeń (259)
- ctypes (259)
- CFFI (265)
- Podsumowanie (266)
Rozdział 8. Zarządzanie kodem (267)
- Systemy kontroli wersji (268)
- Scentralizowane systemy kontroli wersji (268)
- Rozproszone systemy kontroli wersji (271)
- Systemy scentralizowane czy rozproszone? (274)
- Korzystaj z systemu Git, jeśli tylko możesz (274)
- Git flow oraz GitHub flow (275)
- Ciągłe procesy programistyczne (279)
- Ciągła integracja oprogramowania (280)
- Ciągłe dostarczanie oprogramowania (284)
- Ciągłe wdrażanie oprogramowania (285)
- Popularne narzędzia do ciągłej integracji (285)
- Wybór odpowiednich narzędzi i częste pułapki (294)
- Podsumowanie (297)
Rozdział 9. Dokumentowanie projektu (299)
- Siedem zasad technicznego pisania (300)
- Pisz w dwóch krokach (300)
- Skieruj przekaz do konkretnej grupy czytelników (301)
- Korzystaj z prostego stylu (302)
- Ogranicz zakres informacji (303)
- Korzystaj z realistycznych przykładów (303)
- Dokumentuj lekko, ale jednocześnie wystarczająco (304)
- Korzystaj z szablonów (305)
- Poradnik reStructuredText (305)
- Struktura sekcji (307)
- Listy numerowane i wypunktowania (309)
- Formatowanie znakowe (310)
- Bloki dosłowne (310)
- Odnośniki (311)
- Budowanie dokumentacji (312)
- Budowanie portfolio dokumentacji (312)
- Tworzenie własnego portfolio (319)
- Projektowanie krajobrazu dokumentacji (319)
- Budowanie dokumentacji a systemy ciągłej integracji (324)
- Podsumowanie (325)
Rozdział 10. Programowanie sterowane testami (327)
- Nie testuję (327)
- Zasady programowania sterowanego testami (328)
- Możliwe rodzaje testów (332)
- Narzędzia testowe standardowej biblioteki Pythona (335)
- Testuję (340)
- Pułapki modułu unittest (340)
- Alternatywy dla modułu unittest (341)
- Mierzenie pokrycia kodu testami (349)
- Fałszywe obiekty zastępcze i atrapy (351)
- Testowanie kompatybilności środowisk i zależności (358)
- Programowanie sterowane dokumentami (361)
- Podsumowanie (363)
Rozdział 11. Optymalizacja - ogólne zasady i techniki profilowania (365)
- Trzy zasady optymalizacji (365)
- Przede wszystkim spraw, aby kod działał poprawnie (366)
- Pracuj z perspektywy użytkownika (367)
- Utrzymuj kod czytelnym (367)
- Strategia optymalizacyjna (368)
- Poszukaj innego winowajcy (368)
- Skaluj sprzęt (369)
- Napisz test wydajnościowy (370)
- Identyfikowanie wąskich gardeł wydajności (370)
- Profilowanie czasu użycia procesora (370)
- Profilowanie zużycia pamięci (379)
- Profilowanie połączeń sieciowych (389)
- Podsumowanie (390)
Rozdział 12. Optymalizacja - wybrane skuteczne techniki (391)
- Redukcja złożoności (392)
- Złożoność cyklomatyczna (394)
- Notacja dużego O (394)
- Upraszczanie (397)
- Przeszukiwanie list (397)
- Korzystanie ze zbiorów w miejscu list (398)
- Ukróć zewnętrzne wywołania, zredukuj nakład pracy (398)
- Korzystanie z modułu collections (399)
- Stosowanie kompromisów architektonicznych (403)
- Stosowanie heurystyk i algorytmów aproksymacyjnych (403)
- Stosowanie kolejek zadań i opóźnionego przetwarzania (404)
- Stosowanie probabilistycznych struktur danych (408)
- Buforowanie (409)
- Buforowanie deterministyczne (410)
- Buforowanie niedeterministyczne (412)
- Usługi buforujące (413)
- Podsumowanie (416)
Rozdział 13. Przetwarzanie współbieżne i równoległe (419)
- Dlaczego współbieżność? (420)
- Wielowątkowość (421)
- Czym jest wielowątkowość? (422)
- Jak Python radzi sobie z wątkami (423)
- Kiedy należy korzystać z wielowątkowości? (424)
- Przetwarzanie wieloprocesowe (439)
- Wbudowany moduł multiprocessing (442)
- Programowanie asynchroniczne (447)
- Kooperacyjna wielozadaniowość i asynchroniczne operacje wejścia/wyjścia (448)
- Słowa kluczowe async i await (449)
- asyncio w starszych wersjach Pythona (453)
- Praktyczny przykład programu asynchronicznego (454)
- Integracja nieasynchronicznego kodu z async za pomocą modułu futures (456)
- Podsumowanie (459)
Rozdział 14. Przydatne wzorce projektowe (461)
- Wzorce kreacyjne (462)
- Singleton (462)
- Wzorce strukturalne (465)
- Adapter (466)
- Pełnomocnik (481)
- Fasada (482)
- Wzorce czynnościowe (483)
- Obserwator (483)
- Odwiedzający (485)
- Szablon (488)
- Podsumowanie (491)
Skorowidz (492)
- Titel: Profesjonalne programowanie w Pythonie. Poziom ekspert. Wydanie II
- Autor: Michal Jaworski, Tarek Ziade
- Originaler Titel: Expert Python Programming, Second Edition
- Übersetzung: Michał Jaworski
- ISBN: 978-83-283-3034-4, 9788328330344
- Veröffentlichungsdatum: 2017-08-09
- Format: E-book
- Artikelkennung: prprpe
- Verleger: Helion