Ocena:

Książka oferuje kompleksowe wprowadzenie do programowania sterowanego testami (TDD) w C++, łącząc teorię z praktycznymi ćwiczeniami i przykładami kodu, głównie przy użyciu frameworków Google Test i Google Mock. Została dobrze przyjęta ze względu na swoją przejrzystość, informacyjny charakter i skuteczne podejście do nauczania TDD, dzięki czemu jest odpowiednia dla początkujących lub programistów przechodzących z innych języków do C++. Spotyka się jednak z krytyką ze względu na złożoność konfiguracji i drobne problemy ze spójnością.
Zalety:Zawiera praktyczne i przydatne wskazówki dotyczące skutecznego testowania jednostkowego i TDD w C++.
Wady:Przejrzyste wyjaśnienia i styl pisania, dzięki czemu koncepcje są przystępne, szczególnie dla początkujących.
(na podstawie 30 opinii czytelników)
Modern C++ Programming with Test-Driven Development: Code Better, Sleep Better
Jeśli programujesz w C++, zostałeś zaniedbany. Programowanie sterowane testami (TDD) to nowoczesna praktyka tworzenia oprogramowania, która może radykalnie zmniejszyć liczbę defektów w systemach, stworzyć łatwiejszy w utrzymaniu kod i dać ci pewność, że możesz zmienić swoje oprogramowanie, aby sprostać zmieniającym się potrzebom. Jednak programiści C++ byli ignorowani przez osoby promujące TDD - aż do teraz. W tej książce Jeff Langr udziela praktycznych lekcji na temat wyzwań i korzyści związanych z wykonywaniem TDD w C++.
Modern C++ Programming With Test-Driven Development, jedyne kompleksowe podejście do TDD w C++, dostarcza wszystkiego, co musisz wiedzieć o TDD oraz wyzwaniach i korzyściach płynących z wdrożenia go w systemach C++. Wiele szczegółowych przykładów kodu prowadzi krok po kroku od podstaw TDD do zaawansowanych koncepcji. Jako doświadczony programista C++ już piszesz wysokiej jakości kod i ciężko pracujesz, aby utrzymać jego jakość. To nie musi być takie trudne.
Z tej książki dowiesz się:
⬤ Jak używać TDD do ulepszania starszych systemów C++.
⬤ Jak identyfikować i radzić sobie z kłopotliwymi zależnościami systemowymi.
⬤ jak wykonywać wstrzykiwanie zależności, co jest szczególnie trudne w C++.
⬤ jak korzystać z narzędzi testowych dla C++, które wspomagają TDD.
⬤ nowe funkcje C++11, które ułatwiają TDD.
Rozwijając swoje umiejętności w zakresie TDD, dowiesz się, jak sprawić, by ogromny system C++ nie stał się z czasem bałaganem projektowym, a także poznasz konkretne problemy C++, których należy unikać. Dowiesz się, jak zapobiec sytuacji, w której testy stają się obciążeniem konserwacyjnym i jak myśleć w TDD bez rezygnowania z ciężko zdobytych umiejętności C++. Wreszcie, zobaczysz, jak rozwijać i podtrzymywać TDD w swoim zespole.
Niezależnie od tego, czy jesteś kompletnym nowicjuszem w testowaniu jednostkowym, czy doświadczonym testerem, ta książka doprowadzi Cię do mistrzostwa w programowaniu sterowanym testami w C++.
Czego potrzebujesz
⬤ Kompilator C++ działający pod Windows lub Linux, najlepiej taki, który obsługuje C++11. Przykłady przedstawione w książce zostały zbudowane pod gcc 4. 7. 2.
⬤ Google Mock 1. 6 (do pobrania za darmo; zawiera również Google Test) lub alternatywne narzędzie do testowania jednostkowego C++. Większość przykładów w książce została napisana dla Google Mock, ale nie jest trudno przetłumaczyć je na wybrane narzędzie.
⬤ Dobry edytor programistyczny lub IDE.
⬤ Najlepiej cmake. Oczywiście można też użyć własnego preferowanego make. Pliki CMakeLists. txt są dostarczane dla każdego projektu. Podane przykłady zostały zbudowane przy użyciu cmake w wersji 2. 8. 9.
⬤ Różne swobodnie dostępne biblioteki innych firm są używane jako podstawa przykładów w książce. Należą do nich:
⬤ cURL.
⬤ JsonCpp.
⬤ Boost (filesystem, date_time/gregorian, algorithm, assign)
Kilka przykładów używa nagłówków/bibliotek boost. Tylko jeden przykład używa cURL i JsonCpp.