Na aula anterior, entendemos o que são módulos JavaScript e por que dividir o código em vários arquivos deixa o projeto mais organizado, profissional e fácil de manter.

Agora vamos aprender como os módulos conversam entre si, usando duas palavras-chave fundamentais do JavaScript moderno: export e import.

🎯 Objetivo da aula

Ao final desta aula, você será capaz de:

  • Entender o papel do export
  • Entender o papel do import
  • Exportar funções, variáveis e objetos
  • Importar código de outros arquivos
  • Conectar arquivos JavaScript de forma correta

Antes de tudo: o modelo mental certo

Pense assim:

  • export → “isso aqui pode ser usado fora deste arquivo”
  • import → “vou usar algo que vem de outro arquivo”

Nada mais do que isso.

Estrutura básica de arquivos

Vamos imaginar esta estrutura simples:

  • utils.js
  • main.js

O arquivo utils.js vai fornecer funções. O arquivo main.js vai usar essas funções.

Exportando uma função

No arquivo utils.js:

 // utils.js 
        export function somar(a, b) 
        { 
          return a + b; 
        } 

Aqui estamos dizendo:

👉 “A função somar pode ser usada fora deste arquivo.”

Importando essa função

No arquivo main.js:

 // main.js 
          import { somar } from "./utils.js";
          console.log(somar(2, 3));
 console.log(somar(2, 3)); // Saída será 5 

Repare em três coisas importantes:

  • O nome importado deve ser o mesmo do export
  • Usamos { } para importar
  • O caminho começa com ./

Exportando mais de uma coisa

Podemos exportar várias funções no mesmo arquivo:

 // utils.js 
  export function somar(a, b) 
  { return a + b; }
  export function multiplicar(a, b) 
  {
    return a * b;
  }

E importar assim:

 // main.js 
  import { somar, multiplicar } from "./utils.js";
  console.log(somar(2, 3));
  console.log(multiplicar(2, 3));
 
  console.log(somar(2, 3)); // Saída será 5 
  console.log(multiplicar(2, 3)); // Saída será 6 

Export default (exportação padrão)

Além do export normal, existe o export default.

Ele indica o principal valor daquele arquivo.

 // calculadora.js 
    export default function somar(a, b) 
    { 
      return a + b; 
    } 

Importando um export default:

 
  // main.js 
  import somar from "./calculadora.js";
  console.log(somar(4, 6));
 console.log(somar(4, 6)); // Saída será 10 

Aqui está a diferença importante:

  • export → precisa de { }
  • export default → não usa { }

Posso misturar export normal e default?

Sim, mas com cuidado:

 // utils.js 
  export function subtrair(a, b) 
  { 
    return a - b; 
  }
  export default function somar(a, b) 
  {
        return a + b;
  }

Importando:

 // main.js 
  import somar, 
  { 
    subtrair 
  } from "./utils.js";
  console.log(somar(5, 3));
  console.log(subtrair(5, 3));
 
  console.log(somar(5, 3)); // Saída será 8 
  console.log(subtrair(5, 3)); // Saída será 2 

Importante: módulos no navegador

Para usar módulos no navegador, o script precisa ser declarado assim:

 <script type="module" src="main.js"></script> 
Sem type="module", import e export não funcionam no navegador.

Por que isso muda tudo?

  • Código mais organizado
  • Menos variáveis globais
  • Arquivos com responsabilidades claras
  • Base para projetos grandes e frameworks

Resumo da aula para nunca mais esquecer

  • export torna algo acessível fora do arquivo
  • import traz código de outro arquivo
  • export default define o principal valor do módulo
  • Módulos ajudam a organizar projetos
  • São base do JavaScript moderno

Na próxima aula, vamos aprender sobre organização de projetos, estruturando pastas e arquivos do jeito certo.


HARDWARE

Entendendo o seu computador

O que há dentro do meu computador?

Existem alguns componentes fundamentais presentes dentro do seu computador e é muito importante que você conheça um pouco sobre eles, seja para argumentar com algum vendedor durante a compra de um novo PC ou para identificar alguma atitude desleal de algum técnico que esteja te passando um orçamento para reparo. Na seção Raio-X aqui do Contém Bits você pode conhecer e entender mais detalhadamente sobre cada componente, ou também pode clicar abaixo no componente que deseja, para conhecê-lo melhor.

  • Gabinetes

  • Placas-Mãe

  • Processadores

  • Memória

  • Fontes

  • Drives Ópticos

  • Discos Rígidos

  • SSD

  • Placas de Som

  • Placas de Vídeo

Você Sabia?

Instalar vários aplicativos com o mesmo propósito, como editores de texto, reprodutores de músicas ou vídeos e até programas antívirus sobrecarregam o seu sistema operacional e ainda ocupam espaço desnecessário em seu HD. Tenha apenas um bom programa para cada função.


A primeira versão do clássico Mega Man, para Nintendo 8 bits, tem seu recorde de pontos estabelecido em 03/11/2006, por David Archey, que cravou 2.396.700 pontos, terminando o jogo.


Criar um jogo é muito mais complexo do que parece. São milhares, às vezes, milhões de linhas de código. Isso não é exagero! Apenas o jogo Ultima Online possui 6.006.313 linhas de programação, totalizando 25.103.295 palavras


Até a primeira metade dos anos 90 era bastante comum que as trilhas sonoras dos games fossem criadas por mulheres e a responsável pelas músicas do clássico Street Fighter 2 foi Yoko Shimomura. Segundo ela, o ritmo "Tararirarin" da música tema do personagem Blanka, do Brasil, veio à sua cabeça enquanto ela estava no trem a caminho da Capcom.


O jogo Final Fantasy X para o Sony Playstation 2 vendeu, apenas no dia do seu lançamento, 1.455.732 cópias, estabelecendo um recorde de vendagem para as primeiras 24 horas de um game. Méritos da SquareSoft, que desenvolveu um excelente produto!