Saltar al contenido principal

Java

El paquete de Java lee la misma configuración .tdc y, con la misma semilla, produce la misma salida que las implementaciones de TypeScript, Python, C# y Rust: la misma garantía entre lenguajes.

Cómo obtenerlo

Una sola dependencia, desde Maven Central:

<dependency>
<groupId>io.github.nickliapin</groupId>
<artifactId>tdcv2</artifactId>
<version>0.1.7</version>
</dependency>

Con Gradle, en build.gradle.kts:

implementation("io.github.nickliapin:tdcv2:0.1.7")

Los paquetes de datos iniciales viajan dentro del jar, así que esto funciona sin instalar nada más.

El panorama completo, incluido el jar aparte para la línea de comandos, está en Instalación: Maven no tiene equivalente del bin de npm, así que la línea de comandos se distribuye como su propio artefacto.

Cómo usarlo

var data = new TDC("users.tdc");
System.out.println(data.toString());

for (var row : data.iterate()) {
System.out.println(row.get("Gender"));
}

Los nombres de los métodos son un espejo de la API de TypeScript.

Un valor sin configuración

Quick sortea un solo valor desde los mismos paquetes de datos que lee una configuración: sin archivo, sin <env>, una llamada.

import io.github.nickliapin.tdc.quick.Quick;

Quick tdc = Quick.tdc();

tdc.get("person.lastName"); // Jones
tdc.get("usa.docs.ssn"); // 699209702, con sus dígitos de control reales
tdc.many("person.lastName", 5); // cinco de ellos
Quick.seeded("demo").locale("ru").get("person.lastName"); // fijado y en ruso

Aquí la dirección es una cadena, mientras que TypeScript, Python y C# la recorren como miembros. La forma con miembros necesita un método generado por dirección, y una superficie generada solo cubriría los paquetes que van dentro del jar, cuando la mayoría llega en tiempo de ejecución y get("ru.person.lastName") funciona en cuanto termina la descarga. Toda la superficie está en Un valor a la vez.