Golang
Nous avons une base de données avec des mots de passe utilisateur, les mots de passe sont hachés (fonction hashPassword), et nous connaissons également l'ensemble des caractères pouvant être utilisés dans les mots de passe (variable alphabet). Notre tâche est d'implémenter la fonction RecoverPassword pour qu'elle restaure le mot de passe à partir du hash connu et que TestRecoverPassword réussisse. Exigences de base: Tout moyen est acceptable 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() {
Quel est le rôle et la fonction de l'étiquette dans un système ou une application?
Lors de la transmission de données dans un canal tamponné, où le valeur envoyée sera-t-elle placée : au début ou à la fin du tampon ?
Quel est considéré comme le niveau d'isolation le plus strict dans les transactions de bases de données?
Comment définis-tu une équipe réussie et efficace dans un collectif de travail?
Quelles étapes suivre en cas de défaillance ou d'erreur lors du déploiement d'un service?
Comment la classe StringBuilder est-elle implémentée et fonctionne-t-elle en Java?
Quelles méthodes alternatives de communication entre goroutines existent en dehors de l'utilisation de canaux?
Peux-tu donner un exemple de feedback constructif que ton responsable t'a donné?
Avez-vous déjà utilisé la commande SELECT FOR UPDATE dans vos projets pour verrouiller des lignes lors des transactions?
Expliquez le concept de stackless-goroutine et en quoi il diffère des goroutines classiques basées sur la pile
Quelle est la différence entre l'unité de mémoire byte et le type de données rune dans le langage de programmation?
Avez-vous participé à la conception du schéma de transmission de données entre systèmes?
Comment effectuer l'analyse et l'optimisation des requêtes dans Elasticsearch?
package principal import ( "fmt" "sync" ) func main() { for i := 0; i < 5; i++ { go fmt.Println(i) } }
Quel comportement est attendu lors de l'appel d'un opérateur select vide dans le langage Go?
Comment peut-on terminer l'exécution d'un programme lorsqu'une demande d'arrêt de son fonctionnement est faite dans le contexte actuel?
Quelles fonctionnalités et capacités supplémentaires ont été intégrées dans les méthodes de contexte avec l'apparition de Go 1.21?
Expliquez le concept de Saga et son rôle dans la mise en œuvre d'une architecture de microservices
Comment la collecte automatique de mémoire et la libération sont-elles implémentées dans le langage Go?