Un linguaggio per domarli tutti: applicazioni full stack con librerie native in Kotlin Multiplatform

Ouakani, Sohaib (2026) Un linguaggio per domarli tutti: applicazioni full stack con librerie native in Kotlin Multiplatform. [Laurea], Università di Bologna, Corso di Studio in Ingegneria e scienze informatiche [L-DM270] - Cesena
Documenti full-text disponibili:
[thumbnail of Thesis] Documento PDF (Thesis)
Disponibile con Licenza: Creative Commons: Attribuzione - Non commerciale - Condividi allo stesso modo 4.0 (CC BY-NC-SA 4.0)

Download (530kB)

Abstract

In contesti industriali legati a ingegneria e simulazione, lo stack software è spesso eterogeneo: le librerie che implementano standard tecnici sono scritte in C o C++, mentre i componenti applicativi di alto livello usano linguaggi diversi, causando duplicazione di codice e costi di manutenzione crescenti. Questa tesi affronta tale problema progettando e sviluppando un applicativo full stack realizzato interamente in Kotlin per la gestione e la simulazione di modelli nel formato FMU (Functional Mock-up Unit), definito dallo standard FMI (Functional Mock-up Interface) per l’interscambio di modelli di simulazione, integrando la libreria nativa FMILib scritta in C. Il sistema adotta un’architettura client-server modulare: un nucleo di logica di dominio per il ciclo di vita degli FMU, un backend che espone le funzionalità tramite API REST, e un frontend Compose Multiplatform per configurare simulazioni e visualizzarne i risultati. L’interoperabilità con FMILib è realizzata tramite cinterop di Kotlin/Native, mentre Kotlin Multiplatform condivide la logica applicativa tra Linux x64, macOS ARM64 e Windows x64, producendo eseguibili nativi autonomi. Per macOS ARM64 è stata sviluppata una pipeline che ricompila gli FMU privi di binari per Apple Silicon a partire dai sorgenti C distribuiti. Il sistema è stato validato tramite test unitari e di integrazione eseguiti su tutte le piattaforme target in una pipeline di integrazione continua, confermando la correttezza funzionale e la portabilità del sistema. Il lavoro dimostra la fattibilità di un approccio monolinguaggio per applicativi che interagiscono con librerie native, evidenziando anche i limiti attuali dell’ecosistema Kotlin/Native che ne condizionano la maturità per un'adozione industriale più ampia.

Abstract
Tipologia del documento
Tesi di laurea (Laurea)
Autore della tesi
Ouakani, Sohaib
Relatore della tesi
Correlatore della tesi
Scuola
Corso di studio
Ordinamento Cds
DM270
Parole chiave
FMI,FMU,Kotlin Multiplatform,Cinterop,Co-simulazione,Full stack monolinguaggio,Kotlin/Native
Data di discussione della Tesi
16 Luglio 2026
URI

Altri metadati

Statistica sui download

Gestione del documento: Visualizza il documento

^