Antes de começar a sua aula 2 do curso de JavaScript eu tenho algumas perguntas pra te fazer: Em primeiro lugar, uma pergunta simples, mas muito importante. Você sabe a diferença entre um cliente e um servidor para a infraestrutura da internet? Você sabe diferenciar basicamente dentro de uma infraestrutura de redes, o que é um cliente suas tarefas e o que é um servidor e suas tarefas?
Outra coisa, você sabe diferenciar as tecnologias HTML, CSS, JavaScript e o que cada uma faz? Quais são as especialidades de cada uma? Para que cada uma serve?
Você consegue citar pra mim, de bate-pronto 4 sites que utilizam a tecnologia JavaScript no seu coração? Pois saiba que se você ficou em dúvida em qualquer uma dessas perguntas ou não sabe responder assim de imediato, é sinal que você não assistiu ou não prestou muita atenção na aula anterior. Então não se esquece que aqui em cima você tem acesso a playlist do curso completo eu te recomendo ver todas as aulas na sequência.
Inclusive para poder responder essas perguntas que eu acabei de fazer. Agora se você conseguiu responder tudo direitinho seja bem-vindo, seja bem-vinda à aula 2 do seu curso de JavaScript Legendas: Tainá Bandeira Olá, pequeno Gafanhoto! Seja bem-vindo à sua segunda aula do Curso em Vídeo de JavaScript, totalmente patrocinado pelo Google.
O meu nome é Gustavo Guanabara, eu sou professor e como eu disse no início do vídeo, nós vamos nessa aula acabar de uma vez por todas com essa dúvida: JavaScript e Java são a mesma coisa? São diferentes? Por que eles têm um nome tão parecidos se eles são diferentes?
Ou se eles são iguais, por que tem o "Script" no final de um e não tem "Script" no final do outro? A gente vai, até final dessa aula, responder todas as suas perguntas. E se você viu nesse vídeo o título da aula que é a "Evolução do JavaScript" e está pensando nesse momento em pular falando assim: "acho que eu não quero esse negócio não".
Vai por mim, eu te dou o conselho. Assiste esse vídeo até o final porque quando a gente entende de onde vem uma tecnologia, a gente entende até mesmo para onde ela vai. Dá pra gente ter essa noção e além do mais, tem outra dúvida que muita gente tem: Javascript, ECMAScript, tem alguma relação entre eles?
O que é esse tal de "ECMAScript" que me mandaram estudar? E para todas essas suas dúvidas, essa Aula 2 tem a resposta. Então sente-se confortavelmente, pare de usar o Facebook e o Instagram ao mesmo tempo, foca sua atenção aqui nessa aula, com certeza no final você vai saber pra caramba sobre JavaScript.
E como toda evolução, a gente precisa de uma linha do tempo, eu vou te mostrar aqui toda a evolução da linguagem numa linha do tempo. É claro que eu não vou falar de todos os tópicos, tópico por tópico, senão esse vídeo ia ficar com mais de duas horas. E o objetivo aqui é não levar o seu tempo, o meu foco é te dar todas as informações no menor tempo possível, mas sem perder a qualidade.
E toda a nossa história, quando a gente fala de JavaScript, começa com a história da própria Internet. Em 1970 surgiu os primórdios da Internet, na verdade foi antes de 70, em meados da década de 60, se você estudou um pouquinho de história. Você deve se lembrar existia uma Guerra entre EUA e URSS que ficou conhecida mais tarde como a grande Guerra Fria.
E essa guerra não foi uma guerra de batalhas físicas, de tiroteio, aquele negócio todo. Ela foi uma guerra essencialmente psicológica e tecnológica. Onde (convenhamos) os EUA estavam perdendo feio.
Isso porque a URSS tinha muito mais tecnologia naquela época do que os EUA, inclusive foi ela (a URSS) que lançou o primeiro satélite artificial. O famoso Sputnik. É claro que a função do Sputnik não era muita coisa não, mas os EUA não sabiam disso, na verdade eles tinham medos constante de serem atacados.
E aí, em meados da década de 60, o presidente militar da época o Dwight D. Eisenhower decretou a criação de uma agência de pesquisa tecnológica, a DARPA. E a função da DARPA, como acabei de falar, era pesquisar tecnologias para a guerra.
Uma dessas tecnologias envolvia a segurança dos centros militares. Centro militar naquela época tinha computadores, na verdade não era computador como você tem hoje na sua casa, eram grandes computadores basicamente um centro militar tinha um computador cheio de dados dentro dele. e se por acaso a URSS bombardeasse esse centro militar, todos os dados seriam perdidos.
A ideia da DARPA foi criar uma rede para proteger esses dados onde um centro militar se comunicaria com o outro e se por acaso um fosse bombardeado, os dados de um estavam dentro desse outro então os danos seriam físicos e não aos dados. Essa rede ficou foi chamada de ARPANET. Era uma rede essencialmente gerenciada pelo governo e por militares, mas tinha também muitas universidades dentro.
Principalmente duas muito importantes: a Universidade da Califórnia e um departamento que era o MIT, lá do outro lado dos EUA. Essa rede sofreu um crescimento gigante durante alguns anos, só que chegou um momento em que os militares e o governo não estavam mais dando conta porque a rede cresceu pra caramba e a elas se juntaram a outras pequenas redes. E foi nesse momento, durante a história da ARPANET, que ela mudou de nome várias vezes e último nome que ficou foi a Internet.
Sim, essa Internet que você tem hoje na sua casa, surgiu lá em 1970, na época por conta de guerras. Os anos se passaram e a ARPANET (no caso a Internet) sofreu várias atualizações, vários crescimentos, novas tecnologias que surgiram, eu vou pular todas elas mas uma que vai importar pra gente surgiu em 1993. Em 1993 em Genebra, um inglês chamado Timothy Berners-Lee ou Tim Berners-Lee ou TBL.
Esse cara que tá aparecendo aqui embaixo foi o responsável pela criação de uma tecnologia que a gente tem até hoje e é muito importante no nosso dia a dia, ele pesquisou um meio de transformar o conteúdo em algo mais interativo através de ligações entre documentos. Surgiu então a linguagem HTML, que foi criada por ele e por sua equipe, o protocolo HTTP, que se juntou ao conjunto de protocolos TCP/IP que fazem parte da Internet e também fundou a World Wide Web, a www que a gente usa até hoje, basicamente quando você abre o navegador e digita www alguma coisa, você está utilizando uma tecnologia que foi inventada em 1993 por Tim Berners-Lee e a sua equipe que trabalha no CERN, que é uma Organização Européia para Pesquisa de Energia Nuclear. Sendo assim, a World Wide Web (o www) surgiu em 1993, com Tim Berners-Lee.
Nesse mesmo ano, para que todas essas invenções de Tim Berners-Lee funcionassem também era necessário um navegador. Surgia então, nos EUA, o Mosaic ele era uma criação de um outro pesquisador, em outro centro de pesquisa que era NCSA ou Centro Nacional de Aplicações de Supercomputadores e esse pesquisador era o Marc Andreessen, esse que está aparecendo aqui no final da tela. O Mosaic foi um navegador muito importante para a evolução da tecnologia porque ele foi o primeiro, na verdade ele foi adaptado de um interpretador de Gopher que era um protocolo anterior ao HTTP, mas ele foi adaptado e também funcionava com HTTP e também mostrava páginas Web.
Inclusive Marc Andreessen foi muito importante em 1994, quando ele saiu da NCSA e se juntou com o cara bilionário o fundador da Silicon Graphics chamado de Jim Clark, teve contato com a Internet e falou assim: "poxa eu vou abrir uma empresa disso ai", chamou o Marc Andreessen e fundaram, os dois juntos, uma empresa chamada Netscape. A empresa Netscape criou um navegador baseado no Mosaic e com toda a experiência que Andreessen tinha e facilmente se tornou o navegador por mais famoso da Internet. E uma curiosidade que tinha do Netscape: a equipe interna de desenvolvimento sempre colocava nomes engraçados nas coisas.
Um dos projetos internos dentro da Netscape, era um grupo que homenageava o Godzilla, aquele bichão japonês gigante. O nome do grupo era Mozilla e com certeza você já ouviu falar nesse nome, mas segura as pontas aí que a história vai evoluindo. A Netscape, crescendo pra caramba resolveu criar uma coisa baseada numa necessidade.
O HTML era muito estático e foi aí, em 1995 que um ex-funcionário da Silicon Graphics, que trabalhava pro Jim Clark passou da Silicon Graphics pra dentro da Netscape. O nome dele Brandon Eich, esse cara que apareceu aqui no meio ele era um desenvolvedor e a tarefa dele foi a seguinte: criar uma linguagem que desse mais funcionalidades ao simples HTML que existia na época, o Brandon Eich tinha um projeto e batizou a sua linguagem inicialmente de Mocha que é um tipo de cafezinho e nessa mesma época estava surgindo uma linguagem lá da Sun Microsystems chamada Java. Inclusive existe curso aqui de Java, é só você clicar aqui em cima ou visitar o nosso canal Curso em Vídeo.
Faça também o curso de Java mas é importante dizer JavaScript não é Java e Java não é JavaScript. Eu já vou te explicar, mas o fato é em 1995, nesse ano que a gente está estudando agora, o Brandon Eich estava criando a linguagem Mocha e estava nascendo ao mesmo tempo a linguagem Java. E essa linguagem Java ganhou um sucesso muito grande na mídia, a mídia chamava a linguagem de "linguagem do futuro".
E então a Netscape pensou: "nós estamos criando uma linguagem, Java é a "linguagem do futuro", nossa linguagem não vai nem se chamar Mocha". Na verdade ela tinha até outro nome, Mocha foi o nome inicial ela se chamava depois LiveScript e o pessoal da Netscape falou assim: "o nome Java faz sucesso, não vamos chamar a nossa linguagem de LiveScript, nós vamos chamar a nossa linguagem de JavaScript e então foi exatamente isso que aconteceu, exatamente isso que você acabou de ouvir. O nome JavaScript não vem porque a linguagem JavaScript se parece com a linguagem Java.
Vem porque na época, estava fazendo sucesso falar a linguagem Java, e aí os funcionários da Netscape, numa grande jogada de marketing falou assim: "vou usar esse nome Java na minha linguagem também" e acabaram lançando a linguagem JavaScript. Na verdade se você analisar, as linguagens Java e JavaScript são bem diferentes entre si. É claro que alguns comandos se parecem bastante.
E nesse momento você deve estar pensando: "pô Guanabara, eu aprendi Java e JavaScript e o if é igualzinho" na verdade o if, não é o if JavaScript e nem o if do Java. As duas linguagens foram baseadas numa outra linguagem, chamada linguagem C então é por isso que os comandos se parecem bastante, mas são linguagens completamente diferentes JavaScript é uma coisa e Java é outra não confunda as bolas. Surge então o nome JavaScript, e você já entendeu com a gente que não tem nada haver uma com a outra foi só uma jogada de marketing e obviamente por conta da escolha desse nome JavaScript foi uma linguagem que fez bastante sucesso, e você sabe o sucesso atrai o olho grande de algumas outras empresas.
E a empresa da vez foi a própria Microsoft, a criadora do Windows. A ideia da Microsoft foi a seguinte: "nossa, JavaScript é uma linguagem legal, vamos nós mesmos criar nossa própria linguagem" isso porque ela tinha acabado de lançar um outro navegador que basicamente era o código base do Mosaic. O Mosaic ficou com o NCSA, ele foi passado pra uma empresa, essa empresa foi comprada pela Microsoft, a Microsoft pegou o código do Mosaic e lançou um navegador chamado Internet Explorer.
Sim, eu sei que você está pensando mas aguarda ai que você vai ver. O Internet Explorer foi lançado muito perto do ano de 1995 que é o ano que estamos estudando, junto com o Windows95 e a Microsoft não deixou pra trás: "vamos criar nosso próprio JavaScript, com os mesmos comandos resolvendo alguns problemas que as pessoas já tinha identificado e vamos batizar a nossa linguagem não de JavaScript e sim de JScript porque pode rolar um processinho". A Netscape obviamente pensou: "nossa, mas nós criamos a linguagem JavaScript, veio a Microsoft meio que copiou, utilizando os mesmos comandos deu uma melhorada em outra vai acabar virando bagunça".
E a Netscape teve uma sacada muito boa, que foi padronizar a linguagem. E isso aconteceu em 1997, quando a Netscape procurou uma empresa de padronização, nesse caso uma empresa européia, a ECMA, que é a Associação Europeia de Fabricantes de Computadores. A ECMA na Europa é tipo uma ISO nos EUA, ela padroniza as coisas.
E foi aí, com a Netscape cedendo o código JavaScript para ECMA para uma padronização, que surgiu a linguagem ECMAScript. Basicamente a ECMAScript é a linguagem JavaScript padronizada. Hoje, quando você estuda JavaScript, as pessoas pensam assim: "não, você vai estudar JavaScript mas você vai estudar ECMA, não é?
". Na verdade, essa frase significa que você vai estudar a versão padronizada do JavaScript. Mais pra frente, a gente vai falar um pouco mais sobre essas versões.
Vamos passar mais alguns anos e vamos estudar o ano de 2002 e ver o que aconteceu nele Basicamentem, 2002 foi o ano de encerramento da briga que existia entre a Netscape e a Microsoft houve uma briga muito grande. O Internet Explorer foi embutido no sistema operacional Windows95, o que fez com que a Netscape deixasse de ser um navegador mais famoso e mais instalado, porque as pessoas já compraram um computador que já tinham navegador, que era o Internet Explorer e com isso a Netscape deu uma caída e acabou falindo, mas as pessoas que trabalhavam lá criaram uma fundação e a fundação ganhou o nome de um daqueles projetos que eu falei anteriormente, e foi em 2002 que surgiu a Fundação Mozilla, que não desistiu de fazer navegador, ele só não se chamava mais Netscape ele ganhou uma nova roupagem, um novo nome, um novo código e passou a ser o Firefox que a gente usa até hoje, Firefox até ganhou uma grande notoriedade mas acabou não sendo um grande navegador. Ele até hoje funciona, muita gente gosta.
Eu, particularmente, gosto pra caramba do Firefox, mas ele acabou perdendo muito espaço porque em 2008, uma outra grande empresa acabou entrando nessa briga, a Netscape, a Microsoft, o mercado de Internet crescendo pra caramba uma grande empresa, que inclusive é a patrocinadora do nosso curso pensou assim: "também vou criar o meu próprio navegador". Surgiu então o Google Chrome. E o Google Chrome cresceu para caramba, nos primeiros dois anos de vida, ele já se tornou o terceiro navegador mais usado do mundo hoje.
No momento em que eu estou gravando esse vídeo, o Google Chrome é o navegador mais famoso do mundo Ele tem praticamente 50% do mercado. E o que o Google Chrome trouxe de bom e que vai interessar a gente no aprendizado da linguagem JavaScript? Ele tinha um motor interno de JavaScript muito poderoso e foi em 2009, que surgiu a versão logo no inicio da V8, uma referência aos motores.
O V8 é o motor por baixo do capô do Google Chrome que roda JavaScript. Cada navegador tem o seu próprio motor, por exemplo: o Firefox é o SpiderMonkey, no Safari ele se chama Nitro, no Opera é o Karakan e na Microsoft no Edge é o Chakra. E uma das grandes vantagens do V8, e que tornou ele muito importante, é que ele gerava código JIT ou código "Just in Time".
Eu não vou entrar nesse mérito aqui, eu não vou entrar na explicação disso, mas é uma coisa muito boa. E outra coisa muito boa, é que o V8 tem código aberto, é código livre qualquer pessoa pode mexer. Inclusive um grupo pegou o código do V8 mexeu e fez a seguinte transformação: o V8 só roda se eu tiver Google Chrome ele é código aberto, se ele é código aberto eu posso modificar ele funcionar fora do Google Chrome e essa iniciativa deu origem a uma famosa ferramenta que surgiu em 2010 chamada Node.
js. Na verdade o Node. js é uma máquina que roda JavaScript fora do navegador.
Isso tornou, como eu disse no vídeo anterior, que o JavaScript foi feito para rodar no cliente, rodando dentro do navegador, o Node foi uma das grandes iniciativas, foi a que popularizou a saída do JavaScript dos navegadores. Então hoje graças ao Node. js, e graças a outras máquinas que também rodam do lado de fora mas o Node.
js é o mais famoso de todos, hoje podemos ter JavaScript do lado do servidor também. Mas volto a dizer: esse não é o foco desse nosso curso. Então essa aqui é a nossa timeline que importa.
É claro que faltou falar muita coisa nesse momento você deve estar falando: "faltou falar de jQuery, você não falou de Vue. js,você não falou Angular, você não falou de React". Calma meu querido, a gente está fazendo uma linha temporal bem básica e esses aqui foram os que eu julguei importante para que você possa aprender espero que você tenha entendido, espero que muitas das coisas que a gente falou aqui, sirva pra você entender a evolução dessa maravilhosa linguagem JavaScript.
E agora, antes a gente finalizar eu preciso falar do ECMAScript. O ECMA, como a gente falou anteriormente, é a padronização da linguagem JavaScript. Ele teve várias versões e várias funcionalidades eu também não vou ficar falando sobre muitas funcionalidades mas vou mostrar a evolução do ECMAScript pra você.
Como a gente viu anteriormente, a linguagem ECMAScript é a versão padronizada do JavaScript Ela surgiu em 1997 com a versão 1. 0 que era JavaScript1. 1, que foi padronizado pela ECMA mais tarde foi lançada a versão 2.
0. Em 1998, um ano depois, ela trouxe apenas algumas pequenas atualizações ao que tinha feito a versão 1. 0 A versão 3.
0 surgiu também um ano depois, em 1999 ela já trouxe compatibilidade com expressões regulares já tinha o bloco try/cath para poder tratar erros, que não existia antes nas versões 1 e 2. 0 mas já tinha na linguagem C, já tinha na linguagem Java e em 1999 meio que travou o projeto As promessas para a versão 4. 0 foram tão grandes que a versão nunca saía, sabe aquele negócio de: "vou prometer que vai sair tal coisa", mas nunca sai isso aconteceu com a versão 4.
0 do ECMAScript, que sequer existiu e só em 2009, pulando a versão 4, surgiu o ECMAScript versão 5 que já ficou conhecido como ES5, essa versão é a mais popular de todas, compatíveis com quase todos os navegadores atuais, ela se tornou compatível com o JSON e também trouxe vários métodos para tratar arrays em 2015 surgiu o ES6, que trouxe os declaradores let e const e também as Strings em Templates, que a gente vai usar pra caramba nesse curso Basicamente esse curso ele se baseia muito no ES6 que essa versão e que está bem popular hoje em dia também, mas é que o ES6 não é a última versão porque a partir do ES6 que é de 2015 saía uma versão por ano, ele parou de se chamar 6, 7, 8. A partir da versão 7, ela já começou a se chamar pelo ano ES2016 que trouxe algumas funcionalidades como por exemplo o operador de exponenciação depois veio o ES2017 que trouxe a compatibilidade com funções assíncronas e outras muitas coisas. E a última versão, a versão mais recente do momento em que eu estou gravando esse vídeo, o ES2018, que trouxe novidades em expressões regulares as RegEx e também trouxe a possibilidade de promises, de promessas, a gente nem vai chegar ver isso do curso e a evolução do JavaScript não foi só a evolução da linguagem.
Várias ferramentas surgiram com a evolução do JavaScript. É aí é que eu venho ter um papo sério com você aqui. Tem muita gente que pede cursos cursos de Angular, de React, de Vue.
js, mas na verdade não sabe nada de JavaScript. As tecnologias que surgiram, como por exemplo, Node. js, o próprio Angular do Google ou o React do Facebook, foram ferramentas que surgiram e que levam o JavaScript para outro patamar.
Mas o grande problema é: você precisa conhecer o JavaScript para conhecer essas tecnologias como disse anteriormente, uma das tecnologias que usa JavaScript é um framework muito importante é o jQuery. Na verdade ele nem é um framework, ele é um conjunto de bibliotecas, jQuery foi muito famoso durante muitos anos e agora deu uma caidinha, mas ele foi criado por uma galera da Mozilla mesmo. A biblioteca, que facilitava muito o uso de interatividade em JavaScript Em 2009 surgiu o Angular, o Angular é criado e mantido pelo Google, ele facilita muito a criação de aplicações Web, ele é uma linguagem menos imperativa, ele é uma linguagem mais declarativa, semelhante SQL para banco de dados traçando um pequeno paralelo, existe uma briga entre o Angular 1, que é o tradicional AngularJS e o Angular (só Angular) que é da versão 2 pra cima.
Mas eu também não vou entrar muito nisso não. O Facebook também lançou sua famosa biblioteca, o React. O React tem mais ou menos a mesma funcionalidade do Angular mas ele tem algumas flexibilidades maiores, existe o React Native para a criação de aplicações e celular dá uma pesquisada mais pra frente, mas primeiro aprende JavaScript, não entra nessa de: "não, eu vou fazer um curso de React sem saber JavaScript" vai dar com as caras na água!
Em 2014 surgiu um framework que é muito poderoso que é o Vue. js. Depois que você aprender JavaScript, dá uma olhadinha nele, ele foi criado por um ex-programador do Google, que segundo ele mesmo, já estava meio cansado de usar o Angular e criou uma versão bem melhor e chamou de Vue.
js. É Vue, não view de visualização. Outras ferramentas muito importantes, o Electon que hoje é mantido pela Github, ele é especializado para a criação de interfaces gráficas, para programas de interface gráfica e com certeza você já utilizou ou vai utilizar um programa feito em Electron o próprio Visual Studio Code da Microsoft, que a gente vai utilizar neste curso, foi feito em Electron Aquele programa que você instala no seu computador, e eu sei que você tem, pra acessar WhatsApp também feito em Electron.
Aquele chat do Discord, aquela coisa toda do Discord também feito em Electron, o Slack também feito na mesma tecnologia. Outra coisa que surgiu também baseado em JavaScript foi o Ionic, que é um SDK para poder criar aplicações para dispositivos móveis. O Ionic, por sinal que utiliza o próprio Node.
js. Vários desses aqui usam o Node. js.
Na verdade, para rodar o JavaScript fora do navegador, ele se baseava também uma versão antiga de uma tecnologia chamada PhoneGap que hoje evoluiu, está na mão da Apache e se chama Cordova. Então é isso uma sopa de letrinhas que você vai ter que lidar quando você avançar com JavaScript. Mas por favor, deixa eu te pedir um grande favor olhando nos seus olhos: não entra nessa de tentar aprender qualquer uma dessas tecnologias aqui sem aprender JavaScript.
É um tiro no escuro você vai virar copiador de código, não é assim que funciona. E para finalizar, vamos levar o JavaScript a outros patamares. Também, existem vários outros frameworks, SDK, bibliotecas.
Principalmente também para a criação de jogos sim, existem jogos criados em JavaScript, mas para você tem que saber a base e também ter adição dessas bibliotecas e SDKS. Por exemplo: Phaser que é muito famoso. E tem outras soluções como: PixiJs, o Impact, o MelonJS, o CraftyJS, existem várias bibliotecas e várias tecnologias para a criação de jogos em JavaScript.
Então é isso, chegamos ao final de mais uma aula, espero que você tenha chegado até aqui e aguentou firme e forte, o próximo video está quase chegando ai, e no próximo vídeo vamos dar os primeiros passos na linguagem, vamos fazer a instalação das ferramentas, vamos bater um papo sobre desenvolvimento. Assiste o próximo vídeo, pois ele está muito importante. Veja com toda a atenção e reflita, faz com a mente aberta.
Eu queria, mais uma vez, agradecer aqui a sua paciência, a sua audiência, continue assistindo o curso de JavaScript, porque com certeza ele foi feito com todo o carinho para você. Eu vou te dar um conselho rapidinho: mais pra frente, quando você aprender um pouco mais sobre JavaScript, volta nessa aula e tenta assistir de novo a evolução dele, com certeza você vai ter uma visão mais ampla e então você pode até focar os seus estudos porque quando você aprender JavaScript, vai começar um monte de gente perguntando: "porque você faz isso com JavaScript puro? Por que você não usa uma biblioteca?
Por que você não usa o jQuery? Por que você não usa o Angular? ", muita coisa disso vai aparecer na sua vida e aí você volta aqui assiste esse vídeo de novo e aí você tirar suas próprias conclusões e dá prosseguimento aos seus estudos.
Eu me despeço por aqui, mas já fica marcado o nosso encontro para a próxima aula, onde a gente vai dar os primeiros passos na linguagem. Um grande abraço e até a próxima!