Kross è un framework di scripting per KDE 4, versione del K Desktop Environment. Originariamente Kross era stato progettato per KOffice, ma successivamente è divenuto il framework di scripting ufficiale per KDE 4. Kross è progettato per fornire complete possibilità di scripting per gli utenti di applicazioni KDE, con ogni linguaggio di loro scelta e per rendere facile agli sviluppatori che vogliono usare la piattaforma di KDE l'aggiunta alle proprie applicazioni del supporto a linguaggi di scripting multipli (senza che essi siano esperti di alcuno di questi linguaggi).
Il framework di scripting Kross in sé non è un linguaggio di scripting. Serve semplicemente ad aggiungere a KDE il supporto per altri linguaggi di scripting esistenti. Al momento i linguaggi supportati sono: Python, Ruby, JavaScript ed il linguaggio di programmazione Falcon. L'aggiunta di altri linguaggi di scripting è resa facile dall'architettura modulare del framework.
Kross fornisce i seguenti vantaggi rispetto ad altri approcci per aggiungere funzionalità di scripting alle applicazioni desktop o agli ambienti desktop:
- L'utente è libero di scegliere e usare il proprio linguaggio di programmazione preferito
- Lo sviluppatore dell'applicazione non ha bisogno di conoscenze specifiche riguardo ad un linguaggio di scripting in particolare
- Altri linguaggi di scripting possono essere facilmente aggiunti scrivendo un modulo/plugin per Kross
Applicazioni che usano Kross
Confronto con altri framework di scripting
SWIG: Simplified Wrapper and Interface Generator
- Al momento Kross supporta meno linguaggi di scripting.
- Kross si appoggia a Qt/KDE. Questo permette di accedere ai componenti Qt/KDE senza il bisogno di altri sforzi per integrarli[1].
- Sembra che le applicazioni che supportano Kross non richiedano altrettanto codice quanto quelle che supportano SWIG.[1]
- Con SWIG, il set di linguaggi di scripting supportati è determinato al momento della compilazione dell'applicazione: ogni linguaggio supportato deve avere del codice nell'applicazione per richiamare l'interprete del linguaggio di scripting, e/o deve avere una libreria condivisa specifica per la coppia applicazione-linguaggio. Al contrario, Kross non ha bisogno di sapere quali siano i linguaggi supportati se non al momento dell'esecuzione.
Note
Collegamenti esterni