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
- Python dla profesjonalistów. Debugowanie, testowanie i utrzymywanie kodu
Details zum E-Book
Python istnieje już ponad 25 lat. Nie jest trudnym językiem i oferuje ogromne możliwości. Tworzenie dobrych programów w Pythonie wymaga jednak od programistów dużych umiejętności. Cykl rozwoju oprogramowania jest pełen pułapek nieznanych początkującym koderom. Mimo to w podręcznikach Pythona niewiele uwagi poświęca się debugowaniu i testowaniu, a przecież etapy te mają kluczowe znaczenie dla jakości kodu i funkcjonalności tworzonego oprogramowania.
Ta książka uczyni Cię lepszym programistą! Dzięki przedstawionym tu podstawowym praktykom stosowanym przez najbardziej profesjonalnych programistów Pythona będziesz tworzył doskonalszy kod. Zoptymalizujesz z nimi procesy debugowania programów, pisania automatycznych testów i utrzymywania oprogramowania bez nadmiernego wysiłku. Przedstawione tu techniki będą szczególnie przydatne dla programistów zajmujących się analizą danych, tworzeniem stron internetowych oraz rozwijaniem oprogramowania naukowego.
Najważniejsze zagadnienia przedstawione w książce:
- błędy semantyczne i wyjątki,
- sposoby eliminacji błędów i narzędzia do debugowania,
- zasady i techniki testowania aplikacji,
- mocne i słabe strony testów automatycznych,
- mechanizm kontroli wersji,
- kontrola typów i sporządzanie dokumentacji.
Ty też możesz programować w Pythonie!
Dr Kristian Rother zajmuje się programowaniem od wczesnego dzieciństwa. Jest również specjalistą w dziedzinie bioinformatyki: prowadził badania struktur 3D białek i RNA na Uniwersytecie Humboldta w Berlinie. Przez wiele lat doskonalił swoje umiejętności nauczania, a obecnie pracuje w Berlinie jako profesjonalny trener. Prowadzi szkolenia z programowania w Pythonie, uczy biochemii, statystyki, testowania aplikacji internetowych, wyszukiwarek, wygłasza prezentacje.
- O autorze
- O recenzencie technicznym
- Podziękowania
- Przedmowa
- Rozdział 1 Wprowadzenie
- Lekcja pokory
- Najlepsze praktyki w Pythonie
- Pochodzenie najlepszych praktyk
- Hacking
- Inżynieria programowania
- Agile
- Software Craftsmanship
- Dla kogo jest ta książka?
- O czym jest ta książka?
- Część I. Debugowanie
- Część II. Automatyczne testowanie
- Część III. Utrzymanie
- Dalsze korzyści
- Gra MazeRun
- Jak korzystać z tej książki?
- Instalacja Pythona 3
- Instalacja biblioteki Pygame
- Instalacja edytora tekstu
- Pobranie kodu źródłowego przykładów
- Część I Debugowanie
- Rozdział 2 Wyjątki w Pythonie
- Wyjątki są defektami, o których istnieniu wiemy
- Czytanie kodu
- Błędy typu SyntaxError
- Najlepsze praktyki debugowania wyjątków SyntaxError
- Analiza komunikatów o błędach
- Typ błędu
- Opis błędu
- Ślad
- Dedukcja
- Przechwytywanie wyjątków
- Najlepsze praktyki debugowania wyjątków IOError
- Błędy i defekty
- Skąd się biorą defekty?
- Poprawny kod
- Najlepsze praktyki
- Rozdział 3 Błędy semantyczne w Pythonie
- Porównywanie rzeczywistych danych wyjściowych z oczekiwanymi
- Defekty
- Defekty przypisania zmiennych
- Wielokrotne inicjowanie
- Przypadkowe przypisanie
- Przypadkowe porównania
- Nieprawidłowe zmienne w wyrażeniu
- Przestawione literały w wyrażeniu
- Defekty indeksowania
- Tworzenie nieprawidłowych indeksów
- Użycie nieprawidłowych indeksów
- Defekty w instrukcjach przepływu sterowania
- Defekty w wyrażeniach logicznych
- Defekty związane z wcięciami
- Defekty w używaniu funkcji
- Pomijanie wywołania funkcji
- Brak instrukcji return
- Brak przechowywania zwracanej wartości
- Propagacja błędów
- Najlepsze praktyki
- Porównywanie rzeczywistych danych wyjściowych z oczekiwanymi
- Rozdział 4 Debugowanie metodą naukową
- Stosowanie metody naukowej
- Odtwarzanie błędu
- Automatyzowanie błędu
- Izolowanie defektu
- Strategia rozbierania
- Strategia wyszukiwania binarnego
- Uzyskiwanie pomocy
- Czas na przerwę
- Wyjaśnij problem komuś innemu
- Programowanie w parach
- Przeglądy kodu
- Czytanie
- Sprzątanie
- Metoda naukowa i inne najlepsze praktyki
- Najlepsze praktyki
- Rozdział 5 Debugowanie za pomocą instrukcji print
- Diagnozowanie, czy kod był uruchamiany
- Wyświetlanie zawartości zmiennych
- Estetyczne wyświetlanie struktur danych
- Upraszczanie danych wejściowych
- Zacznij od minimalnego wejścia
- Stopniowe dodawanie większej ilości danych wejściowych
- Włączanie i wyłączanie wyświetlania wyjścia
- Kompletny kod
- Plusy i minusy używania instrukcji print
- Najlepsze praktyki
- Rozdział 6 Debugowanie z funkcjami introspekcji
- Kodowanie eksploracyjne w IPythonie
- Eksploracja plików i katalogów
- Przegląd poleceń powłoki IPythona
- Odkrywanie przestrzeni nazw
- Eksploracja przestrzeni nazw za pomocą polecenia dir()
- Eksploracja przestrzeni nazw obiektów
- Eksploracja atrybutów w programie Pythona
- Alternatywy instrukcji dir w IPythonie
- Mechanika przestrzeni nazw
- Python używa przestrzeni nazw dla własnych funkcji
- Modyfikowanie przestrzeni nazw
- Przestrzenie nazw i zasięg lokalny
- Przestrzenie nazw są podstawową właściwością Pythona
- Używanie samodokumentujących się obiektów
- Dostęp do ciągów dokumentacyjnych za pomocą instrukcji help()
- Opisy obiektów w IPythonie
- Analizowanie typów obiektów
- Sprawdzanie tożsamości obiektu
- Sprawdzanie egzemplarzy i podklas
- Praktyczne wykorzystanie introspekcji
- Znajdowanie literówek za pomocą introspekcji
- Łączenie funkcji introspekcji
- Introspekcja w dużych i małych programach
- Najlepsze praktyki
- Kodowanie eksploracyjne w IPythonie
- Rozdział 7 Korzystanie z interaktywnego debugera
- Interaktywny debuger ipdb
- Instalowanie ipdb
- Uruchamianie debugera
- Uruchamianie ipdb z wiersza polecenia
- Uruchamianie ipdb z poziomu programu
- Debugowanie post mortem
- Uruchamianie debugera w odpowiedzi na wyjątki
- Naprawa defektu
- Komendy w wierszu poleceń debugera
- Inspekcja zmiennych
- Ocena wartości wyrażeń Pythona
- Krokowe uruchamianie kodu
- Wznawianie działania programu
- Używanie pułapek
- Przeglądanie i usuwanie pułapek
- Pułapki warunkowe
- Konfigurowanie ipdb
- Przykład sesji ipdb
- Dodawanie funkcji sterowania grą
- Krokowe uruchamianie kodu
- Usuwanie defektu
- To działa!
- Czy teraz program nie ma defektów?
- Inne narzędzia do debugowania
- pdb debuger Pythona
- Środowisko IDE PyCharm
- ipdbplugin
- pudb
- wdb
- Pasek narzędzi Django Debug
- cProfile
- Najlepsze praktyki
- Interaktywny debuger ipdb
- Część II Automatyczne testowanie
- Rozdział 8 Pisanie automatycznych testów
- Instalacja frameworka py.test
- Pisanie funkcji testowej
- Uruchamianie testów
- Pisanie testu, który nie przechodzi
- Spraw, aby test przeszedł
- Testy pomyślne a testy niepomyślne
- Pisanie oddzielnych funkcji testowych
- Asercje dostarczają przydatnych danych wyjściowych
- Testowanie występowania wyjątków
- Przypadki brzegowe
- Złożone przypadki brzegowe
- Korzyści wynikające z automatycznego testowania
- Inne frameworki testowe w Pythonie
- unittest
- nose
- doctest
- Pisanie bloku __main__
- Najlepsze praktyki
- Rozdział 9 Organizowanie danych testowych
- Używanie fikstur
- Parametr scope
- Parametryzacja testów
- Wiele parametrów
- Fikstury z parametrami
- Makiety
- Testowanie plików wynikowych
- Sprzątanie po testach
- Używanie plików tymczasowych
- Porównywanie plików wynikowych z danymi testowymi
- Moduł filecmp
- Moduł difflib
- Najlepsze praktyki testowania dużych plików
- Generowanie losowych danych testowych
- Gdzie przechowywać dane testowe?
- Moduły danych testowych
- Katalogi danych testowych
- Bazy danych testowych
- Najlepsze praktyki
- Używanie fikstur
- Rozdział 10 Pisanie zestawu testów
- Moduły testowe
- Klasy testów
- Refaktoryzacja funkcji testowych
- Fikstury w klasach testowych
- W jaki sposób testy znajdują testowany kod?
- Wiele pakietów testowych
- Automatyczne wykrywanie testów
- Uruchamianie zestawu testów
- Częściowe uruchomienie
- Uruchamianie modułów i pakietów testowych
- Uruchamianie klas testowych
- Uruchamianie pojedynczych testów
- Wybieranie testów za pomocą słów kluczowych
- Analiza testów zakończonych niepowodzeniem
- Ponowne uruchamianie testów
- Częściowe uruchomienie
- Obliczanie pokrycia testami
- Zestaw testów wymaga utrzymania
- Najlepsze praktyki
- Rozdział 11 Najlepsze praktyki testowania
- Rodzaje automatycznych testów
- Testy jednostkowe
- Testy integracyjne
- Testy akceptacyjne
- Testy regresji
- Testy wydajności
- Optymalizacja wydajności
- Podejście najpierw test
- Pisanie testów według specyfikacji
- Pisanie testów według defektów
- Rozwój oprogramowania sterowany testami (TDD)
- Zalety automatycznego testowania
- Testowanie oszczędza czas
- Testowanie dodaje precyzji
- Dzięki testowaniu współpraca staje się łatwiejsza
- Ograniczenia automatycznego testowania
- Testowanie wymaga sprawdzalnego kodu
- Testowanie nie działa dobrze w przypadku projektów, które szybko się zmieniają
- Testowanie nie udowadnia poprawności
- Programy trudne do testowania
- Liczby losowe
- Graficzne interfejsy użytkownika
- Dane wyjściowe złożone lub o dużej objętości
- Współbieżność
- Sytuacje, gdy automatyczne testy zawodzą
- Inne możliwości dla automatycznego testowania
- Tworzenie prototypów
- Przeglądy kodu
- Listy kontrolne
- Procesy promujące poprawność
- Wnioski
- Najlepsze praktyki
- Rodzaje automatycznych testów
- Część III Utrzymanie
- Rozdział 12 Kontrola wersji
- Wprowadzenie do pracy z systemem git
- Tworzenie repozytorium
- Dodawanie plików do repozytorium
- Śledzenie zmian w plikach
- Przenoszenie i usuwanie plików
- Odrzucanie zmian
- Przeglądanie historii kodu
- Pobieranie starszych commitów
- Powrót do najświeższego commita
- Publikowanie kodu w serwisie GitHub
- Rozpoczynanie projektu w serwisie GitHub
- Korzystanie z serwisu GitHub z pozycji pojedynczego programisty
- Praca w projektach rozpoczętych przez innych
- Projekty z wieloma programistami
- Scalanie zmian wprowadzonych przez dwie osoby
- Żądania pobrania
- Korzystanie z gałęzi
- Scalanie gałęzi
- Konfigurowanie systemu git
- Ignorowanie plików
- Ustawienia globalne
- Przykłady użycia
- Dwadzieścia znaków: mały projekt o małym ruchu
- Python: wielki projekt z codziennymi commitami
- grep: projekt długoterminowy
- Inne systemy kontroli wersji
- Mercurial
- Subversion (SVN)
- CVS (Concurrent Versions Software)
- Bitbucket
- Sourceforge
- Najlepsze praktyki
- Wprowadzenie do pracy z systemem git
- Rozdział 13 Konfigurowanie projektu w Pythonie
- Tworzenie struktury projektu za pomocą narzędzia pyscaffold
- Instalacja narzędzia pyscaffold
- Typowe katalogi w projekcie Pythona
- Katalogi utworzone przez pyscaffold
- Główny katalog pakietu Pythona
- Katalog tests/
- Katalog docs/
- Katalog .git/
- Katalogi nieutworzone przez pyscaffold
- Katalog bin/
- Katalogi build/, dist/ i sdist/
- Katalog .hg/
- Katalogi danych
- Katalogi utworzone przez pyscaffold
- Pliki
- Pliki utworzone przez pyscaffold
- README.rst
- setup.py
- AUTHORS.rst
- LICENSE.rst
- MANIFEST.in
- versioneer.py
- requirements.txt
- .coveragerc
- .gitattributes i .gitignore
- Pliki, które nie są tworzone przez pyscaffold
- Pliki utworzone przez pyscaffold
- Ustawianie numerów wersji programu
- Zarządzanie środowiskiem projektu Pythona za pomocą virtualenv
- Instalacja narzędzia virtualenv
- Podłączanie projektu do środowiska virtualenv
- Praca z projektem virtualenv
- Instalowanie pakietów w środowisku virtualenv
- Opuszczanie sesji środowiska virtualenv
- Konfigurowanie uruchamiania i dezaktywacji środowiska virtualenv
- Ustawienie zmiennej PYTHONPATH
- Instalowanie Pygame z virtualenv
- Najlepsze praktyki
- Tworzenie struktury projektu za pomocą narzędzia pyscaffold
- Rozdział 14 Porządkowanie kodu
- Kod zorganizowany i niezorganizowany
- Entropia oprogramowania: przyczyny niezorganizowanego kodu
- Jak rozpoznać niezorganizowany kod?
- Czytelność
- Niedoskonałości strukturalne
- Redundancja
- Słabości projektu
- Porządkowanie instrukcji Pythona
- Pogrupuj instrukcje importu
- Pogrupuj stałe
- Usuń niepotrzebne wiersze
- Zastosuj opisowe nazwy zmiennych
- Idiomatyczny kod Pythona
- Refaktoryzacja
- Wyodrębnianie funkcji
- Tworzenie prostego interfejsu wiersza polecenia
- Podział programów na moduły
- Uporządkowany kod
- PEP8 i pylint
- Komunikaty ostrzegawcze
- Ocena punktowa kodu
- Zrób tak, żeby działało, zrób to dobrze, zrób tak, żeby działało szybko
- Zrób tak, żeby działało
- Zrób to dobrze
- Zrób tak, żeby działało szybko
- Przykłady dobrze zorganizowanego kodu
- Najlepsze praktyki
- Kod zorganizowany i niezorganizowany
- Rozdział 15 Dekompozycja zadań programistycznych
- Dekompozycja zadań programowania jest trudna
- Proces dekompozycji zadań programowania
- Napisz historyjkę użytkownika
- Dodaj szczegóły do opisu
- Kryteria akceptacji
- Opisy przypadków użycia
- Sprawdź wymagania niefunkcjonalne
- Identyfikowanie problemów
- Niepełne informacje
- Wiedza specjalistyczna
- Zmiany istniejącego kodu
- Przewidywanie przyszłych zmian
- Wybór architektury
- Identyfikowanie komponentów programu
- Implementacja
- Inne narzędzia planowania
- Plan projektu na jednej stronie
- Śledzenie spraw
- Kanban
- Najlepsze praktyki
- Rozdział 16 Statyczne typowanie w języku Python
- Słabe strony dynamicznego typowania
- Sygnatury funkcji
- Granice wartości
- Semantyczne znaczenie typów
- Typy złożone
- Czy w Pythonie jest możliwe silniejsze typowanie?
- Asercje
- NumPy
- Bazy danych
- Integracja kodu w języku C
- Cython
- Wskazówki typowania
- mypy
- Której metody kontroli typów używać?
- Najlepsze praktyki
- Słabe strony dynamicznego typowania
- Rozdział 17 Dokumentacja
- Dla kogo piszemy dokumentację?
- Sphinx: narzędzie do tworzenia dokumentacji dla języka Python
- Konfigurowanie Sphinksa
- Pliki utworzone przez program Sphinx
- Tworzenie dokumentacji
- Budowanie dokumentacji HTML
- Budowanie dokumentacji PDF
- Budowanie dokumentacji EPUB
- Pisanie dokumentacji
- Dyrektywy
- Organizowanie dokumentów
- Przykłady kodu
- Generowanie dokumentacji na podstawie ciągów docstring
- Testy dokumentacji
- Konfigurowanie Sphinksa
- Wpisy Todo
- Tworzenie listy Todo
- Budowanie warunkowe
- Zmiana wyglądu i wrażenia
- Wpisy Todo
- Jak napisać dobrą dokumentację?
- Sekcje tekstu w dokumentacji technicznej
- Streszczenie
- Wymagania wstępne i instalacja
- Pierwsze kroki
- Receptury
- Studia przypadków
- Dokumentacja techniczna
- Dokumentacja projektowa
- Aspekty prawne
- Przykłady dobrej dokumentacji
- Sekcje tekstu w dokumentacji technicznej
- Inne narzędzia do tworzenia dokumentacji
- MkDocs
- Notatniki Jupyter
- GitBook
- Read the Docs
- pydoc
- S5
- pygments
- doctest
- PyPDF2
- pandoc
- Najlepsze praktyki
- Titel: Python dla profesjonalistów. Debugowanie, testowanie i utrzymywanie kodu
- Autor: Kristian Rother
- Originaler Titel: Pro Python Best Practices: Debugging, Testing and Maintenance
- Übersetzung: Radosław Meryk
- ISBN: 978-83-283-3803-6, 9788328338036
- Veröffentlichungsdatum: 2017-12-10
- Format: E-book
- Artikelkennung: pytpro
- Verleger: Helion