Por Ukeje Chukwuemeriwo Bondade

Go oferece muitas maneiras de gerar UUIDs, que são uma maneira conveniente e robusta de organizar seus dados.

Leitores como você ajudam a apoiar o MUO. Quando você faz uma compra usando links em nosso site, podemos ganhar uma comissão de afiliado. Consulte Mais informação.

Universally Unique Identifiers (UUID) são populares para identificação do usuário em aplicações onde um alto grau de aleatoriedade é essencial. Os UUIDs são uma boa escolha para aplicativos que atendem a milhões de usuários, pois reduzem a chance de colisões e são universalmente distintos entre os sistemas.

Go não fornece nenhum pacote(s) para geração de UUIDs. Como a maioria dos sistemas operacionais relacionados ao Unix inclui o uuidgen programa, você pode usar o os pacote para gerá-los. Você também pode usar um pacote Go externo como o do Google uuid ou o gouuid pacote.

Gerando UUIDs com o pacote os

o ir os O pacote fornece funcionalidade para interagir com o sistema operacional da máquina host de maneira semelhante ao Unix. Você pode executar comandos com o

executivo subpacote do os pacote e recupere a saída para o seu ir programas.

Importe esses pacotes integrados em seu arquivo Go para gerar UUIDs com o os pacote.

importar (\n "fmt"\n "registro"\n "os/exec"\n)\n

Você usará o registro pacote para registrar possíveis erros e o fmt pacote de formatação de string para gerar o UUID gerado.

Você pode executar comandos com o Comando método do executivo pacote. O Saída O método retorna a saída do comando.

funçãoosExec() {\n gerarUUID, err := exec. Comando("uuidgen").Output()\n \n se erro != nada {\n registro. Fatal (err)\n }\n \n fmt. Println (gerarUUID)\n}\n

O osExec A função gera e imprime um UUID usando o uuidgen comando.

Gerando UUIDs com o pacote UUID do Google

o Google uuid pacote gera e inspeciona UUIDs com base em RFC 4122 e os Serviços de Autenticação e Segurança DCE 1.1.

Execute este comando de terminal no diretório do seu projeto para instalar o uuid package como uma das dependências do seu projeto.

ir obtenha github.com/google/uuid\n

Importar o uuid pacote para gerar UUIDs e o fmt pacote para enviar o UUID para o seu console.

importar (\n "fmt"\n "github.com/google/uuid"\n)\n

Você pode gerar um UUID com o pacote uuid Novo método. O Novo método retorna um UUID aleatório, e você pode usar seu Corda para obter uma representação de string dele.

funçãogoogleUUID() {\n uuidValue := uuid. Novo()\n fmt. Println (uuidValue. String())\n}\n

O googleUUID função usa o Novo para imprimir o formato de string de um UUID aleatório.

Gerando UUIDs com o pacote GoUUID

O pacote Gouid fornece estruturas e funções UUID imutáveis ​​para gerar UUIDs NewV3, NewV4 e NewV5 e analisar os UUIDs conforme especificado no RFC 4122.

Execute este comando no terminal do seu diretório de trabalho para instalar o gouuid package para as dependências do seu projeto.

ir obter github.com/nu7hatch/gouuid\n

Importar o fmt e gouuid pacotes com o alias uuid (convencional) para gerar UUIDs.

importar (\n "fmt"\n uuid "github.com/nu7hatch/gouuid"\n)\n

Você pode gerar UUIDs da versão 4 com o NovoV4 método que retorna o UUID ou um erro.

funçãogerar V4(){\n v4UUID, err := uuid. NovoV4()\n \n se erro != nada {\n fmt. Println (err)\n }\n \n fmt. Println (v4UUID)\n}\n

O gerar V4 O método imprime o UUID gerado a partir do NovoV4 método do gouuid pacote.

Da mesma forma, você pode gerar UUIDs da versão 5 com o NewV5 método. O NewV5 O método usa um URL de namespace UUID e uma fatia de byte e retorna a versão 5 UUID gerada.

funçãogerar V5(){\n v5UUID, err := uuid. NewV5(uuid. NamespaceURL, []byte("go.dev"))\n \n se erro != nada {\n fmt. Println (err)\n }\n \n fmt. Println (v5UUID)\n}\n

O gerar V5 A função imprime a versão gerada cinco UUID após a geração do UUID com o NewV5 método se não houver erros de geração.

Você pode gerar UUIDs com a maioria das linguagens de programação

Os UUIDs são úteis para muitos casos de uso, por isso são populares em aplicativos do dia a dia. A maioria das linguagens de programação fornece funcionalidade para gerar UUIDs em suas bibliotecas padrão ou pacotes de ecossistema.

Assine a nossa newsletter

Comentários

CompartilharTweetarCompartilharCompartilharCompartilhar
cópia de
E-mail
Compartilhar
CompartilharTweetarCompartilharCompartilharCompartilhar
cópia de
E-mail

Link copiado para a área de transferência

Tópicos relacionados

  • Programação
  • Programação

Sobre o autor

Ukeje Chukwuemeriwo Bondade (31 Artigos Publicados)

Goodness é um estudante de engenharia mecânica e desenvolvedor de software apaixonado por tecnologias de nuvem e pela linguagem de programação Go.