Skip to content

Commit 205e87f

Browse files
gabifsodsantos
andauthored
Apply suggestions from code review
Co-authored-by: Osvaldo Dias dos Santos <osvaldo.msdsantos@yahoo.com>
1 parent 3a8a150 commit 205e87f

File tree

1 file changed

+17
-17
lines changed

1 file changed

+17
-17
lines changed

1-js/03-code-quality/04-ninja-code/article.md

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -105,7 +105,7 @@ Uma leitura rápida no código se torna impossível. E quando temos um erro de d
105105

106106
## Sinônimos inteligentes
107107

108-
```quote author="Confúcio"
108+
```quote author="Lao Zi (Tao Te Ching)"
109109
O Tao que pode ser narrado não é o Tao eterno. O nome que pode ser nomeado não é o nome eterno.
110110
```
111111

@@ -126,17 +126,17 @@ Por exemplo, a função `imprimePagina(pagina)` vai usar a impressora. E a funç
126126
## Reuse nomes
127127

128128
```quote author="Lao Zi (Tao Te Ching)"
129-
Mas quando ocorre a limitação
130-
Logo surgem os nomes.
131-
Quando os nomes surgem
129+
Uma vez o todo dividido, as partes<br>
130+
precisam de nomes.<br>
131+
Já existem nomes suficientes.<br>
132132
Deve-se então saber parar.
133133
```
134134

135135
Adicione uma variável nova apenas quando for absolutamente necessário.
136136

137137
Ao invés disso, reuse os nomes já existentes. Apenas atribua novos valores para eles.
138138

139-
Em uma função tente usar apenas as funções usadas como parâmetros.
139+
Em uma função tente apenas usar variáveis passadas como parâmetros.
140140

141141
Isso fará com que seja bem mais difícil identificar o que exatamente está dentro da variável *agora*. E também de onde ela vem. Uma pessoa com intuição fraca terá que analisar o código linha por linha e observar as mudanças através de cada parte do código.
142142

@@ -156,21 +156,21 @@ function funcaoNinja(elem) {
156156

157157
Um colega programador que quiser trabalhar com `elem` será surpreendido na segunda metade da função... Somente durante o debug, depois de um exame do código, ele irá descobrir que estava trabalhando com um clone!
158158

159-
Isso é visto frequentemente em códigos. Mortalmente efetivo até mesmo com os ninjas mais experientes.
159+
Isso é visto frequentemente em códigos. Mortalmente efetivo até mesmo contra os ninjas mais experientes.
160160

161161
## Sublinhas por diversão
162162

163-
Coloque sublinhas `_` e `__` antes dos nomes das variáveis. Como `_nome` ou `__valor`. Será melhor ainda se apenas você souber o significado disso. Ou, melhor, adicione apenas por diversão, sem um signifcado em particular. Ou significados diferentes em lugares diferentes.
163+
Coloque sublinhas `_` e `__` antes dos nomes das variáveis. Como `_nome` ou `__valor`. Seria melhor ainda se apenas você soubesse o significado disso. Ou, melhor, adicione apenas por diversão, sem um signifcado em particular. Ou significados diferentes em lugares diferentes.
164164

165-
Você mata dois coelhos numa paulada só. Primeiro, o código se torna mais longo e menos legível, e segundo, um colega desenvolvedor terá que gastar um bom tempo tentando entender o que significam as sublinhas.
165+
Você mata dois coelhos numa paulada só. Primeiro, o código se torna mais longo e menos legível, e segundo, um colega desenvolvedor pode gastar um bom tempo tentando entender o que significam as sublinhas.
166166

167-
Um ninja inteligente põe sublinhas em uma parte do código e evita elas em outras partes. Isso deixa o código ainda mais frágil e aumentam as chances de futuros erros.
167+
Um ninja inteligente põe sublinhas em uma parte do código e evita elas em outras partes. Isso deixa o código ainda mais frágil e aumenta as chances de futuros erros.
168168

169169
## Mostre seu amor
170170

171-
Faça com que todos vejam a grandiosidade das suas entidades! Nomes como `superElemento`, `megaFrame` e `itemLegal` com certeza irão deixar isso bem claro para o leitor.
171+
Faça com que todos vejam a grandiosidade das suas entidades! Nomes como `superElemento`, `megaFrame` e `itemLegal` com certeza irão iluminar um leitor.
172172

173-
Aliás, por um lado, algo é escrito como: `super..`, `mega..`, `legal..` Mas por outro -- isso não traz detalhe nenhum. Um leitor talvez decida procurar por um signifcado e irá meditar por uma hora ou duas.
173+
Aliás, por um lado, algo é escrito como: `super..`, `mega..`, `legal..` Mas por outro -- isso não traz detalhe nenhum. Um leitor talvez decida procurar por um signifcado oculto e meditar por uma hora ou duas.
174174

175175

176176

@@ -207,7 +207,7 @@ Existem funções que parecem que não alteram nada. Como `estaPronto()`, `checa
207207

208208
**Um truque ótimo é adicionar uma ação "útil" a elas, além da sua tarefa principal.**
209209

210-
Uma expressão de surpresa atordoada na cara dos seus colegas quando eles virem uma função com nome `esta...`, `checa...` ou `encontra...` mudando alguma coisa -- vai definitivamente ampliar seus limites da razão.
210+
Uma expressão de surpresa atordoada na cara dos seus colegas quando eles virem uma função com nome `é...`, `checa...` ou `encontra...` mudando alguma coisa -- vai definitivamente ampliar seus limites da razão.
211211

212212
**Uma outra forma de surpreender é retornar um valor não padrão.**
213213

@@ -223,20 +223,20 @@ O grande Tao flui por toda parte,<br>
223223
tanto para a esquerda quanto para a direita.
224224
```
225225

226-
Não limite a função pelo o que está escrito em seu nome. Seja amplo.
226+
Não limite a função pelo que está escrito em seu nome. Seja amplo.
227227

228-
Por exemplo, uma função `validaEmail(email)` poderia (além de checar a validade do email) mostrar uma mensagem de erro e perguntar para reescrever o email.
228+
Por exemplo, uma função `validaEmail(email)` poderia (além de checar a validade do email) mostrar uma mensagem de erro e pedir para re-entrar o email.
229229

230230
Açoes adicionais não devem ser óbvias pelo nome da função. Um verdadeiro programador ninja também as tornará não óbvias assim como o resto do código.
231231

232232
**Juntar várias ações em uma protegerá seu código de ser reutilizado.**
233233

234-
Imagine, algum outro desenvolvedor quer apenas checar o email, mas não mostrar uma mensagem. Sua função `validaEmail(email)` que executa as duas ações não servirá pra ele. Então ele não irá interromper sua meditação perguntando sobre ela.
234+
Imagine, algum outro desenvolvedor quer apenas checar o email, mas não mostrar uma mensagem. Sua função `validaEmail(email)` que executa as duas ações não servirá pra ele. Assim, ele não irá interromper a sua meditação perguntando algo sobre ela.
235235

236236
## Sumário
237237

238-
Todas as "peças de conselhos" acima são de códigos reais... Algumas escritas por desenvolvedores experientes. Talvez até mais experientes do que você ;)
238+
Todas as "peças de conselho" acima são de códigos reais... Algumas escritas por desenvolvedores experientes. Talvez até mais experientes do que você ;)
239239

240240
- Siga algumas delas, e seu código se tornará cheio de surpresas.
241241
- Siga muitas delas, e seu código se tornará realmente seu, ninguém irá querer alterá-lo.
242-
- Siga todas, e seu código se tornará uma lição valiosa para novos desenvolvedores procurando pela iluminação.
242+
- Siga todas, e seu código se tornará numa lição valiosa para novos desenvolvedores procurando pela iluminação.

0 commit comments

Comments
 (0)