Transcrições
1. Introdução: Olá. Sou Chris Hermione, sou de Berlim, Alemanha e sou desenvolvedor Web há mais de 20 anos e desde que tivemos Javascript, essa foi uma das minhas paixões. Escrevi alguns livros sobre isso, fiz muitos treinamentos sobre ele, e hoje vou compartilhar um pouco disso com vocês. Estou muito animado que nossa comunidade web se tornou tão grande que você pode ir a reuniões ou conferências quase todas as semanas e é isso que eu faço. Eu dou muitas notas importantes, dou muitos treinamentos, e entrevisto em empresas e com empresas o que eles querem fazer com tecnologias mais recentes que incluem aprendizado de máquina, inteligência
artificial, e também bom desenvolvimento da Web antigo com Javascript e outras linguagens. Este curso é para pessoas que querem entender Javascript e querem usá-lo agora, e estão meio sobrecarregados com todas as ofertas que estão lá e a fragmentação dos materiais de aprendizagem que estão lá fora. Então, se você é alguém que está apenas começando com Javascript, isso é para você também, ou se você é alguém que tem feito Javascript, mas sente que deve haver mais, isso é para você também. É uma boa visão geral do que o espaço Javascript está fazendo hoje em dia e o que você pode fazer com a linguagem, e é muito mais do que costumava ser no passado. Todos os materiais e todos os produtos que vamos
falar neste curso são baseados na Web e de código aberto. Então, você pode trabalhar com eles em várias plataformas, você não precisa ter um Macintosh, você não precisa ter um computador Windows, você pode usar o que quiser. Eu não quero que você diga qual ambiente usar e qual ambiente configurar, em vez disso você deve encontrar o que faz você mais confortável. Então, nada aqui é algo que você precisa comprar porque o código aberto nos ajuda a ser desenvolvedores muito melhores. Espero que você encontre algo que o excite e você
se tornará um desenvolvedor de Javascript melhor após o final deste curso, então vamos continuar.
2. Javascript hoje: Olá e bem-vindo ao curso Redescobrindo JavaScript. Hoje, queremos falar sobre o que é JavaScript e o que ele se tornou. O problema no JavaScript é que sempre foi uma coisa que muitas pessoas querem fazer e apenas algumas pessoas ficaram muito entusiasmadas. Você provavelmente esteve brincando com JavaScript ou você está escrevendo JavaScript, mas na maioria das vezes você terá usado o código de outras pessoas. Quando o JavaScript surgiu, era apenas algo que nós adicionamos em sites e aprendemos olhando para o código de outras pessoas. A fonte de visão era nosso professor e nós realmente olhamos para o que estava acontecendo, copiamos e colamos código de outra pessoa, mudamos alguns números ao redor, espero que nada tenha quebrado e então nós realmente tivemos um JavaScript que era nosso. Isso mudou muito. Se você usa JavaScript há algum tempo e você volta para o mundo agora e percebe que as pessoas falam sobre coisas como NPM, como nós, como web pack. A linguagem parece ser muito mais complexa do que costumava ser, costumava ser mais como Java,
Ruby, ou esse tipo de linguagens, e eu quero que você entenda que isso é normal e esta é uma evolução normal e você não Não tem que se sentir inadequado com isso, você não tem que se sentir preocupado com isso. Isso significa apenas que a versatilidade do
próprio JavaScript possibilitou que ele fosse para direções diferentes. Então, quando você se torna um desenvolvedor JavaScript hoje em dia, você pode ser qualquer coisa; você pode ser apenas um desenvolvedor web que faz algumas coisas bonitas em sites com JavaScript, você pode ser um desenvolvedor Node que constrói servidores APIs, microsserviços, todos esses tipos de coisas legais, ou você pode ser até mesmo um desenvolvedor de aplicativos hardcore para construir algo como Slack ou Atom em JavaScript, HTML e CSS e depois empacotá-lo como um aplicativo em si. Agora, se você pensar no que o JavaScript costumava ser, você vai entrar em um monte de recursos on-line que são muito,
muito desatualizados e muito,
muito perigosos de aprender hoje em dia. Tomemos por exemplo W3Schools aqui que é sempre o primeiro resultado no Google quando você pesquisou algo aleatório em JavaScript. Ele ensina muitas maneiras como o JavaScript costumava estar de volta nos dias e algumas das sintaxe JavaScript que estava de volta nos dias, mas muito deste JavaScript não é mais como você escreve as coisas hoje em dia. Como alguém que usa esses recursos há anos, temos alguns problemas que devemos nos livrar. Um dos hang-ups é que os navegadores sempre serão terríveis e os navegadores estarão sempre no nosso caminho e não suportando as coisas que queremos fazer. Outro desligamento é que nossos usuários finais não atualizarão seus ambientes e terão um problema com novos recursos que queremos ter. Devemos libertar-nos desses problemas e desses medos e é por isso que
precisamos de novos recursos para aprender JavaScript e encontrar suas informações. Então, se você quiser procurar algo hoje em dia em JavaScript como alguns recursos, eu quero que você vá rapidamente através com você para jogar. Estas são as coisas onde você deve sempre ir se quiser descobrir algo novo e elas estão sempre atualizadas porque são ambientes orientados pela comunidade. Então, quando JavaScript se tornou uma coisa, muitas pessoas pararam de escrever JavaScript em si porque os navegadores eram problemáticos, como Internet Explorer, Netscape, que quer, Firefox, mais tarde, Opera, todos eles tinham diferentes maneiras de lidar com o idioma porque o idioma não foi devidamente padronizado bem e nós não tínhamos padrões web antes desse tempo também. Quando o movimento Web Standard surgiu e HTML5 tornou-se uma coisa, isso mudou drasticamente. Nossos recursos hoje em dia, nossos navegadores hoje em dia são baseados em padrão e concordam entre si quais diferentes tecnologias devem ser usadas e o que se torna de padrão e o que não. Não precisamos mais correr atrás da inovação dos criadores de navegadores e fazer coisas para um navegador e de forma diferente para outro navegador e isso é uma coisa maravilhosa. Uma das principais coisas que as pessoas costumavam fazer, é usar jQuery em vez de JavaScript porque jQuery nos ajudou a nivelar o campo de jogo, para realmente dar aos navegadores as mesmas experiências e nós não precisávamos pensar sobre isso mais. Mas hoje em dia, os navegadores são tão bons e os padrões têm ido tão longe que você provavelmente não precisa mais
jQuery porque você está realmente adicionando código extra para um ambiente que não existe mais e para navegadores que não deveriam estar mais em uso. O primeiro recurso que eu quero que você fique animado porque eu estou muito animado é chamado caniuse.com. Caniuse.com é um site de recursos que lhe diz o que os navegadores podem fazer nos dias de hoje e qual navegador suporta qual recurso em que formato. O caso de uso mais comum para CaniUse é que você irá lá para encontrar suporte para algo, digamos, por exemplo, para buscar API. Depois de digitar isso, você já obtém os resultados dizendo o que Fetch é em substituição moderna para XMLHttpRequest e qual navegador o suporta. Você também pode ver os navegadores vermelhos que não suportam e às vezes faz navegador amarelo que suportá-lo, mas tem problemas. Uma vez que haja algum problema, ele será listado com problemas conhecidos aqui onde você pode contorná-los, neste caso, nós não temos nenhum, mas outros recursos podem tê-los, então você sabe onde estão os problemas quando eles serão corrigidos e o que está acontecendo. A coisa que para cada recurso que você procurar você terá uma guia de recursos aqui que mostra sobre a especificação, ter uma demonstração,
indo para Polyfill e, em seguida, ter as diferentes plataformas como o Internet Explorer edge, Chrome, Firefox e WebKit e ver quando eles
estão enviando ou qual é o problema com o status agora. Então, se você sempre se pergunta sobre ter um novo recurso que alguém está animado e você se pergunta se você pode usá-lo em seus produtos com seus usuários finais, este é um ótimo recurso para olhar. Ele é mantido continuamente, todos os fabricantes de navegadores estão dando feedback para os mantenedores deste produto. Então, este é o lugar onde aprender se é seguro
usar algo e também ficar animado em usá-lo. Se você quer saber sobre a linguagem Javascript em si, então isso é para os nerds hardcore sobre javascript, o grupo TC39 Ecma é na verdade as pessoas que escrevem o idioma. Este é o consórcio ou este é o comitê técnico que cria a próxima versão dessa língua e mantém a versão atual dessa língua. Então, esta é a principal fonte para a própria linguagem, não algum outro recurso que possa estar dizendo como sabemos JavaScript. Estas são as pessoas que fazem isso. Se você quiser procurar algo em JavaScript e quiser ver como algo funciona, os documentos da Web MDN para mim são o melhor recurso. Eles não são o melhor recurso porque eu costumava trabalhar para a Mozilla, mas isso é porque onde todos os fabricantes de navegadores percebem que eles devem colocar suas informações. O MDN web docs é um wiki aberto para que você possa editá-lo, você também pode participar desta comunidade, e você verá recursos que podem ser atualizados muito mais rápido do que qualquer outro recurso lá fora. Então, se você procurar algo como, por exemplo, array.map neste caso, você não só vai obter um exemplo do que é, mas você pode obter todo o tipo de informação o que significa. Então ele explica para você que o método de mapa cria uma nova matriz com os resultados de chamar uma função de provedor e assim por diante e assim por diante. Você pode executar esses exemplos ao vivo aqui, você pode então redefini-los para desfazê-los bem e, em seguida, você obtém informações
detalhadas sobre a sintaxe dele como usar o mapa e como usar os retornos de chamada. Você tem listagem para as especificações explicando onde coisas diferentes significam e você também tem uma tabela de compatibilidade de navegador listada aqui que é, estranhamente, vindo de Caniuse.com. Então, esses dois sites estão intimamente vinculados para que
esta informação sempre estará atualizada também. Se você quer saber sobre os diferentes navegadores e como eles funcionam bem com JavaScript, você também está com sorte. Nos tempos em que comecei como desenvolvedor de JavaScript, estes eram códigos pretos. Ninguém sabia o que estava por vir, ninguém sabia o que estava acontecendo. Hoje em dia, todos os navegadores têm recursos e até contas do Twitter onde você encontra novas informações sobre eles. Este é o Microsoft para Edge, para Chrome faz o blog Chromium, para Safari faz o blog WebKit, para Firefox faz, é claro, o blog Firefox e para outros como o navegador Samsung, Opera , todos os criadores de navegadores estão muito abertos aos desenvolvedores para falar com eles e ir em frente. Então, estes são alguns dos recursos para olhar quando você quer começar a trabalhar com JavaScript hoje em dia. Estes são recursos atualizados, recursos editáveis onde você pode participar e você pode torná-los melhores se quiser. Não basta Google aleatoriamente para problemas em JavaScript, em seguida, copie e cole o código. Pegue esses recursos e aprenda JavaScript dos criadores de JavaScript e dos implementadores de JavaScript e você será um desenvolvedor muito mais feliz. Agora sabemos alguns dos recursos que você pode continuar revisitando e aprendendo que JavaScript não é o que costumava ser. No próximo vídeo, vamos falar sobre alguns dos recursos que
o JavaScript está fazendo hoje em dia ou algumas das implementações que o JavaScript tem que você pode não ter pensado e que você nunca viu antes.
3. Usos para o Javascript: Como alguém que aprendeu JavaScript há muito tempo, que na verdade é muito antigo sobre isso, você pode pensar que JavaScript é algo que você acabou de colocar em páginas HTML para torná-las mais interativas e fazer algo como carregar algo em segundo plano, ou baixar algo em segundo plano, ou fazer algo mais interativo. JavaScript passou por isso há algum tempo, quando HTML5 se tornou uma especificação de repente, a pilha HTML tornou-se algo que é mais dependente do JavaScript do que antes. Porque alguns dos recursos que precisávamos não faziam sentido sem ele. Um elemento de tela não faz nada. É apenas uma tela que é o que está implícito no nome. Então, você precisava de JavaScript para fazer algo com isso. Algumas das outras características do JavaScript foram da mesma maneira. Então, a idéia de ter um editor de texto, e escrever algo em uma página HTML e abri-lo no navegador, apenas ter JavaScript é muito antigo e você deve estar pensando sobre isso mais como uma plataforma, ou como um ambiente para construir algo com. Se você der uma olhada na web, o que o JavaScript está fazendo agora, há muitas coisas de forma. Há todos os tipos de coisas que fazemos com JavaScript e você pode estar ciente do que está acontecendo lá. Tome, por exemplo, algo como three.js. Three.js é uma biblioteca 3D que permite fazer animações 3D em JavaScript. Algo para o qual, no passado, sempre usávamos o Flash. Então, JavaScript é uma linguagem agora que é usada para coisas
altamente criativas em vez de apenas algo que está na web para torná-lo mais bonito, ou para fazer um texto animado em segundo plano rolando ao redor. Coisas que fizemos com o Flash no passado agora estão firmemente no espaço
do JavaScript porque JavaScript é suportado em todos os navegadores, e não precisa ser baixado e não precisa ser instalado como o Flash costumava ser, Quicktime costumava ser, ou mesmo Silverlight costumava ser. Outras coisas que o JavaScript está fazendo estão se tornando parte do seu dia-a-dia. Slack, por exemplo, é provavelmente uma ferramenta que você vem usando e Slack é escrito em JavaScript com HTML e CSS como as outras duas tecnologias. Então, em essência o que temos com o Slack, é um aplicativo que seria executado no navegador, embalado em um instalador para que você possa usá-los no desktop, no seu celular e em qualquer outro lugar. A plataforma faz isso com base em que se chama Electron. Electron permite que você escreva JavaScript, HTML
e CSS,
e, em seguida, empacote-o como um aplicativo para instalá-lo em seus sistemas operacionais e em diferentes plataformas móveis. Então, JavaScript escrito para Electron é muito mais provável de ser mais fácil para alguns desenvolvedores fazer porque você não tem aquele desconhecido em qual navegador ele vai ser executado. Você não sabe se o problema de seus usuários finais serem capazes ativar e
desativar as coisas porque você controla o código, e você também controla a distribuição e o processo de instalação nos próprios sistemas operacionais. Uma grande mudança no espaço JavaScript foi quando Node saiu. Node é uma versão do lado do servidor do JavaScript, onde você pode escrever qualquer coisa que você usou para escrever e coisas como Java, PHP ou Python, agora no próprio JavaScript. Então, o que Node permite que você faça é escrever servidores, é executar novos microsserviços, escrever qualquer coisa que você queria ter
nessas linguagens mais antigas muito mais complexas agora em JavaScript. Nó é instalável em todas as plataformas lá fora, e você vai na maioria dos casos, vai querer ter Node instalado porque as ferramentas de JavaScript que são escritos em Node, e permitem que você seja muito mais eficaz como um Desenvolvedor JavaScript é algo para ser realmente animado e algo para usar. Agora, como Node é do lado do servidor, e Node é uma maneira diferente de escrever código, as regras que se aplicam para ser um desenvolvedor JavaScript em Node são diferentes de ser um desenvolvedor Javascript que escreve coisas para a web. Então, não fique muito frustrado se você não entender isso e você não quer entrar nesse espaço, mas ainda há muitas coisas em Node que são muito eficazes e torná-lo muito mais eficaz de usar. NPM é o gerenciador de pacotes de JavaScript. Então, Node soluções agora são escritos em pacotes e, em seguida, pode ser instalado como pacotes em seus sistemas operacionais ou também usado como pacotes em seu outro código. Como alguém que é JavaScript da velha escola como eu, isso soa muito complexo e até certo ponto é. Mas como alguém vindo de um mundo Pro ou de um mundo Java, esta é uma forma muito simples e normal de desenvolvimento. Então, o que temos com o NPM in Node é o JavaScript nivelando para se tornar uma plataforma de software real para escrever aplicativos
enormes e construir grandes aplicativos juntos por componentes reutilizáveis. Como as pessoas estão escrevendo aplicações massivas em JavaScript, a linguagem mostrou alguns de seus problemas. A natureza do JavaScript que ele não tem nenhum tipo, tornou difícil para as pessoas que vieram de outras línguas escrever milhares e milhares de linhas de JavaScript e ser capaz de refatorá-las mais tarde. TypeScript resolve esse problema colocando um sistema de tipo em cima do JavaScript, e dessa forma torna muito mais escalável e muito mais fácil de refatorar. Então, se você escrever aplicações enormes em JavaScript, provavelmente TypeScript é uma boa idéia para pensar e TypeScript também tem o benefício de ser mais rigoroso em sua sintaxe do que JavaScript é. Então, você pode usar o TypeScript mais tarde, vamos fazer isso em outro vídeo para mostrar quais são
seus erros de JavaScript enquanto você está realmente escrevendo-os. Eu não quero que você se desencoraje olhando todas essas ferramentas e pensando agora, “Oh, meu Deus. Eu tenho que entender todos eles.” Estas são diferentes opções de onde o JavaScript está sendo usado, e onde você pode se tornar um desenvolvedor de Javascript, ou pode reaprender sendo um desenvolvedor de JavaScript. Nem todo mundo tem que se tornar um desenvolvedor Node ou tem que usar Electron para construir aplicativos, você ainda pode usar JavaScript para construir sites normais, e para empacotá-los de outras maneiras ou não tocar no lado do servidor em tudo. Então, o que Javascript é por causa de sua versatilidade como linguagem, é uma mistura de piquetes. É como, você pega as coisas que você quer usar e carreira sábia, eu realmente aconselharia as pessoas a encontrar uma coisa que realmente te deixa animado, e se concentrar nisso. Em vez de ser um jack-of-all-trade, e esperando que você tenha tempo suficiente para acompanhar todas essas implementações diferentes, porque muito provavelmente, você não terá esse tempo. No próximo vídeo, vamos falar sobre algumas
das opções que você tem para se tornar um desenvolvedor de JavaScript, ou às vezes, você realmente não quer escrever JavaScript em si, mas usar outra coisa que o torna mais eficaz.
4. Conhecendo o Javascript Zen: Bem-vindo a este vídeo na série JavaScript redescobrindo. Nesta seção, eu quero que você lembre-se que JavaScript é enorme e há todos os tipos de coisas que são feitas com Javascript. Então, você não deve se sentir mal se você se sentir sobrecarregado olhando em volta o que as pessoas estão fazendo com ele. Você também não deve se sentir mal que outras pessoas são melhores
nisso porque outras pessoas fazem coisas diferentes. Então, quando se trata de usar JavaScript nos dias de hoje, não
se trata de saber tudo. Isso é quase impossível de fazer porque as diferentes maneiras de Javascript são implementados em torno da web e em torno de pilhas de tecnologia, solicitadas diferentes maneiras de aprender Javascript e diferentes maneiras de usá-lo. Então algo que faz sentido em um ambiente de nó, não necessariamente faz sentido na web e o contrário. Então, se você é desenvolvedor javascript que só quer usar Vanilla Javascript, JavaScript
básico sem complementos, sem recursos, sem conjuntos de dados ou conjuntos de ferramentas em torno dele, MDN Web Docs é onde você está realmente indo para estar vivo. Aqui é onde você encontra a informação e é aqui que você vai encontrar emoção. Esta é provavelmente uma comunidade onde você também quer participar e você também quer fazer parte. Então, lá você pode brilhar, lá você pode dar suas informações de volta, e lá você pode fazer o que você realmente está animado e o que você pode fazer. Se você está mais inclinado a usar JavaScript de forma a criar serviços de software
adequados ou servidores nesse tipo de coisas, então o mundo do nó é onde você está muito mais animado. Esses mundos diferentes em JavaScript todos têm suas diferentes comunidades, têm diferentes canais de folga, têm seus diferentes eventos e têm seus diferentes encontros comunitários. Então, às vezes, você está de pé como um desenvolvedor web em um evento de nó, você não entende uma única palavra. Considerando que o desenvolvedor de nó como vai a uma conferência de design e não entende o que as pessoas estão
entusiasmadas quando fazem tantas coisas diferentes em JavaScript no ambiente de notas. Então, certifique-se de encontrar um lugar onde você está
animado e, em seguida, concentre-se nisso. Não olhe para os outros de maneiras diferentes que eles estão fazendo errado. Eles estão fazendo diferente do que você. Também não há nada de errado em adotar uma abordagem diferente para o desenvolvimento usando uma biblioteca. React é uma comunidade enorme e um ambiente enorme também baseado em Javascript, mas React em si é uma linguagem que faz as coisas completamente diferente do que os navegadores fazem isso, e Vanilla Javascript faz isso. Isso não significa que você está realmente desistindo do custo e você realmente não se tornando um desenvolvedor Javascript. Isso significa que você está pegando um atalho ou está esperando para criar aplicativos maiores, aplicativos
diferentes em uma pilha diferente. Então, olhe para essas coisas e olhe em volta onde você vai se interessar. Você pode ficar com o mundo Vanilla Javascript e construir tudo sozinho. Você pode ir para um ambiente do lado do servidor com nó ou você pode usar UJS, Angular, ou React para construir aplicativos nessa pilha, assim como nós costumávamos ter pessoas escrevendo coisas em jQuery em vez de JavaScript porque jQuery então resolvido o problema das diferenças do navegador. Reagir, e Vue, e Angular, naqueles, resolver outros problemas colocando idéias
arquitetônicas de desenvolvimento de software no espaço Javascript. Então, nada dessas coisas deve ser ou deve ser uma barreira para você. Nada dessas coisas faria você se sentir mal. Mas entenda que se você é especialista em Javascript, você provavelmente não entenderá Reagir desde o início. Você tem que colocar esforço e aprendê-lo dessa forma da mesma maneira Vue.js. Muitos designers gostam de Vue.js porque é muito mais fácil do que o Vanilla Javascript. Porque toda vez que falamos sobre esse JavaScript, falamos sobre todas as exceções com as quais você precisa se preocupar. Com Vue.js, muitas dessas coisas foram equilibradas para você,
então você pode começar a desenvolver algo bonito e bonito, mais simples do que entendendo a própria linguagem. Então, pense em Javascript como, novamente, como uma escolha e mistura, como algo onde você pode ir e você não precisa jogar em todas essas comunidades, mas você deve escolher uma delas e ficar animado com elas. Então, eu espero que você se sinta um pouco mais calmo e você tenha um pouco de um sentimento zen sobre Javascript agora, sabendo que você não precisa jogar em todas as partes e entender tudo o que está acontecendo ao seu redor. No próximo vídeo, vamos falar sobre o ambiente de desenvolvimento para JavaScript, que mudou drasticamente de ser apenas um editor de texto em um navegador. Então, eu quero que você entenda onde jogar, o que fazer e o que instalar.
5. Ambientes evoluídos de desenvolvimento: Bem-vindo de volta ao Redescobrindo JavaScript. Desta vez eu quero falar sobre como o ambiente de desenvolvimento mudou
ao longo dos últimos anos e algumas das coisas que você pode não estar usando já, mas você deve se tornar muito mais eficaz. Há sempre uma coisa estranha dizendo às pessoas que você
precisa aprender isso para ser mais eficaz e parece muito trabalho. Mas algumas das coisas que vou mostrar agora são tão comuns e úteis, que na verdade não faz sentido não usá-las. Estávamos sempre super entusiasmados como desenvolvedores de JavaScript que tudo o que precisávamos era um editor de texto e um navegador para executar nosso JavaScript em. Isso mudou com o JavaScript agora sendo diferente do que era antes e também os ambientes que usamos mudaram imensamente. A primeira coisa a pensar é que como os navegadores mudaram. Os navegadores não são mais os buracos negros. O que não sabemos o que está acontecendo e quanto suporte eles têm para JavaScript. Também é quase impossível hoje em dia desativar o JavaScript em um navegador e era muito mais fácil para os usuários no passado. Mas temos um problema nos navegadores hoje em dia como pessoas que têm complementos como bloqueadores de
anúncios e esse tipo de coisas que podem bloquear seu JavaScript, mas como os próprios usuários, as pessoas estão muito mais bem com o JavaScript sendo ativo nos navegadores e a maioria deles nem sabe disso. Todos os navegadores hoje em dia são sempre verdes, então eles estão realmente chegando a cada dois dias, cada duas semanas, todos os meses. Às vezes, leva até três meses para uma nova versão ser lançada, mas não é como os quatro ou cinco anos que costumávamos ter entre diferentes versões do Internet Explorer e as pessoas não atualizaram. Então atualizar os navegadores é muito mais fácil do que costumava ser e isso significa que para nós, como desenvolvedores de JavaScript, temos novos recursos para jogar. Cada navegador também vem com ferramentas de desenvolvedor integradas. Então, este por exemplo aqui é o Firefox e se eu digitar o elemento inspecionar, eu posso ver que
eu tenho meu editor HTML, eu tenho um depurador onde eu posso depurar meu JavaScript e nós vamos voltar a isso mais tarde. Tenho editores de estilo. Eu tenho todos os tipos de insights de rede e insights de
desempenho de meus aplicativos e eu tenho um console lá dentro. Então, se você quiser apenas experimentar algum JavaScript, você pode usar isso para realmente escrever JavaScript e fazer como um três mais dois que é matemática em JavaScript, mas editor JavaScript agora mostra que este é cinco. A próxima coisa que os navegadores têm, todos eles têm ferramentas de desenvolvedor. Então, há o Firefox, é claro, com a ferramenta Firefox, há o Chrome com as ferramentas chromium dev, que provavelmente são as mais sofisticadas no momento. Edge tem as ferramentas de desenvolvimento F12 que são muito melhores do que as pessoas pensam, porque não
olhamos para elas há anos e até mesmo o Safari tem algumas ferramentas de desenvolvedor realmente boas lá, mas você precisa transformá-lo em um modo de desenvolvedor primeiro para mostrar essas ferramentas de desenvolvedor. Os navegadores móveis não têm necessariamente ferramentas de desenvolvedor, mas muitas delas permitem que você se conecte do
seu desktop ao seu celular para depurar o navegador nessas ferramentas de desenvolvedor também. Assim, todos os navegadores nos últimos anos
se tornaram não apenas maneiras de exibir e executar JavaScript, mas também ambientes de desenvolvimento para construir JavaScript e escrever JavaScript. O próximo passo que temos é que substituímos as mensagens de texto normais ou os editores de texto que temos por editores mais sofisticados. Entraremos em detalhes mais tarde sobre o que isso significa e quais os benefícios que um bom editor tem para você. Mas basta dizer que muitos deles são hackable e essa é a melhor coisa sobre eles. Estes editores estão escritos em línguas que nós mesmos podemos escrever. Podemos estendê-los com extensões ou podemos escrever, fazer parte do código principal porque todos eles são de código aberto. Então, nossos ambientes de desenvolvimento, nossos ambientes de editor tornaram-se maneiras de contribuir em vez de apenas esperar que um editor tenha um determinado recurso e nós pulando de editor para editor e tendo que aprender todas as diferentes características deles para se tornar mais eficaz em usá-los. A próxima coisa que muitas pessoas têm medo e se perguntam por que devemos usá-lo é o terminal. O terminal neste caso, aqui está agora definido como H na minha máquina OS X ou em toda a minha máquina Windows. Eu tenho o Ubuntu Shell também. É basicamente um Unix Shell, então ele está voltando para as tecnologias dos anos 70 e nós, como desenvolvedores de
JavaScript, nos perguntamos por que precisaríamos disso. Pessoas que escreveram tecnologias do lado do servidor como Java, PHP ,
Perl, eram muito mais eficientes nessas coisas e já as conhecem. Achamos que não havia necessidade lá. Com nós que mudam, Node é JavaScript que é executado no lado do servidor para que tudo que você precisa saber, você precisa executar Node em acontece no terminal. Isso também significa que muitas ferramentas JavaScript, como processos de compilação, gerenciamento de
pacotes e assim por diante, acontece no próprio terminal. Então, é uma boa habilidade para se ter. Não é muito difícil aprender o terminal. É um pouco estranho às vezes e às vezes você faria uma solicitação de Node e você recebe como cinco telas de mensagens de erro aleatórias, você não sabe o que está acontecendo. Mas não desanime com isso. O que você pode fazer no terminal e o que você faz como um desenvolvedor JavaScript no terminal é usar ferramentas construídas, usar os scripts, usar ambientes Node, mas também fazer o controle de versão e nós vamos ter um especial em vídeo de profundidade mais tarde no controle de
versão e o que isso significa para você e por que é uma coisa benéfica. Então, o terminal é algo bom de saber. Não é necessário que você tem que ser um especialista nele, mas há muitos materiais de treinamento bons lá fora e se você apenas começar por exemplo nó você pode executar JavaScript em seu terminal bem aqui e você pode sair dele pressionando Ctrl+C duas vezes. Então você não vai ser um especialista no terminal durante a noite, mas é algo que você deve estar pensando sobre porque muitas coisas boas estão acontecendo no terminal hoje em dia, o que é bastante bizarro porque ele volta para Tecnologia dos anos 70 quando você pensa sobre isso. Uma outra coisa que temos usado no passado foi bibliotecas e frameworks, e é claro, há novas estruturas a cada semana. Todos eles tornam nossas vidas mais fáceis, todos eles são muito melhores do que JavaScript simples e alguns deles realmente, realmente fazem a diferença. Então fique animado com eles, olhe para eles. Mas sempre esteja ciente de que ser um especialista em versão de um framework para este mês por um conjunto de habilidades incrível, por meio ano, pode não ser uma coisa que você precisa mais. Então, para mim, frameworks e bibliotecas são coisas que tornam nossa vida mais fácil e às vezes são necessárias ou às vezes muito boas para o trabalho de projeto. Mas ser um especialista em apenas um deles, pode realmente ser um problema em um futuro próximo se você não é flexível o suficiente para saltar entre frameworks de vez em quando bem, e conhecer as tecnologias abaixo em JavaScript, os recursos de linguagem que permitem que essas bibliotecas sejam o que são, é um bom conjunto de habilidades para ter, porque então você se torna independente da biblioteca que você deseja usar e você apenas usa JavaScript e a biblioteca para os benefícios que foi escrito para. A última coisa que eu estou realmente animado e eu acho que um monte de pessoas deve usar mais, são editores on-line ou como playgrounds. Este é JS bin aqui, por exemplo. JS bin é uma oportunidade para você escrever um JavaScript, CSS e HTML e executá-lo diretamente no navegador. Então, neste caso, quando eu agora tenho um div aqui e eu quero fazer algo com ele. Então, em CSS eu posso dizer que a div deve ser uma cor de fundo verde e dar-lhe uma largura e altura. Então o que eu estou fazendo, você já vê que há uma div verde aqui
agora e em JavaScript eu posso agora obter uma referência a isso. Let d é igual a Document.QuerySelector ('div'); e então você pode dizer div.style.width é igual a 400 pixels. Se eu usar esse agora e devo executá-lo, então algo deve acontecer. Executar com JS e ele se transforma na outra largura embora no CSS tenha uma largura de 10 pixels. Essas coisas são ótimas para experimentar as coisas rapidamente sem ter que configurar nada no seu computador. Outros como caneta de código também têm todos os tipos de como pré-compiladores lá, então se você quiser usar SaaS ou você quiser usar uma biblioteca como view JS ou React sem instalar qualquer um
deles, estas são ótimas maneiras de tentar essas coisas para fora. Eles também são colaborativos para que outras pessoas possam fazer uma cópia do que você fez, mudar as coisas e fazer algo com elas. Então, há três coisas que você pode fazer com isso. Brincar com as coisas, experimentá-las, pedir ajuda. Então, quando você tem algo que não funciona em seu código, escreva uma pequena demonstração em uma dessas coisas e envie esse link para que as
pessoas possam realmente editá-las para você ou editá-las com você de forma colaborativa e então você pode encontrar o problema juntos, além de ter que descrever qual é o seu problema. Então, essas são ótimas ferramentas para ensinar. Estas são ótimas ferramentas para aprender e estas são ótimas ferramentas para apenas colaborar com outras pessoas e quando você usa os pré-processadores e configurações que você pode fazer neste POA JavaScript, você pode dizer todos os tipos de pré-compiladores e todos os tipos de motores diferentes que você pode usar. Isso significa que você não precisa configurar seu computador. Isso significa que você não precisa mexer com seu ambiente, você só tem algo online que você joga e se você gosta, então você pode começar a configurar sua máquina, e é aqui que o JavaScript mudou do passado. Agora temos todo um ecossistema de ferramentas de desenvolvimento para trabalhar. Então, repito, os navegadores são sempre verdes e todos eles vêm para ferramentas de desenvolvedor. Portanto, devemos usar as ferramentas de desenvolvedor e entender quais
são seus benefícios , em vez de colocar alertas ou logs de console em todos os lugares em nosso código. Bibliotecas e frameworks nos ajudam a fazer coisas que não são tão fáceis de ser feitas em JavaScript nativo. Se você quer apenas fazer algo simplesmente, isso é provavelmente uma boa idéia, mas pode ser perigoso confiar apenas neles. Os editores são muito melhores do que os editores
de texto do passado porque todos eles estão agora integrados. Eles estão abertos, eles são extensíveis e você pode escrever código neles para eles. Ferramentas online como o JS bin ou código Bins são uma ótima oportunidade para você experimentar coisas sem bagunçar seu próprio computador e enviar coisas para outras pessoas para trabalhar colaborativamente nelas. Então isso é apenas algumas das coisas onde JavaScript funciona e o terminal é o último onde fazemos um monte de como controle de
versão e ferramentas no próprio JavaScript. Saber tudo isso é um grande incômodo ou é um trabalho e tanto, mas vai torná-lo muito mais eficaz e você não precisa ser um especialista em todos eles. Você só precisa experimentá-los quando precisar deles e encontrar algumas informações online. sobre isso que eu queria falar com você neste vídeo.
6. Benefícios de bons editores: Bem-vinda de volta. Nesta seção de redescoberta do Javascript, eu quero falar sobre os recursos do editor que
devemos usar porque eles fazem todo o sentido. Nós sempre ficamos muito empolgados que você só precisa de um editor de texto para escrever JavaScript ou até mesmo uma linha de comando, se você quiser mas temos tantas ferramentas ótimas nos dias de hoje para tornar nossas vidas muito mais fáceis e nos permitir escrever código previsível, código de manutenção, porque o próprio editor tem recursos lá para nós. Para este exemplo, vamos usar o Visual Studio Code,
que é um editor de código aberto da Microsoft. Você também pode usar o Atom, você pode usar todos os tipos de outros editores. A maioria das estruturas terá seus próprios editores. Eu amo os recursos que temos e esses editores são os mesmos para todas essas ferramentas diferentes. Então, eu só quero falar sobre alguns dos recursos que você pode não ter visto ainda nestes. Nem todos eles são baseados em Javascript, alguns deles também falarão sobre HTML e CSS, mas S Javascript é usado em conjunto com essas tecnologias. Faz sentido pensar neles também. Agora, você obtém o Visual Studio Code apenas indo para code.visualstudio.com e você pode baixá-lo lá. Você pode baixá-lo para Mac, Linux ou Windows. Então, é uma plataforma cruzada, open source, editor gratuito, que você pode simplesmente instalar em sua máquina e ele é executado automaticamente a partir daí. Ele se atualiza também e você pode entrar para como obter a visualização do desenvolvedor se você quiser realmente ficar animado com isso. Ele também tem documentação extensível sobre o próprio editor. O que significa, como usá-lo, que tipo de recursos estão chegando, que tipo de recurso que tem Node.Js e para JavaScript, como depurá-los e como fazer conjuntos de recursos para diferentes ambientes que você deseja ter. Estes estão constantemente sendo atualizados e você também pode editá-los se quiser. Se você encontrar algo errado nesta documentação,
por favor, edite-os e envie-o de volta para a equipe e você obtém recursos a partir disso. Agora, a primeira coisa a lembrar aqui ou o que é muito importante é que ele é chamado Visual Studio Code, mas não tem nada a ver com Visual Studio. Visual Studio é uma idéia que é a maior parte do tempo para mim como um desenvolvedor de Javascript exagero para o que estamos fazendo. Ele tem seus benefícios, claro, para usá-lo para outras línguas. É um ótimo ambiente de desenvolvimento, mas não é estúdio visual. Então, você não precisa se preocupar com o fato de ser um produto da Microsoft, você tem que fazer tudo com a Microsoft. Este é um produto de código aberto que é mantido por pessoas da
Microsoft, mas também pessoas de fora participam disso. Então, algumas coisas que eu quero apontar que os editores têm hoje em dia que eu acho que são muito mais excitantes do que o que tivemos no passado. A primeira coisa que você vê aqui é um esquema de cores e este disco já me ajuda no meu código para ver o que é o que. Então este é o seletor de consulta de documento e este aqui é um valor, por exemplo. Então você vê em seu código o que é o
que, que permite que você facilmente percorra seu código e entenda o que você está fazendo, vez de apenas ter um texto preto no fundo branco ou
texto branco no fundo preto que você precisa para entender o que é o quê. A próxima coisa que esses editores fazem, o que é bastante incrível para você, é que você pode mudar isso de acordo com suas necessidades. Se você precisar, por exemplo, uma fonte maior, então você pode mudar para cara de fonte diferente você pode ter uma face de fonte diferente. Todas essas coisas são ajustáveis, então você pode fazer isso o seu editor da melhor maneira que você quer tê-lo. Há muitas configurações lá, há muitas pessoas escrevendo seus próprios temas. Há uma suíte inteira, há uma comunidade inteira em torno de aparentar editores
diferentes e mover o tema de um editor para outro. Mas todas essas coisas são feitas para você tornar seu código mais legível para si mesmo e mais legível para a próxima pessoa que tem que manter seu código que na verdade pode ser você em um futuro próximo. A próxima coisa que eu amo nos editores hoje em dia é que eles fazem coisas automaticamente para você como recuar. Como por exemplo, quando você tem uma nova função aqui chamada Myfunction, e você faz os colchetes, você vê que já recuado
na próxima linha que forma tornando seu código muito, muito mais legível. Há configurações automatizadas lá e você copia e cola uma função ou um pedaço de código dentro, e ele define para você da maneira que você deve fazê-lo. Isso é muito poderoso porque no passado, você tinha todas essas reclamações sobre uma pessoa usando o espaço, há uma usando abas. Nesse caso, você pode definir aqui se deseja espaços ou guias,
e você pode alterá-los para convertê-los de espaços em guias, e você pode fazer o código de índice de recuo automatizado para você mesmo. Então, enquanto você estava escrevendo código, a sintaxe do código ou a aparência
do código é feita para você pelo editor o que, naturalmente, torna muito, muito mais fácil de ser mantido e para tornar seu código muito mais legível, e você pode se concentrar em escrever seu código vez de estilizar seu código de acordo com isso. Há todos os tipos de características interessantes lá também. Como quando você tem algo como um ouvinte do advento aqui, você pode fazer uma ação comum para destacar todos eles e como você pode ver, agora
temos diferentes cursores aqui. Então, em vez de ter um cursor, agora
você tem um cursor após cada um deles. Então, se você quiser renomear todos eles para outra coisa, você pode fazê-lo apenas pressionando delete e renomeando para outra coisa. Assim, você não precisa fazer isso pouco a pouco e continuar repetindo as coisas, e quando repetimos as coisas, cometemos erros. Assim, um editor ajuda você muito, muito melhor para descobrir o que está acontecendo. Auto-completar é algo que a maioria dos editores tem para você hoje em dia também, e isso é muito, muito útil porque faz duas coisas. Primeiro de tudo, certifique-se de que você não digita errado as coisas, e segundo, você digita muito menos, e muito menos digitação significa que você pode escrever mais código em menos tempo e você também tem menos pressão em seus dedos. Então, por exemplo, se eu quiser reescrever essa primeira linha aqui, eu começo com um botão de reinicialização, e ele percebeu que já tenho um botão de reinicialização definido. Então, tudo o que tenho para digitar é descansar ou todas as outras coisas que podem ser aplicáveis a ele. Então, eu só apertei a conclusão superior e ter o botão de reiniciar. Em seguida, começo o AddeVentListener. Neste caso, eu também poderia pegar o addEventListener e destacá-lo, e dessa forma eu aprendi o que addEventListener significa. Se eu não me lembro, por exemplo, a ordem dos parâmetros neste ou eu não sei que tipo de recursos estão disponíveis para mim. Então, neste caso, MSInterup,
touchstart, ponteiro de cancelamento e assim por diante e assim por diante. Eu agora sei o que essas coisas são apenas clicando sobre eles e obtendo uma conclusão automática para mim. Então é isso que um bom editor faz por você e torna muito mais simples escrever muito mais código sem fazer nenhum erro de digitação. Agora, se você tem uma enorme quantidade de código, isso não é muito de uma enorme quantidade de código, é apenas um jogo simples que eu escrevi. Você pode ver que um bom editor tem esses mapas aqui também. Então você pode saltar no próprio mapa para uma determinada parte em vez de apenas ter que fazê-lo linha por linha. Então, esse é um pequeno atalho agradável para saltar para uma seção no código, bem
como lhe dá uma visão geral de como o tamanho do código é que você escreveu até agora. Outra coisa interessante é quando você tem uma grande quantidade de código, às vezes
você se pergunta o que é algo que você chama de pássaro. Então, por exemplo, eu tenho uma função que você chamou de clearmove, e ela diz aqui, ok, isso define constantemente se mover? E se eu clicar nesse, eu posso dizer Peek Definition, e dessa forma, eu posso ver onde a função está na outra parte do código. Então, eu não tenho que rolar para trás e para frente entre as duas seções para entender o que estou fazendo. Então eu posso apenas fazer isso com um pouco seu Control-F12 ou com um mouse aqui, e dessa forma eu posso realmente entender onde eu estou. Então eu posso ver que este código está aqui, o outro código está aqui, então eu teria que pular todo o documento só para fazer aquela espiada. Então essas são algumas coisas que são muito, muito poderosas para fazer aqui quando se trata de escrever JavaScript. Outras coisas que um bom editor deve fazer para você também
é permitir que você tenha vários editores ao lado do outro. Então, neste caso, eu posso dividir isso aqui e eu posso ter meu HTML ao lado do meu JavaScript, então eu vejo como os dois interagem e eu posso saltar entre eles. Um recurso extra que algo como Visual Studio Code tem é que ele tem todo o ambiente que falamos anteriormente, a depuração e o console diretamente em um editor. Então você não precisa pular entre o terminal e o editor o tempo
todo porque você tem um terminal embutido no sistema aqui. Então, eu poderia apenas fazer meus comandos construídos em meus comandos de controle de versão diretamente no editor sem ter que pular entre o terminal e meu editor o tempo todo. Às vezes é uma coisa boa saltar entre os dois porque você está mudando de idéia, mas também é bastante pesado para o seu pensamento cognitivo ir de um editor para outro. Considerando que, se você permanecer neste, você pode fazer todos os comandos que você precisa fazer aqui. Então continue fazendo o controle de versão, você pode fazer seus scripts de compilação, e todos eles também podem ser automatizados. Então, toda vez que eu salvar algo no editor, ele faria automaticamente parte do meu script criado ou parte da minha implantação para mim. Assim você tem tudo em um editor. Isso também é ótimo se você ensinar às pessoas algo sobre desenvolvimento web, você pode apenas dar-lhes este editor em vez de dizer que
você precisa de um editor, você precisa configurar seu terminal, você precisa instalar seus terminais dessa maneira. Outra coisa que ele faz é linting. Então, por exemplo, você tem menos CSS aqui, e eu tenho um linter instalado. Então, se eu mostrar os problemas, deve me dizer quando algo der errado. Então você pode ver aqui, agora eu tenho um semi cólon que eu excluí, e de repente, o fundo fica vermelho e eles têm linhas rabiscadas sob essas coisas. Isso é muito parecido com quando você faz um erro de digitação na palavra, ele faz isso agora dentro do código. Então, neste caso, eu esqueci o semi dois-pontos que agora é um erro aqui, é semi dois-pontos esperado, e então, o resto do seletor CSS também está quebrado porque o semi dois-pontos não está lá. Então, se eu colocar um ponto-e-vírgula lá de novo, então todas essas setas vão embora. Dessa forma, eu tenho uma visão diretamente enquanto eu estou codificando que eu estou fazendo algo errado em vez de ter que ir para o navegador, depurá-lo e encontrar meus problemas dessa maneira. Você pode fazer a mesma coisa em JavaScript instalando uma extensão ou você
também pode usar apenas fazer um comentário acima do seu JavaScript chamado ts-check. Esse usa scripts tipo linter para executar seu JavaScript novamente. Então, neste caso, ele agora me mostra todos os erros JavaScript que eu fiz neste, e alguns deles na verdade não são erros, mas há falsos positivos. Mas se eu cometesse algum erro, ele automaticamente me diria isso. Então, por exemplo, se eu excluí esse jogo aqui e tentei acessar o jogo em outro lugar,
ele diz, “Não é possível encontrar o jogo”. Então, neste caso, eu não defini o jogo, então eu não posso realmente fazer um jogo gira porque eles não existem. Isso seria um erro que o navegador iria me
jogar e eu teria que depurar lá. Mas como eu tenho o linter ligado no próprio editor, ele me mostra as coisas enquanto eu estou codificando e
assim eu me torno um desenvolvedor melhor porque eu não cometo erros. Você também vê os pontos vermelhos aqui, estes estão nos dizendo onde estão todos os problemas que acabamos de falar. Então, alguns deles têm esses problemas e você passa para a linha sinuosa, e então ele diz qual é o problema dessas coisas. A última coisa que é grande neste editor é que ele tem controle de versão embutido, e vamos falar sobre controle de versão mais tarde. Então, quando você altera algo e você clica nele, você pode realmente ver as diferenças em sua mesclagem. Então, neste caso, se eu quiser enviar isso de volta para o servidor, ele me diz agora que essas novas duas linhas foram adicionadas, e essas duas linhas foram excluídas, e a coisa do jogo foi alterada aqui também. Então eu entendo, antes de enviar algo para o servidor para meus colegas, que me diz todas as coisas que aconteceram. Então, em essência, um bom editor deve torná-lo em primeiro lugar, fácil para você escrever por ter uma boa equipe e torná-lo mais fácil digitar as coisas por ter auto-completar e o recuo e essas coisas para você. Os bits extras que eu amo sobre o Visual Studio Code e outros também,
em vez disso, ele tem um terminal embutido, ele tem o forro embutido, e ele me diz quando eu estou fazendo algo errado enquanto eu estou fazendo algo errado em vez de eu ter que descobrir rastreando o navegador e quebrá-lo. Então, pense em configurar seu editor para você mesmo, e se você optar por usar um Visual Studio Code,
você saberia que ele é um editor de código aberto e não desaparecerá, e isso também é ótimo. Então agora você sabe como um bom editor pode torná-lo um desenvolvedor melhor e encontrar as extensões para
ele, é realmente algo para fazer seu editor também. Em seguida, eu quero falar sobre algo que é muito importante quando você quer trabalhar com um monte de outras pessoas e também quando você quer ter certeza de que o que você
fez hoje é compreensível em três semanas, e isso é controle de versão.
7. Controle de versão: Bem-vindo a esta parte do curso de redescoberta de JavaScript, onde não estamos falando de JavaScript per se, mas estamos falando de código, e estamos falando de controle de versão. Controle de versão é algo que você pode não ter encontrado se você é um freelancer ou você acabou de escrever algum JavaScript para si mesmo. Mas, assim que você trabalha em um ambiente onde várias pessoas, ou com clientes diferentes, ou com outras pessoas, controle de
versão é uma obrigação absoluta, porque não há nada melhor do que ter algo que lhe diz e obriga a descrever o que fez. Nós sempre pensamos como se estivéssemos bem quando olhamos para o nosso código algumas semanas depois, depois de não termos tentado com eles. Mas, acredite em mim, quanto mais você esperar, mais você volta ao seu código. Você não tem idéia do que tem feito e você não
tem compreensão do que está acontecendo, também. Controle de versão é como criar diferentes arquivos zip e nomeá-los versão um, versão dois, versão três ou criar pastas diferentes não é a coisa mais inteligente a fazer, porque você vai ficar confuso no futuro, bem. Então, certificar-se de que o novo código vive em
outro lugar que não apenas em sua máquina é uma maneira
muito, muito simples de garantir que seu código continuará vivo mesmo quando algo der errado e você tiver apenas uma cópia de segurança em outro lugar. Agora, em termos de controle de versão, tínhamos muitas ferramentas no passado. Tínhamos como Visual SourceSafe, tínhamos SVN, tínhamos CVS, tínhamos equipe CodeStar. Trabalhei com cerca de 15 tipos diferentes em diferentes empresas ao longo dos anos. Nos últimos anos, porém, git tornou-se o padrão para quase todos lá fora. Git é um sistema de controle de versão que é um sistema de código aberto também. Está disponível gratuitamente. Você pode baixar em git-scm.com. Mas o que fez o git realmente, realmente interessante para o mundo de código aberto e para todos outros também é que o GitHub apareceu. O GitHub é um ambiente ou uma comunidade em torno de código. É uma plataforma social para código. O que o GitHub permite que você faça não é apenas enviar seu código lá para que ele seja hospedado, outras pessoas possam baixá-lo lá, mas ele faz a versão controlando usando o git sob o capô. Então toda vez que você muda algo e envia para o sistema, você tem que escrever um comentário, o que você fez e o que você mudou, e que no final é uma grande oportunidade para você descobrir quando algo deu errado ou descobrir quando aconteceu uma mudança que você não queria ter. Então, forçando-se a colocar suas coisas no controle de versão, você escreve documentação para o seu código na forma de mensagens de commit, e isso é algo que você terá que fazer no futuro quando você trabalhar em equipes
maiores De qualquer forma, para que as pessoas entendam o que você tem feito. A outra coisa que o controle de versão, é claro, ajuda você com é que você pode manter, por exemplo, uma versão de seu código em um
dos ramos e você pode criar outro ramo e ser criativo com ele. Então, no controle de versão, você sempre pode reverter as últimas versões e ir para as próximas versões. Então, quando algo dá errado, você tem um passo em frente e um passo para trás. Dessa forma, você deixa uma faixa e deixa seu código sempre de forma funcional. A coisa realmente interessante sobre o GitHub como plataforma é que, você tem todo o tipo de coisas da comunidade rolando e as pessoas podem gostar do seu código, as pessoas podem te dar estrelas, as pessoas podem comentar sobre ele, as pessoas podem fazer pull requests, pegar seu código, copiá-lo para o repositório deles para fazer duas coisas diferentes com ele enquanto você ainda está trabalhando no outro, e quando eles têm alterações que são interessantes, eles enviam para você e para o sistema localiza automaticamente a diferença entre os dois e os mescla sem quebrar seu código. Isso é algo que é quase impossível de fazer à mão e realmente significa que você tem que fazer muita comunicação com a outra pessoa. O sistema foi escrito, git foi escrito para garantir que você sempre pode mesclar essas duas coisas para que ambos trabalhem juntos. Isso significa que em um grande pedaço de código, várias pessoas podem trabalhar ao mesmo tempo em diferentes locais, em diferentes fusos horários, em diferentes formas de escrever, em diferentes editores e o código vive em o repositório e é aí que todo mundo o encontra. A outra coisa que torna o GitHub muito interessante é uma maneira simples de mostrar seus sistemas também. Então, no último vídeo, eu mostrei que eu tinha um pequeno jogo aqui chamado quinze e três, que é apenas um pequeno jogo do que eu escrevi para mim mesmo, e eu não queria colocá-lo em nenhum lugar no servidor. Mas eu tenho isso na minha versão controlando aqui no GitHub. Eu não tenho nenhum pull request ou problemas que as pessoas enviam para mim ainda porque eu não enviei para as pessoas e eu não falei com as pessoas olhando para ele. Tenho uma pessoa assistindo. Não sei quem é, mas vamos descobrir isso em breve. A grande coisa sobre isso é, agora que o código está aqui para editá-lo, mas você também tem um ramo de páginas do GitHub, então agora eu posso ir para o mesmo repositório aqui e em vez de ter o, eu posso fazer um codepo8.github.io e quinze e três, e então você pode jogar o jogo. Então, eu não só uso o GitHub para tornar meu código seguro e mantê-lo lá para manutenção, mas também hospedo uma versão executável desse no repositório. Então, você pode jogar o jogo aqui. Você pode experimentá-lo. Você pode enviar para as pessoas. Então, neste caso, um mais quatro vezes três é igual a 15 e eu tenho a resposta de escrita aqui. Então, este é o tipo de coisas que são ótimas para experimentar coisas e enviá-lo para as pessoas, e você pode facilmente transformar um repositório do GitHub em uma página hospedada apenas criando um novo ramo chamado páginas GH. Tudo isso é bem explicado na página do GitHub. Podemos passar por isso agora, mas se você for para o GitHub, há toda a documentação lá, e isso pode mudar no futuro, então certifique-se de que você sempre vá para a documentação em si. A melhor coisa sobre este aqui é que eu não tenho que me importar com a hospedagem. Não preciso me importar com a segurança do servidor. Eu só tenho meu código rodando onde o repositório está e assim eu posso fazer coisas bonitas. Eu também posso ter um arquivo readme.md que realmente explica o que meu repositório é sobre, e isso é uma maneira de deixar as pessoas entusiasmadas com isso. Então, por exemplo, no meu repositório, eu tenho esse tinderesque que as pessoas têm usado há algum tempo. Esta pequena interface de classificação de corte, e eu fiz apenas um gif animado para mostrar como é. Eu expliquei como usá-lo, como estender e onde baixar o código. Então, onde eu estou hospedando meu código, eu também escrevo minha documentação. Mantenho tudo num só espaço para não saírem de sincronia. Eles não saem do controle de versão, e tudo é mantido em uma coisa. Tudo o que eu preciso é de um editor e um terminal para enviar coisas para o repositório do GitHub. Como um desenvolvedor profissional ou apenas um desenvolvedor que quer ter
certeza de que meu código não será substituído por mim, controle de
versão é uma coisa muito, muito simples. Hoje em dia, com o GitHub sendo livre e com o
git sendo livre, é muito mais fácil fazer isso do que costumava ser no passado. Então, pense em usar o controle de versão não apenas para compartilhar seu código com outras pessoas, mas para se certificar de que você realmente se acostumar a documentar o que você está fazendo em seu código para que as pessoas não precisem entender seu pensando no seu código. Você escreve sua documentação de seu código como comentários
fonte em vez de apenas escrevê-los como comentários em seu código, que são muito mais difíceis de seguir e não tão fáceis de entender. Então, o controle de versão me ajudou muito a compartilhar muito com a comunidade, para obter coisas da comunidade,
para reutilizar o trabalho de outras pessoas, e para ter pessoas consertando as coisas para mim sem que eu tenha que explicar em 500 e-mails o que eu queria ter porque eles apenas olharam para o código, corrigi-lo, me enviaram um pull request e juntos nós construímos algo incrível. Como desenvolvedor de JavaScript em 2018, acho que essa é uma das maiores coisas, fazer
parte de uma comunidade e a ferramenta da comunidade é GitHub porque é aí que nosso código vive e nossos comentários vivem. GitHub não é apenas para projetos de hobby e para tornar seu próprio código mais sustentável, é a plataforma que todo mundo usa. Código do Visual Studio, o editor em si está no GitHub. A maioria dos navegadores está disponível no GitHub. A maioria dos frameworks que você está usando como nós agimos VUEJs e esse tipo de coisas são mantidas, escritas, e têm sua comunidade no GitHub. Também é uma ótima oportunidade para você entrar
na comunidade JavaScript não necessariamente por ser um bom programador, mas se você acabou de descobrir se alguém tinha um erro de digitação em sua documentação, você pode ajudá-los corrigindo-o diretamente em GitHub, enviando um pull request e tornando-se parte de um projeto apenas ajudando com algo que você conhece melhor do que outros, que neste caso pode ser inglês em vez codificar e as pessoas ficarão felizes com isso. Há um monte de empresas que têm dólares iniciantes em seus repositórios, algo que é simples de consertar, mas um engenheiro no produto poderia fazer facilmente, mas você como um recém-chegado poderia realmente tentar corrigir para entender como o produto é construído. Então, dessa forma você pode entrar no produto corrigindo algo simples e já tem uma experiência positiva começando com ele. Então, o GitHub não é nada do que você diz é apenas algo que as pessoas fazem em seu tempo livre. É o recurso número um agora onde tudo acontece em código aberto e em tecnologias gratuitas. Então, isso foi sobre controle de versão e como ele pode ajudá-lo a se tornar um desenvolvedor melhor comentando seu código e disponibilizando-o para outras pessoas. O próximo passo que eu acho que devemos dar como desenvolvedores JavaScript é parar de colocar console e alertas em todos os lugares e realmente olhar para como a depuração funciona em diferentes ambientes.
8. Como deputar em ferramentas de lint: Bem-vindo a este vídeo na parte da série Redescobrindo JavaScript. O que eu quero falar, a idéia de passar de depuração para linting, ou passar de escrever código, cometer erros, descobrir os erros, e depois corrigi-los para evitar erros. Ultimamente, eu comecei a escrever muito mais em ambientes
diferentes e eu descobri que em uma das minhas ferramentas favoritas em quase todos os editores de texto como, por exemplo, o Microsoft Word, é que quando eu digito algo errado, eu recebo um linha sinuosa sob ele e me diz que algo está errado lá. Então, antes de eu realmente enviar ou antes de imprimir, eu acho que eu fiz algo errado e que a ferramenta
me torna um escritor melhor dizendo o que está acontecendo de errado. Você provavelmente já viu isso e todos os tipos de editores e maioria das vezes os sistemas operacionais têm isso também. Outra ferramenta que fará parte dos anexos deste vídeo que eu adoro usar é o editor Hemingway, que é algo que não só me diz se eu escrevi algo errado em sintaxe, mas também me diz quando meu inglês é muito complexo ou quando eu usei palavras que poderiam ser mais simples ou palavras que poderiam ser mais curtas. Então, isso me faz um escritor melhor pela ferramenta me dizendo enquanto eu estou criando algo, que algo está acontecendo. Eu quero que você pense sobre editores de código exatamente da mesma maneira. Você pode configurar linting em todos os tipos de ambientes. No Visual Studio Code, por exemplo, há extensões para linting CSS, e também há extensões para linting JavaScript, e há o TS incorporado, TypeScript linter para mostrar seus erros em JavaScript que você Eu fiz. Você me viu mostrando isso antes no vídeo do Visual Studio Code, então, não precisamos mais repetir isso. Mas eu acho que é um passo muito importante para entender que você tem ferramentas que dizem que algo está errado antes de você fazer isso errado em vez ir aquele círculo completo entre o navegador editor, navegador editor, e descobrir o que é dando errado. Cada código, cada bug que você não escreveu é um bug salvo e realmente certifique-se de que seus usuários finais não vão encontrar bugs também. Uma dessas coisas para lembrar também é que, como desenvolvedores de JavaScript no passado, nossa principal coisa a fazer para descobrir algo é realmente colocar um log de console em algum lugar em seu documento ou antes disso, até mesmo alertar em nosso documento. Quando você escreve um alerta em um JavaScript, ele realmente pára a execução do script, faz caixa de alerta em seu navegador que você tem que pressionar OK, e então você continuar com isso. Com o log do console, você obtém as informações no console
das ferramentas de desenvolvedor do navegador e obtém as informações lá. Há dois problemas com os dois. Primeiro de tudo, você adiciona código extra ao seu código que não faz nenhum sentido para o usuário final ou o produto final. Eles nunca deveriam estar lá. Nenhum registro de console deve aparecer em um site ao vivo porque você pode realmente dar algumas informações ou algumas informações sobre seu código que as pessoas não deveriam ver, e as pessoas ficam confusas quando recebem esse tipo de mensagens e muito, claro, é um bug enorme. As pessoas dizem como “Por que essa coisa está me dizendo para pressionar OK antes que eu possa ir ao site?” Mas mesmo um registro de console pode ser confuso para as pessoas porque eles se perguntam o que aconteceu quando seu computador de repente
lhes diz algo que eles não esperavam. Então, em vez de usar a técnica de registro do console ou a técnica de alerta, uma coisa importante a fazer é um novo desenvolvedor ou como desenvolvedor hoje em dia, é se acostumar a usar pontos de interrupção. A depuração de ponto de interrupção tem sido uma coisa muito comum em outras linguagens há anos e anos, e o JavaScript também tinha uma depuração de ponto de interrupção há muito tempo. Como mesmo no Internet Explorer Four, havia ferramentas que você poderia adicionar ao navegador que lhe davam depuração de ponto de interrupção em vez de log do console. Então, o que eu quero dizer com isso? Digamos, por exemplo, que temos o meu jogo aqui que falamos antes, a coisa dos quinze e três. Se eu inserir ferramentas de desenvolvedor, eu diria, “Abrir ferramentas de desenvolvedor” e no meu depurador, eu defino um ponto de interrupção em algum lugar do meu código. Então, neste caso, eu tenho meu fifteen-three.js aqui. E agora vamos dizer algo onde ele iria, getdice, por exemplo. Posso fazer um ponto de interrupção aqui. Eu defini um ponto de interrupção apenas destacando isso agora, e se eu agora começar a jogar o jogo e eu pressionar este dado aqui, este ponto de interrupção pára. Então a execução do meu código foi interrompida. O site não continua executando o resto do código. O próprio editor tem uma coisa aqui. Agora eu tenho que chamar Stack aqui e eu tenho todas as configurações. Então, em vez de ter que escrever um log de console eu mesmo, o que eu tenho a dizer console log o que eu quero ter. Eu tenho toda uma informação sobre o que está acontecendo aqui, eu tenho esta janela, eu tenho o botão que eu cliquei, defini o elemento T onde eu agora sei o que o botão é e assim por diante e assim por diante. Então, em vez de ter que me repetir com muitos logs de console, eu tenho toda a visão sobre o que acontece de modo a
obter a função de dados que está sendo chamado aqui. Os argumentos que vieram, o primeiro foi um zero,
clique, e eu posso obter detalhes sobre aqueles, bem como o que aconteceu lá. Então, usando a depuração de ponto de interrupção, você pode escrever seu código e então você pode passar para a próxima etapa dele. Agora não funciona porque nós, na época
aqui , fizemos uma coisa diferente, mas é algo que teria consertado antes. Então pense em pontos de interrupção como seu amigo para
entrar em contato com toda a imagem do que pode ter dado errado com seu código, em vez de apenas um log de console onde você lista uma coisa que deu errado. Então, passar do registro para depuração é um grande passo para se tornar um desenvolvedor melhor, e passar de desenvolvimento para linting ou de depuração para linting é algo que garante que você não escreva bugs que você não precisa corrigir. Você apenas evita escrever bugs para começar, e este é um ótimo começo para se tornar um desenvolvedor JavaScript mais feliz. Então eu espero que você concorde que linting é algo que ajuda você a não cometer erros, enquanto depuração é algo que onde você cometeu erros e você descobre o que aconteceu. Então faz sentido conhecer os dois, mas a parte limitante é algo novo que normalmente não tocamos. Falando sobre algo novo, no próximo vídeo, vou falar sobre como me manter atualizado com o que está acontecendo
no espaço JavaScript e certificar-me de que você está acostumado com as coisas quando elas estiverem prontas para serem usadas.
9. Mantendo-se atualizado em JS: Bem-vindo a esta parte do curso de redescoberta de JavaScript, onde eu vou falar sobre algumas das coisas em um nível mais alto. Nosso problema com desenvolvedores de JavaScript do passado é que carregamos muita dor e miséria conosco lembrando como as coisas eram ruins no passado. Sempre tivemos ambientes ruins como navegadores que não podíamos controlar, editores que não faziam as coisas que fazíamos. Controle de versão não era uma coisa, então muitas vezes nosso código teve que ser reescrito quando algo deu errado e salvá-lo em discos rígidos ruins e assim por diante e assim por diante. Então, muitas vezes quando nós, como pessoas que usam JavaScript há muito, muito
tempo, especialmente na web, ouvimos falar sobre novas tecnologias. Chegamos a ele com um sentimento de ameaça e pensamos sobre isso não é a coisa certa e isso não vai acontecer. Eu não posso usá-lo ainda meus usuários finais não terão esse tipo de coisas e nós nos tornamos muito protetores para nosso conhecimento. As coisas que temos usado por anos e anos são as coisas que sempre funcionariam e essas coisas novas com as quais os kits legais funcionam apenas coisas novas que ninguém deveria usar. Esta não é uma atitude saudável em um ambiente que é tão rápido quanto o espaço JavaScript está agora. Então, quero que reconsideremos algumas de nossas maneiras, o que temos feito e também
descartemos parte do nosso conhecimento de coisas que estão dando errado. Só porque algo deu errado em navegadores há 10 anos ou cinco anos atrás, ou tivemos um problema em entender por que algo como nenhuma cadeira seria uma coisa legal de fazer, não
significa que não é uma coisa boa. Na verdade, significa que estamos ficando obsoletos e estamos cometendo os erros de assumir que as coisas estão dando errado onde eles realmente não estão. Então, mantendo-se atualizado com o que está acontecendo em JavaScript ficando animado com o que está acontecendo lá, nós temos a chance de rejuvenescer nossa idéia e encontrar a diversão em codificar novamente. Encontrar a felicidade do que fizemos no passado quando de repente
tínhamos como o dormitório e tínhamos navegadores disponíveis para o Ajax, podíamos reproduzir vídeos e navegadores que não
podíamos antes sem usar coisas como flash. A quantidade de mídia como bibliotecas de mídia em navegadores e a quantidade de coisas técnicas que os navegadores podem fazer hoje em dia deve ser emocionante para nós. Não deveria ser, nunca funcionou, então não funcionou no passado, então não funcionará agora. Então temos que gastar muito tempo escrevendo campos de poli e escrevendo soluções alternativas e usando bibliotecas porque os navegadores não farão isso direito. Como já abordei nos outros vídeos, estamos vivendo em um mundo onde os navegadores são sempre verdes, e os navegadores estão mudando o tempo todo e todos os navegadores estão abertos à comunicação também. Então, se algo está quebrado ou você vê algo
nos padrões ou em um navegador que você gosta, você pode falar com outros criadores de navegadores em listas de discussão, no Twitter no GitHub. fabricantes de navegadores deixaram de esconder seus engenheiros em porões e não permitiram que eles falassem com o mundo há muito tempo. Estamos todos abertos em público, estamos todos disponíveis para você conversar e estamos felizes em receber feedback e estamos felizes fazer as coisas acontecerem quando elas fazem sentido e quando podem ser padronizadas. Então, não se sinta desanimado sobre algo não estar disponível em um navegador agora e pensar que isso será para o futuro, em duas semanas, o novo navegador pode estar fora e pode ser suportado e cabe a nós exigir da nossos ambientes para se tornarem melhores e apoiarem coisas que fazem sentido e avançarem com a web. Então, o abraçar a nova tecnologia é uma parte muito,
muito importante de rejuvenescer a nós mesmos como desenvolvedor e descobrir o que é legal sobre JavaScript hoje em dia. Por outro lado, é claro, você não deve ficar muito animado com todas as coisas experimentais ou as coisas que as pessoas estão apenas experimentando. Seu computador, seu ambiente, seu editor e seu navegador, não
é o que os usuários finais têm lá fora. Você tem que encontrar uma maneira agradável de entrar no meio. Eu comecei a não viver mais na borda sangrando em JavaScript porque ficou frustrante para mim
experimentar as coisas e depois vê-los não sendo implementados ou
implementados de forma diferente e eu tinha que mudar meu código o tempo todo. Isso é algo com que muitas pessoas ficam empolgadas. Só quero construir coisas para as pessoas que trabalham. Então, eu me encontrei para ficar animado com as notícias de um mês atrás ampliando as notícias de borda sangrenta agora, e dessa forma eu me encontrei me tornando um desenvolvedor JavaScript muito mais animado novamente, mesmo trazendo meu antigo conhecimento e meus velhos apertos do que deu errado no passado em um novo ambiente. Então, dê uma olhada no que os navegadores estão fazendo, dê uma olhada em quais discussões estão acontecendo nos órgãos de padrões, e como eu disse no início deste curso, veja caniuse.com para ver se a coisa legal que você acabou de aprender sobre é apenas um sonho de tubulação por enquanto ou já está implementado em dois ou três navegadores, que significa que por mais três meses você provavelmente poderá usá-lo em todos os lugares. Então, não desanime sobre as coisas serem rápidas e inovadoras o tempo todo. Faça parte dessa inovação e você vai descobrir que JavaScript é muito mais divertido do que costumava ser. Felizmente, você se sente melhor agora sobre o ritmo da comunidade JavaScript e
a nova tecnologia chegando, porque você tem recursos para validar se algo realmente é tão legal quanto as pessoas dizem que é e você pode começar a usá-lo uma vez é seguro de usar. A próxima coisa que quero falar agora é como
abraçar a comunidade em torno do JavaScript e como se tornar parte disso.
10. Como encontrar a comunidade Javascript: Bem-vindo a esta parte da redescoberta do JavaScript, mas eu quero seduzi-lo a fazer parte da comunidade JavaScript, que é algo que não tivemos na primeira vez quando começamos com ele. Havia algumas listas de discussão, havia alguns fóruns, mas as mídias sociais ainda não aceitaram e a maioria das pessoas não colaboraram tanto em torno do projeto como fazem hoje em dia, agora que temos o GitHub e controle de pincel. Então, se você quer se tornar alguém no mundo do JavaScript agora, ou você quer usar coisas novas e experimentar coisas novas, você realmente deve participar dos canais de comunicação. Você pode ficar lá e olhar para as coisas nos primeiros meses. Você não tem que fazer parte ou você não tem que sentir que você
tem que contribuir com a grande coisa nova o tempo todo. É apenas uma parte muito interessante, quanto nos comunicamos um com o outro. Plataformas sociais como o GitHub, onde nosso código vive e as pessoas podem comentar coisas
e enviar pull request, e enviar solicitações de problema, são uma ótima maneira de
você começar e uma ótima maneira de descobrir sobre como as outras pessoas também são. É incrível o quanto mais você tem dentro quando você olha para as pessoas ao redor dos produtos e não apenas o produto, tantas vezes, eu não estou feliz com o produto, mas então eu olho para quem está mantendo-os, e quão bem eles lidam com a comunidade ao seu redor, então em vez de ser a pessoa irritada que apenas diz, isso é errado e você deve fazer isso completamente diferente, eu comecei a me comunicar e dizer: “Por que você fazer dessa forma? Não seria melhor ser assim?” Então, é uma ótima oportunidade para se acostumar a trabalhar com outras pessoas e provavelmente irá torná-lo melhor para você em seu próprio trabalho também. Por exemplo, quando estou tentando contratar pessoas no momento, estou olhando para seus repositórios do GitHub e estou observando suas atividades no GitHub. Eu não estou apenas olhando para a qualidade do código ou a incrível qualidade de seu código, eu também olho para como eles lidam com outras pessoas, como eles lidam com pull requests, que tipo de comentários eles dão para a concorrência, como eles lidam com críticas semelhantes, e como eles lidam com elogios porque é isso que se resume no final. As pessoas estão trabalhando com outras pessoas, então eu quero que as pessoas sejam jogadores de equipe quando eu as contratar, e é uma ótima oportunidade para brilhar e dar uma boa impressão para você participando já nos ambientes sociais. Há muitos canais folgados sobre JavaScript, há muitas listas de discussão, há muitos meta lá em cima, muitos eventos acontecendo lá fora, então há uma enorme comunidade onde todos estão animados com JavaScript . Então, certifique-se de que você olhar ao redor para aqueles em sua área ou olhar em volta para a participação on-line, e você vai descobrir que outras pessoas inspiram você e você pode inspirar as pessoas também. Certifique-se de ir para os certos. Se você não está interessado no desenvolvimento de nós, então provavelmente uma folga de nó não é a coisa certa para você. Mas, por outro lado, se você só quer olhar para isso e quer entrar no nó e ver como as pessoas funcionam, é uma ótima maneira de entrar lá e começar a espreitar e descobrir o que está acontecendo por aí também. Se você precisa de alguma inspiração, há ótimos repositórios como JS Pen e CodePen. CodePen é uma comunidade muito simpática e convidativa de programadores
muito criativos que mostram pequenas coisas em que você
clica e você as experimenta e você pode bifurcá-las para você mesmo, bifurcá-las para o seu repositório do GitHub e brincar com elas. Então, em vez de apenas olhar para algo e dizer, “Oh, isso é incrível.” Você pode começar a mexer com ele, você pode mudar números ao redor, você pode adicionar ao código, e você nunca está mexendo com o código original
dessa pessoa, porque assim
que você começar a editar, copia para o seu próprio repositório CodePen, que você não possa quebrar nada, mas você está muito convidado para jogar. Isto é o que eu quero que você pense sobre e sobre a comunidade JavaScript também. Precisamos de uma comunidade mais diversificada. Precisamos de pessoas que não estão necessariamente lá há anos e anos. Precisamos de pessoas com ideias novas e novas, então não se sintam intimidados por esses grupos. Basta entrar lá, começar a olhar em volta, e quando você acha que tem algo para contribuir, por favor contribua. Felizmente, você está pronto para deixar sua marca
na comunidade JavaScript lá ou pelo menos estar pronto para dar uma olhada nele e perceber que não se trata apenas de código, mas também de pessoas. Falar sobre isso também fará parte
do próximo vídeo onde vou ensiná-los como obter ajuda, e como pedir ajuda sem ser muito esmagador e muito irritante para as pessoas.
11. Como pedir ajuda: Bem-vindo a este vídeo onde vamos falar sobre
pedir ajuda na comunidade JavaScript atual e como obter os melhores resultados ao pedir ajuda, e também como dar feedback às pessoas. Estamos vivendo em um mundo JavaScript onde tudo é social. A maior parte do código com o qual estamos jogando e as ferramentas com estamos jogando são de código aberto e disponíveis. O que significa que no GitHub, você pode fazer solicitações de pesquisa, você pode fazer problemas, você pode comentar coisas, você pode simplesmente dar polegares para cima, ou você pode simplesmente dar às pessoas uma estrela. A maioria das pessoas tem suas contas no Twitter onde você pode entrar em contato com elas e você pode reclamar sobre coisas lá. Você pode arquivar bugs com navegadores no GitHub. Você pode arquivar bugs com navegadores no Twitter. Você pode ir em listas de discussão. Você pode ir em canais Slack. Você pode ir a todos os lugares. Agora, a grande coisa sobre as ferramentas que temos hoje em dia, é que todas elas estão online, e todas elas também têm uma parte dela que faz parte de uma comunidade. Então, hoje em dia, quando eu me encontro tendo um problema de JavaScript, eu não estou realmente indo para uma lista de discussão e perguntando às pessoas qual é o problema, ou ir para um Stack Overflow e perguntar às pessoas qual é o problema, mas eu começo a eliminar o problema em primeiro lugar. Então, olhe para o seu código, o que está acontecendo aí? Ative a limitação em seu editor e descubra se
há algum problema estrito que você ainda não pensou. Experimente em diferentes navegadores, e experimente talvez em uma plataforma diferente, bem
como para descobrir se algo deu errado. Tire seu celular e descubra se há algum problema. Então, uma vez que você descobriu onde o problema está e ele ainda é um problema, e provavelmente é algo com o código, então a melhor coisa a fazer é escrever um teste de eliminação. Escreva da maneira mais simples possível como essa coisa está quebrando
e, em seguida, coloque-a no CodePen, ou coloque-a no JSpin, ou coloque-a como uma essência no GitHub. Dessa forma, você pode convidar as pessoas a testá-lo por conta própria, validar se é um problema real ou se não é um problema
e, em seguida, dizer-lhe como corrigi-lo. O que torna as coisas muito mais rápidas do que perguntar aleatoriamente e se perguntar o que está acontecendo lá. Muitas vezes, quando você vai a coisas como Stack Overflow, e você pede ajuda, e você é muito vago em sua pergunta, você vai convidar um monte de pessoas que quer tentar vender sua própria agenda, seus próprios preconceitos, ou suas próprias idéias de qual é a melhor solução. Na maioria das vezes como apenas usar React, basta usar jQuery em vez de ter uma resposta para um problema JavaScript. Então, e então este é um fio interminável sobre as pessoas, eu sei que você não deve usar isso, não você deve isso. Mantendo-o no código e perguntando com um exemplo de código, você descobre que muitas pessoas têm um tempo muito mais difícil chegar com sua própria agenda e suas próprias idéias, porque já está resumido a esse problema, e encontrar esse problema. Então, fazer esse tipo de pergunta é uma maneira muito, muito simples de obter as respostas mais rápidas lá fora. Normalmente escrevo no CodePen, coloco no Twitter, ou em um canal Slack, e então as pessoas podem começar a editar comigo, editando
colaborativamente comigo, para que eu possa ver enquanto eles estão editando meu código e podemos nos comunicar em comentários ou comentários de código enquanto você está codificando. Isso é divertido também, e bom para ensinar outras pessoas. É uma ótima oportunidade para você conhecer outras pessoas que mais tarde podem resolver outros problemas para você, ou talvez conseguir um projeto junto com elas. Se você mesmo quiser dar mais feedback e quiser dar mais ajuda, veja as coisas, veja os repositórios no GitHub. Muitos repositórios têm bugs que precisam ser corrigidos, mas estão sempre no backburner, e todos na equipe principal do produto estão muito ocupados para corrigir esses bugs. Então, eles sinalizam eles como uma primeira vez
um bug que é uma grande oportunidade para você apenas entrar lá, ajudá-los fazendo um trabalho de 10 segundos, e você já é parte dessa comunidade, e você já está no radar do pessoas. Não vamos esquecer que quanto mais você conhece as pessoas e o aspecto mais positivo muitas vezes você é uma impressão que você dá, maior
a probabilidade de essas pessoas falarem sobre você. Isso lhe dá oportunidades como ir a eventos de palestras, ou até mesmo empregos. A maior parte da minha carreira em JavaScript nos últimos 10 anos foi boca-a-boca, e eu estava tentando fazer o meu melhor para ser uma boa pessoa on-line, e ter certeza de que eu sou tão definido quanto eu posso ser para que as pessoas possam ver algo errado no meu questionamento, ou dizer algo errado na minha crítica. Dar críticas publicamente é uma coisa muito perigosa. Você quer ter certeza de que não está destruindo pessoas, e você não está desencorajando elas de continuar. Mas se você mantê-lo até um nível técnico, se você mantê-lo até o exemplo de código e você provar que algo está errado, então não há emoções, e isso não é problema com eles, porque pode ser provado que você apenas queria ajudar e você viu que algo deu errado. Então, não se desanime por tanto barulho, por tanta comunicação acontecendo, e por tantas críticas duras e duras comunicações na comunidade também. Muitas vezes são pessoas que só querem ser ouvidas. Eles não querem machucar outras pessoas. Eles simplesmente não são muito bons em pedir ajuda às pessoas. Então, talvez apenas dando um passo para trás e dizendo: “Ok, eu não vou ficar com raiva sobre essa coisa, eu vou para o outro tópico onde há discussão
interessante, já que isso é uma coisa boa a se fazer.” Não desanime pensando que não pode acompanhar as notícias porque ninguém consegue. Estamos agora em uma corrida de ratos onde todos tentam fazer a coisa nova legal, e inventar o novo recurso legal fora da linguagem, tudo bem. É inovação, criatividade, bagunça. Mas não desanime dizendo que sou muito lento para isso porque estamos todos cozinhando com água, inclusive eu. Espero que tenha aprendido algo com essa coisa toda, e espero que saiba agora que obter ajuda é mais fácil se você seguir os fatos, e você torna o mais fácil possível para os outros consertarem as coisas para você em vez de ter encontrar algo no seu código ou na sua documentação porque isso é muito trabalho. Você quer tornar o mais fácil possível para as pessoas para ajudá-lo,
e se você ajudar as pessoas, torná-lo o mais fácil possível para eles entender o que eles fizeram de errado, e explicá-los para eles de uma maneira agradável, não Ao contrário de você estar fazendo tudo errado, e eu sou melhor do que você. Fazer isso tornaria nossa comunidade muito, muito melhor, e estou ansioso por isso.
12. Considerações finais: Bem, isso é um embrulho. Espero que você tenha gostado deste curso, e espero que agora você entenda que redescobrir JavaScript é uma coisa interessante como o conhecimento que você tem no passado pode ser obsoleto e parte dele não é mais necessário, mas há um grande mundo novo de comunicação lá fora. Há uma grande comunidade em torno de JavaScript que você pode participar, e acima de tudo, as ferramentas vieram trancos e barrancos desde que fizemos isso pela primeira vez. Os navegadores são sempre verdes, os editores são de código aberto e escritos e datilografados, que você
possa editá-los e obter extensões para eles. O terminal é agora a casa do JavaScript também. Você pode criar aplicativos reais em JavaScript mais amplo do que apenas coisas da Web. Há tantas coisas para brincar. Seria triste não dar uma olhada, e não ser corajoso o suficiente para dizer como, “Ei, eu fiz isso no passado, eu posso aprender de novo.” Então, não desanime sobre a velocidade das coisas, há muito hype em torno dele, mas há um monte de coisas legais para ser encontrado. Então, espero que tenha encontrado algo interessante. Se você já jogou com algo, se você encontrou algo não compreensível, se você quiser obter mais detalhes sobre algumas coisas, entre em contato conosco, nos dê comentários, faça upload de alguns dos exemplos que você fez onde você mudou suas maneiras de acordo com o que você fez antes, e estou ansioso para ver mais de você.