Skip to content

Commit

Permalink
Revisão da marinalimeira e do vitortalaia
Browse files Browse the repository at this point in the history
  • Loading branch information
Cesar de Barros committed Oct 6, 2017
1 parent 3a8719a commit 9a7fbec
Showing 1 changed file with 13 additions and 11 deletions.
24 changes: 13 additions & 11 deletions javascript/vale-a-pena-aprender-vanillajs--com-certeza.md
Expand Up @@ -5,7 +5,7 @@

# Vale a pena aprender Vanilla JS? Claro!

O propósito deste artigo é enfatizar a importância dos fundamentos JavaScript para todo programador front-end. Eu irei te dizer porque você deve ter um bom conhecimento do puro (Vanilla) JavaScript. Isto significa JavaScript sem nenhum framework ou biblioteca adicional.
O propósito deste artigo é enfatizar a importância dos fundamentos JavaScript para todo programador front-end. Eu irei te dizer porque você deve ter um bom conhecimento do puro ([Vanilla](https://en.wikipedia.org/wiki/Vanilla_software)) JavaScript. Isto significa JavaScript sem nenhum framework ou biblioteca adicional.

Eu também irei mencionar alguns recursos que me ajudaram a aprender o básico.

Expand All @@ -17,7 +17,7 @@ Então, existe alguma razão pela qual você deveria se importar em aprender Van

É difícil se tornar um(a) bom(a) desenvolvedor(a) sem conhecer o principal da linguagem.

Assim como você precisa entender os princípios fundamentais da lei antes de poder entrar em uma área específica da lei. Esta comparação é puramente acidental. 😉
Assim como você precisa entender os princípios fundamentais da lei antes de poder entrar em uma área específica da lei. [Esta comparação](https://ideas.ataccama.com/i-stopped-being-a-lawyer-became-a-developer-and-its-awesome-5311e8d74882) é puramente acidental. 😉

Eu entendo que a maioria dos aspirantes a desenvolvedor web querem ser contratados o quanto antes. Eu queria isso também.

Expand All @@ -35,25 +35,25 @@ Ou é melhor entender como a linguagem em que todas essas bibliotecas e framewor

Sim, você está certo, é a segunda opção.

Se você possui um sólido conhecimento dos fundamentos do JavaScript, a única coisa de que você precisa para se familiarizar ao começar a trabalhar com um novo framework é a *sintaxe* dele. As regras básicas serão as mesmas já que debaixo de todas as camadas de abstração, ainda é apenas JavaScript.
Se você possui um sólido conhecimento dos fundamentos do JavaScript, a única coisa de que você precisa para se familiarizar ao começar a trabalhar com um novo framework é a **sintaxe** dele. As regras básicas serão as mesmas já que debaixo de todas as camadas de abstração, ainda é apenas JavaScript.

Se seu conhecimento é limitado a um único framework JavaScript, você terá dificuldades em aprender um novo. Diferentes frameworks são normalmente baseados em um conjunto diferente de princípios do JavaScript. A longo prazo você irá passar mais tempo tentando entender vários frameworks e debugando o código que você escreveu neles.

Todos os frameworks e bibliotecas JavaScripts são inevitavelmente baseados no Vanilla.
Todos os frameworks e bibliotecas JavaScript são inevitavelmente baseados no Vanilla.

Isto deve convencer qualquer um que o conhecimento de JavaScript puro é necessário a longo prazo. É um pré-requisito para qualquer desenvolvedor(a) de sucesso, especialmente para aqueles que trabalham desenvolvendo no ecossistema JavaScript.

## Experiência Profissional

Há não muito tempo atrás, eu olhei atrás para minha jornada de advogado a desenvolvedor web. Já faz 18 meses desde que escrevi minha primeira função JavaScript, e meu 10º mês trabalhando profissionalmente como um desenvolvedor front-end.
Há não muito tempo atrás, eu olhei atrás para minha [jornada](https://ideas.ataccama.com/i-stopped-being-a-lawyer-became-a-developer-and-its-awesome-5311e8d74882#.v3xurb9v5) de advogado a desenvolvedor web. Já faz 18 meses desde que escrevi minha primeira função JavaScript, e meu 10º mês trabalhando profissionalmente como um desenvolvedor front-end.

Eu ainda lembro como foi desafiador para mim descobrir o jeito certo de aprender JavaScript, considerando que eu não tinha nenhuma experiência anterior com programação. Eu tentei (e ainda estou tentado) muitas maneiras diferentes de aprender de forma eficiente. Algumas são mais recompensadoras, outras menos.

Mais importante, eu não posso expressar o quão importante foi para mim ter dado ênfase ao aprendizado JavaScript puro desde o começo. Frameworks vieram depois.
Mais importante, eu não posso expressar o quão importante foi ter dado ênfase ao aprendizado JavaScript puro desde o começo. Frameworks vieram depois.

No momento, estou trabalhando com React e Redux. Mesmo assim, muitas vezes aparece um problema que eu consigo resolver graças ao meu conhecimento em Vanilla JavaScript. Estes bugs seria muito mais desafiadores de resolver com apenas o meu conhecimento de um framework em particular.
No momento, estou trabalhando com React e Redux. Mesmo assim, muitas vezes aparece um problema que eu consigo resolver graças ao meu conhecimento do JavaScript puro. Estes bugs seriam muito mais desafiadores de se resolver apenas com o meu conhecimento de um framework em particular.

Aprender React ou Angular 2 não irá te ensinar que objetos são passados por referência ou como closure funciona. Tentar entender estes conceitos por trás das abstrações dos frameworks é muito mais difícil. Isto torna conceitos simples de JavaScript mais difíceis de entender.
Aprender React ou Angular 2 não irá te ensinar que objetos são passados por referência ou como closures funcionam. Tentar entender estes conceitos por trás das abstrações dos frameworks é muito mais difícil. Isto torna conceitos simples de JavaScript mais difíceis de entender.

Além disso, se você está trabalhando com JSX (React, Vue, Inferno) ou TypeScript (Angular 2), você tem outra camada de abstração no topo disso tudo.

Expand All @@ -69,9 +69,9 @@ Existem vários cursos e livros sobre JavaScript e seus frameworks. Ainda assim,

Mas ainda assim há alguns bons...

[Eloquente JavaScript](http://eloquentjavascript.net/) irá te ensinar não apenas o básico de JavaScript, mas também o básico de programação em geral. Se você já é um(a) programador(a) avançado(a), este livro irá te prover uma perspectiva sobre JavaScript e seus conceitos principais.
[Eloquente JavaScript](http://braziljs.github.io/eloquente-javascript/) irá te ensinar não apenas o básico de JavaScript, mas também o básico de programação em geral. Se você já é um(a) programador(a) avançado(a), este livro irá te prover uma perspectiva sobre JavaScript e seus conceitos principais.

Outro ótimo recurso é a série de livros [Você Não Sabe JavaScript](https://github.com/cezaraugusto/You-Dont-Know-JS) de Kyle Simpson (o link aponta para a versão traduzida). Suas explicações sobre conceitos avançados de JavaScript são amigáveis para iniciantes e ele os aprofunda. Os títulos dos livros te darão uma dica sobre o que você irá aprender. "Iniciando", "Escopos & Clausuras", "this & Prototipagem de Objetos", "Tipos e Gramática", "Async e Performance", "ES6 e Além". Existe também um novo sétimo livro sobre [programação funcional em JavaScript](https://github.com/getify/Functional-Light-JS).
Outro ótimo recurso é a série de livros [Você Não Sabe JavaScript](https://github.com/cezaraugusto/You-Dont-Know-JS) de Kyle Simpson (o link aponta para a versão traduzida). Suas explicações sobre conceitos avançados de JavaScript são amigáveis para iniciantes e ele os aprofunda. Os títulos dos livros te darão uma dica sobre o que você irá aprender. "Iniciando", "Escopos & Closures", "this & Prototipagem de Objetos", "Tipos e Gramática", "Async e Performance", "ES6 e Além". Existe também um novo sétimo livro sobre [programação funcional em JavaScript](https://github.com/getify/Functional-Light-JS).

Uma das ótimas coisas sobre JavaScript Eloquente e Você Não Sabe JavaScript é que **você pode tê-los de graça** (cheque os links fornecidos). Mas se você achá-los úteis, não esqueça de apoiar os autores comprando seus livros.

Expand All @@ -86,13 +86,15 @@ Se você investir seu precioso tempo aprendendo Vanilla JS, você não vai se ar
Pra mim, a maior vantagem, é que aprender JavaScript puro vai ter muito mais valor ao longo prazo do que investir tempo em um framework em particular. Frameworks são apenas atalhos.
Por baixo dos panos, é tudo JavaScript.

Você verá por si mesmo em uma situação onde o framework que você está usando tiver uma comportamento inesperado. Nesse caso, você será forçado a investigar esse bug ao olhar o código fonte. Eu já disse que apesar de muitos frameworks não possuirem uma documentação decente, eles tem um código bem complexo? Mas, sem problemas, você com certeza já dedicou algum tempo aprendendo Vanilla JS. Ou ainda não?
Você verá por si mesmo em uma situação onde o framework que você está usando tiver um comportamento inesperado. Nesse caso, você será forçado a investigar esse bug ao olhar o código fonte. Eu já disse que apesar de muitos frameworks não possuirem uma documentação decente, eles tem um código bem complexo? Mas, sem problemas, você com certeza já dedicou algum tempo aprendendo Vanilla JS. Ou ainda não?

Você deve se lembrar de apenas uma coisa deste artigo:

Tenha sempre em mente que conhecimento de Vanilla JS vai te ajudar a se tornar um desenvolver muito melhor. Ponto.

Se você gostou desse artigo, dê a ele algumas palmas no Medium. Eu ficarei muito agradecido.

[Artigo original: Is Vanilla JavaScript worth learning? Absolutely.](https://medium.freecodecamp.org/is-vanilla-javascript-worth-learning-absolutely-c2c67140ac34)

Vejo você no Twitter 😊
David Kopal (@coding_lawyer) | Twitter

0 comments on commit 9a7fbec

Please sign in to comment.