A ideia é que o tema de prática seja continuado até pelo menos o fim das 4 aulas deste módulo. A ideia é desenvolver mais e mais funcionalidades do cinema atrelado ao conteúdo recebido (adicionando nas próximas aulas array, funções e afins).
O objetivo desta prática é que os alunos aprendam a iniciar um projeto node, executar arquivos, fazer download de uma biblioteca e começar a abordar o tema de modularização.
O que é necessário para acompanhar a prática?
-
Ter as ferramentas instaladas em ambiente local (node.js, npm, VSCode, gitBash)
-
Ter uma conta no gitHub (ou similar) para versionar o projeto
-
Consumir o conteúdo do PlayGround
-
Assistir as aulas síncronas
Replicação dos enunciados para facilitar a compreensão dos exercícios e respectivas resoluções.
Atividades relacionadas a aula 01.
Etapa 01
No terminal, verificar se o node foi instalado.
node -v
Etapa 02
Criar pasta para o projeto, chamada CineHouse.
mkdir CineHouse
Etapa 03
Criar um arquivo chamado cinema.js. Nele, criar uma variável chamada cinema
, que deverá receber o nome da loja (string).
Criando (e abrindo) arquivo cinema.js:
cd CineHouse && touch cinema.js && code cinema.js
Criando a const
cinema e atribuindo uma string a ela:
const cinema = "CineMarco"
Etapa 01
Executar npm init
(na pasta CineHouse) e verificar as mudanças que ocorreram na pasta e arquivos novos adicionados ao projeto.
Executar o seguinte comando no terminal:
cd CineHouse && npm init
Responder às perguntas do diálogo no terminal conforme preferência.
Etapa 02
No arquivo cinema.js, passar a variável anteriormente criada como argumento do console.log()
para visualizar o nome da loja no terminal ao executar o arquivo.
console.log(cinema)
Etapa 03
Executar o arquivo cinema.js.
Se estiver na pasta raiz (no terminal), execute:
cd CineHouse
Dentro da pasta CineHouse, execute:
node cinema.js
Etapa 04
Instalar o pacote nodemon como dependência de desenvolvimento.
npm i --save -D nodemon
Etapa 05
Analisar a pasta node_modules.
Mostrar que apesar de instalarmos apenas uma dependência, essa possui suas próprias dependências.
Comentar que, como configuramos o .gitignore com o template node, a pasta node_modules é ignorada pelo versionamento.
Explicar o por que de não precisarmos versionar essa pasta e como garantimos que todas as dependências serão instaladas com o npm install
. Se possível, mostrar na prática.