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.