Bądźmy w kontakcie

Plan Szkolenia

Wprowadzenie do systemów wbudowanych i C++

  • Przegląd architektury systemów wbudowanych
  • Wyzwania w rozwoju oprogramowania wbudowanego
  • Odpowiedniość C++ dla mikrokontrolerów i platform wbudowanych
  • Bilans między abstrakcją, wydajnością a ograniczeniami zasobów

Środowisko deweloperskie Embedded C++

  • Konfiguracja narzędzi do tworzenia aplikacji wbudowanych
  • Kompilatory, debugery i systemy budowania
  • Praca z urządzeniami docelowymi
  • Opracowywanie i wdrażanie aplikacji wbudowanych

Programowanie obiektowe dla systemów wbudowanych

  • Zasady projektowania obiektowego
  • Klasy i obiekty w środowiskach z ograniczonymi zasobami
  • Kapsułkacja i modularny design
  • Skuteczne stosowanie technik obiektowych w aplikacjach wbudowanych

Zaawansowane funkcje C++ dla rozwoju wbudowanego

  • Dziedziczenie i polimorfizm
  • Funkcje wirtualne i kwestie związane z narzutem runtime
  • Szablony i unikanie niepotrzebnego rozrostu kodu
  • Funkcje inline i optymalizacja wydajności

Zarządzanie pamięcią i optymalizacja zasobów

  • Ograniczenia pamięci w systemach wbudowanych
  • Użycie stosu i sterty jako istotne kwestie
  • Strategie dynamicznego zarządzania pamięcią
  • Unikanie fragmentacji pamięci i rozrostu kodu

Kwestie dotyczące obsługi błędów i bezpieczeństwa

  • Obsługa wyjątków w środowisku wbudowanym
  • Projektowanie niezawodnego i przewidywalnego oprogramowania
  • Techniki defensywnego programowania
  • Kwestie C++ dla systemów krytycznych dla bezpieczeństwa

Biblioteki standardowe C++ i wykorzystanie w wbudowanym środowisku

  • Wybieranie odpowiednich funkcji biblioteki standardowej
  • Minimalizowanie zużycia zasobów
  • Dostosowane biblioteki i alternatywy przyjazne dla systemów wbudowanych
  • Pisanie wydajnego i łatwego do utrzymania kodu

Start, interakcja z hardwarem i debugowanie

  • Kolejność startu aplikacji wbudowanej
  • Routine inicjalizacyjne
  • Debugowanie aplikacji C++ na sprzęcie docelowym
  • Diagnostyka problemów z wydajnością i runtime

Programowanie w czasie rzeczywistym i systemy operujące w czasie rzeczywistym

  • Fundamenty systemów czasu rzeczywistego
  • Praca z systemami RTOS (Real-Time Operating Systems)
  • Zarządzanie harmonogramem zadań i ograniczeniami czasowymi
  • Opracowywanie responsywnych i deterministycznych aplikacji

Interoperacyjność między C a C++

  • Integracja baz kodu C i C++
  • Wywoływanie bibliotek C z C++
  • Zarządzanie projektami mieszającymi języki
  • Strategie migracji z C na C++

Modelowanie obiektowe i UML

  • Stosowanie UML do projektowania oprogramowania wbudowanego
  • Modelowanie klas i komponentów systemu
  • Tłumaczenie projektów w efektywny kod wbudowany
  • Lepsza utrzymywalność poprzez ustrukturyzowane projektowanie

Warsztat praktyczny: aplikacja C++ dla systemów wbudowanych

  • Opracowywanie aplikacji wbudowanej przy użyciu C++
  • Zastosowanie technik optymalizacji i bezpieczeństwa
  • Testowanie i debugowanie na urządzeniu docelowym
  • Przegląd najlepszych praktyk i dalsze kroki

Wymagania

  • Ogólna znajomość C++
 21 godzin

Liczba uczestników


Cena za uczestnika (netto)

Opinie uczestników (5)

Propozycje terminów

Powiązane Kategorie