|
|
2 years ago | |
|---|---|---|
| .. | ||
| buildable.go | 2 years ago | |
| builder.go | 2 years ago | |
| fields_builder.go | 2 years ago | |
| go.mod | 2 years ago | |
| list_builder.go | 2 years ago | |
| map_builder.go | 2 years ago | |
| object_builder.go | 2 years ago | |
| readme.md | 2 years ago | |
| value_builder.go | 2 years ago | |
readme.md
Go Framework Project ACTIVE
ACTIVETHING Software Fabrik
Source git.activething.com/go
✍️ Autor Juan V. Navarro
blds (ActiveBuiLDerS)
blds es una librería de Go diseñada para facilitar la creación eficiente y rápida de serializaciones o formatos de objetos, mapas, listas, y otros tipos de datos comunes en Go. Su propósito principal es proporcionar una alternativa eficiente a la reflexión en Go, que puede tener un coste de ejecución considerable.
¿Qué hace ablds?
blds proporciona una serie de interfaces y tipos que permiten construir y manipular estructuras de datos de forma modular y flexible, evitando así el uso de reflexión. Estas estructuras de datos pueden ser luego serializadas en diferentes formatos, como JSON, XML, o cualquier otro formato personalizado, según las necesidades del usuario.
¿Cómo funciona?
La librería se basa en dos conceptos principales: los Builders y los Buildables.
- Builders: Son interfaces que definen métodos para construir diferentes tipos de estructuras de datos. Por ejemplo, tenemos builders para listas, mapas, y objetos.
- Buildables: Son interfaces que representan los diferentes tipos de datos que pueden ser construidos utilizando los builders. Estos tipos pueden incluir cualquier cosa, desde valores simples como strings o números hasta estructuras de datos más complejas.
blds ofrece una serie de métodos para cada tipo de builder, lo que permite agregar y configurar los datos de manera incremental y modular. Esto hace que la construcción de estructuras de datos sea más flexible y fácil de manejar, especialmente en casos donde se necesita construir objetos complejos con múltiples niveles de anidamiento.
Ejemplo de Uso
// Crear un objeto blds
builder := NewObjectBuilder()
// Agregar campos al objeto
builder.Field("name").String("John Doe")
builder.Field("age").Int(30)
builder.Field("is_active").Bool(true)
// Construir el objeto
obj := builder.Build()
// Serializar el objeto a JSON
jsonBytes, _ := json.Marshal(obj)
fmt.Println(string(jsonBytes))
🔒 Copyright 2024 activething.com