| Tytuł: | Narzędzia wspomagające pracę w złożonych projektach. |
| Kod: | ccpp-C++ Tools |
| Kategoria: | C i C++ |
| Forma: | 30% wykłady / 70% warsztaty |
| Czas trwania: | 3 dni |
| Odbiorcy: | developerzy |
| Zapisy: |
Indywidualne zamówienie i dopasowanie dla grupy. |
| Logistyka: |
W siedzibie klienta lub w innym dowolnym miejscu. |
Szkolenie przedstawia zbiór narzędzi i dobrych praktyk w znacznym stopniu usprawniających pracę w dużych i małych projektach.
Sprawność podnoszona jest w dwóch wymiarach: szybkości pracy z kodem oraz jakości i poprawności dostarczanego kodu.
Uczestnicy zdobywają wiedzę w oparciu o zadania co umożliwia właściwie ntachmiastowe wykorzystanie omawianych elementów w codziennej pracy.
Szkolenie przeznaczone jest dla programistów (głównie C++) i integratorów pracujących w projektach o dużej złożoności. Zdobyta wiedza przekłada się w bezpośredni sposób na komfort pracy z kodem, jakość dostarczanego kodu oraz ciągły nadzór nad poprawnością i sprawnością kodu.
Wyróżniki szkolenia
- Szkolenie kładzie szczególny nacisk na jakość i poprawność kodu
- Zdobyta wiedza może zostać wdrożona właściwie „od ręki”
- Nauka w oparciu o przykłady
Program Szkolenia
Program jest ramą w jakiej możemy się poruszać merytorycznie - program dla konkretnego szkolenia dedykowanego ustalamy z grupą na podstawie analizy przed-szkoleniowej.-
Build system – poprawna organizacja środowiska budowania- Repozytorium
- Zależności pomiędzy komponentami
- Makefile/CMake/Autotools (do wyboru)
- Podstawowa składnia
- Definiowanie reguł prostych i automatycznych
- Definiowanie zależności „małych” i „dużych”
- Clean lokalny i całościowy
- Podstawowa składnia
- Repozytorium
-
CI – Contineous Integration – czym jest i jak używać- Przedstawienie koncepcji CI
- Co to jest CI: cechy i korzyści
- Znaczenie CI w dużych i małych projektach
- Ciągła integracja jako kompleksowy proces
- Ciągła integracja jako kompleksowy proces
- Co to jest CI: cechy i korzyści
- Jenkins overview
- Jenkins a Hudson
- Wymagania
- Instalacja i konfiguracja
- Dostęp i uprawnienia
- Dobre praktyki i ciekawostki
- Kopie zapasowe
- Narzędzia towarzyszące
- Pluginy
- Zestaw absolutnie podstawowy
- Pluginy rozwiązujące konkretne problemy
- Zestaw absolutnie podstawowy
- Jenkins a Hudson
- Przedstawienie koncepcji CI
-
Testowanie kodu C++- GTest framework
- API – podstawowe API testów jednostkowych/modułowych
- GMock – jak szybko i skutecznie implementować zaślepki
- LCOV – badanie pokrycia testowanego kodu
- API – podstawowe API testów jednostkowych/modułowych
- Integracja testów w CI
- GTest framework
-
Statyczna analiza kodu- Pojęcie i znaczenie statycznej analizy kodu
- Coding rules – znaczenie zbioru zasad i dobrych praktyk na rzecz poprawności i jednolitości kodu
- Cppcheck – automat do sprawdzania poprawności kodu bez jego uruchamiania
- CPD – wszystko na temat powielania tego samego kodu
- CCCC – „lokalny” stopień złożoności kodu
- Integracja narzędzi statycznej analizy kodu w CI
- Code review – obowiązkowa część procesu dostarczania kodu
- Pojęcie i znaczenie statycznej analizy kodu
Pobierz program w formacie PDF