Member-only story
Golang — Número a Palabra (Kata) part 2
En mi post anterior acerca de "Número a Palabra” en Golang, logramos obtener la conversión leyendo desde stdin, en este pequeño post haremos algo similar pero leyendo de os.Args:
Cada pequeño feature me gustaría implementarlo en un branch por separado, para ello empezaré por crear un repositorio Git con git init:
~/dev/go/posts/numbertoword git init ✔ 7 task 12:02:49
Initialized empty Git repository in /Users/leogtzr/dev/go/posts/numbertoword/.git/
Luego creamos un branch:
git checkout -b osargs
Nota random: al hacker check-in de los cambios para el post anterior, por error fueron subidos con el usuario configurado para la empresa para la cual trabajo. Para resolverlo bastó con los siguientes comandos.
git config user.name "leogtzr"
git config user.email "EMAIL"
Los cambios para leer desde os.Args son mínimos:
package main
import (
"fmt"
"os"
"strconv"
)
func main() {
if len(os.Args) < 2 {
fmt.Fprintln(os.Stderr, "error: at least one argument is required.")
os.Exit(1)
}
input := os.Args[1]
number, err := strconv.Atoi(input)
if err != nil {
fmt.Println("Error converting input to int:", err)
} else {
output := numToWord(number)
fmt.Printf("%d -> '%s'\n", number, output)
}
}
Github Repository: https://github.com/leogtzr/katas/tree/osargs
Esto es todo por hoy…, sería interesante explorar cómo crear una simple REST API con solo un endpoint.