Sobes.tech

Golang

Como é que a interface é estruturada por dentro (na memória) em Go?

324

Como garantir a consistência dos dados — que a mensagem será armazenada na base de dados e entregue ao destinatário?

285

O que é o protocolo HTTP? De que partes é composta uma requisição HTTP? O que são cabeçalhos, cookies?

280

Houve dores com a separação de uma base de dados unificada?

273

Qual é a diferença entre TCP e UDP? Por que o TCP é usado para HTTPS?

265

O que acontece na rede ao inserir https://wildberries.ru no navegador? Descreva o processo de resolução DNS.

260

O que precisamos fazer para que vejas uma alta cultura de engenharia?

254

Conta-me uma introdução — com o que tens estado ocupado recentemente, o que de interessante ou não interessante tens feito?

244

O que é a variável GOMAXPROCS em Go? Um programa pode usar mais threads do que o indicado em GOMAXPROCS?

244

Condição Temos uma base de dados com palavras-passe de utilizadores, as palavras-passe estão hashed (função hashPassword), e também é conhecido o conjunto de caracteres que podem ser utilizados nas palavras-passe (variável alphabet). A nossa tarefa é implementar a função RecoverPassword para recuperar a palavra-passe a partir do hash conhecido e que TestRecoverPassword termine com sucesso. Requisitos básicos: Qualquer método é válido package main import ( "crypto/md5" "fmt" ) var alphabet = []rune{'a', 'b', 'c', 'd', '1', '2', '3'} func RecoverPassword(h []byte) string { return "" } func hashPassword(in string) []byte { h := md5.Sum([]byte(in)) return h[:] } func main() { tests := []string{"a", "12", "abc333d"} ok := true for _, exp := range tests { h := hashPassword(exp) act := RecoverPassword(h) if act != exp { fmt.Printf("Erro: esperado %q, obtido %q\n", exp, act) ok = false } } if ok { fmt.Println("Todos os testes passaram com sucesso") } }

240

Sugira índices ótimos para uma consulta com filtragem pelos campos location e gender (sexo) para desempenho máximo

228

Dificuldade: FÁCIL Dado um array ordenado de números, no qual há duplicados. É necessário remover os duplicados in-place (diretamente no array original) e devolver o tamanho do array resultante. Exemplo: Entrada: nums = [0,0,1,1,1,2,2,3,3,4] Saída: 5, nums = [0,1,2,3,4,_,_,_,_,_] Explicação: Neste array há 5 elementos únicos. Coloque-os nas primeiras cinco posições do array original e retorne o número 5. Os elementos subsequentes no array original podem ser qualquer coisa.

226

Para que serve um broker de mensagens (Kafka)? Como ele se encaixa na arquitetura?

224

O que é replicação de bases de dados e para que serve? Quais problemas podem surgir?

223

Como funciona a herança de contextos em Go (context.WithValue, context.Background)?

222

Que primitivas de sincronização conhece nos sistemas operacionais?

222

O que é um token JWT? Qual é a sua estrutura e vantagens em relação aos tokens normais?

217

Quais meios de sincronização de goroutines existem em Go? Corrija o exemplo com a corrida usando atomic

214
/4