Skip to content

Static properties and methods - #473

Merged
gabifs merged 2 commits into
javascript-tutorial:masterfrom
diogoosz:translate-static-properties-methods
Nov 8, 2026
Merged

gabifs merged 2 commits into
javascript-tutorial:masterfrom
diogoosz:translate-static-properties-methods

Conversation

@diogoosz

@diogoosz diogoosz commented Nov 7, 2026

Copy link
Copy Markdown
Contributor

Tradução do artigo "Static properties and methods" para o português, incluindo o exercício.

Conforme comentado na #1.

@@ -4,9 +4,9 @@ importance: 3

# Class extends Object?

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

O título da tarefa ficou em inglês (# Class extends Object?), então ele aparece sem tradução na lista de tarefas e no cabeçalho da tarefa. Sugestão:

Suggested change
# Class extends Object?
# Classe estende Object?

Aqui o método `Article.compare` fica "acima" dos artigos, como um meio de compará-los. Não é um método de um artigo, mas sim de toda a classe.

Another example would be a so-called "factory" method.
Outro exemplo seria um método chamado de "fábrica" (factory).

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

O CLAUDE.md do projeto diz: "avoid using foreign words: Words like timer, loop, inline should be avoided." Aqui o "(factory)" entre parênteses é uma palavra estrangeira desnecessária, já que "fábrica" já está explicado.

Suggested change
Outro exemplo seria um método chamado de "fábrica" (factory).
Outro exemplo seria um método chamado de "fábrica".

static createTodays() {
// remember, this = Article
// lembre-se, this = Article
return new this("Today's digest", new Date());

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A string "Today's digest" (aqui e na saída // Today's digest na linha 99) ficou em inglês, mas o texto logo abaixo (linha 102) traduz o mesmo conceito como "resumo de hoje". Quem roda o exemplo vê um alerta em inglês que não bate com a explicação. As strings podem ser traduzidas, por exemplo "Resumo de hoje" aqui e // Resumo de hoje na linha 99.

// Herda de Animal
class Rabbit extends Animal {
hide() {
alert(`${this.name} hides!`);

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As strings dos alertas neste exemplo (hides! aqui, runs with speed na linha 160, "Earth" na linha 151) e os comentários de saída (// Black Rabbit runs with speed 5. na linha 187, // Earth na linha 189) continuam em inglês, enquanto os comentários ao redor foram traduzidos. Quem executar o exemplo vai ver os alertas em inglês. Vale traduzir (por exemplo ${this.name} se esconde!, ${this.name} corre com velocidade ${this.speed}., "Terra") e atualizar os comentários de saída do mesmo jeito. Se a ideia for manter igual ao capítulo 02-class-inheritance, que ainda não foi traduzido, dá para ignorar.

```js run
class Rabbit extends Object {
constructor(name) {
*!*

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"construtor do pai" soa estranho e pode ser ambíguo. O termo comum em português é "construtor da classe pai".

Suggested change
*!*
super(); // precisamos chamar o construtor da classe pai ao herdar

Por exemplo, um método de comparação `Article.compare(article1, article2)` ou um método de fábrica `Article.createTodays()`.

They are labeled by the word `static` in class declaration.
Eles são identificados pela palavra `static` na declaração da classe.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pequena inconsistência: na linha 6 static é chamada de "palavra-chave", mas aqui virou só "palavra". Sugiro usar o mesmo termo nos dois lugares.

Suggested change
Eles são identificados pela palavra `static` na declaração da classe.
Eles são identificados pela palavra-chave `static` na declaração da classe.

[recent browser=Chrome]

Static properties are also possible, they look like regular class properties, but prepended by `static`:
Propriedades estáticas também são possíveis, elas se parecem com propriedades comuns de classe, mas são precedidas por `static`:

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Aqui duas orações independentes estão ligadas só por vírgula, o que em português fica como uma frase corrida. Sugestão:

Suggested change
Propriedades estáticas também são possíveis, elas se parecem com propriedades comuns de classe, mas são precedidas por `static`:
Propriedades estáticas também são possíveis. Elas se parecem com propriedades comuns de classe, mas são precedidas por `static`:

@diogoosz

diogoosz commented Nov 8, 2026

Copy link
Copy Markdown
Contributor Author

Obrigado, @gabifs! Apliquei tudo: traduzi o título do exercício (ficou em inglês), removi "(factory)" redundante, traduzi a string "Today's digest" e o comentário de saída, "construtor do pai"→"construtor da classe pai", "palavra"→"palavra-chave" (consistência com a linha 6), e separei a frase corrida em duas orações.

@gabifs
gabifs merged commit 0562f23 into javascript-tutorial:master Nov 8, 2026
1 check passed
@gabifs gabifs mentioned this pull request Nov 12, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants