Skip to content

Commit 795d30d

Browse files
author
Yuri Withowsky
committed
fix(do's and dont's): add emojis as in english doc and fix translation
1 parent 3fab987 commit 795d30d

File tree

1 file changed

+27
-30
lines changed

1 file changed

+27
-30
lines changed

docs/documentation/pt/declaration-files/Do's and Don'ts.md

Lines changed: 27 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
title: Do's and Don'ts
2+
title: Normas
33
layout: docs
44
permalink: /pt/docs/handbook/declaration-files/do-s-and-don-ts.html
55
oneline: "Recomendações para escrita de arquivos d.ts"
@@ -9,15 +9,15 @@ oneline: "Recomendações para escrita de arquivos d.ts"
99

1010
## `Number`, `String`, `Boolean`, `Symbol` and `Object`
1111

12-
_Nunca_ use os tipos `Number`, `String`, `Boolean`, `Symbol`, ou `Object`
12+
_Nunca_ use os tipos `Number`, `String`, `Boolean`, `Symbol`, ou `Object`
1313
Esse tipos fazem referências a objetos não-primitivos que quase nunca são usados apropriadamente em códigos JavaScript.
1414

1515
```ts
1616
/* Errado */
1717
function reverte(s: String): String;
1818
```
1919

20-
_Sempre_ use os tipos `number`, `string`, `boolean`, e `symbol`.
20+
_Sempre_ use os tipos `number`, `string`, `boolean`, e `symbol`.
2121

2222
```ts
2323
/* OK */
@@ -28,16 +28,15 @@ Ao invés de `Object`, use o tipo não-primitivo `object` ([adicionado em TypeSc
2828

2929
## Generics
3030

31-
_Nunca_ tenha um tipo genérico que não use os tipos de seus parâmetros.
31+
_Nunca_ tenha um tipo genérico que não use os tipos de seus parâmetros.
3232
Veja mais detalhes em [TypeScript FAQ page](https://github.com/Microsoft/TypeScript/wiki/FAQ#why-doesnt-type-inference-work-on-this-interface-interface-foot--).
3333

3434
## any
3535

36-
_Nunca_ use `any` como tipo a não ser que você esteja no processo de migração do projeto de JavaScript para Typescript. O compilador _efetivamente_ trata `any` como "por favor desligue a verificação de tipo para essa coisa". Isso é similar a botar um comentário `@ts-ignore` em volta de cada uso da variável. Isso pode ser muito útil quando você está migrando pela primeira vez um projeto JavaScript para TypeScript pois pode definir o tipo para coisas que você ainda não migrou como `any`, mas em um projeto TypeScript completo você estará desabilitando a verificação de tipos para qualquer parte do seu programa que o use.
36+
_Nunca_ use `any` como tipo a não ser que você esteja no processo de migração do projeto de JavaScript para Typescript. O compilador _efetivamente_ trata `any` como "por favor desligue a verificação de tipo para essa coisa". Isso é similar a botar um comentário `@ts-ignore` em volta de cada uso da variável. Isso pode ser muito útil quando você está migrando pela primeira vez um projeto JavaScript para TypeScript pois pode definir o tipo para coisas que você ainda não migrou como `any`, mas em um projeto TypeScript completo você estará desabilitando a verificação de tipos para qualquer parte do seu programa que o use.
3737

3838
Em casos onde você não sabe o tipo você quer aceitar, ou quando quer aceitar qualquer coisa pois irá passar adiante cegamente sem interagir, você pode usar [`unknown`](/play/#example/unknown-and-never).
3939

40-
4140
<!-- TODO: More -->
4241

4342
## Tipos de Callback
@@ -46,7 +45,7 @@ Em casos onde você não sabe o tipo você quer aceitar, ou quando quer aceitar
4645

4746
<!-- TODO: Reword; these examples make no sense in the context of a declaration file -->
4847

49-
_Nunca_ use o tipo de retorno `any` para callbacks cujo o valor será ignorado:
48+
_Nunca_ use o tipo de retorno `any` para callbacks cujo o valor será ignorado:
5049

5150
```ts
5251
/* ERRADO */
@@ -55,7 +54,7 @@ function fn(x: () => any) {
5554
}
5655
```
5756

58-
_Sempre_ use o tipo de retorno `void` para callbacks cujo o valor será ignorado:
57+
_Sempre_ use o tipo de retorno `void` para callbacks cujo o valor será ignorado:
5958

6059
```ts
6160
/* OK */
@@ -64,7 +63,7 @@ function fn(x: () => void) {
6463
}
6564
```
6665

67-
_Por quê?_: Usar void é mais seguro porque te previne de acidentalmente usar o valor de retorno de `x` de forma não verificada:
66+
_Por quê?_: Usar void é mais seguro porque te previne de acidentalmente usar o valor de retorno de `x` de forma não verificada:
6867

6968
```ts
7069
function fn(x: () => void) {
@@ -75,7 +74,7 @@ function fn(x: () => void) {
7574

7675
## Parâmetros Opcionais em Callbacks
7776

78-
_Nunca_ use parâmetros opcionais em callbacks a não ser que você realmente tenha essa intenção:
77+
_Nunca_ use parâmetros opcionais em callbacks a não ser que você realmente tenha essa intenção:
7978

8079
```ts
8180
/* ERRADO */
@@ -85,10 +84,10 @@ interface Buscador {
8584
```
8685

8786
Isso tem um significado muito especifico: o callback `pronto` pode ser invocado com 1 argumento ou pode ser invocado com 2 argumentos.
88-
O autor provavelmente teve a intenção de dizer que o callback talvez não se importe com o parâmetro `tempoDecorrido`, mas não tem necessidade de fazer o parâmetro opcional para atingir isso --
87+
O autor provavelmente teve a intenção de dizer que o callback talvez não se importe com o parâmetro `tempoDecorrido`, mas não tem necessidade de fazer o parâmetro opcional para atingir isso --
8988
sempre é valido prover um callback que aceita um numero menor de argumentos.
9089

91-
_Sempre_ escreva parâmetros de callback como não-opcional:
90+
_Sempre_ escreva parâmetros de callback como não-opcional:
9291

9392
```ts
9493
/* OK */
@@ -99,7 +98,7 @@ interface Buscador {
9998

10099
## Sobrecargas e Callbacks
101100

102-
_Nunca_ escreva sobrecargas separadas que diferem apenas na aridade do callback:
101+
_Nunca_ escreva sobrecargas separadas que diferem apenas na aridade do callback:
103102

104103
```ts
105104
/* ERRADO */
@@ -110,7 +109,7 @@ declare function antesDeTodos(
110109
): void;
111110
```
112111

113-
_Sempre_ escreva uma única sobrecarga usando a aridade maxima:
112+
_Sempre_ escreva uma única sobrecarga usando a aridade maxima:
114113

115114
```ts
116115
/* OK */
@@ -120,14 +119,14 @@ declare function antesDeTodos(
120119
): void;
121120
```
122121

123-
_Por quê?_: Sempre é válido para um callback desprezar um parâmetro, então não tem necessidade de encurtar a sobrecarga.
122+
_Por quê?_: Sempre é válido para um callback desprezar um parâmetro, então não tem necessidade de encurtar a sobrecarga.
124123
Provendo um callback mais curto primeiro permite funções incorretamente tipadas serem passadas adiante porque possuem correspondência com a primeira sobrecarga.
125124

126125
## Sobrecargas de Funções
127126

128127
## Ordenação
129128

130-
_Nunca_ ponha sobrecargas genérias antes das mais específicas:
129+
_Nunca_ ponha sobrecargas genérias antes das mais específicas:
131130

132131
```ts
133132
/* ERRADO */
@@ -139,7 +138,7 @@ var meuElem: HTMLDivElement;
139138
var x = fn(meuElem); // x: any, quê?
140139
```
141140

142-
_Sempre_ ordene sobrecargas pondo as assinaturas mais genéricas após as mais específicas:
141+
_Sempre_ ordene sobrecargas pondo as assinaturas mais genéricas após as mais específicas:
143142

144143
```ts
145144
/* OK */
@@ -151,12 +150,12 @@ var meuElem: HTMLDivElement;
151150
var x = fn(meuElem); // x: string, :)
152151
```
153152

154-
_Por quê?_: TypeScript escolhe a _primeira sobrecarga com correspondência_ ao resolver chamadas as funções.
155-
Quando uma sobrecarga mais recente "é mais geral" do que uma mais antiga, a mais antiga é efetivamente omitida e não pode ser chamada.
153+
_Por quê?_: TypeScript escolhe a _primeira sobrecarga com correspondência_ ao resolver chamadas as funções.
154+
Quando uma sobrecarga mais recente "é mais geral" do que uma mais antiga, a mais antiga é efetivamente omitida e não pode ser chamada.
156155

157156
## Use Parâmetros Opcionais
158157

159-
_Nunca_ escreva muitas sobrecargas que diferem apenas em nos parâmetros finais:
158+
_Nunca_ escreva muitas sobrecargas que diferem apenas em nos parâmetros finais:
160159

161160
```ts
162161
/* ERRADO */
@@ -167,7 +166,7 @@ interface Exemplo {
167166
}
168167
```
169168

170-
_Sempre_ que possível use parâmetros opcionais:
169+
_Sempre_ que possível use parâmetros opcionais:
171170

172171
```ts
173172
/* OK */
@@ -178,11 +177,10 @@ interface Exemplo {
178177

179178
Note que esse colapso deve ocorrer apenas quando todas as sobrecargas tiverem o mesmo tipo de retorno.
180179

181-
182-
_Por quê?_: Isso é importante por dois motivos.
180+
_Por quê?_: Isso é importante por dois motivos.
183181

184182
TypeScript resolve compatibilidade de assinaturas verificando se alguma assinatura do alvo pode ser chamada com os argumentos da fonte,_e argumentos estranhos são permitidos_.
185-
Esse código, por exemplo, expõe um bug apenas quando a assinatura é escrita corretamente usando parâmetros opcionais:
183+
Esse código, por exemplo, expõe um bug apenas quando a assinatura é escrita corretamente usando parâmetros opcionais:
186184

187185
```ts
188186
function fn(x: (a: string, b: number, c: number) => void) {}
@@ -193,7 +191,7 @@ fn(x.diff);
193191
```
194192

195193
A segunda razão é quando um consumidor usa a funcionalidade "checagem estrita de nulos" do TypeScript.
196-
Porque parâmetros não especificados aparecem como `undefined` em javascript, geralmente é bom passar um `undefined` explícito para uma função com argumentos opcionais.
194+
Porque parâmetros não especificados aparecem como `undefined` em javascript, geralmente é bom passar um `undefined` explícito para uma função com argumentos opcionais.
197195
Esse código, por exemplo, deveria ser OK sob nulos estritos:
198196

199197
```ts
@@ -205,7 +203,7 @@ x.diff("algo", true ? undefined : "hora");
205203

206204
## Use Tipos de União
207205

208-
_Nunca_ escreva sobrecargas que diferem por tipo em apenas um argumento:
206+
_Nunca_ escreva sobrecargas que diferem por tipo em apenas um argumento:
209207

210208
```ts
211209
/* ERRADO */
@@ -216,7 +214,7 @@ interface Momento {
216214
}
217215
```
218216

219-
_Sempre_ que possível use tipos de união:
217+
_Sempre_ que possível use tipos de união:
220218

221219
```ts
222220
/* OK */
@@ -227,15 +225,14 @@ interface Momento {
227225
```
228226

229227
Perceba que nós não fizemos `b` opcional aqui porque os tipos de retorno das assinaturas são diferentes.
230-
_Por quê?_: Isso é importante para pessoas que estão "passando adiante" um valor para sua função:
228+
_Por quê?_: Isso é importante para pessoas que estão "passando adiante" um valor para sua função:
231229

232230
```ts
233231
function fn(x: string): void;
234232
function fn(x: number): void;
235233
function fn(x: number | string) {
236234
// Quando escrito com sobrecargas separadas, indevidamente um erro
237-
// Quando escrito com tipos de união,
238-
// When written with union types, devidamente OK
235+
// Quando escrito com tipos de união, devidamente OK
239236
return momento().utcOffset(x);
240237
}
241238
```

0 commit comments

Comments
 (0)