Erreur de traduction de la version chinoise "Go Programming Language"

"Le langage de programmation Go" est un livre très bien écrit. Au départ, j'avais acheté la version chinoise pour le lire, mais après avoir tourné quelques pages, je ne pouvais vraiment pas le comprendre. J'ai donc acheté une version anglaise pour comparer et lire.Je pensais qu'il serait peut-être plus difficile de lire l'anglais, mais je ne m'attendais pas à ce que l'anglais lise plus couramment que le chinois. Dans le même temps, de nombreuses erreurs dans la traduction de la version chinoise ont été trouvées, veuillez donc les enregistrer ici.

  1. page101, "Nous pouvons ignorer le journal entier", cela devrait être "Nous pouvons ignorer l'erreur entière"

  2. page101 "Après la vérification des erreurs, les échecs sont généralement détectés avant le succès." Cela devrait être "Après la vérification des erreurs, effectuez d'abord la gestion des erreurs, puis traitez la logique normale"

  3. page101 "Suivi par le corps de la fonction réelle jusqu'à la fin" La dernière phrase a manqué la traduction "pour minimiser l'indentation".

  4. page101 "Parfois, un programme doit prendre différentes mesures pour différents types d'erreurs." Cela devrait être "Cependant, parfois, le programme doit prendre différentes méthodes de traitement en fonction des différents types d'erreurs qui se produisent."

  5. Version anglaise P132, version chinoise P102
    "et ils peuvent être affectés à des variables ou passés ou renvoyés par d'autres fonctions", devraient être:
    "De plus, ils peuvent être affectés à des variables ou passés à d'autres fonctions, ou renvoyés par d'autres fonctions"

  6. Version anglaise P133, version chinoise P103
    "Une telle organisation de code offre aux appelants beaucoup de flexibilité" La suggestion est modifiée en:
    "Une telle organisation de code offre aux appelants une grande flexibilité"

  7. Version anglaise 30, version chinoise 22
    "L'initialisation au niveau du package est effectuée avant le démarrage principal" devrait être:
    "L'initialisation de la variable au niveau du package est effectuée avant le démarrage de la fonction principale"

"L'initialisation des variables locales est réalisée lors de l'exécution de la fonction comme la déclaration" devrait être:
"L'initialisation des variables locales est effectuée lorsque la fonction rencontre son instruction de déclaration"

  1. Version anglaise 31, version chinoise 23
    "La déclaration de variable courte n'a pas besoin de déclarer toutes les variables sur le côté gauche" suggère de changer:
    "La déclaration de variable courte n'a pas besoin de déclarer toutes les variables du côté gauche:

"Si certaines variables sont déclarées dans le même bloc lexical, alors pour ces variables, le comportement de la déclaration courte équivaut à l'affectation" doit être remplacé par:
"Si certaines variables ont été déclarées dans le même bloc lexical, alors pour ces variables, Le comportement d'une déclaration courte équivaut à une affectation "

déjà aucune traduction ne provoque une erreur de signification chinoise

  1. Version anglaise P32, version chinoise P24
    "Les variables utilisent parfois une valeur adressée" devrait se lire:
    "Les variables sont parfois décrites comme des valeurs adressables"

  2. Version anglaise P35, version chinoise P27
    "Il y a une exception à cette règle: les types de deux variables ne portent aucune information et sont des valeurs nulles, comme struct {} ou [0] int. Dans l'implémentation actuelle, elles ont la même adresse." Une traduction est complètement fausse, l'original anglais est
    "Il y a une exception à cette règle: deux variables dont le type ne porte aucune information et est donc de taille zéro, comme struct {} ou [0] int, peuvent, selon l'implémentation, avoir La même adresse. "
    Doit être traduit par:
    " Il y a une exception à cette règle: les types de deux variables ne portent aucune information, donc leur taille est 0, par exemple, struct {} ou [0] int, peut avoir la même adresse, selon Pour une réalisation concrète. "

  3. Version anglaise P35, version chinoise P27
    "Une nouvelle entité est créée chaque fois qu'une instruction est exécutée, et la variable survit jusqu'à ce qu'elle devienne inaccessible, et l'espace de stockage qu'elle occupe est récupéré." Il devrait indiquer:
    "Chaque fois qu'une instruction est exécutée Créez une nouvelle instance, la variable survivra jusqu'à ce qu'elle devienne inaccessible, moment auquel la mémoire qu'elle occupe peut être récupérée "

La différence entre les deux personnages signifie des choses différentes. Une variable n'est pas référencée, alors son cycle de vie est terminé, mais elle peut ne pas être collectée immédiatement et il peut y avoir un certain délai. Cela dépend de la façon dont l'algorithme de nettoyage de la mémoire est implémenté.

  1. Version anglaise P36, version chinoise P26
    "Même si la boucle le contenant est retournée, son existence peut continuer" devrait être:
    "Même si la fonction qui le contient est retournée, son existence peut continuer"

13. La version anglaise de P36, version chinoise P26
"Le compilateur peut choisir d'utiliser l'espace sur le tas ou la pile pour allouer" un
texte d' erreur de traduction est
"Un compilateur peut choisir d'allouer des variables locales sur le tas ou sur la pile mais, ..."
est Cela dit, le compilateur peut choisir d'allouer des variables locales sur la pile ou sur le tas. Notez que les variables locales sont des variables locales et qu'il n'y a aucune mention des variables au niveau du package.

14. Version anglaise P36, version chinoise P26

"Il est étonnant que ce choix ne soit pas basé sur l'utilisation de var ou de nouveaux mots clés pour déclarer des variables." Erreur de traduction
In go, new est une fonction prédéfinie, pas un mot-clé, donc dans l'anglais d'origine, cela a été délibérément évité. Le
mot- clé est le texte original en anglais:
"ce choix n'est pas déterminé par le fait que var ou new a été utilisé pour déclarer la variable."
Doit être traduit par:
"Ce choix n'est pas déterminé par le fait que var ou new a été utilisé pour déclarer la variable. "

Je suppose que tu aimes

Origine blog.csdn.net/ww1473345713/article/details/95533950
conseillé
Classement