Cena Netto:
5 566.00 PLN
Brutto: 6 846.18 PLN
Terminy:
Generuj PDF

Zapisz się

Opis

Umiejętności zdobywane podczas kursu:

  • identyfikowanie błędów zarządzania pamięcią
  • obsługa komunikacji sieciowej
  • integracja aplikacji z dostarczanymi bibliotekami
  • posługiwanie się narzędziami ułatwiającymi odnajdywanie i usuwanie błędów
  • modularyzacja złożonego projektu
  • budowanie własnych bibliotek

Cel

  • stosowanie mechanizmów wydajnego programowania w języku C
  • umiejętność definiowania i obsługi złożonych struktur danych
  • budowanie własnych bibliotek i dystrybucja oprogramowania

Grupa docelowa:

Szkolenie przeznaczone jest dla osób programujących w języku C na poziomie średnio zaawansowanym. W ramach zajęć słuchacze zapoznają się z mechanizmami ładowania dynamicznego i wykorzystania bibliotek zewnętrznych. Zajęcia skupiają się na elementach które najczęściej stanowią problem w prowadzeniu projektów informatycznych oraz na operowaniu wskaźnikami. W trakcie kursu uczestnicy wykorzystują w praktyce wywołania asynchroniczne które w widoczny sposób podnoszą wydajność aplikacji.

Uwagi:

Czas trwania szkolenia - 4 dni. 
Oferujemy szkolenia w naszych ośrodkach w Warszawie, Wrocławiu, Krakowie, jak i w lokalizacjach wskazanych przez klienta. 
W celu ustalenia szczegółów prosimy o kontakt na osec@osec.pl

Wymagania:

  • umiejętność programowania w języku C na poziomie średnio zaawansowanym
  • znajomość podstawowych koncepcji związanych z obsługą protokołów sieciowych
  • biegła umiejętność obsługi wybranego środowiska IDE

Konspekt

  1. Wycieki pamięci i zaawansowane zarządzanie pamięcią
    • mechanizm wycieku pamięci i jego diagnostyka
    • prawidłowe zarządzanie pamięcią
  2. Bufory i ciągi znaków
    • różnice pomiędzy buforem a ciągiem znaków
    • operacje na buforze oraz na ciągu znaków
  3. Zaawansowane zarządzanie plikami
    • operacje asynchronicznego dostępu do plików
    • obsługa katalogów
    • blokowanie rekordów i plików
  4. Wskaźniki na funkcje i zaawansowane użycie wskaźników
    • struktury zbudowane ze wskaźników
    • przekazywanie parametrów przez wskaźniki
    • wskaźniki na funkcje i funkcje wskaźnikowe
    • patologie stosowania wskaźników
  5. Usuwanie błędów
    • debugger GDB i DDD
    • podstawowe polecenia GDB
    • sesje usuwania błędów
  6. Analiza wykorzystania pamięci - narzędzie Valgrind
    • zakres działania Valgrind
    • koszty użycia narzędzia Valgrind
    • diagnostyka wykrywania błędów alokacji pamięci
    • z użyciem Valgrind
  7. Analiza statyczna kodu - narzędzia splint
    • zakres działania narzędzia splint
    • statyczna analiza kodu
    • konwencje kodowania i ich wpływ na wyłapywanie
    • typowych błędów
    • dokumentowanie kodu z użyciem Doxygen
  8. Obsługa operacji sieciowych
    • gniazda w programowaniu
    • podstawowa obsługa operacji sieciowych
    • rozwiązywanie nazw
    • UDP i TCP jako protokoły transportu
    • wywołanie select()
  9. Obsługa bibliotek zewnętrznych
    • biblioteki statyczne i dynamiczne
    • zakres zastosowań bibliotek
    • konsolidacja własnych programów z użyciem istniejących bibliotek
  10. Dynamiczne ładowanie modułów
    • obsługa dynamicznego ładowania modułu
    • wyładowywanie modułów i obsługa ładowania na żądanie
  11. Budowa własnych bibliotek oprogramowania
    • zasady tworzenia bibliotek oprogramowania
    • rodzaje bibliotek i różnice w ich budowie
  12. Dystrybuowanie oprogramowania
    • metody dystrybucji oprogramowania
    • kompilacja statyczna i dynamiczna
    • dystrybucja własnych bibliotek
    • analiza warstwy binarnej dostarczonego oprogramowania