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
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).
V · D · M | |||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Software Compilation | KDE 1 · KDE 2 · KDE 3 · KDE SC 4 | ![]() | |||||||||||||||
Workspaces | KDM · KWin · Plasma | ||||||||||||||||
Applicazioni |
| ||||||||||||||||
Piattaforma | Akonadi · Decibel · Flake · KConfig XT · KJS · KDOM · KHTML · KIO · Kiosk · KIPI · KParts · Kross · KSVG · KWin · Nepomuk · Oxygen · Phonon · Solid · Sonnet · Soprano · Strigi · ThreadWeaver · XMLGUI | ||||||||||||||||
Moduli | Calligra Suite · KDELibs · kdebase · KDE Accessibility Project · Kdeadmin · Kdeartwork · kdebindings · KDE Education Project · Extragear · Kdegames · Kdegraphics · Kdemultimedia · kdenetwork · kdepim · Kdepimlibs · kdeplasma-addons · kdesdk · Kdetoys · kdeutils · kdewebdev · KOffice | ||||||||||||||||
Comunità | KDE e.V. · Akademy · KDE.News · Konqi · Matthias Ettrich · Cornelius Schumacher |
![](http://upload.wikimedia.org/wikipedia/commons/thumb/1/12/Nuvola_apps_emacs.svg/25px-Nuvola_apps_emacs.svg.png)