Kross (software)

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

  • KDevelop
  • Kexi
  • Kopete
  • Krita
  • KSpread
  • KWord
  • Plasma
  • SuperKaramba

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

  1. ^ a b http://www.kexi-project.org/wiki/wikiview/index.php?Scripting#Why_not_SIP_SWIG_ Archiviato il 24 settembre 2006 in Internet Archive. (accessed 2007-05-16)

Collegamenti esterni

  • (EN) Sito di Kross (documentazione per sviluppatori), su kross.dipe.org. URL consultato il 4 maggio 2009 (archiviato dall'url originale il 28 marzo 2008).
  • (EN) Intervista con lo sviluppatore di Kross, su dot.kde.org.
  • (EN) Kross tutorial, su techbase.kde.org.
  • (EN) aKademy 2006 conference talk on Kross, su conference2006.kde.org. URL consultato il 2 maggio 2019 (archiviato dall'url originale il 5 marzo 2016).
  • (EN) Kross Namespace Reference, su englishbreakfastnetwork.org. URL consultato il 4 maggio 2009 (archiviato dall'url originale il 3 dicembre 2008).
  Portale Software libero: accedi alle voci di Wikipedia che trattano di Software libero