Definición: ¿Qué significa Java Card?
Java Card es una tecnología Java utilizada para aplicaciones pequeñas, conocidas como applets, en dispositivos con recursos extremadamente limitados. Esta tecnología Java se utiliza en tarjetas de módulo de identidad de abonado (SIM) de teléfonos móviles, tarjetas financieras, tarjetas de identificación de atención médica, boletos inteligentes y muchos otros dispositivos.
Al igual que otras aplicaciones creadas con el lenguaje de programación Java, los subprogramas de Java Card cuentan con capacidades de escribir una vez y ejecutar en cualquier lugar. Esto significa que se ejecutarán en cualquier tarjeta inteligente con tecnología Java Card, independientemente del fabricante de la tarjeta o del hardware que se utilice, siempre que esté presente la máquina virtual Java (JVM) necesaria.
Techinfo explica la tarjeta Java
La tecnología Java Card se utiliza ampliamente, y los fabricantes de Java Card representan más del 90 por ciento de toda la industria de tarjetas inteligentes.
Debido a que los subprogramas deben ejecutarse en entornos tan restringidos, el código de bytes de la tarjeta Java es comprensiblemente pequeño. De hecho, solo se utiliza un subconjunto de toda la interfaz de programación de aplicaciones (API) del lenguaje de programación Java para escribir el código fuente de un subprograma Java Card. Una vez que el código fuente se escribe y se guarda como un archivo .java, se compila en un archivo .class, como en una aplicación Java normal. Sin embargo, el proceso de desarrollo no termina ahí. El archivo .class debe convertirse en un subprograma convertido más pequeño o un archivo .cap. Después de la conversión, el archivo .cap se puede verificar y finalmente instalar en la tarjeta.
En la mayoría de los casos, el subprograma final no podrá funcionar por sí solo. Más bien, los elementos de una aplicación Java Card completa generalmente consisten en una aplicación de back-end, una aplicación de host, un dispositivo de interfaz y el subprograma en la tarjeta. Como ejemplo simple, la aplicación de back-end puede ser un programa que se conecta a una base de datos o la aplicación de host (una aplicación que se ejecuta en un teléfono celular) o el dispositivo de interfaz (el teléfono celular).