Contattataci

Struttura del corso

Introduzione ai sistemi embedded e al C++

  • Panoramica sull'architettura dei sistemi embedded
  • Sfide dello sviluppo software embedded
  • Adeguatezza del C++ per microcontrollori e piattaforme embedded
  • Bilanciamento tra astrazione, prestazioni e vincoli di risorse

Ambiente di sviluppo C++ embedded

  • Configurazione della toolchain per lo sviluppo embedded
  • Compilatori, debugger e sistemi di build
  • Lavoro con dispositivi di destinazione
  • Sviluppo e distribuzione di applicazioni embedded

Programmazione orientata agli oggetti per sistemi embedded

  • Principi della progettazione orientata agli oggetti
  • Classi e oggetti in ambienti con risorse limitate
  • Incapsulamento e progettazione modulare
  • Applicazione efficace delle tecniche orientate agli oggetti nelle applicazioni embedded

Funzionalità avanzate di C++ per lo sviluppo embedded

  • Ereditarietà e polimorfismo
  • Funzioni virtuali e considerazioni sugli overhead di runtime
  • Template ed evitamento dell'espansione non necessaria del codice
  • Funzioni inline e ottimizzazione delle prestazioni

Gestione della memoria e ottimizzazione delle risorse

  • Vincoli di memoria nei sistemi embedded
  • Considerazioni sull'utilizzo di stack e heap
  • Strategie di gestione dinamica della memoria
  • Evitare la frammentazione della memoria e l'aumento non necessario del codice

Gestione degli errori e considerazioni sulla sicurezza

  • Gestione delle eccezioni in ambienti embedded
  • Progettazione di software affidabile e prevedibile
  • Technique di programmazione difensiva
  • Considerazioni C++ per sistemi critici per la sicurezza

Biblioteche standard C++ e utilizzo embedded

  • Selezione delle funzionalità appropriate della libreria standard
  • Minimizzazione dell'utilizzo delle risorse
  • Librerie personalizzate e alternative adatte a embedded
  • Scrittura di codice efficiente e manutenibile

Avvio, interazione con l'hardware e debug

  • Sequenza di avvio delle applicazioni embedded
  • Routine di inizializzazione
  • Debug di applicazioni C++ sull'hardware di destinazione
  • Diagnosi di problemi di prestazioni e runtime

Programmazione in tempo reale e sistemi operativi

  • Fondamenti dei sistemi in tempo reale
  • Lavoro con i sistemi operativi in tempo reale (RTOS)
  • Pianificazione delle attività e vincoli temporali
  • Sviluppo di applicazioni reattive e deterministiche

Interoperabilità C e C++

  • Integrazione di codebase C e C++
  • Chiamata di librerie C da C++
  • Gestione di progetti embedded misti (multi-linguaggio)
  • Strategie di migrazione da C a C++

Modellazione orientata agli oggetti e UML

  • Applicazione di UML per la progettazione di software embedded
  • Modellazione di classi e componenti di sistema
  • Traduzione dei progetti in codice embedded efficiente
  • Miglioramento della manutenibilità attraverso una progettazione strutturata

Seminaro pratico su applicazioni C++ embedded

  • Sviluppo di un'applicazione embedded utilizzando C++
  • Applicazione di tecniche di ottimizzazione e sicurezza
  • Test e debug su un dispositivo di destinazione
  • Revisione delle migliori pratiche e prossimi passi

Requisiti

  • Una conoscenza generale di C++
 21 ore

Numero di Partecipanti


Prezzo per partecipante

Recensioni (2)

Corsi in Arrivo

Categorie relative