You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: 1-js/03-code-quality/06-polyfills/article.md
+8-8Lines changed: 8 additions & 8 deletions
Original file line number
Diff line number
Diff line change
@@ -7,7 +7,7 @@ Grupos por detrás dos interpretadores de JavaScript têm as suas próprias idei
7
7
8
8
Assim, é muito comum que um interpretador implemente apenas parte de um padrão.
9
9
10
-
Uma boa página para se ver o estágio atual de suporte de funcionalidades da linguagem é <https://kangax.github.io/compat-table/es6/> (é extensa, nós ainda temos muito que estudar).
10
+
Uma boa página para se ver o estágio atual de suporte de funcionalidades da linguagem é <https://compat-table.github.io/compat-table/es6/> (é extensa, nós ainda temos muito que estudar).
11
11
12
12
Como programadores, nós gostaríamos de usar as funcionalidades mais recentes. Quantas mais forem as coisas boas - melhor!
13
13
@@ -18,11 +18,11 @@ Existem duas ferramentas para isso:
18
18
1. Transpilers.
19
19
2. Polyfills.
20
20
21
-
Aqui, neste capítulo, o nosso propósito é obter o essencial de como elas funcionam, e o seu lugar dentro do desenvolvimento para a web.
21
+
Aqui, neste capítulo, o nosso propósito é obter o essencial de como elas funcionam, e o seu lugar no desenvolvimento para a web.
22
22
23
23
## Transpilers
24
24
25
-
Um [transpiler](https://en.wikipedia.org/wiki/Source-to-source_compiler) é uma peça especial de software que traduz um códigofonte para outro códigofonte. Ele pode analisar ("ler e compreender") código moderno, e o reescrever usando construções sintáticas antigas, de tal forma que também funcione em interpretadores desatualizados.
25
+
Um [transpiler (transpilador em português)](https://en.wikipedia.org/wiki/Source-to-source_compiler) é uma peça especial de software que traduz um código-fonte para outro código-fonte. Ele pode analisar ("ler e compreender") código moderno, e o reescrever usando construções sintáticas antigas, de tal forma que também funcione em interpretadores desatualizados.
26
26
27
27
Por exemplo, o JavaScript antes de 2020 não tinha o "operador de coalescência nula" `??`. Assim, se um visitante usar um navegador desatualizado, este não conseguirá compreender código como `height = height ?? 100`.
Agora, o código reescrito está adequado a interpretadores de JavaScript antigos.
40
40
41
-
Geralmente, um desenvolvedor corre o transpiler na sua própria máquina, e depois coloca o código transpilado no servidor.
41
+
Geralmente, um desenvolvedor executa o transpiler na sua própria máquina, e depois coloca o código transpilado no servidor.
42
42
43
43
Falando em nomes, o [Babel](https://babeljs.io) é um dos mais prominentes transpilers por aí.
44
44
@@ -52,7 +52,7 @@ Por exemplo, `Math.trunc(n)` é uma função que "corta" a parte decimal de um n
52
52
53
53
Em alguns (muito desatualizados) interpretadores de JavaScript, não existe `Math.trunc`, por isto esse código irá falhar.
54
54
55
-
Como estamos a falar de novas funções, e não de alterações sintáticas, não é necessário transpilar nada aqui. Nós, apenas precisamos de declarar a função em falta.
55
+
Como estamos falando de novas funções, e não de alterações sintáticas, não é necessário transpilar nada aqui. Nós, apenas precisamos de declarar a função em falta.
56
56
57
57
Um script que atualize/adicione novas funções é chamado de "polyfill". Ele "preenche" o intervalo e adiciona implementações que faltem.
58
58
@@ -79,12 +79,12 @@ Duas interessantes bibliotecas de polyfills são:
79
79
80
80
Neste capítulo, gostaríamos de o motivar a estudar funcionalidades modernas ou até em esboço da linguagem, mesmo que elas ainda não tenham um bom suporte pelos interpretadores de JavaScript.
81
81
82
-
Apenas não se esqueça de usar um transpiler (se empregar sintaxe ou operadores modernos) e polyfills (para adicionar funções que possam estar ausentes). E eles irão garantir que o código funciona.
82
+
Apenas não se esqueça de usar um transpiler (se empregar sintaxe ou operadores modernos) e polyfills (para adicionar funções que possam estar ausentes). E eles irão garantir que o código funcione.
83
83
84
84
Por exemplo, mais adiante quando estiver familiarizado com o JavaScript, você pode configurar um sistema para a construção de código com base no [webpack](https://webpack.js.org/) e com o plugin [babel-loader](https://github.com/babel/babel-loader).
85
85
86
86
Bons recursos que mostram o estágio atual do suporte para várias funcionalidades:
87
-
- <https://kangax.github.io/compat-table/es6/> - para puro JavaScript.
87
+
- <https://compat-table.github.io/compat-table/es6/> - para puro JavaScript.
88
88
- <https://caniuse.com/> - para funções com relação ao navegador.
89
89
90
-
P.S. O Google Chrome, geralmente é o mais atualizado relativamente a funcionalidades da linguagem, tente-o se um exemplo no tutorial falhar. Contudo, a maioria dos exemplos no tutorial funcionam com qualquer navegador moderno.
90
+
P.S. O Google Chrome, geralmente é o mais atualizado relativamente a funcionalidades da linguagem, experimente-o se um exemplo no tutorial falhar. Contudo, a maioria dos exemplos no tutorial funcionam com qualquer navegador moderno.
0 commit comments