-
Notifications
You must be signed in to change notification settings - Fork 3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Traduction de universal & structure #5
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Top ! Merci pour ta contribution @mdartic !
Voici mes retour !
en/structure.md
Outdated
|
||
As seen in the basic example, we are **creating a new root Vue instance for each request.** This is similar to how each user will be using a fresh instance of the app in their own browser. If we use a shared instance across multiple requests, it will easily lead to cross-request state pollution. | ||
Comme vu dans l'exemple de base, nous **créons une nouvelle instance racine Vue pour chaque requête.** Cela est similaire au fait que chaque utilisateur utilise une nouvelle instance de l'application dans son propre navigateur. Si nous utilisons une instance partagée entre plusieurs requêtes, nous prenons le risque d'une pollution d'état multi-requêtes. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Je le proposerai plutôt dans cet ordre pour garder « l'instance de Vue »
instance de Vue racine
ou
instance de Vue principale
je propose
d'une pollution d'état entre requête
ou
d'une pollution d'état inter-requête
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
+1 pour l'instance de Vue
.
en/structure.md
Outdated
|
||
So, instead of directly creating an app instance, we should expose a factory function that can be repeatedly executed to create fresh app instances for each request: | ||
|
||
Ainsi, au lieu de créer directement une instance d'application, nous devons exposer une fonction Fabrique qui peut être exécutée à plusieurs reprises pour créer de nouvelles instances d'application pour chaque requête : |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
fonction de fabrique
de la même manière que declaration function se traduit par déclaration de fonction ou expression function par fonction d'expression je pense que l'on peut dire que factory function devient très simplement fonction de fabrique
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Je me suis trompé car on dit déclaration de fonction et expression de fonction.
P-e que fabrique de fonction est plus juste ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ah, ma référence était https://fr.wikipedia.org/wiki/Fabrique_(patron_de_conception)
on utilise plutôt méthode de fabrique dans l'explication, du coup, fonction de fabrique me paraissait bien ?
en/structure.md
Outdated
@@ -17,12 +20,12 @@ module.exports = function createApp (context) { | |||
data: { | |||
url: context.url | |||
}, | |||
template: `<div>The visited URL is: {{ url }}</div>` | |||
template: `<div>L'URL visible est: {{ url }}</div>` |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
est :
espace entre est
et :
}) | ||
} | ||
``` | ||
|
||
And our server code now becomes: | ||
Et notre code serveur devient: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
devient :
(espace)
en/structure.md
Outdated
res.end(html) | ||
}) | ||
}) | ||
``` | ||
|
||
The same rule applies to router, store and event bus instances as well. Instead of exporting it directly from a module and importing it across your app, you need to create a fresh instance in `createApp` and inject it from the root Vue instance. | ||
La même règle s'applique aussi bien au routeur, qu'au store et aux instances de bus d'événements. Au lieu de l'exporter directement depuis un module et de l'importer dans votre application, vous devez créer une nouvelle instance dans `createApp` et l'injecter depuis l'instance racine de Vue. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
instance racine de Vue
à aligner avec se qui aura été choisi pour "l'instance racine Vue" discuté plus haut
en/universal.md
Outdated
|
||
For tasks shared between server and client but use different platform APIs, it's recommended to wrap the platform-specific implementations inside a universal API, or use libraries that do this for you. For example, [axios](https://github.com/mzabriskie/axios) is an HTTP client that exposes the same API for both server and client. | ||
Pour les tâches partagées entre le serveur et le client, mais qui utilisent des APIs différentes selon la plate-forme, il est recommandé d'encapsuler le code spécifique à la plate-forme dans une API universelle, ou d'utiliser des bibliothèques qui le font pour vous. Par exemple, [axios](https://github.com/mzabriskie/axios) est un client HTTP qui présente la même API côté serveur et client. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
plateforme
plateforme
côté serveur et côté client
en/universal.md
Outdated
|
||
For browser-only APIs, the common approach is to lazily access them inside client-only lifecycle hooks. | ||
Pour les APIs exclusives au navigateur, l'approche habituelle est de les utiliser dans les connecteurs de cycle de vie exclusifs au client. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
conserver hook au lieu de connecteur
en/universal.md
Outdated
|
||
Note that if a 3rd party library is not written with universal usage in mind, it could be tricky to integrate it into an server-rendered app. You *might* be able to get it working by mocking some of the globals, but it would be hacky and may interfere with the environment detection code of other libraries. | ||
Notez que si une bibliothèque tierce n'est pas écrite avec l'objectif d'être universelle, cela peut être délicat de l'intégrer dans une application rendue côté serveur. Vous *devriez* être capable de la faire fonctionner en substituant certaines variables globales, mais cela serait cavalier et pourrait interférer avec du code de détection de l'environnement d'autres bibliothèques. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
avec du code de détection d'environnement des autres bibliothèques
en/universal.md
Outdated
|
||
2. If you have a custom directive that cannot be easily replaced by components, you can provide a "server-side version" of it using the [`directives`](./api.md#directives) option when creating the server renderer. | ||
2. Si vous avez une directive personnalisée qui ne peut être facilement remplacée par des composants, vous pouvez en fournir une "version serveur" qui utilise l'option [`directives`](./api.md#directives) lors de la création du rendu serveur. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
« version serveur »
en/structure.md
Outdated
@@ -1,13 +1,16 @@ | |||
# Structure de code (En) <br><br> *Cette page est en cours de traduction française. Revenez une autre fois pour lire une traduction achevée ou [participez à la traduction française ici](https://github.com/vuejs-fr/vue-ssr-docs).* | |||
|
|||
## Eviter les singletons stateful |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Je pense que l'on peut traduire stateful par état
Éviter les singletons d'état
Par exemple « Stateful Firewall » se traduit par « pare-feu d'état » https://fr.wikipedia.org/wiki/Pare-feu_%C3%A0_%C3%A9tats
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Merci pour la contribution !
en/structure.md
Outdated
## Avoid Stateful Singletons | ||
|
||
When writing client-only code, we are used to the fact that our code will be evaluated in a fresh context every time. However, a Node.js server is a long-running process. When our code is required into the process, it will be evaluated once and stays in memory. This means if you create a singleton object, it will be shared between every incoming request. | ||
Lors de l'écriture du code exclusif au client, nous sommes habitués au fait que notre code sera interprété dans un nouveau contexte à chaque fois. Cependant, un serveur Node.js est un processus au long cours. Quand notre code est appelé dans le processus, il sera interprété une fois et restera en mémoire. Cela signifie que si vous créez un singleton, il sera partagé entre chaque nouvelle requête. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
un serveur Node.js est un processus au long cours
Pour ma part, lorsque j'avais commencé à traduire vue-ssr-docs de mon côté (vuejs#5), j'avais utilisé la formulation : un serveur Node.js est un processus qui reste actif dans le temps
.
Qu'en penses-tu ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
J'avais également butté sur la formulation. J'ai été me renseigner et c'est quelque chose qui se dit quand un phénomène dure dans le temps. Et c'est assez poétique haha.
Côté processus informatique, c'est pas mal le mot « actif » de @Kocal
un processus qui reste actif
tout simplement représente bien un long-running processus (en gros un processus qui se clos pas à la fin des instructions). Pas besoin de « dans le temps » du tout.
Donc si c'est bon pour vous deux j'ajouterai bien à la liste des termes à traduire ceci
long-running process = processus qui reste actif
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pour moi ça me va 👍
en/structure.md
Outdated
|
||
As seen in the basic example, we are **creating a new root Vue instance for each request.** This is similar to how each user will be using a fresh instance of the app in their own browser. If we use a shared instance across multiple requests, it will easily lead to cross-request state pollution. | ||
Comme vu dans l'exemple de base, nous **créons une nouvelle instance racine Vue pour chaque requête.** Cela est similaire au fait que chaque utilisateur utilise une nouvelle instance de l'application dans son propre navigateur. Si nous utilisons une instance partagée entre plusieurs requêtes, nous prenons le risque d'une pollution d'état multi-requêtes. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
+1 pour l'instance de Vue
.
en/structure.md
Outdated
|
||
As seen in the basic example, we are **creating a new root Vue instance for each request.** This is similar to how each user will be using a fresh instance of the app in their own browser. If we use a shared instance across multiple requests, it will easily lead to cross-request state pollution. | ||
Comme vu dans l'exemple de base, nous **créons une nouvelle instance racine Vue pour chaque requête.** Cela est similaire au fait que chaque utilisateur utilise une nouvelle instance de l'application dans son propre navigateur. Si nous utilisons une instance partagée entre plusieurs requêtes, nous prenons le risque d'une pollution d'état multi-requêtes. | ||
|
||
So, instead of directly creating an app instance, we should expose a factory function that can be repeatedly executed to create fresh app instances for each request: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Il faut aussi penser à supprimer le paragraphe original 😛
en/structure.md
Outdated
res.end(html) | ||
}) | ||
}) | ||
``` | ||
|
||
The same rule applies to router, store and event bus instances as well. Instead of exporting it directly from a module and importing it across your app, you need to create a fresh instance in `createApp` and inject it from the root Vue instance. | ||
La même règle s'applique aussi bien au routeur, qu'au store et aux instances de bus d'événements. Au lieu de l'exporter directement depuis un module et de l'importer dans votre application, vous devez créer une nouvelle instance dans `createApp` et l'injecter depuis l'instance racine de Vue. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
store
Est-ce qu'on n'avait pas traduit ce terme pour gestionnaire d'état
dans la doc de vue-router ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Justement je demandais dans les pages traduite avant si on gardait pas le terme « store ». Je pense le garder en attendant de réellement comprendre toute sa portée et lui trouver un équivalent en un seul mot car toute les traduction de store me semble pas approprié.
en/structure.md
Outdated
|
||
- Typical Vue apps are built with webpack and `vue-loader`, and many webpack-specific features such as importing files via `file-loader`, importing CSS via `css-loader` would not work directly in Node.js. | ||
- les applications typiques Vue sont construites avec webpack et `vue-loader`, et beaucoup d'autres fonctionnalités spécifiques à webpack telles que l'import de fichiers via `file-loader`, ou encore l'import de CSS avec `css-loader` qui ne marcheraient pas directement en Node.js. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
qui ne fonctionneraient pas
en/universal.md
Outdated
|
||
In a client-only app, every user will be using a fresh instance of the app in their browser. For server-side rendering we want the same: each request should have a fresh, isolated app instance so that there is no cross-request state pollution. | ||
Dans une application qui tourne exclusivement côté client, chaque utilisateur utilisera une nouvelle instance de l'application dans leur navigateur. Pour le rendu serveur nous voulons le même fonctionnement: chaque requête doit disposer d'une nouvelle instance d'application, et isolée. Ainsi il n'y aura pas de pollution liée à du partage d'état multi-requêtes. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Remplacer d'une nouvelle instance d'application, et isolée
pour d'une nouvelle instance d'application isolée
?
Non c'est bien ! C'était au cas ou. Je crois que @sylvainpolletvillard a
déjà utilisé le terme fonction de fabrique
Envoyé depuis mon Smartphone. Excusez-moi d'être bref.
Le 14 mai 2017 00:21, "Mathieu DARTIGUES" <[email protected]> a
écrit :
… ***@***.**** commented on this pull request.
------------------------------
In en/structure.md
<#5 (comment)>:
>
So, instead of directly creating an app instance, we should expose a factory function that can be repeatedly executed to create fresh app instances for each request:
+Ainsi, au lieu de créer directement une instance d'application, nous devons exposer une fonction Fabrique qui peut être exécutée à plusieurs reprises pour créer de nouvelles instances d'application pour chaque requête :
ah, ma référence était https://fr.wikipedia.org/wiki/Fabrique_(patron_de_
conception)
on utilise plutôt méthode de fabrique dans l'explication, du coup,
fonction de fabrique me paraissait bien ?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#5 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/ADs8ucskF_wKNlR9bVzqxEq3fhgTr0Wfks5r5izkgaJpZM4NWtQB>
.
|
Ou l'inverse :p je sais plus !
Envoyé depuis mon Smartphone. Excusez-moi d'être bref.
Le 14 mai 2017 00:26, "Bruno Lesieur" <[email protected]> a écrit :
… Non c'est bien ! C'était au cas ou. Je crois que @sylvainpolletvillard a
déjà utilisé le terme fonction de fabrique
Envoyé depuis mon Smartphone. Excusez-moi d'être bref.
Le 14 mai 2017 00:21, "Mathieu DARTIGUES" ***@***.***> a
écrit :
> ***@***.**** commented on this pull request.
> ------------------------------
>
> In en/structure.md
> <#5 (comment)>:
>
> >
> So, instead of directly creating an app instance, we should expose a factory function that can be repeatedly executed to create fresh app instances for each request:
>
> +Ainsi, au lieu de créer directement une instance d'application, nous devons exposer une fonction Fabrique qui peut être exécutée à plusieurs reprises pour créer de nouvelles instances d'application pour chaque requête :
>
> ah, ma référence était https://fr.wikipedia.org/wiki/
> Fabrique_(patron_de_conception)
> on utilise plutôt méthode de fabrique dans l'explication, du coup,
> fonction de fabrique me paraissait bien ?
>
> —
> You are receiving this because you were mentioned.
> Reply to this email directly, view it on GitHub
> <#5 (comment)>,
> or mute the thread
> <https://github.com/notifications/unsubscribe-auth/ADs8ucskF_wKNlR9bVzqxEq3fhgTr0Wfks5r5izkgaJpZM4NWtQB>
> .
>
|
Pour factory function ? Oui je traduis ça en fonction fabrique: https://fr.wikipedia.org/wiki/Fabrique_(patron_de_conception) "Fabrique de fonctions" est valable seulement si la fonction fabrique retourne effectivement une fonction (pour de la curryfication par exemple). Mais on utilise le plus souvent le terme en programmation orientée objet, où les fabriques retournent des objets instances de classes. |
Merci de relire ces deux traductions,
J'ai fait au mieux et me suis inspiré de ce que j'ai pu voir dans les traductions déjà existantes, et d'une issue répertoriant des conseils de traduction.
J'ai traduit les commentaires de code, et les libellés présents dedans, mais n'ai pas renommé les variables.