Estou trabalhando em uma API simples que quero usar para meu próprio cliente e para abrir ao público no futuro. Eu tenho objetos "Item" que podem ter "tipos" diferentes. O tipo é um "typedef enum" C, por enquanto tenho:
typedef enum {
ItemTypeBool,
ItemTypeNumber,
ItemTypeDate,
} ItemType;
(Eu posso adicionar alguns no futuro)
Gostaria de saber se devo transferi-lo como números inteiros ou como "strings" definidas. O JSON seria:
Para números inteiros:
{
"name": "The name",
"type": 0,
...
}
Para strings:
{
"name": "The name"
"type": "boolean"
...
}
Gostaria de saber se existe uma prática recomendada para isso. Manter o número inteiro simplificaria um pouco o código e reduziria a largura de banda, mas as strings seriam mais fáceis de serem lembradas pelos desenvolvedores. Lembro que trabalhei em um projeto e tive que lembrar 1 = imagem, 2 = áudio, 3 = html, ... o que não faz nenhum sentido.
Então, eu estou lhe perguntando, se você conhece algum outro aspecto que eu deva considerar.