Kotlin:
Trabajando con TOML
Cómo hacerlo:
Para manejar TOML en Kotlin, podrías usar una biblioteca como ktoml
. Primero, vamos a agregar la dependencia en tu build.gradle.kts
:
dependencies {
implementation("com.akuleshov7:ktoml:0.2.5")
}
Ahora, vamos a analizar algo de TOML:
import com.akuleshov7.ktoml.file.TomlFileReader
fun main() {
val contenidoToml = TomlFileReader.readAndParseFile("config.toml")
val configuracionBaseDatos = contenidoToml.getTable("database")
val host = configuracionBaseDatos.getString("host")
val puerto = configuracionBaseDatos.getLong("port")
println("Host de la Base de Datos: $host")
println("Puerto de la Base de Datos: $puerto")
}
Asumiendo que config.toml
se ve así:
[database]
host = "localhost"
port = 5432
El resultado sería:
Host de la Base de Datos: localhost
Puerto de la Base de Datos: 5432
Análisis Profundo
TOML, ideado por el cofundador de GitHub, Tom Preston-Werner, en 2013, aspiraba a ser más sencillo que YAML y más seguro en cuanto a tipos que JSON. Se ha convertido en un éxito, especialmente con el Cargo
de Rust y el sistema de módulos de Go. ¿Alternativas? YAML tiene más características, JSON se traduce directamente en objetos en muchos lenguajes de programación, y siempre está el buen y viejo XML. En cuanto a la implementación, ktoml, bajo la licencia Apache 2.0, es una biblioteca puramente Kotlin y no arrastra librerías de Java, ofreciendo DSLs para escribir TOML también, no solo para leer.
Ver También
- El GitHub de TOML: https://github.com/toml-lang/toml
- El GitHub de ktoml: https://github.com/akuleshov7/ktoml
- TOML vs. YAML vs. JSON: https://blog.logrocket.com/comparing-configuration-files-yaml-toml-json/