Элементы разработки программного обеспечения на Python
Товар
- 0 раз купили
- 5 оценка
- 2 осталось
- 4 отзыва
Доставка
Характеристики
Описание
Elementy inżynierii oprogramowania w Pythonie
Jakub Walczak
Zdobądź ostrogi programisty w Pythonie!
Python jest językiem, którego powszechnie używa się w wielu obszarach: od programowania gier, przez aplikacje webowe, po systemy analizy danych. Nic więc dziwnego, że cieszy się ogromną popularnością i jest dodatkowo wspierany przez liczną społeczność programistów, projektantów i sympatyków, którzy go rozwijają i rozszerzają.
Do grona osób aktywnie korzystających z tego języka z pewnością należy Jakub Walczak, który w książce poświęconej Pythonowi i inżynierii oprogramowania wprowadza do jego ekosystemu. Dzięki jej lekturze czytelnicy poznają ideę środowisk wirtualnych, sposoby interakcji z interpreterem czy zasady podziału projektu na moduły i pakiety. Adepci sztuki programowania znajdą tu wprowadzenie do mechanizmów pakietu pytest, który zdecydowanie ułatwia pisanie i wykonywanie testów jednostkowych. Opanują również takie zagadnienia jak klasy i obiekty, a także zaawansowane aspekty programowania obiektowego, w tym metaklasy, dziedziczenie i emulowanie szczególnych zachowań obiektów
Autor zadbał o klarowną strukturę podręcznika, który składa się z dwunastu uporządkowanych rozdziałów. Zawarta w nich treść została uzupełniona dodatkowymi wyjaśnieniami, wskazówkami i podsumowaniami, co ułatwia przyswojenie omawianego materiału.
- Organizacja środowiska pracy
- Organizacja projektu
- Wstęp do programowania zorientowanego obiektowo
- Deskryptory
- Dziedziczenie
- Mechanizm obsługi wyjątków
- Metody specjalne klas
- Dekoratory
- Serializacja i deserializacja
- Testy jednostkowe z użyciem biblioteki pytest
- Wytyczne dotyczące stylu
Python od A do Z!
O autorze:
Jakub Walczak — rocznik 1994, doktorant w dyscyplinie informatyki technicznej i telekomunikacji, od 2019 roku asystent w grupie pracowników badawczo-dydaktycznych na Politechnice Łódzkiej i deweloper oprogramowania naukowego w CMCC Foundation. Od kilku lat entuzjasta Pythona, aktywnie zgłębiający jego tajniki zarówno w pracy zawodowej, jak i poza nią. Miłośnik podróży, kultury hiszpańskiej i słodyczy. W wolnych chwilach mól książkowy i amator sportów.
Spis treści:
Przedmowa
Wstęp
1. Python - krótka charakterystyka
2. Organizacja środowiska pracy
- 2.1. Instalacja Pythona
- 2.2. Przygotowanie środowiska wirtualnego
- 2.3. Środowiska pracy w ekosystemie Pythona
2.3.1. Powłoka Pythona
2.3.2. Edytor tekstu
2.3.3. Interaktywny Python
2.3.4. Zintegrowane środowisko deweloperskie
3. Organizacja projektu
- 3.1. Moduły, pakiety i przestrzenie nazw
3.1.1. Moduły
3.1.2. Pakiety
3.1.3. Przestrzenie nazw
- 3.2. Importowanie modułów
3.2.1. Importowanie pośrednie
3.2.2. Importowanie bezpośrednie
3.2.3. Importowanie z użyciem symbolu wieloznacznego
3.2.4. Importowanie z wykorzystaniem aliasu
- 3.3. Budowanie i publikowanie pakietu
3.3.1. Plik textpyproject.toml
3.3.2. Określanie plików składowych biblioteki
3.3.3. Dynamiczne określanie metadanych projektu
3.3.4. Załączanie plików zasobów
3.3.5. Publikowanie projektu
- 3.4. Jawne typowanie zmiennych i funkcji
4. Wstęp do programowania zorientowanego obiektowo
- 4.1. Pojęcie klasy i obiektu
- 4.2. Paradygmat programowania obiektowego
- 4.3. Definiowanie klas i tworzenie obiektów
- 4.4. Destrukcja i finalizowanie obiektu
- 4.5. Pola i metody niepubliczne
- 4.6. Atrybuty i metody klasowe
- 4.7. Metody statyczne
5. Dekoratory
- 5.1. Funkcje zagnieżdżone i zmienne nielokalne
- 5.2. Domknięcie funkcji
- 5.3. Dekoratory nieparametryczne
- 5.4. Dekoratory parametryczne
- 5.5. Atrybuty specjalne funkcji dekorowanych
6. Deskryptory
- 6.1. Protokół deskryptora
- 6.2. Przekazywanie nazwy atrybutu do deskryptora
- 6.3. Rodzaje deskryptorów
- 6.4. Deskryptor własności
7. Dziedziczenie
- 7.1. Dziedziczenie wielorakie
- 7.2. Kolejność dostępu
- 7.3. Przeszukiwanie grafu dziedziczenia
- 7.4. Metaklasy
- 7.5. Klasy szczególne
7.5.1. Klasa abstrakcyjna
7.5.2. Klasa wyliczająca
8. Mechanizm obsługi wyjątków
- 8.1. Podział wyjątków
- 8.2. Wzbudzanie wyjątku
- 8.3. Obsługa wyjątków
9. Metody specjalne klas
- 9.1. Reprezentacja tekstowa obiektu
- 9.2. Metody porównywania
- 9.3. Wartość skrótu obiektu
- 9.4. Metody specjalne kolekcji
9.4.1. Abstrakcyjne metody dla kolekcji sekwencyjnych
9.4.2. Abstrakcyjne metody dla kolekcji o charakterze zbiorów
9.4.3. Abstrakcyjne metody dla kolekcji mapujących
9.4.4. Emulowanie zachowania iteratora
- 9.5. Metody operatorów arytmetycznych
- 9.6. Sprawdzanie wartości logicznej obiektu
- 9.7. Emulowanie zachowania funkcyjnego obiektu
- 9.8. Metody menedżera kontekstu
10. Serializacja i deserializacja
- 10.1. Prosty format tekstowy
- 10.2. Formaty słownikowe
- 10.3. Piklowanie obiektów
- 10.4. Inne mechanizmy serializacji
11. Testy jednostkowe z użyciem biblioteki pytest
- 11.1. Funkcje testujące. Asercje
- 11.2. Parametryzacja testów
- 11.3. Obiekty trwałe w testach
- 11.4. Anotacja testów
11.4.1. Oznaczanie testów do pominięcia
11.4.2. Anotacja warunkowego pominięcia testów
11.4.3. Oznaczanie testów celowo niezaliczonych
11.4.4. Własne markery testów
12. Wytyczne dotyczące stylu
- 12.1. Zalecenia ogólne
- 12.2. Zalecenia dotyczące nazewnictwa
- 12.3. Zalecenia dotyczące struktury kodu
- 12.4. Zalecenia dotyczące importowania
- 12.5. Zalecenia dotyczące logiki
- 12.6. Zalecenia dotyczące testów jednostkowych
- 12.7. Zalecenia dotyczące formatowania kodu
Bibliografia
Skorowidz
Гарантии
Гарантии
Мы работаем по договору оферты и предоставляем все необходимые документы.
Лёгкий возврат
Если товар не подошёл или не соответсвует описанию, мы поможем вернуть его.
Безопасная оплата
Банковской картой, электронными деньгами, наличными в офисе или на расчётный счёт.