Категорії
Електронні книги
-
Бізнес та економіка
- Біткойн
- Ділова жінка
- Коучинг
- Контроль
- Електронний бізнес
- Економіка
- Фінанси
- Фондова біржа та інвестиції
- Особисті компетенції
- Комп'ютер в офісі
- Комунікація та переговори
- Малий бізнес
- Маркетинг
- Мотивація
- Мультимедійне навчання
- Нерухомість
- Переконання та НЛП
- Податки
- Соціальна політика
- Порадники
- Презентації
- Лідерство
- Зв'язки з громадськістю
- Звіти, аналізи
- Секрет
- Соціальні засоби комунікації
- Продаж
- Стартап
- Ваша кар'єра
- Управління
- Управління проектами
- Людські ресурси (HR)
-
Для дітей
-
Для молоді
-
Освіта
-
Енциклопедії, словники
-
Електронна преса
- Architektura i wnętrza
- Biznes i Ekonomia
- Будинок та сад
- Електронний бізнес
- Фінанси
- Особисті фінанси
- Бізнес
- Фотографія
- Інформатика
- Відділ кадрів та оплата праці
- Комп'ютери, Excel
- Бухгалтерія
- Культура та література
- Наукові та академічні
- Охорона навколишнього середовища
- Впливові
- Освіта
- Податки
- Подорожі
- Психологія
- Релігія
- Сільське господарство
- Ринок книг і преси
- Транспорт та спедиція
- Здоров'я та краса
-
Історія
-
Інформатика
- Офісні застосунки
- Бази даних
- Біоінформатика
- Бізнес ІТ
- CAD/CAM
- Digital Lifestyle
- DTP
- Електроніка
- Цифрова фотографія
- Комп'ютерна графіка
- Ігри
- Хакування
- Hardware
- IT w ekonomii
- Наукові пакети
- Шкільні підручники
- Основи комп'ютера
- Програмування
- Мобільне програмування
- Інтернет-сервери
- Комп'ютерні мережі
- Стартап
- Операційні системи
- Штучний інтелект
- Технологія для дітей
- Вебмайстерність
-
Інше
-
Іноземні мови
-
Культура та мистецтво
-
Шкільні читанки
-
Література
- Антології
- Балада
- Біографії та автобіографії
- Для дорослих
- Драми
- Журнали, щоденники, листи
- Епос, епопея
- Нарис
- Наукова фантастика та фантастика
- Фельєтони
- Художня література
- Гумор, сатира
- Інше
- Класичний
- Кримінальний роман
- Нехудожня література
- Художня література
- Mity i legendy
- Лауреати Нобелівської премії
- Новели
- Побутовий роман
- Okultyzm i magia
- Оповідання
- Спогади
- Подорожі
- Оповідна поезія
- Поезія
- Політика
- Науково-популярна
- Роман
- Історичний роман
- Проза
- Пригодницька
- Журналістика
- Роман-репортаж
- Romans i literatura obyczajowa
- Сенсація
- Трилер, жах
- Інтерв'ю та спогади
-
Природничі науки
-
Соціальні науки
-
Шкільні підручники
-
Науково-популярна та академічна
- Археологія
- Bibliotekoznawstwo
- Кінознавство / Теорія кіно
- Філологія
- Польська філологія
- Філософія
- Finanse i bankowość
- Географія
- Економіка
- Торгівля. Світова економіка
- Історія та археологія
- Історія мистецтва і архітектури
- Культурологія
- Мовознавство
- літературні студії
- Логістика
- Математика
- Ліки
- Гуманітарні науки
- Педагогіка
- Навчальні засоби
- Науково-популярна
- Інше
- Психологія
- Соціологія
- Театральні студії
- Богослов’я
- Економічні теорії та науки
- Transport i spedycja
- Фізичне виховання
- Zarządzanie i marketing
-
Порадники
-
Ігрові посібники
-
Професійні та спеціальні порадники
-
Юридична
- Безпека життєдіяльності
- Історія
- Дорожній кодекс. Водійські права
- Юридичні науки
- Охорона здоров'я
- Загальне, компендіум
- Академічні підручники
- Інше
- Закон про будівництво і житло
- Цивільне право
- Фінансове право
- Господарське право
- Господарське та комерційне право
- Кримінальний закон
- Кримінальне право. Кримінальні злочини. Кримінологія
- Міжнародне право
- Міжнародне та іноземне право
- Закон про охорону здоров'я
- Закон про освіту
- Податкове право
- Трудове право та законодавство про соціальне забезпечення
- Громадське, конституційне та адміністративне право
- Кодекс про шлюб і сім'ю
- Аграрне право
- Соціальне право, трудове право
- Законодавство Євросоюзу
- Промисловість
- Сільське господарство та захист навколишнього середовища
- Словники та енциклопедії
- Державні закупівлі
- Управління
-
Путівники та подорожі
- Африка
- Альбоми
- Південна Америка
- Центральна та Північна Америка
- Австралія, Нова Зеландія, Океанія
- Австрія
- Азії
- Балкани
- Близький Схід
- Болгарія
- Китай
- Хорватія
- Чеська Республіка
- Данія
- Єгипет
- Естонія
- Європа
- Франція
- Гори
- Греція
- Іспанія
- Нідерланди
- Ісландія
- Литва
- Латвія
- Mapy, Plany miast, Atlasy
- Мініпутівники
- Німеччина
- Норвегія
- Активні подорожі
- Польща
- Португалія
- Інше
- Росія
- Румунія
- Словаччина
- Словенія
- Швейцарія
- Швеція
- Світ
- Туреччина
- Україна
- Угорщина
- Велика Британія
- Італія
-
Психологія
- Філософія життя
- Kompetencje psychospołeczne
- Міжособистісне спілкування
- Mindfulness
- Загальне
- Переконання та НЛП
- Академічна психологія
- Психологія душі та розуму
- Психологія праці
- Relacje i związki
- Батьківство та дитяча психологія
- Вирішення проблем
- Інтелектуальний розвиток
- Секрет
- Сексуальність
- Спокушання
- Зовнішній вигляд та імідж
- Філософія життя
-
Релігія
-
Спорт, фітнес, дієти
-
Техніка і механіка
Аудіокниги
-
Бізнес та економіка
- Біткойн
- Ділова жінка
- Коучинг
- Контроль
- Електронний бізнес
- Економіка
- Фінанси
- Фондова біржа та інвестиції
- Особисті компетенції
- Комунікація та переговори
- Малий бізнес
- Маркетинг
- Мотивація
- Нерухомість
- Переконання та НЛП
- Податки
- Порадники
- Презентації
- Лідерство
- Зв'язки з громадськістю
- Секрет
- Соціальні засоби комунікації
- Продаж
- Стартап
- Ваша кар'єра
- Управління
- Управління проектами
- Людські ресурси (HR)
-
Для дітей
-
Для молоді
-
Освіта
-
Енциклопедії, словники
-
Історія
-
Інформатика
-
Інше
-
Іноземні мови
-
Культура та мистецтво
-
Шкільні читанки
-
Література
- Антології
- Балада
- Біографії та автобіографії
- Для дорослих
- Драми
- Журнали, щоденники, листи
- Епос, епопея
- Нарис
- Наукова фантастика та фантастика
- Фельєтони
- Художня література
- Гумор, сатира
- Інше
- Класичний
- Кримінальний роман
- Нехудожня література
- Художня література
- Mity i legendy
- Лауреати Нобелівської премії
- Новели
- Побутовий роман
- Okultyzm i magia
- Оповідання
- Спогади
- Подорожі
- Поезія
- Політика
- Науково-популярна
- Роман
- Історичний роман
- Проза
- Пригодницька
- Журналістика
- Роман-репортаж
- Romans i literatura obyczajowa
- Сенсація
- Трилер, жах
- Інтерв'ю та спогади
-
Природничі науки
-
Соціальні науки
-
Науково-популярна та академічна
-
Порадники
-
Професійні та спеціальні порадники
-
Юридична
-
Путівники та подорожі
-
Психологія
- Філософія життя
- Міжособистісне спілкування
- Mindfulness
- Загальне
- Переконання та НЛП
- Академічна психологія
- Психологія душі та розуму
- Психологія праці
- Relacje i związki
- Батьківство та дитяча психологія
- Вирішення проблем
- Інтелектуальний розвиток
- Секрет
- Сексуальність
- Спокушання
- Зовнішній вигляд та імідж
- Філософія життя
-
Релігія
-
Спорт, фітнес, дієти
-
Техніка і механіка
Відеокурси
-
Бази даних
-
Big Data
-
Biznes, ekonomia i marketing
-
Кібербезпека
-
Data Science
-
DevOps
-
Для дітей
-
Електроніка
-
Графіка / Відео / CAX
-
Ігри
-
Microsoft Office
-
Інструменти розробки
-
Програмування
-
Особистісний розвиток
-
Комп'ютерні мережі
-
Операційні системи
-
Тестування програмного забезпечення
-
Мобільні пристрої
-
UX/UI
-
Веброзробка, Web development
-
Управління
Подкасти
- Електронні книги
- Програмування
- Python
- Python dla profesjonalistów. Debugowanie, testowanie i utrzymywanie kodu
Деталі електронної книги
Python dla profesjonalistów. Debugowanie, testowanie i utrzymywanie kodu
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
- Назва: Python dla profesjonalistów. Debugowanie, testowanie i utrzymywanie kodu
- Автор: Kristian Rother
- Оригінальна назва: Pro Python Best Practices: Debugging, Testing and Maintenance
- Переклад: Radosław Meryk
- ISBN: 978-83-283-3803-6, 9788328338036
- Дата видання: 2017-12-10
- Формат: Eлектронна книга
- Ідентифікатор видання: pytpro
- Видавець: Helion