Kross es un marco de scripting para KDE Frameworks . Kross fue diseñado originalmente para su uso en KOffice, pero finalmente se convirtió en el marco de scripting oficial en KDE Software Compilation 4 antes de ser abandonado en Frameworks 6. [2] El marco de scripting Kross no es un lenguaje de scripting en sí mismo; es una interfaz para que los desarrolladores admitan scripting especificando funciones, que el usuario luego escribirá usando un lenguaje que Kross admita. Actualmente admite Python , Ruby , JavaScript y el lenguaje de programación Falcon. Se puede agregar compatibilidad con otros lenguajes con módulos.
Comparación con otros marcos de scripting
SWIG: Generador de interfaces y envoltorios simplificado
- Actualmente, Kross tiene menos lenguajes de script soportados.
- Kross está construido sobre Qt/KDE. Esto permite el acceso a elementos de Qt/KDE sin necesidad de un esfuerzo adicional para encapsularlos. [3]
- Las aplicaciones compatibles con Kross no requieren tanto código como las que admiten SWIG. [3]
- Con SWIG, el conjunto de lenguajes de scripting admitidos se determina al momento de compilar la aplicación: cada lenguaje admitido debe tener código en la aplicación para invocar al intérprete de ese lenguaje y/o tener una biblioteca compartida específica para ese par aplicación-idioma, mientras que Kross no necesita saberlo hasta el tiempo de ejecución.
Script de Apple
En comparación con la arquitectura de scripting abierto (OSA) de AppleScript:
- OSA se puede utilizar con IPC ( eventos de Apple ), lo que permite que un script esté en un proceso separado, mientras que los scripts de Kross siempre se ejecutan en el mismo proceso que la aplicación principal. En términos prácticos, el uso de IPC permite que un script interactúe con varias aplicaciones que ya se están ejecutando; Kross no lo hace.
- (IPC no es técnicamente necesario para que un script acceda al código de muchas aplicaciones a la vez: un script puede vincularse con formularios de biblioteca de esas aplicaciones, como las bibliotecas producidas por SWIG).
- Mientras que Kross permite al programador escribir scripts en el lenguaje de su elección, AppleScript es un lenguaje determinado, aunque puede ser llamado desde otros lenguajes (de scripting).
- Kross siempre requiere que se agregue código a la aplicación explícitamente para Kross, mientras que muchas aplicaciones macOS tienen capacidad de scripting básica solo por su elección del kit de herramientas GUI ( Cocoa ) (ver AppleScript en macOS). ( Dogtail y otras herramientas de automatización/prueba de GUI también tienen esta propiedad). "Capacidad de scripting básica" aquí significa al menos poder hacer clic en botones y menús y acceder a la información proporcionada al software de accesibilidad , como los lectores de pantalla .
Actualmente, Kross no tiene ninguna disposición para ejecutar scripts no confiables, es decir, no permite restringir lo que los scripts pueden hacer. El desarrollador de Kross, Sauer [4], sugiere utilizar un lenguaje con un buen soporte de sandbox (como por ejemplo mediante el uso del complemento experimental de Java) o utilizar enfoques para aumentar la confianza en los scripts, como por ejemplo mediante el uso de scripts firmados. [5]
Aplicaciones que utilizan Kross
Referencias
- ^ ab "Tags", Kross , 4 de mayo de 2024 , consultado el 27 de agosto de 2024
- ^ "Kross", KDE Frameworks , consultado el 27 de agosto de 2024
- ^ ab "?". Archivado desde el original el 24 de septiembre de 2006 . Consultado el 16 de mayo de 2007 .
- ^ El camino hacia KDE 4: Nuevas tecnologías de KOffice
- ^ "?". Archivado desde el original el 24 de septiembre de 2006.
Enlaces externos
- Página de inicio de Kross (documentación para desarrolladores)
- Entrevista con el desarrollador de Kross
- Tutorial de Kross
- Charla en la conferencia de aKademy 2006 sobre Kross.
- Referencia del espacio de nombres Kross