Passa ai contenuti

Dettagli

📰 Titolo: Guida pratica all’integrazione di C++ e Python con Boost
📃 Format: Workshop IN PRESENZA
🆙 Livello: Intermedio
🎙 Chi: Gianni Valenti
🗓 Quando: Mercoledì 16 novembre dalle ore 18.30 alle 22.00
💰 Quanto: L'accesso è gratuito, apericena compreso
📍Dove: Develer, via S. Quirico 233/2 Campi Bisenzio (FI)

Abstract
Boost Python è una libreria Open Source che fornisce un’interfaccia semplice e concisa per collegare classi e funzioni C++ a Python.
Durante il workshop verrà presentato Boost Python e le funzionalità che offre per esporre codice C++ al Python. Dopo costruiremo insieme un modulo Python in cui i metodi di una classe C++ sono invocati dal Python. Faremo un’analisi del lifetime degli oggetti C++ quando vengono istanziati in Python, confrontandoli con gli oggetti Python nativi. Successivamente, andremo a definire dei convertitori custom da tipi C++ verso tipi Python e viceversa. Infine testeremo insieme alcune tecniche per ottimizzare il passaggio degli oggetti minimizzando le copie in memoria.

Speaker
Gianni è un ingegnere elettronico, appassionato di software e programmazione fin dai tempi del Commodore 64. Esperto di FPGA, C e C++, ha lavorato per più di dieci anni allo sviluppo di elettronica digitale e software nel campo della computer vision. È arrivato in Develer da circa un anno e mezzo e si occupa di sviluppo in C++ e Qt.

Programma

  • Introduzione a Boost e Boost Python
  • Alternative: ctypes e cyton
  • Esposizione di una classe C++ verso Python
  • Lifetime degli oggetti C++
  • Conversione da tipi C++ a tipi Python

Obiettivi della sessione
Come creare un modulo Python utilizzando la libreria Boost Python per integrare codice C++, con particolare attenzione alla gestione della memoria e alla conversione tra tipi.

Requisiti per la partecipazione
- Conoscenza base del linguaggio di programmazione Python
- Conoscenza base del linguaggio di programmazione C++
- Client Git
- Visual Studio Code (link)
- Docker (link)
- Windows Subsystem for Linux versione 2 (solo per gli utenti windows link con le istruzioni qui)

Argomenti correlati

C & C++
Open Source Python
Python
Computer Programming
Python Web Development

Potresti anche apprezzare