
-
-
Koszyk jest pustySuma 0
- Kategorie
-
Nauka programowania opartego na testach. Jak pisać przejrzysty kod w kilku językach programowania

Od oprogramowania wymaga się solidności i poprawności, a równocześnie oczekuje wydajnego działania i skalowalności. Jako programista odpowiadasz za zapewnienie aplikacjom tych właśnie cech. Niezależnie od tego, jakiego języka programowania używasz, praca zgodnie z paradygmatem TDD umożliwi Ci otrzymanie testowalnego kodu o wysokiej jakości. Choć te korzyści przeważają nad niedogodnościami podejścia TDD, wielu programistów narzeka na czasochłonność, pracochłonność i sprawiającą problemy implementację programowania opartego na testach. To przewodnik dla programistów, którzy chcą stosować podejście TDD w swojej codziennej praktyce. Pokazuje, jak korzystać z programowania sterowanego testami podczas pracy w trzech różnych językach: Go, JavaScripcie i Pythonie. Dzięki tej książce zrozumiesz, w jaki sposób zastosować klasyczny paradygmat "dziel i zwyciężaj" do budowania testów jednostkowych i w efekcie radzić sobie nawet z bardzo rozbudowaną architekturą oprogramowania. Liczne przykłady o stopniowo rosnącym poziomie zaawansowania pozwolą Ci płynnie nabierać wprawy i pewności w tworzeniu testów jednostkowych, a także ich używaniu. Szybko się przekonasz, że wprowadzenie TDD do codziennej praktyki kodowania jest bardzo opłacalną decyzją: kod będzie czysty, zrozumiały, elegancki i prosty w utrzymaniu! W książce między innymi: działanie TDD w różnych językach, frameworkach testowych i koncepcjach domenowych TDD a ciągła integracja konfiguracja środowiska ciągłej integracji refaktoryzacja i przeprojektowywanie przy użyciu TDD testy jednostkowe w JavaScripcie jak TDD ułatwia pisanie czystego kodu w Go, JavaScripcie i Pythonie TDD: napisz kod, któremu można zaufać!
Wysyłka w ciągu | 24 godziny |
Kod kreskowy | |
ISBN | 978-83-283-9040-9 |
EAN | 9788328390409 |
To przewodnik dla programistów, którzy chcą stosować podejście TDD w swojej codziennej praktyce. Pokazuje, jak korzystać z programowania sterowanego testami podczas pracy w trzech różnych językach: Go, JavaScripcie i Pythonie. Dzięki tej książce zrozumiesz, w jaki sposób zastosować klasyczny paradygmat "dziel i zwyciężaj" do budowania testów jednostkowych i w efekcie radzić sobie nawet z bardzo rozbudowaną architekturą oprogramowania. Liczne przykłady o stopniowo rosnącym poziomie zaawansowania pozwolą Ci płynnie nabierać wprawy i pewności w tworzeniu testów jednostkowych, a także ich używaniu. Szybko się przekonasz, że wprowadzenie TDD do codziennej praktyki kodowania jest bardzo opłacalną decyzją: kod będzie czysty, zrozumiały, elegancki i prosty w utrzymaniu!
W książce między innymi:
działanie TDD w różnych językach, frameworkach testowych i koncepcjach domenowych
TDD a ciągła integracja
konfiguracja środowiska ciągłej integracji
refaktoryzacja i przeprojektowywanie przy użyciu TDD
testy jednostkowe w JavaScripcie
jak TDD ułatwia pisanie czystego kodu w Go, JavaScripcie i Pythonie
TDD: napisz kod, któremu można zaufać!
Przedmowa
Wstęp
Rozdział 0. Wprowadzenie i konfiguracja
Konfigurowanie środowiska programistycznego
Typowa konfiguracja
Go
JavaScript
Python
Gdzie jesteśmy?
Część I. Pierwsze kroki
Rozdział 1. Problem z pieniędzmi
"Czerwony, zielony, refaktoryzacja" - elementy konstrukcyjne TDD
Na czym polega problem?
Nasz pierwszy test z negatywnym wynikiem
Go
JavaScript
Python
Gramy w zielone
Go
JavaScript
Python
Czyszczenie
Go
JavaScript
Python
Zatwierdzanie zmian
Gdzie jesteśmy?
Go
JavaScript
Python
Rozdział 2. Wielowalutowość
Wprowadzamy euro
Go
JavaScript
Python
Stosowanie do kodu zasady DRY
Go
JavaScript
Python
Czy nie mówiliśmy przed chwilą "nie powtarzaj się"?
Dziel i zwyciężaj
Go
JavaScript
Python
Czyszczenie
Go
JavaScript
Python
Zatwierdzanie zmian
Gdzie jesteśmy?
Rozdział 3. Portfel akcji
Projektowanie następnego testu
Go
JavaScript
Python
Zatwierdzanie zmian
Gdzie jesteśmy?
Część II. Modularyzacja
Rozdział 4. Separacja zagadnień
Kod testowy i produkcyjny
Zależność jednokierunkowa
Wstrzykiwanie zależności
Pakowanie i wdrażanie
Modularyzacja
Usuwanie redundancji
Gdzie jesteśmy?
Rozdział 5. Pakiety i moduły w Go
Dzielenie kodu na pakiety
Moduły w Go
Tworzenie pakietu
Hermetyzacja
Usuwanie redundancji z testów
Zatwierdzanie zmian
Gdzie jesteśmy?
Rozdział 6. Moduły w JavaScripcie
Podział kodu na moduły
Płynne przejście na moduły JavaScriptu
CommonJS
Definicja modułu asynchronicznego (AMD)
Uniwersalna definicja modułu (UMD)
Moduły ES
Ulepszanie testów
Usuwanie redundancji z testów
Dodawanie klasy testowej i metod testowych
Automatyczne wykrywanie i uruchamianie testów
Generowanie danych wyjściowych po pomyślnym uruchomieniu testów
Uruchamianie wszystkich testów, nawet jeśli któraś asercja testowa się nie powiedzie
Zatwierdzanie zmian
Gdzie jesteśmy?
Rozdział 7. Moduły w Pythonie
Podział kodu na moduły
Usuwanie redundancji z testów
Zatwierdzanie zmian
Gdzie jesteśmy?
Część III. Funkcjonalności i zmiany projektowe
Rozdział 8. Ewaluacja portfela
Mieszanie pieniędzy
Go
JavaScript
Python
Zatwierdzanie zmian
Gdzie jesteśmy?
Rozdział 9. Waluty, wszędzie waluty
Szukamy (mapy) skrótów
Go
JavaScript
Python
Zatwierdzanie zmian
Gdzie jesteśmy?
Rozdział 10. Obsługa błędów
Lista życzeń dla obsługi błędów
Go
JavaScript
Python
Zatwierdzanie zmian
Gdzie jesteśmy?
Rozdział 11. Bankowość na cenzurowanym
Wstrzykiwanie zależności
Podsumowanie
Go
JavaScript
Python
Zatwierdzanie zmian
Gdzie jesteśmy?
Część IV. Ostatnie poprawki
Rozdział 12. Kolejność testów
Zmiana kursów wymiany walut
Go
JavaScript
Python
Zatwierdzanie zmian
Gdzie jesteśmy?
Rozdział 13. Ciągła integracja
Podstawowe pojęcia
System kontroli wersji
Serwer i agent kompilacji
Repozytorium artefaktów
Środowisko wdrażania
Zastosowanie w praktyce
Utworzenie konta w GitHubie
Weryfikacja konta w GitHubie
Wysłanie repozytorium kodu do GitHuba
Przygotowanie dla skryptów kompilacji CI
Go
JavaScript
Python
Zatwierdzanie zmian
Gdzie jesteśmy?
Rozdział 14. Retrospektywa
Profil
Złożoność cyklomatyczna
Powiązania
Zwięzłość
Przeznaczenie
Spójność
Kompletność
Proces
Zastosowanie w praktyce
Go
JavaScript
Python
Czy TDD jest martwe?
Gdzie jesteśmy?
Dodatek A. Konfiguracja środowiska programistycznego
Dodatek B. Krótka historia trzech języków
Dodatek C. Podziękowania
Saleem Siddiqui jest programistą, autorem książek i znakomitym dydaktykiem programowania. Zdobył doświadczenie w tworzeniu oprogramowania dla służby zdrowia, handlu detalicznego, a także sektora rządowego i farmaceutycznego. Przekonuje, że dzięki uważnemu wdrażaniu metodyki TDD można uniknąć wielu kosztownych błędów.
Polub nas na Facebooku